Tutorial 3 EKT 420 SOFTWARE ENGINEERING SEMESTER II 2012/2013
1. What is requirement document?
A collection of requirements that describes what the propose system must do or constraints in the system development. The requirement document should adequately solves the customers problem whereby the whole document represents a negotiated agreement among the stakeholders.
2. You are required by your senior software developer to prepare the requirement document. Elaborate what should be present in the document. The requirement document should include functional and non-functional requirements. Functional requirements describes what the system should do. It includes what inputs the system should accept, what outputs the system should produce, what data the system should store that other systems might use, what computations the system should perform and the timing and synchronization of the activities in the system. Non-functional requirement usually explains the constraints of the system development. The constraints exist in a form of quality, platform and process requirements. The quality requirements specify constraints on the design to meet specified levels of quality. The process requirements specify the project plan and development methods. The platform requirements specify the environment and technology of the system.
3. Discover ambiguities or omissions in the following statement of requirements for part of a ticket-issuing system:
Ambiguities and omissions include: A. Can a customer buy several tickets for the same destination together or must they be bought one at a time? B. Can customers cancel a request if a mistake has been made? C. How should the system respond if an invalid card is input? An automated ticket-issuing system sells rail tickets. Users select their destination and input a credit card and a personal identification number. The rail ticket is issued and their credit card account charged. When the user presses the start button, a menu display of potential destinations is activated, along with a message to the user to select a destination. Once a destination has been selected, users are requested to input their credit card. Its validity is checked and the user is then requested to input a personal identifier. When the credit transaction has been validated, the ticket is issued.
D. What happens if customers try to put their card in before selecting a destination (as they would in ATM machines)? E. Must the user press the start button again if they wish to buy another ticket to a different destination? F. Should the system only sell tickets between the station where the machine is situated and direct connections or should it include all possible destinations?
4. Write a set of non-functional requirements for the ticket-issuing system, setting out its expected reliability and response time. Possible non-functional requirements for the ticket issuing system include: a. Between 0600 and 2300 in any one day, the total system down time should not exceed 5 minutes. b. Between 0600 and 2300 in any one day, the recovery time after a system failure should not exceed 2 minutes. c. Between 2300 and 0600 in any one day, the total system down time should not exceed 20 minutes. All these are availability requirements note that these vary according to the time of day. Failures when most people are traveling are less acceptable than failures when there are few customers. d. After the customer presses a button on the machine, the display should be updated within 0.5 seconds. e. The ticket issuing time after credit card validation has been received should not exceed 10 seconds. f. When validating credit cards, the display should provide a status message for customers indicating that activity is taking place. This tells the customer that the potentially time consuming activity of validation is still in progress and that the system has not simply failed.
5. Explain several techniques to gather information and analyze requirement. A. Observation Read documents and discuss with users Follow users to learn and identify the flow of their work that is to be automated; can also ask the user to explain why she/he did the job that way B. Interviewing Conduct series of interview C. Brainstorming Appoint an experienced moderator Do the session D. Prototyping Paper prototype; draw pictures and/or figures to show sequence of the system/system flow Most common; mock-up system user interface, no need to perform calculation. May also prototype a particular aspect of the system E. Use case analysis 6. Your group of software developers is experiencing difficulties in the domain and requirement analysis phase. What are the possible difficulties and how you can overcome it. Lack of understanding of the domain or the real problem Do domain analysis and prototyping Requirements change rapidly Perform incremental development, build flexibility into the design, do regular reviews Attempting to do too much Document the problem boundaries at an early stage, carefully estimate the time It may be hard to reconcile conflicting sets of requirements Brainstorming, JAD sessions, competing prototypes It is hard to state requirements precisely Break requirements down into simple sentences and review them carefully, look for potential ambiguity, make early prototypes
6. Give examples of requirements to enhance quality in terms of these constraints: A. Response time After customer press Start button, display screen should response within 0.5 seconds The AirAsia credit card verification stage will take less than 15 seconds B. Throughput The system can produce 20% microchip more than previous volume C. Resource usage Automated stock exchange will reduce 50% of the remisiers employment D. Reliability Down time within normal working hours shall not exceed 5 seconds in any one day E. Availability The development of OpenOffice may be utilized not only to Window-based but also Linux-based platform F. Recovery from failure Recovery time after a system failure should not exceed 2 minutes G. Allowances for maintainability Software X allows annual version update inclusive of the product price H. Allowances for reusability Scilab enable user to create users own library
Swedish Software Testing Board (SSTB) International Software Testing Qualifications Board (ISTQB) Advanced Certificate in Software Testing Test Analyst 2012 Practice Examination Questions 2015-03-01