Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering Chapter 6 Software requirements Ku-Yaw Chang Assistant Professor Department of Computer Science and Information.

Similar presentations


Presentation on theme: "Software Engineering Chapter 6 Software requirements Ku-Yaw Chang Assistant Professor Department of Computer Science and Information."— Presentation transcript:

1 Software Engineering Chapter 6 Software requirements Ku-Yaw Chang canseco@mail.dyu.edu.tw Assistant Professor Department of Computer Science and Information Engineering Da-Yeh University

2 2Ku-Yaw ChangSoftware 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

3 3Ku-Yaw ChangSoftware Requirements Preamble Requirements Descriptions of the services provided by the system and its operational constraints 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 The process of finding out, analyzing, documenting and checking these services and constraints

4 4Ku-Yaw ChangSoftware Requirements Preamble Different level of descriptions User requirements 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 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

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

6 6Ku-Yaw ChangSoftware 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.

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

8 8Ku-Yaw ChangSoftware 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

9 9Ku-Yaw ChangSoftware Requirements 6.1 Functional and non-functional requirements Functional requirements Statements of services 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 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 From the application domain of the system and that reflect characteristics of that domain

10 10Ku-Yaw ChangSoftware Requirements 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.

11 11Ku-Yaw ChangSoftware Requirements 6.1.2 Non-functional requirements

12 12Ku-Yaw ChangSoftware Requirements 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 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. 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. 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.

13 13Ku-Yaw ChangSoftware Requirements Metrics for specifying non-functional requirements

14 14Ku-Yaw ChangSoftware Requirements 6.1.3 Domain requirements Be derived from the application domain Not from the specific needs of system users 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. 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. 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.

15 15Ku-Yaw ChangSoftware 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

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

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

18 18Ku-Yaw ChangSoftware Requirements 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.

19 19Ku-Yaw ChangSoftware 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

20 20Ku-Yaw ChangSoftware 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

21 21Ku-Yaw ChangSoftware Requirements Interface Specification Three types Procedural interfaces Application Programming Interfaces (APIs) Application Programming Interfaces (APIs) Data structures Representation of data Such as the ordering of bits Such as the ordering of bits

22 22Ku-Yaw ChangSoftware Requirements PDL interface description

23 23Ku-Yaw ChangSoftware 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

24 24Ku-Yaw ChangSoftware Requirements Software Requirements Specification (SRS) The official statement of what is required of the system developers Include both a definition of user requirements a definition of user requirements a specification of the system requirements a specification of the system requirements It is NOT a design document. It should set of WHAT the system should do rather than HOW it should do it It should set of WHAT the system should do rather than HOW it should do it

25 25Ku-Yaw ChangSoftware Requirements Users of a Requirements Document

26 26Ku-Yaw ChangSoftware Requirements IEEE Requirements Standard IEEE/ANSI 830-1998 (IEEE, 1998) Defines a generic structure for a requirements document that must be instantiated for each specific system Defines a generic structure for a requirements document that must be instantiated for each specific systemIntroduction General description Specific requirements AppendicesIndex

27 27Ku-Yaw ChangSoftware Requirements Requirements Document Structure PrefaceIntroductionGlossary User requirements definition System architecture System requirements specification System models System evolution AppendicesIndex

28 28Ku-Yaw ChangSoftware 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


Download ppt "Software Engineering Chapter 6 Software requirements Ku-Yaw Chang Assistant Professor Department of Computer Science and Information."

Similar presentations


Ads by Google