You are on page 1of 14

Application Development

CS6004ES
Individual Coursework –Main Sit(2022/23)

Yathisan Suntharalingam

E111002
Introduction

This individual coursework requires developing and documenting a small application in C# using an object-
oriented approach and Visual Studio. Your software artefact must be submitted as a Visual Studio project. It
will be assessed using Visual Studio 2015 or any higher version and any features not working in the standard
installation of Visual Studio 2015 or any higher version will not be assessed.
The coursework carries 30% of the module mark
Set:
Submission Deadlines: 15th July 2022
Coursework Submission in-class Demo: 17th July 2022
This individual coursework has 2 parts, both of the soft copies which are to be submitted before 11.5 pm on
15th July 2022.
(1) The software application to be developed in C#
(2) The documentation in MS Word format.

Please note the rules on plagiarism


The application should be implemented individually. This is not a group/team effort. Any material which is
a direct copy from someone else (student or other source) or a close paraphrase/code must be indicated
where it is quoted i.e., it must be made clear what material is a quotation or close paraphrase e.g. by showing
the text in italics or in quotation marks. It is not sufficient to show the source in a list of references or
bibliography. If you are unclear, please discuss your examples with your seminar tutor or the module leader.
Plagiarism is a serious offence and conviction for plagiarism may lead to suspension from the University,
even for a first offence (please see the section on Academic Misconduct in the Student Handbook).
Software Development Task
You are employed as an Application Developer for a large IT development company. The company has been
approached by a Household goods shifting company called e-Shift has grown to a level where they need to
have an automated system to handle day today operational activities to meet customer demands. You are given
the job to design and developing a Software solution for e-Shift to meet their business requirements.
The company transports Household Goods from one location to another on behalf of registered customers.
Each customer is given a unique customer number and his or her details must be recorded in the system. Each
transport operation is called a job, which involves picking up one or more loads of the products from a
customer requested start location and delivering it to a customer requested destination. A unique number is
given for each job and for each load when they are created. A Load is transported using a particular transport
unit, which consists of a lorry, a driver, assistant, and a container (for carrying the product).
The final system should be able to provide the required information for management decision making and to
handle daily operations efficiently and effectively

Note: You may add extra features - both data and functionality to the application, if you wish.

Your software implementation should demonstrate/provide the following features


1. Use of appropriate data types (built-in and programmer-defined) to handle the application data
2. Define and use your own class or classes
3. Provide window-based user interface for your application
4. Store the data related to the application
Deliverables

Your submission should include the software project and a reflective essay as described below.
1. Your software artefact in the form of a Visual Studio 2015 project, which should include the
program’s source code, compiled classes, the executable file and data file (if any).
2. A reflective essay (1000 or more words), which concisely documents:
a. Detailed instructions to run the program
b. The architecture of your software in terms of software classes, clearly indicating which
classes to be of your own work and which classes from other sources (e.g., From textbooks,
online sources such as MSDN etc.).
c. Detailed description of the classes’ properties and methods
d. Your reflection of own experience of using c# and visual studio for the development task,
which feature you like and why, what issues you experienced and your solution to overcome
it.
Marking Scheme for the CS6004ESIndividual Coursework
This individual coursework counts for 30% of the module mark. The following are guidelines for marking.
Mark each item listed below on a scale 0 to 5 where the marks correspond. Then multiply the mark by the
weighting indicated, total and divide by 2 to get the total mark.
Mark Characterised by
0 No work or work totally irrelevant
1 Work started on right lines but no result
2 Some result, with major lack and/or errors
3 Acceptable result but incomplete, or some good result with minor errors
4 Good result but can be further polished
5 Excellent result

Weight X
  Item Weight Marks
Marks

  IMPLEMENTATION      

1 The application user interface 2 5 10

2 Task1: Customer details and Management 2 5 10

Task2: Only Admin Can Manage Admin


3 2 5 10
Details.

4 Task3: Admin Login and Customer Login. 3 5 15

Task4: Customer Transport operation detail


5 2 5 10
Management.

Task5: Only Admin can Accept/Decline and


6 3 5 15
update Customer Transport operation.

7 Task6: Customer Dashboard. 3 5 15

8 Task7: Admin Dashboard. 2 5 10

Task8: Only Admin can manage Product


9 2 5 10
details.

Task9: Only Admin can generate various


10 2 5 10
reports

11 Task10: Admin Dashboard 2 5 10


  DOCUMENTATION      

1 Detailed instructions to run the program 1 10 10

2 The software architecture 3 5 15

Detailed description of the classes’


3 2 5 10
properties and methods

Explanation about search algorithms used


4 2 5 10
in the project

5 Reflection of own experience 1 5 5

  PROGRAMMING STYLE      

Clarity of code which shows the underlying


1 1 5 5
algorithm

Sensible naming of programmer-defined


2 1 5 5
variables, classes, properties and methods

3 Useful comments in code 1 5 5

4 Data validation and exception handling 1 5 5

5 Interface design and usability of the system 1 5 5


Acknowledgement

I am using this opportunity to express my gratitude to everyone who has supported me


throughout of this coursework thank you. I would like to thanks to lecturer to encourage
and guide to do this course work on time. His lecture notes and reference help me to do
this course work more effectively.

Thank you.
Introduction

E-Shift is a company who is a Household goods shifting company. grown to a level where they
need to have an automated system to handle day today operational activities to meet customer
demands. They need to design and developing a Software solution for e-Shift to meet their
business requirements. The company transports Household Goods from one location to another
on behalf of registered customers. Each customer is given a unique customer number and his or
her details must be recorded in the system. Each transport operation is called a job, which
involves picking up one or more loads of the products from a customer requested start location
and delivering it to a customer requested destination. A unique number is given for each job and
for each load when they are created. A Load is transported using a particular transport unit,
which consists of a lorry, a driver, assistant, and a container (for carrying the product).
Software architecture diagram

Use Case Diagram for the purposed System

Primarily the system is used by the two actors which are the admin and the customer. Both have their
credentials to log into the system. Once they log into the system will validate the user and navigate to
their relevant page.
Admin can create an account for the customer and approve jobs that are requested by the customer
and download the jobs that are completed as an excel sheet. Customer can request a job to done and
view the status of the job.

ERD Diagram for the purposed System


ERD Diagram relationship explain

System has the following entities

 Admin
 Customer
 Job
 Transport Unit
 Load
 Product

 Admin

Admin is responsible for creating a customer account, Approve Job which is requested by the customer.
Download the report which is related to the completed Job orders.

 Customer

Customer is created by the admin and customer can log into the system by using their password and
email that admin has entered.

 Job

Job is Created by the customer. A customer can have many Jobs as they want, and single job can be
related to only one customer. Job holds the following information.

o Starting Designation
o Ending Designation
o Transport Information
o Load Information

 Load

Load contains a list of products that a particular job contains. Job can have many products and any given
product can only include in one load.

 Product

Product entity hold the information about the product weight and name of the product and have a one-
to-many relation with the Load entity.
 Transport Unit

Transport unit hold the information about the Driver and the Assistant who is responsible for delivering
the job to the end destination. Transport unit have a one-to-one relationship the Job entity. A job is
delivered by a single Driver and at any given time any Driver can handle only one Job.

Test case

Test Descriptio Expected Actual Result Success/


Cas n Result Failure
e
1 Start the Login to Success
application the admin
and enter account
the admin
email and
password
2 Start the Navigate Success
Applicatio to the
n and Customer
enter the Dashboard
customer
Email and
the
Password

3 Customer Job is Success


add Job added to
informatio the
n click on requested
the Job List
request
Job
4 Admin Job Success
Click on Informatio
the n Will load
informatio to the text
n and Load fields
the Job
Informatio
n

5 Admin add Getting Success


driver and Job
assistance dispatch
and click message
dipatch and Job
Job get
removed
from the
List

6 Admin Get New Success


Click new Customer
Customer added
and add Message
new
Customer
Informatio
n

7 Admin Excel sheet Success


Click on with Job
the informatio
download n get
report download

You might also like