CS 501 Software Engineering Fall 1999 Lecture 5

  • Slides: 19
Download presentation
CS 501: Software Engineering Fall 1999 Lecture 5 (a) Requirements Analysis (continued) (b) Requirements

CS 501: Software Engineering Fall 1999 Lecture 5 (a) Requirements Analysis (continued) (b) Requirements Specification

Administration Assignment 2: See "Course Notices" on web site. Recitation sessions on next two

Administration Assignment 2: See "Course Notices" on web site. Recitation sessions on next two Mondays. Teaching Assistant office hours: See "Administration" on web site.

The Requirements Process Feasibility Study Feasibility Report Requirements Analysis Requirements Definition System Models Requirements

The Requirements Process Feasibility Study Feasibility Report Requirements Analysis Requirements Definition System Models Requirements Specification Definition of Requirements Document Specification of Requirements

Requirements Analysis Methods for data modeling and design Data flow diagrams Entity-relation diagrams Data

Requirements Analysis Methods for data modeling and design Data flow diagrams Entity-relation diagrams Data dictionaries Schema Many of these methods blur the distinction between analysis and design.

Entity-Relation Model A database of entities and relations Tools for displaying and manipulating entity-relation

Entity-Relation Model A database of entities and relations Tools for displaying and manipulating entity-relation diagrams Tools for manipulating the database (e. g. , as input to database design) Warning: There is much confusion about definitions and notation

Entity-Relation Diagram An entity A relation between entities An entity or relation attribute An

Entity-Relation Diagram An entity A relation between entities An entity or relation attribute An inheritance relation

Example: CS 501 Project Major Client 1 Student Project 1 CS 501 Student 5

Example: CS 501 Project Major Client 1 Student Project 1 CS 501 Student 5 to 7 Member of 0: n Person 0: n Tech contact

Example: MARC Catalog Record Caroline R. Arms, editor, Campus strategies for libraries and electronic

Example: MARC Catalog Record Caroline R. Arms, editor, Campus strategies for libraries and electronic information. Bedford, MA: Digital Press, 1990.

MARC Format for Monographs (Books) &001 89 -16879 r 93 &245 Campus strategies for

MARC Format for Monographs (Books) &001 89 -16879 r 93 &245 Campus strategies for libraries and electronic information/Caroline Arms, editor. &260 {Bedford, Mass. } : Digital Press, c 1990. &300 xi, 404 p. : ill. ; 24 cm. &440 EDUCOM strategies series on information technology &504 Includes bibliographical references (p. {373}381). &020 ISBN 1 -55558 -036 -X : $34. 95 &650 Academic libraries--United States--Automation. &650 Libraries and electronic publishing--United States. &700 Arms, Caroline R. (Caroline Ruth)

Entity-Relation Diagram for MARC Book 0: n 1 0: n Describes 0: n Catalog

Entity-Relation Diagram for MARC Book 0: n 1 0: n Describes 0: n Catalog record Short title 1: n Author of Editor of Is about Control numb 0: n Creator 0: n Subject heading

Data Dictionaries A data dictionary is a list of names used by the system

Data Dictionaries A data dictionary is a list of names used by the system Brief definition (e. g. , what is "date") What is it (e. g. , number, relation) Where is it used (e. g. , source, used by, etc. ) May be combined with a glossary As the system is implemented, the data dictionary in the requirements is input to the system data dictionary, which is a formal part of the system specification.

Non-Functional Requirements Product requirements performance, reliability, portability, etc. . . Organizational requirements delivery, training,

Non-Functional Requirements Product requirements performance, reliability, portability, etc. . . Organizational requirements delivery, training, standards, etc. . . External requirements legal, interoperability, etc. . .

Non-Functional Requirements Examples: Privacy: Andrew system Minimizing records: Ne. XT Audit trails and long-term

Non-Functional Requirements Examples: Privacy: Andrew system Minimizing records: Ne. XT Audit trails and long-term archiving Sales and marketing: New England Digital

Unspoken Requirements Example: Resistance to change at XXX

Unspoken Requirements Example: Resistance to change at XXX

Requirements Specification What is the purpose of the Requirements Specification?

Requirements Specification What is the purpose of the Requirements Specification?

Requirements Specification: Purpose 1. It describes the requirements to the stakeholders Expressed in the

Requirements Specification: Purpose 1. It describes the requirements to the stakeholders Expressed in the terms that the stakeholders understand Comprehensible from many viewpoints Reviewed by stakeholders so that they understand implications Must be clear about assumptions (things left out)

Requirements Specification: Purpose 2. It describes the requirements to the implementers As precise and

Requirements Specification: Purpose 2. It describes the requirements to the implementers As precise and specific as possible Expressed in terms that they understand Comprehensible to new team members 3. It records the requirements for the future An essential part of system evolution 4. If may be a contractual document See you in court!

Requirements Specification: Approaches Natural language Structured natural language Design description language Requirements specification language

Requirements Specification: Approaches Natural language Structured natural language Design description language Requirements specification language Graphical notation Formal specification See Sommerville, Chapter 7.

Reading Before next class, read and be ready to discuss: Sommerville: Chapters 9 and

Reading Before next class, read and be ready to discuss: Sommerville: Chapters 9 and 10 pages 157 to 170.