This coursework will give you experience of requirements engineering and design for a software intensive system. It builds upon what you have learnt in lectures and workshops. The coursework is in two parts; Part One focuses on requirements and Part Two on software architecture and object-oriented design.
Consider a security system called a SHS. SHS consists of embedded software to drive the system hardware and to communicate with an external, home monitoring service. The hardware comprises of a keypad and LCD display for interacting with the user, a siren, an entry sensor, a motion sensor and a smoke sensor.
During installation, the keypad is used to configure the system. Each sensor is assigned a unique number, type and location. A 4-digit PIN is input into the system for arming and disarming SHS. The home address and a telephone number for dialing the home monitoring service are also input into the system at configuration.
When a sensor event is detected by the system, it turns on the siren. After a delay time that is specified by the homeowner during configuration, the system dials the specified number of the home monitoring service, and provides information about the home address, the nature and location of the sensor event. The number is re-dialed every 20 seconds until a connection is obtained.
You may make your own assumptions about the system (e.g., number and location of sensors, etc.), but they should not conflict with the above description and should be specified clearly in your answer.
2.1 Draw a use case diagram for the SHS. Your diagram should show all relationships between the use cases and should capture all of the information in the problem description.
2.2 Choose ONE of your use cases and give a detailed description of the sequence of steps in the use case. Use the template provided in the week 3 lectures for capturing the information. Be sure to include alternative and/or exceptional behaviours where appropriate.
2.3 Draw a Statechart diagram for SHS by using the Statechart notations introduced during the lectures (Week 9). Your statechart must capture all the behaviour specified in the problem description above.
You have been asked to develop a system for stock information to help stock market dealers to evaluate investment scenarios. The system shall allow stock market dealers to access information about companies and to evaluate various investment scenarios using a simulation system. Each stock market dealer uses the simulation system in a different way, according to his or her experience and the type of stocks in question.
2.1 Suggest a client-server architecture model for the system. Justify the client-server model that you have chosen. Use a diagram to show how system functionality is partitioned in the client-server model that you have chosen.
2.2 You have been asked you to develop a software system to help a cargo shipping company track its customers cargo. Every cargo has a unique tracking identifier, description, handling requirements and a delivery note. The delivery note specifies the cargos port of origin, its final destination port and expected date of arrival at its destination (EDA). Cargo may be transported by sea or air and may travel through several transit ports before arriving at its final destination. The regulations for transporting cargo by sea and air are different. The shipping company would like the software system to maintain a movement history of the various transit ports the cargo travels through and the dates it arrives at these ports.
Identify possible objects in the system and their attributes and operations. Show how the objects are related, including their multiplicity.