ASSIGNMENTQuestion 1 [20%] . a. Describe the waterfall model of software development and discuss its strengths and weaknesses. b. For which of the following projects would it be suitable, and why? i. an incremental compiler for Java ii. a clinical-record-keeping system for dentists iii. a word-processing package c. State the advantages and disadvantages of the evolutionary model of software development. d. Is it more, or less, suitable than the waterfall model for safety-critical projects? Justify your answer. Question 2 Read the following EMS description and answer the following questions. This system is an election management system (EMS) for Malaysian government elections. An election is scheduled for a specific date, and usually several (or all) positions are voted on together. However, sometimes there is a need for a by-election to elect a particular member. The system will keep track of candidates for each seat. The system will also record who is the incumbent for a seat, and record the name of each candidate and incumbent. The system will keep track of the list of eligible voters. Each voter can only vote for certain positions (e.g. the candidates for their area). Each voter is assigned to vote at a specific polling place. The system records the name and address of each voter. Finally, the system will keep track of the number of votes for each candidate at each polling place. However, under no circumstances will it record which voter voted for which candidate, nor whether a voter voted at all. a. Determine the suitable sub-systems for EMS. Using the appropriate architectural style, draw the architectural model that shows the organizational structure of EMS system. b. Give at least TWO reasons why do you choose the architectural style of your choice. Question 3 Read the following description on Johor Environment Monitoring System (JAMS) and answer the following questions. The Johor government has just launched a new system as part of its effort to reduce global warming and to be more environmental friendly. An environmental monitoring system has been set up that collects data from a set of air quality sensors situated around Skudai city. There are 500 sensors organized into 100 neighborhoods. Each sensor must be interrogated four times per second. When more than 30% of the sensors in particular neighborhood indicates that the air quality is below an acceptable level, local warning lights are activated. All sensors return the readings to a central computer, which generates reports every 15 minutes on the air quality in the Skudai city. a. Control styles are used to model the flow of control between sub-systems. What is the suitable control style for JAMS? Give one main reason to support your answer. b. Draw the architectural model of JAMS using your chosen control style. 1 maintainability). Simple enhancements should be effected within one week c. ethical (acceptable to customer and public) a. b. Write a set of non-functional requirements for the ticket-issuing system. portability Organisational requirements o Delivery (when). The rail ticket is issued and their credit card account charged. The system should be available 99% of the time between 8. setting out its expected reliability and response time. implementation constraints (language. usability. The system will operate on Windows NT/2000 platforms h. j. Use the class library on the developer’s server g. c. design method. standards External requirements o Interoperability.Question 4 Identify the non-functional requirement type for the following list of 10 requirements. safety). Users select their destination and input a credit card and a personal identification number. Question 5 a. When the credit transaction has been validated. Briefly justify your choice in a single sentence.00 am and midnight b. the ticket is issued. space). 2 . An experienced project manager should be able to use the new system after one hours training. along with a message to the user to select a destination. The system shall only be accessible to authorised users i. The new system should be available for the commencement of the XYZ project e. Discover ambiguities or omissions in the following statement of requirements for part of a ticketissuing system: An automated ticket-issuing system sells rail tickets. legislative (privacy. Its validity is checked and the user is then requested to input a personal identifier. reliability. Choose from Sommervilles’s list of nonfunctional requirement types: Product requirements o Efficiency (performance. Estimates & actuals will be used to update the database of historical estimating data maintained by XYZ organisation The system shall conform to the requirements of the data protection act. When the user presses the start button. a menu display of potential destinations is activated. f. Write a set of functional requirements for the ticket-issuing system. Once a destination has been selected. users are requested to input their credit card. Average response time should be less than 5 seconds d. 1: The Basic Flow of the Make an Appointment use case b.Question 6 a. Based on the main flow description of Make an Appointment use case in Figure C. 5. System set the date and time of the appointment based on the selected slot. 6. and operations in the class diagram.2 and Figure C. ii. draw a sequence diagram. 4. 8. System create new appointment and set the intial information of the appointment (i. 3. lecturerID. 10. Based on the information in Figure C. Cancel the Existing Appointment.1. System get the available slots from the lecturer’s schedule within the date range. System displays the available slots. 7.e. The basic flow of Check-out Customer is shown in Figure C.3: i. studentID. Draw a class diagram. and creationDate) 9. Student select Make an Appointment from Main Student Form.3. System displays Make an Appointment Form.e. relationships. System saves the information in the database. You must include the identified classes. The Lecturer’s Appointment Management System consists of a number of use cases that can be initiated by students such as Make an Appointment. attributes. Main Success Scenario (or Basic Flow) – Make an Appointment 1. and View Existing Appointments. Student submit the new appointment. which records the items sold to a customer and handle the payment. Student select the slot for new appointment.2 and the sequence diagram of its Basic Flow is shown in Figure C. from_date and to_date). Check-out Customer is one of the use cases in a Point of Sale (POS) system. Figure C. Student select the name of the lecturer and the date range (i. Identify and list down at least TWO classes that should be added to refine the sequence diagram during the detailed design activity. 3 . 2. price. Cashier enters item identifier. 6. 5. Price calculated from a set of price rules. Customer arrives at POS check-out (or check-out counter) with goods and/or services to purchase. 3. 4.3: The sequence diagram for Main Flow of Check-out Customer use case 4 . System logs completed sale and sends sale and payment information to the external Accounting system (for accounting and commissions) and Inventory system (to update inventory). System records sale line item and presents item description. 10. 11. and running total. Customer pays and System handles payment.Main Success Scenario (or Basic Flow) 1. Customer leaves with receipt and goods (if any). System presents total with taxes calculated. System presents receipt. 7. Cashier starts a new sale. Cashier repeats steps 3-4 until indicates done. Figure C. Cashier tells Customer the total. 9. 2.2: The Basic Flow of Check-out Customer use case Figure C. 8. and asks for payment. relationships between the classes. the user will select the departure and return dates.25 for first 1000 unit 0. Consider a module. telephone number.10 for first 500 unit 0. which represents the system as a whole. mark the seat(s) as "sold". and issue date. d. Next. The system has to record the arrival and departure time of stopovers. Midlands Air wants an e-commerce web site that will enable potential passengers to check flight timetables and will allow flights to be booked and paid for using a credit/debit card. Frequent flyers will have to enter a valid 10-digit PIN in order to get the discount. Then a list of all the available flights will be displayed including dates and times for each flight together with their length and fares. b. Question 8 a. This model should consist of all classes in your system. a. TNB charge a lower rate to users with lower consumption as shown in Table C. and e-mail address. Once the user selects a flight. After that. Like most airlines Midlands Air needs to urgently upgrade its passenger reservation system so that it can handle online flight bookings over the Internet. who pay half fare and frequent flyers. In order to promote saving. Draw an UML Use Case Diagram to represent activities of the system. The ElecBill module is to compute bill payment of electrical consumption for different users. A flight may involve stopovers in airports.50 for first 1500 unit Table C. In your class diagram include a single control object.Question 7 Consider the following description of Midland airline e-commerce system: Midlands Air is a Midlands based airline offering competitive fares on various routes throughout the UK and Europe. Before making a booking.4.25 for the following units 0. User Type Household Office Factory First Rate 0. Produce an UML Sequence Diagram for the use case ‘Make Booking’. postal address. called “ElecBill” which is part of Tenaga National Berhad (TNB) billing application. and which handles all the messages from the user. a user will use the website to select their preferred departure and destination airports where the airline operates. Produce a step by step use case description for the basic course of events of use case ‘Make Booking’. the user should be able to select a flight from the list. The user will be prompted to input the payment details: cardholder name. who get a 10% discount.4: Rate Second Rate 0. The new e-commerce system should be able to handle three categories of potential passengers: adults. card number. and other model elements that you find appropriate. date of birth. their attributes and operations. multiplicity specifications. If the payment is rejected by the secure server the entire transaction will be rolled back and the seat(s) will become available to other users. Produce an UML Class Diagram for the airline e-commerce system.75 for the following units 5 . Of course. who pay full fare. If the payment is authorised the system will book the flight. The system will then transfer control to a separate secure server for credit status confirmation.50 for the following units 0. the system will not display any "fully booked" flights. children (under the age of 15). in order to make the booking he/she needs to enter the details of all intended passengers: name. c. b. Name each class and identify the input of each class in the test-cases. c. Remark: All assignments are individual work. ii. Discuss the TWO differences of the above testing techniques with basic path testing technique. Write test-cases for testing the functionality of this module by using boundary-value analysis technique. They will prepare you for your final examination. not their absence.i. Name each class and identify the input of each class in the test-cases. Write test-cases for testing the functionality of this module by using equivalence partitioning technique. Suggest at which phase the techniques should be planned in verification and validation planning. Explain why testing can only detect the presence of errors. Due date: On or before 26/5/12 6 .