Lecture # 7 System Requirements

Slides:



Advertisements
Similar presentations
Software Requirements
Advertisements

IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
NEES Project Management Workshop June 16 June 18 1 Segment 2.
Introduction to Software Engineering Dr. Basem Alkazemi
CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.
Introduction to Software Engineering
SWE Introduction to Software Engineering
Software Requirements
Software Requirements
SE 555 – Software Requirements & Specifications Introduction
1 Software Requirements Specification Lecture 14.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
Requirements Engineering
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
S/W Project Management
Software Engineering 2003 Jyrki Nummenmaa 1 REQUIREMENT SPECIFICATION Today: Requirements Specification Requirements tell us what the system should.
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Business Analysis and Essential Competencies
Software Requirements Presented By Dr. Shazzad Hosain.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa REQUIREMENT SPECIFICATION Today: Requirements Specification.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Lecture 7: Requirements Engineering
1 Introduction to Software Engineering Lecture 1.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,
CONTENTS OF THE SRS REPORT. Software Requirements Specification (SRS) template The SRS document describes recommended approaches for the specification.
Chapter 4 Software Requirements
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
OHTO -01 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Week 3: Requirement Analysis & specification
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Software Requirements Specification Document (SRS)
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
SmartPosition Customer Review and Feedback Presentation.
1 Software Requirements Descriptions and specifications of a system.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements (utvalgte foiler fra Kap 6 og 7 i Sommerville)
Software Engineering Developing Requirements. © Lethbridge/Laganière 2001 Chapter 4: Developing requirements2 4.1 Domain Analysis The process by which.
 System Requirement Specification and System Planning.
Software Engineering, COMP201 Slide 1 Software Requirements.
System Integration & Architecture
Classifications of Software Requirements
INTRODUCTION.
Chapter 4 – Requirements Engineering
Lecture 2 Developing Requirements
Software Requirements
Presentation on Software Requirements Submitted by
Chapter 4 Requirements Engineering (1/3)
Chapter 4 – Requirements Engineering
Chapter 5 – Requirements Engineering
Requirements Validation – II
Topic for Presentaion-2
SYSTEM ANALYSIS AND DESIGN
Software Requirements
Requirements Analysis and Specification
Chapter 4 Software Requirements
CSC480 Software Engineering
UNIT II.
Requirements Reference: Software Engineering, by Ian Sommerville, 6th edition, Chapters 5, 6, & 8.
Requirements Analysis
Software Requirements Specification Document
Requirements Document
Applied Software Project Management
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

Lecture # 7 System Requirements

Requirements A system cannot be: Analyzed, designed, implemented and evaluated unless the problem is understood and requirements elicited. Requirements are fundamental basis of all the system development processes.

Requirements System architects will always depends on the requirements elicited by the system analyst to design an architectural of the system. Besides much as the system is designed and there is need for integration say: Business unit integration, Legacy integration, New systems integration, Integration of commercial-off-the-shelf (COTS) products, Testing, integrated program management, requirement is the basis.

Sub Topics Requirements elicitation, Documentation, and Maintenance

Core learning outcomes: Compare and contrast the various requirements modeling techniques. Distinguish between non-functional and functional requirements. Identify and classify the roles played by external users of a system. Explain how requirements gathering fits into a system development lifecycle.

What are requirements? Requirements are statements that identify the essential needs of a system in order for it to have value and utility.

IEEE Definition A condition or capability that must be met or possessed by a system...to satisfy a contract, standard, specification, or other formally imposed document. IEEE Std 729

Characteristics of Good Requirement’s Describes What, Not How. Atomic. i.e., it should have a single purpose Unique, so that it should be identified Documented Identifies Its Owner. Approved, After a requirement has been revised, reviewed, and rewritten, it must be approved by its owner. Traceable. A good requirement is traceable; it should be possible to trace each requirement back to its source. Necessary…. Not a Gold-plating

Characteristics of Good Requirement’s Complete. Unambiguous Quantitative and testable Identifies applicable states … minimum Specification States Assumptions. All assumptions should be stated. Use of Shall, Should, and Will. A mandatory requirement should be expressed using the word shall (e.g., "The system shall conform to all state laws Avoids Certain Words. The words optimize, maximize, and minimize should not be used in stating requirements, because we could never prove that we had achieved them.

Requirements Life cycle The User Elicitation Phase Organisation Phase Analysis Phase Prototype Phase Transform to spec Raw Req’ts Organised Req’ts Analysed Req’ts Complete user Req’ts SPEC

Requirement Life Cycle … Elicitation Phase: The starting point of the requirements engineering process is an elicitation process that involves a number of people to ensure consideration of a broad scope of potential ideas and candidate problems Organization Phase: In this step there is no transformation of the requirements, but simple classification and categorization. For example, requirements may be grouped into functional vs. nonfunctional requirements. Analysis Phase: This represents a transformation.

Requirement Life Cycle … Prototype Phase In this way poorly understood requirements may be tested and perhaps strengthened, corrected, or refined. This activity is often done as a proof of concept and serves to induce feedback from both the stakeholders and engineers. Requirements documentation and specification This represents the requirements as the finished product of the stakeholder requirements team. The requirements are compiled into a requirements list or into some equivalent document format. These collected requirements are then transformed into a specification.

Requirements Elicitation, Documentation, and Maintenance

Requirements elicitation Requirements elicitation addresses the gathering and documenting of the true and real requirements for the Information System being developed. Requirements is the needs and /or wants of the user within a problem domain.

Requirements elicitation questions Who will do it? What will be done? Where it will be done? When it will be done? Why it will be done?

Systems Requirements Characteristics or features that must be included to satisfy business requirements Inputs Processes Timing Controls Outputs Data/Information collected can be about; people, organization, work environment.

Fact – Finding Methods Sampling (of existing documentation, forms, and databases). Research Observation of the work environment. Questionnaires. Interviews. Prototyping. Problem reports and enhancement requests for a current system

Types of Requirements User Requirements: Functional requirements These are statements in Natural language, together with its operational constraints. These can be categorised into two; FRs and NFRs Functional requirements Describe what the system should do Non-functional requirements Users expectations about “how well” the product will work, Collectively known as software quality attributes or quality factors, Consists of “Constraints” that must be obeyed to during development (design and implementation), relate to the system as a whole.

Functional requirements 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 The timing and synchronization of the above

Non-functional requirements Non-functional requirements are global constraints on a computer system e.g. development costs, operational costs, performance, reliability, The challenge of Non-functional requirements: Hard to implement and measure Usually stated informally, and so are: often contradictory, difficult to evaluate for the customer prior to delivery

Non-functional requirements Define system properties and constraints e.g. reliability, response time. Non-functional requirements may be more critical than functional requirements. If these are not met, the system is useless.

Examples of NFR Interface requirements Performance requirements how will the new system interface with its environment? User interfaces and “user-friendliness” Interfaces with other systems Performance requirements Time - response time Throughput - transactions per second

Examples of NFR Security Operating requirements Permitted information flows Or who can do what Survivability – e.g. system will need to survive fire natural catastrophes, etc Operating requirements Physical constraints (size, weight), Personnel skill level Environmental conditions

Examples of NFR Lifecycle requirements Limits on development Maintainability, Scalability, Portability, Limits on development E.g. resource availability and methodological standards.

Another View of Requirements In general requirements can be viewed as: User/customer requirements OR System/contract requirements

User/Customer Requirements FRs & NFRs should be stated in: “natural language with the help of forms or simple diagrams describing the expected services of a system under certain constraints”

System Contract Requirements Sets out the System services and constraints in detail. May serve as the basis of contract for implementation of the system Should be complete and consistent

Requirements Documentation There are basically two types of documents realized from the requirements elicitation phase. These include; User Requirements Specification Document System requirements specification Document

User Requirements Specification –URS The URS document outlines precisely what the User (or customer) is expecting from this system. User Requirement Specification may incorporate the functional requirements of the system or may be in a separate document labelled the Functional Requirements Specification - the FRS. The URS has the following information: Functional Requirements Non-Functional Requirements

System Requirements Specification Document A detailed description of the system services. What do we agree to provide? A structured document setting out detailed descriptions of the system services. Written as a contract between client and contractor.