讲解:COMP201、Software Engineering、Java、JavaHaskell|SQ

COMP201 Assignment 21 Key DetailsModule COMP201 - Software Engineering IWeighting 20% of module gradeDeadline 12 noon, Thursday 12th December 2019Purpose of Assignment To assess the student’s ability in understanding requirements, in followingobject-oriented design principles, and in implementing an object-oriented design in Java.Learning Outcomes Assessed: The following learning outcomes are assessed, as per the modulespecification:LO4 Be fully aware of the principles and practice of an O-O approach to the design and developmentof computer systems;LO5 Be able to apply these principles in practice;LO7 Be able to demonstrate how to effectively implent an O-O design in an O-O language suchas Java or Python;2 Informal System Requirements for a GarageYou have been approached by a garage to design a computer system to log jobs.• The garage will perform inspection tasks, repair tasks, and maintainance tasks on different typesof vehicle: cars, vans, and busses.• The garage carry out the following inspection tasks: the MOT test and the general diagonstictest (for when a customer does not know the problem with their vehicle).• The garage carries out the following repair tasks: body repair, engine repair, window replacement,and insurance mandated repair.• The garage carries out the following maintenance tasks: air conditioning top-up, body respray,and tyre change.• The shop has multiple staff members working each day: the receptionist, the manager, andseveral mechanics. The manager is in charge of all staff working that day, though they are alsoa qualified mechanic, and thus works on similar tasks to the mechanics when short-staffed.• The workflow of the garage is as follows:– When a customer comes into the shop, they park their vehicle, and walk into the receptionoffice, where they discuss their need with the receptionist (who has domain specificknowledge, and can therefore give the customer the correct advice).– The receptionist then opens a ticket, which links the customer, their vehicle, the workrequired, the deadline, and the quoted price. The ticket’s status is currently waiting. Thecustomer then leaves their vehicle at the garage.1– At the start of the day, each mechanic uses the system to view the waiting tickets, and getsthe first one available. They update the ticket status to in progress.– The mechanic collects the vehicle, and performs the work required. If an unexpected costis encountered, then this will be placed on the ticket notes.– After the work is carried out, the ticket status on the system is changed to check by themechanic. The mechanic then proceeds to the next ticket.– Throughout the day, the manager uses the system to view the tickets which have the statusof check. They will look at each ticket, and then check that the work has been carried outto a good standard. If needed, the manager will update the price in cases where unexpectedcosts were encountered. Once the manager is satisfied, the status of the ticket is moved tosigned off.– Throughout the day, the receptionist will use the system to lookCOMP201作业代做、代写Software Engineering作业、Java编程语言作业代写、代做Java实验作业 at jobs that have thestatus signed off, and telephone the customers to inform them that their vehicle is readyto collect.– The customer comes to the garage, and is presented with the bill. Once they have settledthe bill, the receptionist will then show the customer to their vehicle and the customerdrives off.– Once the customer has left, the receptionist changes the status of the ticket to complete.3 Assignment TasksThe 5 tasks detailed below are based upon the informal system requirements that are outlined inSection 2.Task 1 (20%) You are to create 4 separate lists, each with added details if required.1a) List all candidate classes, their candidate attributes, and their candidate operations.1b) List all potential inheritance relationships.1c) List those candidate classes that are to be eliminated, and give justification as to why.1d) Give the final list of candidate classes, along with their attributes and their candidate operations.You should ensure minimal data duplication (e.g. if a customer has multiple cars in for repair).Task 2 (20%) Produce CRC Cards for each class. For each CRC Card, comment on whether theclass is “Good” or “Bad”, and give justification for your reasoning. If it is “Bad” then you shouldstate how it may be improved, but do not implement this improvement.Task 3 (20%) Produce a UML Class Diagram showing the classes, attributes, operations, andassociations of the system (use answers from Task 1 to guide you). You should be sure to use thecorrect type of association, navigability, and multiplicity.Task 4 (20%) Produce skeleton classes1in Java for each of the classes identified by the UMLClass Diagram. Each class should have the correct inheritance, attributes, and operations. You shouldcreate only empty methods in the Java class, using a dummy return statement, if required. Theclasses should all compile, but there is no need for a main method.Task 5 (20%) Produce a UML activity diagram capturing the workflow of the garage.1Classes that set out the attributes and methods of the design, that do not actually contain any implementation, andthat use dummy code that allows the code to be compiled.24 DeliverablesYou are required to deliver the following items:1. PDF Format Document containing the diagrams and written answers for Tasks 1,2,3, and 5. Itshould have your Name, University Username, and Student ID at the top. For the diagrams,you may use software, and you may hand draw them and scan in the image, but it MUST belegible, otherwise you may be awarded 0 marks.2. Java Source code files (*.java files) for the answer to Task 4. Source files should contain yourName, University Username, and Student ID at the top as comments.5 SubmissionYou are to submit a zip file (studentID.zip, where studentID is your numerical 9-digit studentID number, found on your Student ID card) electronically via SAM, no later than the deadline statedin Section 1. This zip file should contain that which is detailed in Section 4.You can access the SAM submission system at the following URL: https://sam.csc.liv.ac.uk/.3转自:http://www.6daixie.com/contents/9/4559.html

你可能感兴趣的:(讲解:COMP201、Software Engineering、Java、JavaHaskell|SQ)