上游充通大学 System Specification vs Analysis Model SHANGHAI JIAO TONG UNIVERSITY Both models focus on the requirements from the user's view of the system. © System specification uses natural language (derived from the problem statement) The analysis model uses formal or semi-formal notation (for example,a graphical language like UML) The starting point is the problem statement Software Engineering
Software Engineering System Specification vs Analysis Model Both models focus on the requirements from the user’s view of the system. System specification uses natural language (derived from the problem statement) The analysis model uses formal or semi-formal notation (for example, a graphical language like UML) The starting point is the problem statement
上游充通大¥ Problem Statement SHANGHAI JIAO TONG UNIVERSITY The problem statement is developed by the client as a description of the problem addressed by the system Other words for problem statement: ·Statement of Work A good problem statement describes The current situation The functionality the new system should support The environment in which the system will be deployed Deliverables expected by the client ·Delivery dates A set of acceptance criteria Software Engineering
Software Engineering Problem Statement The problem statement is developed by the client as a description of the problem addressed by the system Other words for problem statement: • Statement of Work A good problem statement describes • The current situation • The functionality the new system should support • The environment in which the system will be deployed • Deliverables expected by the client • Delivery dates • A set of acceptance criteria
上游充通大¥ SHANGHAI JIAO TONG UNIVERSITY 4.Requirements Elicitation Software Engineering
Software Engineering 4. Requirements Elicitation
上大学4.1 Requirements Elicitation SHANGHAI JIAO TONG UNIVERSITY Challenging activity Requires collaboration of people with different backgrounds User with application domain knowledge Developer with solution domain knowledge (design knowledge, implementation knowledge) Bridging the gap between user and developer: Scenarios:Example of the use of the system in terms of a series of interactions with between the user and the system Use cases:Abstraction that describes a class of scenarios Software Engineering
Software Engineering 4.1 Requirements Elicitation Challenging activity Requires collaboration of people with different backgrounds • User with application domain knowledge • Developer with solution domain knowledge (design knowledge, implementation knowledge) Bridging the gap between user and developer: • Scenarios: Example of the use of the system in terms of a series of interactions with between the user and the system • Use cases: Abstraction that describes a class of scenarios
上浒充通大学 SHANGHAI JIAO TONG UNIVERSITY 4.2 Types of Requirements Functional requirements:Describe the interactions between the system and its environment independent from implementation The watch system must display the time based on its location Nonfunctional requirements:User visible aspects of the system not directly related to functional behavior. The response time must be less than 1 second The accuracy must be within a second 。 The watch must be available 24 hours a day except from 2:00am-2:01 am and3:00am-3:01am Constraints("Pseudo requirements"):Imposed by the client or the environment in which the system will operate The implementation language must be COBOL. Must interface to the dispatcher system written in 1956. Software Engineering
Software Engineering 4.2 Types of Requirements Functional requirements: Describe the interactions between the system and its environment independent from implementation • The watch system must display the time based on its location Nonfunctional requirements: User visible aspects of the system not directly related to functional behavior. • The response time must be less than 1 second • The accuracy must be within a second • The watch must be available 24 hours a day except from 2:00am-2:01am and 3:00am-3:01am Constraints (“Pseudo requirements”): Imposed by the client or the environment in which the system will operate • The implementation language must be COBOL. • Must interface to the dispatcher system written in 1956