Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering Chapter 6 Software requirements

Similar presentations


Presentation on theme: "Software Engineering Chapter 6 Software requirements"— Presentation transcript:

1 Software Engineering Chapter 6 Software requirements
Ku-Yaw Chang Assistant Professor Department of Computer Science and Information Engineering Da-Yeh University

2 Software Requirements
Objectives Understand the concepts of user requirements and system requirements and why these requirements should be written in different ways Understand the differences between functional and non-functional software requirements Understand how requirements may be organized in a software requirements document Ku-Yaw Chang Software Requirements

3 Software Requirements
Preamble Requirements Descriptions of the services provided by the system and its operational constraints Requirements engineering (RE) The process of finding out, analyzing, documenting and checking these services and constraints Ku-Yaw Chang Software Requirements

4 Software Requirements
Preamble Different level of descriptions User requirements Statements of what services the system is expected to provide and the constraints under which it must operate In a natural language plus diagrams System requirements Set out the system’s functions, services and operational constraints in detail Should be precise, also called functional specification Define exactly what is to be implemented Ku-Yaw Chang Software Requirements

5 Software Requirements
Preamble User requirement definition 1. LIBSYS shall keep track of all data required by copyright licensing agencies in the UK and elsewhere Ku-Yaw Chang Software Requirements

6 Software Requirements
Preamble System requirement definition 1.1 On making a request for a document from LIBSYS, the requestor shall be presented with a form that records details of the user and the request made. 1.2 LIBSYS request forms shall be stored on the system for five years from the date of the request. 1.3 All LIBSYS request forms must be indexed by user, by the name of the material requested and by the supplier of the request. 1.4 LIBSYS shall maintain a log of all requests that have been made to the system. 1.5 For material where authors’ lending rights apply, loan details shall be sent monthly to copyright licensing agencies that have registered with LIBSYS. Ku-Yaw Chang Software Requirements

7 Readers of different types of specification
Client managers System end-users Client engineers Contractor managers System architects User requirements System end-users Client engineers System architects Software developers System requirements Ku-Yaw Chang Software Requirements

8 Software Requirements
Contents 6.1 Functional and non-functional requirements 6.2 User requirements 6.3 System requirements 6.4 Interface specification 6.5 The software requirements document 6.6 Exercises Ku-Yaw Chang Software Requirements

9 6.1 Functional and non-functional requirements
Statements of services the system should provide how the system should react to particular inputs how the system should behave in particular situations Non-functional requirements Constraints on the services or functions offered by the system timing constraints constraints on the development process, standards, etc. Domain requirements From the application domain of the system and that reflect characteristics of that domain Ku-Yaw Chang Software Requirements

10 6.1.1 Functional requirements
Examples for a university library system called LIBSYS 1. The user shall be able to search either all of the initial set of databases or select a subset from it. 2. The system shall provide appropriate viewers for the user to read documents in the document store. 3. Every order shall be allocated a unique identifier (ORDER_ID), which the user shall be able to copy to the account’s permanent storage area. Ku-Yaw Chang Software Requirements

11 6.1.2 Non-functional requirements
Ku-Yaw Chang Software Requirements

12 Examples of non-functional requirements
Product requirement 8.1 The user interface for LIBSYS shall be implemented as simple HTML without frames or java applets Organizational requirement 9.3.2 The system development process and deliverable documents shall conform to the process and deliverables defined in XYZCo-SP-STAN-95. External requirement 10.6 The system shall not disclose any personal information about system users apart from their name and library reference number to the library staff who use the system. Ku-Yaw Chang Software Requirements

13 Metrics for specifying non-functional requirements
Ku-Yaw Chang Software Requirements

14 Software Requirements
6.1.3 Domain requirements Be derived from the application domain Not from the specific needs of system users Reflect fundamentals of the application domain Examples There shall be a standard user interface to all databases that shall be based on the Z39.50 standard. Because of copyright restrictions, some documents must be deleted immediately on arrival. Depending on the user requirements, these documents will either be printed locally on the system server for manual forwarding to the user or routed to a network printer. Ku-Yaw Chang Software Requirements

15 Software Requirements
Contents 6.1 Functional and non-functional requirements 6.2 User requirements 6.3 System requirements 6.4 Interface specification 6.5 The software requirements document 6.6 Exercises Ku-Yaw Chang Software Requirements

16 Software Requirements
User requirements Describe the functional and non-functional requirements Be understandable by system users without detailed technical knowledge Should Simple language, simple tables and forms and intuitive diagrams Should not Software jargon, structured notations or formal notations, system implementation Ku-Yaw Chang Software Requirements

17 Software Requirements
User requirements Various problems Lack of clarity Requirements confusion Requirements amalgamation Ku-Yaw Chang Software Requirements

18 A user requirement for an accounting system in LIBSYS
4.5 LIBSYS shall provide a financial accounting system that maintains records of all payments made by users of the system. System managers may configure this system so that regular users may receive discounted rates. Ku-Yaw Chang Software Requirements

19 Software Requirements
Contents 6.1 Functional and non-functional requirements 6.2 User requirements 6.3 System requirements 6.4 Interface specification 6.5 The software requirements document 6.6 Exercises Ku-Yaw Chang Software Requirements

20 Software Requirements
Contents 6.1 Functional and non-functional requirements 6.2 User requirements 6.3 System requirements 6.4 Interface specification 6.5 The software requirements document 6.6 Exercises Ku-Yaw Chang Software Requirements

21 Software Requirements
Contents 6.1 Functional and non-functional requirements 6.2 User requirements 6.3 System requirements 6.4 Interface specification 6.5 The software requirements document 6.6 Exercises Ku-Yaw Chang Software Requirements

22 Software Requirements
Contents 6.1 Functional and non-functional requirements 6.2 User requirements 6.3 System requirements 6.4 Interface specification 6.5 The software requirements document 6.6 Exercises Ku-Yaw Chang Software Requirements


Download ppt "Software Engineering Chapter 6 Software requirements"

Similar presentations


Ads by Google