CSIT314 Project Specification

软件开发项目代写 Your tasks are to: Form and structure your group (up to 10 students, CSIT314 students only), allocating roles and responsibilities…


Your tasks are to:

  1. Form and structure your group (up to 10 students, CSIT314 students only), allocating roles and responsibilities to your members;
  1. Complete the development of a given software system (described below). This should cover all software development activities from requirements elicitation and specification, design to implementation and testing.
  1. Choose a software development methodology (e.g. agile methods such as Scrum) for your group to follow. Choose a project management tool which supports that methodology for your group to use. Taiga https://taiga.io/ for agile method is strongly recommended.
  1. Produce a report detailing the group’s work.


On the cover page of your progress/mid-project/final report, you need to indicate the contribution of each team member, and everyone in the team should sign on the cover page. The individual contribution of each team member is assessed by all the other members (the scale is: “contributed”, “very little”, and “almost no contribution”). For a team member who has “contributed”, he/she will receive 100% of the group mark; for a team member who contributed “very little”, he/she will receive 50% of the team mark; for students who made “almost no contribution”, he/she will receive 0 marks for the entire group project. Your tutor/lecturer may make adjustment to this marking criterion based on practical situations.

  1. 1 st progress report (5 marks) due in Week 4

a.List all group members and highlight the group leader.

b.List the roles and duties for each group member.

c.Use a project management tool (such as Taiga) to initialise the project.

d.Use a project management tool (such as Taiga) to create the project plan from Week 1 to Week 13.

e.Create sufficient number of user stories (could be changed in the future) with a tool (such as Taiga) to cover most of the user requirements specified in the group project.

f.Show the minutes of the weekly meeting up to Week 4 (at least one meeting per week)

g.Show the contributions of each members up to Week 4 (signed by all members).

2.Mid-project deliverable (10 marks) due in Week 6 软件开发项目代写

a.Complete the domain analysis (stakeholders, potential users and the risks) and system requirement analysis (functional and non-functional requirements).

b.Complete the user stories and tasks assigned to each user story.

c.Use UML use case diagram to represent the user stories and/or tasks.

d.Use UML class diagram to complete the class design.

e.Use UML state diagram to complete the state analysis of the system.

f.Use UML sequence and/or communication diagrams to analyse the process of each use case.

g.Show the minutes of the weekly meeting up to Week 6 (at least one meeting per week)

h.Show the contributions of each members up to Week 6 (signed by all members).

i.Update the project plan.


3.2 nd progress report (5 marks): due in Week 8

a. Show the evidences of the system construction (no need to complete) such as the front-end design and implementation (prototype), back-end coding, database design and implementation, JUnit and etc.

b.Use one or two pages to describe the functionalities and designs that have been implemented in previous iterations, and the plan for the remaining iterations.

c.Show the evidences of using Continuous Integration in your project development.

d.Show the minutes of the weekly meeting up to Week 8 (at least one meeting per week).

e.Show the evidences of using Kanban or other project management tools in your project development (optional for the 2nd progress report).

f.Show the contributions of each members up to Week 8 (signed by all members).

g.Update the project plan.

4.Project demo (10 marks): Week 12 软件开发项目代写

a.Submit a video record to demonstrate all functions (focus more on the final version) of the system.

b.The video shall contain the introduction of at least two workable versions (the older version/s and the final version) of the system and explain their differences and the reasons of changes.

c.The video shall contain the explanations (with the evidences) of the system testing, i.e., the unit test and the integration test.

d.Submit the user manual (must consist with the final version) of the system.

e.Show the minutes of the weekly meeting up to Week 12 (at least one meeting per week).

f.Show the contributions of each members up to Week 12 (signed by all members).

g.Update the project plan.

5.Final deliverable (20 marks): due in Week 13

a.Final report (including everything, i.e., the project plan and execution chart, domain and requirement analysis, user stories and tasks, all UML diagrams, the snapshots for using Taiga, Kanban, Gitlab (or other project management and CI tools), the weekly meeting minutes to Week 13, the total contributions of each member (signed by all members), and the user manual. You are allowed to update the content in the final report if they are different from the previous submissions (if applicable).

b.The source codes (the final version only) and the executable file (the final version only) of the system (or the link for the web-based system. Please make sure the link is accessible before your final mark/grade is released).

Project Description 软件开发项目代写

Your team is asked by a start-up company to develop a software system which provides roadside assistant services. These services provide assistance to motorists whose vehicles have suffered a mechanical failure (e.g. flat batteries, flat tyres, towing, locked out or emergency fuel delivery) that leaves the driver stranded on the road. Customers can choose either:

  • Membership subscription – customers will pay a fixed membership fee annually and are entitled to unlimited roadside assistance callouts. This is similar to NRMA services.
  • Pay-on-demand – customers will pay per service use. When the need emerges (e.g. their car broke down), they will request assistance through the system. Prices are calculated and presented to customers up front. This is similar to Uber-style but for roadside assistance.

The company is building up its nationwide network of qualified roadside assistance professionals who also use the system to manage jobs (service callouts) and payments. The company is also recruiting new roadside assistance professionals who are able to register for joining using the same system.

Once a customer (motorist) makes a service request, it will be broadcasted to all the registered professionals who are available and capable to provide this service in nearby area (e.g. within 50 kms). They will receive information about the problematic vehicle (e.g. location, plate number, model, etc.), instructions and payment via the system. They can then decide whether they accept the request. The customer can see how many responders are in the area via the system and which one accepts their request. Once the service is completed, the customer can rate and review it using the system). Payment will be deducted from their credit card and will be credited to the professional’s account (after a certain commission fee is taken).

The system should support the following key goals (you can discuss with the detailed and specific requirements with the tutorial demonstrator):

  • Manage customer memberships including types of users, user profiles and subscriptions. 软件开发项目代写
  • Manage roadside assistance professionals
  • Manage road assistance service requests
  • Manage payment transactions
  • Manage reviews and ratings
  • Manage report generation (e.g. payment reports, service reports, etc.)

You must create test data that is sufficiently large enough to simulate the system (e.g. at minimum 20 motorists, 100 roadside assistance professionals and 20 service requests and transactions). You should write a script to randomly generate these data.