Software engineering
ITAP2013 Software Engineering Group Assessment Report March 2020 ITAP2013 Software Engineering Group Assessment: Weightage: 30% Report deadline: Session 13 This assessment relates to the following Learning Outcomes: LO1 Explain software engineering principles and apply the techniques for software project development LO2 Evaluate the role of software lifecycle models and apply relevant techniques in project control and planning LO3 Identify and explain different categories of software quality metrics and project estimation methods LO4 Apply knowledge, techniques and tools to support configuration management LO5 Construct and validate software specifications and demonstrate testing strategies LO6 Prepare software system specifications using appropriate language and technical specification techniques to suit the intended Note: This is a group assignment and each group can have maximum 4 students. Students need to inform lecturer about their groups by week 5 Case Study: The Healthy Food Exchange (HFX) is a type of e-business exchange that does business entirely on the Internet. The company acts as a clearing exchange for both buyers and sellers of organic food. For a person to offer food item for sale, he/she must register with HealthyFood. The person must provide a current physical address and telephone number as well as a current e-mail address. The system will then maintain an open account for this person. Access to the system as a seller is through a secure, authenticated portal. A seller can list food items on the system through a special Internet form. Information required includes all the pertinent information about the food, its category, its general condition, and the asking price. A seller may list as many food items as desired. The system maintains an item ID of all food items in the system so that buyers can use the search engine to search for food item. The search engine allows searches by category, name, location, condition or keyword. People wanting to buy food items come to the site and search for the item they want. When they decide to buy, they must open an account with a credit card to pay for the item. The system maintains all this information on secure servers. When a request to purchase is made, along with the payment, The HealthyFood sends an e-mail notice to the seller of the item that was chosen. It also marks the item as pending. The system maintains this as an open order until it receives notice that the item have been shipped and mark it as sold. After the seller receives notice that a listed item has been sold, he/she must notify the buyer via e-mail within 12 hours that the purchase is noted. Shipment of the order must be made within 12 hours after the seller sends the ITAP2013 Software Engineering notification e-mail. The seller sends a notification to both the buyer and HealthyFood when the shipment is made. After receiving notice of shipment, HealtyFood maintains the order in a shipped status. At the end of each month, a check is mailed to each seller for the food item orders that have been in a shipped status for 7 days. The 7-day waiting period is to allow the buyer to notify HealthyFood if the shipment does not arrive for some reason, or if the food item is not in the same condition as advertised. The buyers can, if they want, enter a service rating for the seller. The service rating is an indication of how well the seller is servicing food purchases. Some sellers are very active and use HealthyFood as a major outlet for selling food items. So, a service rating is an important indicator to potential buyers. Tasks and Deliverables: Answer all the following tasks in the form of a report: 1. You are working as a Software Engineer at VITSoft Pvt Ltd. company in Sydney. Your manager asked you to develop a software specification analysing feasibility, functional, and non-functional requirements for above case study. As the first task, you should develop the requirements specification for the proposed system. In your report you should clearly indicate the assumptions and any constraints. The specification should have the following sections. However, you could add other topics based on your assumptions. 1. Introduction a. Purpose b. Scope a. Definitions, Acronyms 2. Constraints 3. Assumptions 4. Requirements a. Functional Requirements b. Non-functional Requirements c. Others 5. Stake holders 6. Project Management a. Time b. Deliverables and Milestones c. Quality d. Risk e. Cost 7. References 8. Appendices ITAP2013 Software Engineering 2. Draw Use Case diagram and clearly indicate actors and use cases. You can use Ms Visio, Ms Word, or any online tool. 3. Select FOUR Use Cases and write Use Case scenarios with preconditions and post conditions. 4. Draw Class diagram for the above system. Clearly indicate classes, possible methods, and message calls. 5. Select FOUR functionalities and design User Interfaces. You could use some wireframe designing tools such as Balsamiq (use trial version) or Invision. Include your wireframes in the report. 6. Design at least FIVE test cases for each for the above scenarios. 7. Discuss the software techniques you will use to support configuration management and the tools to manage change request by the customer. Submission Guidelines • You need to put all explanations, diagrams, models and test cases in one report (.doc/pdf) file. • Submit your report in a file named “Report_GroupX_YY.doc” (where X is your group number and YY are the students IDs) by the due date and time. • Only one person from the group need to submit the report. • Follow the links in Moodle to upload your reports on or before the deadline. Late penalty applies on late submission, 10% per day would be deducted. • Incidence of plagiarism will be penalized. Note: This is a group assignment and each group can have maximum 4 students. Students need to inform lecturer about their groups by week 5 Marking Guide: 50 Marks Task Description Marks Specification Developed the requirements specification for the given case study and clearly indicate the assumptions, constraints, project quality and estimations 15 Modelling Used suitable tools and techniques to develop use cases diagrams, use case scenarios, class diagrams and user interfaces 10 Testing Used testing strategies to identify the test cases for at least five scenarios from given case study 10 Configuration Management Discussed techniques and tools to support configuration management 5 Demonstration Demonstrated the appropriate use of software lifecycle models, techniques and principles for software project development 5 Language Use appropriate language and notations for intended audiences. Logical presentation of ideas with no grammar mistakes 5