Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville1 CSC-3324: Chapter 5 Requirements Engineering Reading: Chap. 6, 7 + annex.

Slides:



Advertisements
Similar presentations
Lecture 5: Requirements Engineering
Advertisements

©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapters 1,3 Slide 1 Software Engineering Software Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Unit 2. Software Lifecycle
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Software Engineering Software Engineering is the science and art of building significant software systems that are: 1) on time 2) on budget 3) with acceptable.
Soft. Eng. II, Spring 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter II Chap1: Software Engineering Models (Review) Mandatory reading: chapter.
Chapter 2 – Software Processes
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Software Processes Coherent sets of activities for specifying, designing, implementing and testing software systems.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirements Engineering Processes
Software Engineering General Project Management Software Requirements
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
1 SWE Introduction to Software Engineering Lecture 5.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 1 (cont ’d) Title : Client requirements (Review) Mandatory reading: I.
Overview of Software Requirements
1 CSC-3324: Chapter 4 Title: What is a requirement? Mandatory reading: Sommerville 6, 7 th ed., Chap.: 7.
Soft. Eng. I, Spring 07Dr Driss Kettani1 CSC-3324: Chapter II The Software life cycle & Software engineering process models Reading: I. Sommerville, Edition.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
1 SWE Introduction to Software Engineering Lecture 11 - Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Chapter 3 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyze and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Software Processes (Chapter 3)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 3 Slide 1 Software Processes l Coherent sets of activities for specifying, designing,
 To describe the principal requirements engineering activities and their relationships  To introduce techniques for requirements elicitation and analysis.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Chapter 4 Requirements Engineering Processes Objectives l To describe the principal requirements engineering activities and their relationships l To.
Lecture 3 Software Engineering Models (Cont.)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Requirements Engineering Overview Senior Design Don Evans.
An Introduction to Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Engineering, 8th edition. Chapter 7 1 Courtesy: ©Ian Sommerville 2006 March 20 th, 2008 Lecture # 12 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 4 Requirements Engineering (3/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
Soft. Eng. I, Spring 2007Dr Driss Kettani, from I. Sommerville1 CSC-3324: Chapter 3 Title: The Feasibility study Mandatory reading: I. Sommerville, Section.
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Requirements Analysis
CS223: Software Engineering Lecture 8: Requirement Engineering.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Software Engineering, 8th edition. Chapter 4 1 Courtesy: ©Ian Sommerville 2006 FEB 13 th, 2009 Lecture # 5 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
 The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the requirements.  However,
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini II. Software Life Cycle.
REQUIREMENTS ENGINEERING PROCESSES Chapter 6. Activities in Requirements Engineering processes  Requirements elicitation;  Requirements analysis; 
Chapter3:Software Processes
Software Engineering Software Engineering is the science and art of
Software Engineering Software Engineering is the science and art of
Presentation transcript:

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville1 CSC-3324: Chapter 5 Requirements Engineering Reading: Chap. 6, 7 + annex

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville2 Wrap up on Chap. 1, 2, 3 & 4... What is Software Engineering (SE) ? The major goal of SE is to produce good software cost effectively… What is good software? In order to produce good software, we need to follow a good SE process… What is a good process? Some SE process models are widely used and universally recognized… Before launching any SE process, we should first be perform a feasibility study... Software engineering is concerned with theories, methods and tools for professional software development Maintainability, Dependability, Efficiency, Usability Understandable, Visible, Supported, Accepted, Reliable, Rapid, etc. Structured set of activities (steps) required to develop a software system.... The waterfall model Separate and distinct phases of specification and development Prototyping development Specification and development are interleaved Component-based development The system is assembled from existing components A quick and cheap study of the project requirements in order to assess the business opportunity, the technology enablers and the schedule...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville3 Wrap up on Chap. 1, 2, 3 & 4... Now we are ready to launch the Requirements Engineering process… Three kinds of Requirements... Common problems in Requirements gathering... Requirements must be documented… Requirements Gathering is an iterative process by its nature… An attribute that the projected system must fulfill… User Requirements, System Requirements and Requirements specifications Precision, Completeness and Consistency... Functional, Non Functional and Domain related Analysis and Requirements Elicitation/Gathering overlaps...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville4 Requirements Engineering... The process of establishing the services that the customer requires from a system and the constraints under which it operates and is developed... The requirements themselves are the descriptions of the system services and constraints that are generated during the requirements engineering process…. Engineering consists of collecting, analyzing, discovering and documenting the requirements in order to better understand and (Re)Present them...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville5 How to ? There are a number of generic and mandatory activities to carry out: Requirements elicitation... Requirements analysis... Requirements validation... Requirements management...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville6 The Conceptual Analysis Process

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville7 The Requirements Definition Document... Collecting... + Analyzing... + Validation with the Client... + Specifying them in a written document Requirements Document: (U.S.R+ models of Data, Processes & Users)… Must be understood by the client…

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville8 KettaCar’s User and System Requirements (U.S.R)

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville9 System models Different models may be produced during the requirements analysis activity... Requirements analysis may involve three structuring activities which result in these different models System models will be developed using Merise method...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville10 System Analysis... Consist of Decomposing, Understanding entities and processes of the current system, and recomposing the whole system in a better way… It focuses on: Processes… (Conceptual Process Model) Data… (Conceptual Data Model) Users… (Interface Model) Usually we start by drawing a global architecture of the system… The conceptual flow diagram Based on Merise Method...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville11 The first step: The Conceptual Flow Diagram In order to understand the current system, its boundaries must be established to determine what must be implemented... These are documented using a description of the system context in term of Users, Data, Processes… The Conceptual Flow Diagram is a global picture that presents an abstract view of the components (data, users and processes) making up a system...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville12 The first step: The Conceptual Flow Diagram The Conceptual Flow Diagram must include major information flows between sub-systems... Must identify different types of functional component in the model... Usually presented as a block diagram...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville13 KettaCar Conceptual Flow Diagram In Merise, we use the Context diagram to present the Conceptual flow diagram… See the annex given in the class

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville14 KettaCar Context Diagram

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville15 An example of CPM

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville16

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville17 The conceptual Architecture... It is directly derived from the context diagram and the different CPMs… The hierarchy of processes in the CPM… The leafs of your architecture are the slots where to write algorithms during the design time… DFDs are obtained from the CPM...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville18 Conceptual Architecture of KettaCar... See the annex given in the class

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville19 Conceptual Data Modeling… See annex SE-CDM…

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville20 From the CDM to the E/R model

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville21 Putting data and Processes together... The goal of confronting data and processes is to ensure that: All the necessary data is available for the processes… There is no data that appear in the CDM but is used by none of the processes...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville22 KettaCar case... See the annex...

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville23 Requirements validation Concerned with demonstrating that the requirements define the system that the customer really wants Requirements error costs are high so validation is very important Fixing a requirements error after delivery may cost up to 100 times the cost of fixing an implementation error

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville24 Requirements checking Validity. Does the system provide the functions which best support the customer’s needs? Consistency. Are there any requirements conflicts? Completeness. Are all functions required by the customer included? Realism. Can the requirements be implemented given available budget and technology Verifiability. Can the requirements be checked?

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville25 Requirements validation techniques Requirements reviews Systematic manual analysis of the requirements Prototyping Using an executable model of the system to check requirements. Test-case generation Developing tests for requirements to check testability Automated consistency analysis Checking the consistency of a structured requirements description

Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville26 Requirements reviews Regular reviews should be held while the requirements definition is being formulated Both client and contractor staff should be involved in reviews Reviews may be formal (with completed documents) or informal. Good communications between developers, customers and users can resolve problems at an early stage