Requirements Engineering

Slides:



Advertisements
Similar presentations
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 12, Software Life Cycle.
Advertisements

Computer Science Department
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering September 12, 2001 Capturing.
10 Software Engineering Foundations of Computer Science ã Cengage Learning.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
:: 1 :: What is a requirement? Standard Definition Something the product must do or a quality the product must have. More Ways to Characterize Something.
Unit 211 Requirements Phase The objective of this section is to introduce software system requirements and to explain different ways of expressing these.
CS350/550 Software Engineering Lecture 1. Class Work The main part of the class is a practical software engineering project, in teams of 3-5 people There.
Requirement engineering for an online bookstore system
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
DCT 1123 PROBLEM SOLVING & ALGORITHMS INTRODUCTION TO PROGRAMMING.
Software Engineering CS B Prof. George Heineman.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
Requirements Engineering Requirements Elicitation Requirements Analysis Requirements Validation Requirements Management.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa REQUIREMENT SPECIFICATION Today: Requirements Specification.
The Software Development Life Cycle. Software Development SDLC The Software Development Life-Cycle Sometimes called the program development lifecycle.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
Requirements Collection By Dr. Gabriel. Requirements A requirement is any function, constraint, or property that the system must provide, meet, or satisfy.
Requirements Engineering Southern Methodist University CSE 7316 – Chapter 3.
1 CMPT 275 High Level Design Phase Modularization.
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
1 Team Skill 1 - Analyzing the Problem Continued and Product Features and Challenges Sriram Mohan.
Software Engineering Lecture # 1.
(c) Adaptive Processes Consulting Be with the Best!
Know what a computer is used for Understand the difference between hardware and software Be able to describe the way that data is stored in a computer.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 Click to edit Master title style What is Business Analysis Body of Knowledge?
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Analyzing the Problem.
1 Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 A Typical Example of Software Lifecycle Activities.
 System Requirement Specification and System Planning.
Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the solution domain –The solution domain is changing very rapidly.
Bernd Bruegge and Allen Dutoit Requirements Process The requirements process consists of two activities: Requirements Elicitation: Definition of the system.
Pepper modifying Sommerville's Book slides
Review of last class Software Engineering Modeling Problem Solving
AP CSP: The Need for Programming Languages and Algorithms
CMPE 280 Web UI Design and Development August 29 Class Meeting
Chapter 5 – Requirements Engineering
Outline Requirement Elicitation Problem Statement
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Software Lifecycle Activities
Requirements analysis, representation and validation
Requirements Analysis and Specification
The Need for Algorithms 2 days
IS442 Information Systems Engineering
CSC480 Software Engineering
Chapter 4, Requirements Elicitation
Chapter 1 Introduction.
Chapter 4, Requirements Elicitation
Software Requirements analysis & specifications
Chapter 4, Requirements Elicitation
Unit 6: Application Development
Design and Implementation
Chapter 4, Requirements Elicitation
Introduction To software engineering
Requirements Engineering
Software requirements
Software Verification, Validation, and Acceptance Testing
Project Meeting 23 Oct 2002.
CSC 480 Software Engineering
Lecture # 7 System Requirements
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Requirements Engineering Tutorial
Dr. Jiacun Wang Department of Software Engineering Monmouth University
Project Meeting.
Requirements Engineering
Presentation transcript:

Requirements Engineering April 25, 2019 Requirements Engineering Tutorial

Requirements Engineering Tutorial Tutorial outline Requirements engineering Basic concepts Requirements engineering process for ARENA REQuest: Live Demonstration REQuest: Guidelines Summary & next steps Another interesting issue with finding objects is to define which objects are inside the application domain and which ones are outside of it. Sometimes it helps you to get a clearer understanding of the overall system. Look at the figure in this slide. What does it show? A bunch of black and white dots? Given that I will tell you that it contains a system (that is an object model can be found) how would you start with looking for objects? Turn the slide around. Turn it upside down. Look at the “problem domain” from all angles. And suddenly you might experience what I would call the “gestalt experience”. You will see the application domain. Now there is no recipe for finding it. You might find a very low level object, such as an ear or you might find a high level object such as the shape of a dog. In fact, if you look carefully you will find a dalmatian dog. Once you understand that you are looking at a dog, a lot of the black and white pixels in the total figure are not part of your system and you can easily find the boundary of the system by trying to trace the outline of the Dalmatian. However, don’t be lured into thinking that this is the system you have been looking for. Always be alert that the real system might be something totally different. For example, if you turn the dog upside down, you might be able to see an eagle taking off from a river, with a poor dead victim in its claws! April 25, 2019 Requirements Engineering Tutorial

Problem Lifecycle of a software project 1.The client’s needs 2. Requirements Analysis 3. After system design 4. After implementation Clients and developers often have different backgrounds and “speak another language” Requirements have to be fulfilled to make a project successful April 25, 2019 Requirements Engineering Tutorial

Solution Requirements Engineering Clients Developers Analysis Document Requirements Engineering Clients Developers Requirements Analysis Review … can solve the communication problem … April 25, 2019 Requirements Engineering Tutorial

Requirements Engineering Application Domain Objects Subsystems class... Solution Domain Source Code Test Cases ? Expressed in Terms Of Structured By Implemented By Realized By Verified System Design Object Implemen- tation Testing class.... Requirements Elicitation Use Case Model Analysis A requirement is a feature that the system must have or a constraint that it must satisfy to be accepted by the client. April 25, 2019 Requirements Engineering Tutorial

Requirements Analysis Document A RAD includes 3 descriptions: Requirements Elicitation: Use case model Requirements: What do users do? Interactions: How do users use the system? Requirements elicitation => output: specification that the client understands Analysis => output: model that the developers can interpret Analysis: Requirements analysis model (object model) Specification: What does the system do? April 25, 2019 Requirements Engineering Tutorial

RAD: Levels of descriptions User tasks describe domain Le v el 2 el 1 el 3 el 4 Use Cases describe interactions Services describe system April 25, 2019 Requirements Engineering Tutorial