Requirements Engineering

Size: px
Start display at page:

Download "Requirements Engineering"

Transcription

1 Requirements Engineering Software Engineering Theory Kristian Sandahl / Lena Buffoni Department of Computer and Information Science

2 What is a software requirement? 2 Intuitively: A property or behaviour we want from a system More formally: Software requirements express the needs and constraints placed on a software product that contribute to the solution of some real-world problems. (Kotonya and Sommerville, 2000) A requirement is something the product must do or a quality it must have. (Suzanne & James Robertson, 2006)

3 Title/Lecturer MARCH 24, Examples Web shop: When the user enters type of T-shirt, the system shall show a palette of available colors. LIU Intranet: A password must contain a combination of literals and numerals and be at least 8 characters long Car simulator: - The feel of the brakes must be realistic

4 4 Why are Requirements Important? Requirements Engineering is an important part of the early phases in system design Errors in system requirements cause large cost increase in product development, or even completely failed projects

5 How do you write a natural language requirement? 5 To avoid misunderstandings, always use a complete sentence. A sentence expresses a complete thought and consists of a subject and a predicate. Use modal verbs: shall, will, and must Don t use: should, would, or might Be careful with quantifiers all, never, each Timely review should be done as soon as possible, and shall not exceed two working weeks. (TS/ISO 16949)

6 Functional requirements 6 Describe the behaviour or features of a software. Can be tested by giving input and checking the output. Example: The user shall be able to add an item to the shopping basket.

7 Functional requirements 7 Think of the mathematical definition: a function is a relation between a set of inputs and a set of permissible outputs with the property that each input is related to exactly one output. Save document on exit function f(x)=y Result {yes, no} f(yes) = document saved f(no) = changes discarded

8 8 Non-functional requirements Design constraints, limiting the solution space Example: The system shall be implemented in php. Quality requirements, possible to measure Example: The minimum response time is 2.0 seconds

9 Title/Lecturer Other domains for non functional requirements MARCH 24, Scalability Reliability Security and encryption Environmental Maintainability Usability Not all easily verifiable!

10 Title/Lecturer MARCH 24, User interface requirements An integral part of most applications now and often a major selling point for the customer easy to operate quick in response effectively handling operational errors simple yet consistent user interface user-centric Ok. Go into menu Settings Preferences Advanced Double click the square Jump 3 times on one foot.

11 Features 11 A distinguishing characteristic of a system item (includes both functional and nonfunctional attributes such as performance and reusability). (IEEE Std 829) Higher level stuff, used in advertising: The system shall have an SMS delivery notification service. R1: The user phone number shall be pretty-printed in the format: 07x xxx xx xx R3: The user shall be notified at maximum 30 minutes after arrival to the pick-up point. R2: The delivery tracking system shall interface the DHL system.

12 12 Organize the Software Requirement Specification (SRS) Example from IEEE Std Functional requirements Show colors When the user enters type of T-shirt, the system shall show a palette of available colours Add to shopping basket The user shall be able to add an item to the shopping basket. 3.3 Performance requirements Response time The minimum response time is 2.0 seconds. 3.4 Design constraints The system shall be implemented in php.

13 If a more thorough description is needed Show colors Input variables Type of T-shirt Output variables Set of color codes Processing 1. Query database for available colors of Type of T-shirt. 2. Create a set of color codes. 3. Send color codes to palette viewer

14 Alternative ways of organizing requirements System features SMS notification Purpose of SMS notification The system shall have an SMS delivery notification service so customers can collect their delivery as fast as possible Stimulus/response sequence When the delivery is has arrived to the pick-up point, notify the user Associated functional requirements Number format The user phone number shall be pretty-printed in the format: 07x xxx xx xx Change number..

15 SRS contents IEEE Std Introduction 1.1 Purpose 1.2 Scope 1.3 Definitions, acronyms and abbreviations 1.4 References 1.5 Overview 2 Overall description 2.1 Product perspective 2.2 Product functions 2.3 User characteristics 2.4 General constraints 2.5 Assumptions and dependencies 2.6 Lower ambition levels 3 Specific requirements 3.1 Interface requirements User interfaces Hardware interfaces Software interfaces Communication interfaces 3.2 Functional requirements 3.3 Performance requirements 3.4 Design constraints 3.5 Software system attributes 3.6 Other requirements 4 Supporting information 4.1 Index 4.2 Appendices

16 SRS contents IEEE Std Describe purpose of this SRS Describe intended audience 16 1 Introduction 1.1 Purpose Identify the software product Enumerate what the system will and will not do Describe user classes and benefits for each 1.2 Scope 1.3 Definitions, acronyms and abbreviations 1.4 References 1.5 Overview 2 Overall description 2.1 Product perspective 2.2 Product functions 2.3 User characteristics 2.4 General constraints 2.5 Assumptions and dependencies 2.6 Lower ambition levels Define the vocabulary of the SRS (may reference appendix) List all referenced documents including sources (e.g., Use Case Model and Problem Statement; Experts in the field) Describe the content of the rest of the SRS Describe how the SRS is organized

17 SRS contents IEEE Std Introduction 1.1 Purpose 1.2 Scope Present the business case and operational concept of the system Describe how the proposed system fits into the business context Describe external interfaces: system, user, hardware, software, communication Describe constraints: memory, operational, site adaptation 1.3 Definitions, acronyms and abbreviations 1.4 References 1.5 Overview Summarize the major functional capabilities Include the Use Case Diagram and supporting narrative (identify actors and use cases) Include Data Flow Diagram if appropriate 2 Overall description 2.1 Product perspective 2.2 Product functions 2.3 User characteristics 2.4 General constraints 2.5 Assumptions and dependencies 2.6 Lower ambition levels Describe and justify technical skills and capabilities of each user class Describe other constraints that will limit developer s options; e.g., regulatory policies; target platform, database, network software and protocols, development standards requirements

18 SRS contents IEEE Std Introduction 1.1 Purpose 1.2 Scope 1.3 Definitions, acronyms and abbreviations 1.4 References 1.5 Overview 2 Overall description 2.1 Product perspective 2.2 Product functions 2.3 User characteristics 2.4 General constraints 2.5 Assumptions and dependencies 2.6 Lower ambition levels 3 Specific requirements 3.1 Interface requirements User interfaces Hardware interfaces Software interfaces Communication interfaces 3.2 Functional requirements 3.3 Performance requirements 3.4 Design constraints 3.5 Software system attributes 3.6 Other requirements 4 Supporting information 4.1 Index 4.2 Appendices

19 19 Pros and cons of IEEE 830 Cons Takes some time to read and understand Very general, needs to be tailored Is no guarantee for a good SRS Pros Good checklist Many ways to adapt organization Many ways to detail requirements You don t need to have everything in

20 20 Requirements specification Requirements in a good SRS are: Numbered Inspected Prioritised Unambiguous Testable Complete Consistent Traceable Feasible Modifiable Useful for: operation maintenance customer developer. Who is the reader?

21 21 Iterative process Collect user requirements Elicitation Check that it matches user/customer requirements Validattion Analysis Understand Specification Document/build

22 Elicitation 22 needs needs Purpose: Understand the true needs of the customer Trace future implementation to needs Sources: Goals Carol the customer Domain knowledge Stakeholders Environment Robert the requirements engineer Techniques: Interviews Scenarios Prototypes Facilitated meetings Observation

23 23 Interviews Process: Start Q & A Summary teach-back Thank you! What s next Kinds: Structured Unstructured Tips: Be 2 interviewers shift roles Plan the interview Don t stick to the plan use feelings Let the customer talk Alternate between open-ended and yes/no questions Prepare ice-breakers Probe thinking Look for body language Think of human bias Why do you get the answers you get?

24 Elicitation 24 If I d asked my customers what they wanted, they d have said a faster horse. Henry Ford

25 Title/Lecturer MARCH 24, Prototyping Consistent with requirement specification Clear scope Provide and execute a test scenario Minimize throwaway code

26 Requirements analysis goals 26 Validattion Elicitation Specification Analysis Detect and resolve conflicts between requirements Discover bounds of software Define interaction with the environment Elaborate high-level requirements to derive detailed requirements Classify requirements for more effective management Often accomplished with conceptual modelling

27 27 Requirements classification Functional vs non-functional requirements Source Product or process requirements Priority Scope in terms of affected components Volatility vs stability

28 28 Conceptual Modelling Representation in semi-formal notation Often diagrammatic representation Examples: Object-orientation, use-cases, state-machines Activity diagrams Data flow diagrams Entity-relationship models

29 29 Use-case modelling A use-case is: a particular form or pattern or exemplar of usage, a scenario that begins with some user of the system initiating some transaction of sequence of interrelated events. Jacobson, m fl 1992: Object-oriented software engineering. Addison-Wesley

30 30 Use-case diagram of a single use-case A Coffee Drinker approaches the machine with his cup and a coin of SEK 5. He places the cup on the shelf just under the pipe. He then inserts the coin, and presses the button for coffee to get coffee according to default settings. Optionally he might use other buttons to adjust the strength and decide to add sugar and/or whitener. The machine processes the coffee and bell when it is ready. The Coffee Drinker takes his cup from the shelf.

31 Use-case diagram of a single use-case 31 Actor: a user of Association the system in a particular role. Can be human or system. CoffeeDrinker Use-case name (verb phrase) Description of use-case Buy a cup of coffee Use-case A CoffeeDrinker approaches the machine with his cup and a coin of SEK 5. He places the cup on the shelf just under the pipe. He then inserts the coin, and presses the button for coffee to get coffee according to default settings. Optionally he might use other buttons to adjust the strength and decide to add sugar and/or whitener. The machine processes the coffee and bell when it is ready. The CoffeeDrinker takes his cup from the shelf.

32 32 Use-case diagram for the coffee-machine CoffeDrinker Subject boundary Subject Buy a cup of coffe Get coin in return CoffeeMachine Clean the Machine Add ingredients Collect coins Service Subject name TeaDrinker Pour hot water Brew a can of coffee Porter

33 Relations between use-cases Extend loan <<include>> BookBorrower Borrow copy of book <<include>> Check for reservation Reuse <<extend>> Refuse loan Stereotype: extended classification of meaning Separating scenarios

34 Identifying classes: noun analysis 34 A CoffeeDrinker approaches the machine with his cup and a coin of SEK 5. He places the cup on the shelf just under the pipe. He then inserts the coin, and press the button for coffee to get coffee according to default settings. Optionally he might use other buttons to adjust the strength and decide to add sugar and/or whitener. The machine processes the coffee and bell when it is ready. The CoffeeDrinker takes his cup from the shelf. machine real noun handled by the system cup unit for beverage coin detail of user and machine shelf detail of machine pipe detail of machine button handled by the system sugar detail of coffee whitener detail of coffee cup of coffee handled by the system indicator not discovered

35 The coffee machine class model 35 Interface CoinHandler Brewer CoffeeCustomer 1 buys * CupOfCoffee makes 0..* machine Porter byus * CanOfCoffee

36 Data model: ER-diagram 36 Student Name Personal number Curriculum Enrolled-in Course Subject Course code Max-enrolment

37 Elicitation Specification 37 Validattion Analysis needs needs Specification Carol the customer Robert the requirements engineer SRS There is no perfect specification, but you can write a good one The RS, or SRS avoids many misunderstandings The RS is of special importance in outsourcing programming

38 38 User stories lightweight alternative As a (role) I want (something) so that (benefit) As a student I want to buy a parking card so that I can drive the car to school. Priority: 3 Estimate: 4 Good for: Smaller (sub-)projects Frequent releases User feed-back Prototyping Elicitation Functional requirements See more at:

39 Elicitation Means of validation 39 Validattion Specification Analysis Prototyping Simulation Software Reviews Model checking Formal proofs Acceptance testing Traceability is key to validation!

40 The role of requirements in the life-cycle 40 fuzziness Tim the tester Carol the customer Diana the developer elicitation specification modelling time formalisation

41 41 Quality factors Correctness Reliability Efficiency Usability Integrity Maintainability Flexibility Testability Security Portability Reusability Interoperability Survivability Safety Manageability Supportability Replaceability Functionality Cost? Priorities? Trade-offs?

42 Usability and Security 42

43 Usability Engineering 43 Maturation / Knowledge Iterative Process Evaluate goals of Relevance Efficiency Attitude Learnability Risk Time Methods: automated /non-automated

44 44 Reliability The probability that the software executes with no failures during a specified time interval Approximation: MTTF/(1+MTTF) Easier to manage: Failure intensity, [failures / hours of execution time] Another approximation: λ = (1-R)/t

45 Failure intensity guideline 45 Impact Failure intensity Time btwn failures Hundreds of deaths, $10 9 cost years 1-2 deaths, $10 6 cost years $1000 cost weeks $100 cost h $10 cost h $1 cost 1 1 h

46 Things to keep an eye on 46 Human bias: We tend to be more detailed in areas where we already have good knowledge. Deleted requirements: The more we invest in working with requirements, the more we lose when they are deleted Benefit of detail P(change)

47

Functional requirements and acceptance testing

Functional requirements and acceptance testing Functional requirements and acceptance testing Lecture 3 Software Engineering TDDC88/TDDC93 autumn 2007 Department of Computer and Information Science Linköping University, Sweden Message from the course

More information

REQUIREMENTS ENGINEERING

REQUIREMENTS ENGINEERING 1 REQUIREMENTS ENGINEERING Chapter 4- by Ian Sommerville TOPICS COVERED Functional and non-functional requirements The software requirements document Requirements specification Requirements engineering

More information

Requirements Engineering

Requirements Engineering Requirements Engineering Professor Ray Welland Department of Computing Science University of Glasgow E-mail: ray@dcs.gla.ac.uk The Importance of Requirements Identifying (some) requirements is the starting

More information

Requirements elicitation: Finding the Voice of the Customer

Requirements elicitation: Finding the Voice of the Customer Requirements elicitation: Finding the Voice of the Customer Establishing customer requirements for a software system Identify sources of user requirements on your project Identify different classes of

More information

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB Requirements Engineering Massimo Felici Room 1402, JCMB, KB 0131 650 5899 mfelici@inf.ed.ac.uk Administration SEOC1 Tutorials start in week 3 SEOC1 Communications: Mailing List: seoc1-students@inf.ed.acuk

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering 2. Requirements Collection Mircea F. Lungu Based on a lecture by Oscar Nierstrasz. Roadmap > The Requirements Engineering Process > Functional and non-functional requirements

More information

Requirements Engineering. Andreas Zeller Saarland University

Requirements Engineering. Andreas Zeller Saarland University Requirements Engineering Software Engineering Andreas Zeller Saarland University Communication project initiation requirements gathering Planning estimating scheduling tracking Waterfall Model (1968) Modeling

More information

Development Process and Analysis. LTOOD/OOAD - Verified Software Systems 1

Development Process and Analysis. LTOOD/OOAD - Verified Software Systems 1 Development Process and Analysis LTOOD/OOAD - Verified Software Systems 1 Software Crisis Declared in the late 60 s Expressed by delays and failures of major software projects (unreached goals, unpredictable

More information

Requirements engineering

Requirements engineering Requirements engineering Paul Jackson School of Informatics University of Edinburgh What are requirements? Traditional to distinguish functional from non-functional requirements. Functional requirements

More information

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement Requirements Knowledge Model This model provides a language for communicating the knowledge that you discover during requirements-related activities. We present it here as a guide to the information you

More information

Requirements Engineering

Requirements Engineering Requirements Engineering Software Engineering Andreas Zeller Saarland University Requirements Engineering The Real World Requirements Engineering A description of what the system should do (but not how)

More information

version NDIA CMMI Conf 3.5 SE Tutorial RE - 1

version NDIA CMMI Conf 3.5 SE Tutorial RE - 1 Requirements Engineering SE Tutorial RE - 1 What Are Requirements? Customer s needs, expectations, and measures of effectiveness Items that are necessary, needed, or demanded Implicit or explicit criteria

More information

Requirements Engineering with Use Cases

Requirements Engineering with Use Cases Requirements Engineering with Use Cases Csaba Veres Outline What are use cases? What do they tell us? How can you write them (properly)? What is a use case? A use case specifies the behavior of a system

More information

It will also enable you to manage the expectations of your clients or management, as they will know exactly what to expect.

It will also enable you to manage the expectations of your clients or management, as they will know exactly what to expect. Functional Specification / Requirement Document (FSD / FRD) The Functional Specification Document (FSD) in software development is a formal document that describes the functions of the software/system

More information

8/30/2010. Lecture 1. Topics covered. Functional and non-functional requirements The software requirements document Requirements specification

8/30/2010. Lecture 1. Topics covered. Functional and non-functional requirements The software requirements document Requirements specification Topics covered Functional and non-functional requirements The software requirements document Chapter 4 Requirements Engineering Requirements specification Requirements engineering processes Lecture 1 Requirements

More information

Information Technology Audit & Cyber Security

Information Technology Audit & Cyber Security Information Technology Audit & Cyber Security Use Cases Systems & Infrastructure Lifecycle Management OBJECTIVES Understand the process used to identify business processes and use cases. Understand the

More information

Volere Requirements: How to Get Started

Volere Requirements: How to Get Started Requirements: How to Get Started Since its introduction in 1995, the approach to requirements has been adopted by thousands of organizations around the world. We felt that it was time to summarize some

More information

Software Engineering (CSC 4350/6350) Rao Casturi

Software Engineering (CSC 4350/6350) Rao Casturi Software Engineering (CSC 4350/6350) Rao Casturi Recap UML Introduction Basic UML concepts 2 Basic Notations of UML Requirement Phase Analysis Phase Design Phase Object Design Phase 1. Use Case Diagrams

More information

Use cases. Version 2.6 November 2015

Use cases. Version 2.6 November 2015 Use cases Version 2.6 November 2015 Maurizio Morisio, Marco Torchiano, 2014 Requirements Document 1. Purpose and scope 2. The terms used / Glossary 3. The use cases 4. The technology to be used 5. Other

More information

Change is constant. Obstacle to RE: Why requirement study? Limitation of the designers Different knowledge domains Not expertise Ubiquitous nature

Change is constant. Obstacle to RE: Why requirement study? Limitation of the designers Different knowledge domains Not expertise Ubiquitous nature Design the right thing! Fang Chen Change is constant Requirement Design Creation What makes the change? Human nature Society Organization i Competitors Human nature: never satisfy ) 4 Why requirement study?

More information

Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Types of S/W Requirements. Levels of S/W Requirements

Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Types of S/W Requirements. Levels of S/W Requirements Requirements Overview importance of getting right difficulty of getting right types and levels of characteristics of good the Requirements Development Process inception gathering, classification evaluation

More information

Requirement Engineering. L3 The requirement study. Change is constant. Communication problem? People are hard to understand!

Requirement Engineering. L3 The requirement study. Change is constant. Communication problem? People are hard to understand! Requirement Engineering L3 The requirement study Fang Chen Requirement are ubiquitous part of our lives Understand the requirement through communication Requirement Creation Communication problem? People

More information

Requirements Engineering and Software Architecture Project Description

Requirements Engineering and Software Architecture Project Description Requirements Engineering and Software Architecture Project Description Requirements Engineering Project Description The project is student-driven. There will be external sponsors, users, and others that

More information

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs.

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs. What are requirements? Basics of Requirement Engineering Muzaffar Iqbal Farooqi A requirement is a necessary attribute in a system, a statement that identifies a capability, characteristic, or quality

More information

Product Requirements Documentation: Use Cases

Product Requirements Documentation: Use Cases Product Documentation: Use Cases Software Engineering and Databases Group Department of Computer Languages and Systems University of Seville November 2013 Learning objectives Know the use cases technique.

More information

Requirements Verification and Validation

Requirements Verification and Validation SEG3101 (Fall 2010) Requirements Verification and Validation SE502: Software Requirements Engineering 1 Table of Contents Introduction to Requirements Verification and Validation Requirements Verification

More information

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Software Engineering Third Year CSE( Sem:I) 2 marks Questions and Answers

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Software Engineering Third Year CSE( Sem:I) 2 marks Questions and Answers DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Software Engineering Third Year CSE( Sem:I) 2 marks Questions and Answers UNIT 1 1. What are software myths Answer: Management myths: We already have a book

More information

Requirements Analysis. Overview

Requirements Analysis. Overview Requirements Analysis Overview What is requirement? Classification of requirements Iterative and evolutionary requirements analysis Use Cases Domain models N. Meng, B. Ryder 2 1 Requirements Definition

More information

Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 21 st, Requirements Engineering

Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 21 st, Requirements Engineering Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 21 st, 2003 Requirements Engineering Class Objectives Students will be able to define the two process areas associated with the Requirements

More information

! To solve problems. ! To take up new opportunities. ! Requirements - descriptions of. " Behavior. " Data. " Constraints (eg. cost and schedule)

! To solve problems. ! To take up new opportunities. ! Requirements - descriptions of.  Behavior.  Data.  Constraints (eg. cost and schedule) COMP3110/6311, Software Analysis and Design Why do we Develop Software? To solve problems To take up new opportunities The value of Requirements "#$"%&'(%)#*+"%#)&),'$&+)& '()#-&)'$./,0.&+%/&.%1"*(%2.%#

More information

An Introduction to Use Cases

An Introduction to Use Cases An Introduction to Use Cases Geri Schneider and Jason P. Winters Wyyzzk, Inc. Santa Clara, CA 95051 1 Abstract Use cases, also referred to as user stories, enable the functional requirements of a software

More information

Chapter 7. Process Analysis and Diagramming

Chapter 7. Process Analysis and Diagramming Chapter 7 Process Analysis and Diagramming Chapter 5 introduced the concept of business process composition as an aspect of process design. But how can you recognize a process in a description of some

More information

Requirements Analysis and Specification. Importance of Good Requirements Analysis

Requirements Analysis and Specification. Importance of Good Requirements Analysis Analysis and Specification References: G. Kotonya and I. Sommerville, Engineering--Processes and Techniques, John Wiley, 1997. S. Pfleeger and J. Atlee, Software Engineering-- Theory and Practice, Third

More information

Requirements Engineering: Part I. Software Requirements & Project Management CITS3220

Requirements Engineering: Part I. Software Requirements & Project Management CITS3220 Requirements Engineering: Part I Software Requirements & Project Management CITS3220 The Problems of Requirements What goal(s) are we trying to satisfy? How do we identify the scope and properties of the

More information

Critical Skills for Writing Better Requirements (Virtual Classroom Edition)

Critical Skills for Writing Better Requirements (Virtual Classroom Edition) Critical Skills for Writing Better Requirements (Virtual Classroom Edition) Eliminate Costly Changes and Save Time by Nailing Down the Project Requirements the First Time! Critical Skills for Writing Better

More information

Software Engineering Fall 2014

Software Engineering Fall 2014 Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 11/05/2014 Student Registration System (SRS) RC University Management Board approved a new Student Registration

More information

Core Design Requirements At the start of a project, it is important to specify those parameters and properties that:

Core Design Requirements At the start of a project, it is important to specify those parameters and properties that: Design & Innovation Fundamentals Lecture 3 Requirements Analysis Design Process Expression of need Engineer translates need into a definition of problem, including statement of desired outcome Engineer

More information

02291: System Integration

02291: System Integration 02291: System Integration Week 2 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018 Contents Requirements Model Domain model Use Case and Use Case Diagram Activities

More information

Chapter 4 Requirements Elicitation

Chapter 4 Requirements Elicitation Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 4 Requirements Elicitation Outline Today: Motivation: Software Lifecycle Requirements elicitation challenges Problem statement

More information

Project Report Template (Sem 1)

Project Report Template (Sem 1) 1. Introduction & Problem Statement Project Report Template (Sem 1)

More information

The Use Case Technique: An Overview

The Use Case Technique: An Overview The Use Case Technique: An Overview Sponsored by: Karl Wiegers Principal Consultant, Process Impact www.processimpact.com Sponsor: CEG Save 20% on training* with promo code: MAWEB14 Free BA online training

More information

CHAPTER 2 LITERATURE SURVEY

CHAPTER 2 LITERATURE SURVEY 10 CHAPTER 2 LITERATURE SURVEY This chapter provides the related work that has been done about the software performance requirements which includes the sub sections like requirements engineering, functional

More information

making money from customer use of kiosk attracting more customers to the store saving money if the kiosk replaces manual operations

making money from customer use of kiosk attracting more customers to the store saving money if the kiosk replaces manual operations Business Requirements Business requirements collected from multiple sources might conflict. For example, consider a kiosk product with embedded software that will be sold to retail stores and used by the

More information

CS/IT Secure Software Construction

CS/IT Secure Software Construction CS/IT 328 - Secure Software Construction Chapter 4 UML the Unified Modeling Language Book: Fowler, UML Distilled, chap. 1.. 4 Notation: Notations and Meta-Models a graphical representation of a model,

More information

Requirements Engineering Unit 4: Requirements modeling, specification & prioritization

Requirements Engineering Unit 4: Requirements modeling, specification & prioritization Unit 4: Requirements modeling, specification & prioritization Department of Computer Science / Rijksuniversiteit Groningen (RUG) http://www.cs.rug.nl/~liangp/teaching/courses/re2009fall/ 9/29/2009 1 9/29/2009

More information

CHAPTER 3 Use Cases. 3. Use Cases

CHAPTER 3 Use Cases. 3. Use Cases CHAPTER 3 Use Cases Introduction When, Why, Where, What Iteratively Developing Use Cases Inception + Scope Definition + Risk Identification + Actors & Use cases + Project Plan Elaboration + Primary & Secondary

More information

CHAPTER 3 Use Cases. 3. Use Cases

CHAPTER 3 Use Cases. 3. Use Cases CHAPTER 3 Use Cases Introduction When, Why, Where, What Iteratively Developing Use Cases Inception + Scope Definition + Risk Identification + Actors & Use cases + Project Plan Elaboration + Primary & Secondary

More information

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies Lecture 6-1 Cloud-Based IT Project System Requirements and Specifications Spring 2013 A Specialty Course for Purdue University s M.S.

More information

status Homework 2 posted: https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/hw2.pdf

status Homework 2 posted: https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/hw2.pdf Requirements status Everyone s working hard on projects Project progress meetings: November 9 Tomorrow (Oct 27), 9 AM, you will receive an email for signing up for meeting slots Homework 2 posted: https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/hw2.pdf

More information

Course : Software Engineering and Project Management. Unit 2 Software Requirements Engineering & Analysis

Course : Software Engineering and Project Management. Unit 2 Software Requirements Engineering & Analysis Course : Software Engineering and Project Management Unit 2 Software Requirements Engineering & Analysis Syllabus Requirements Engineering : User and system requirements, Functional and non-functional

More information

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials Requirements Analysis and Design Definition Chapter Study Group Learning Materials 2015, International Institute of Business Analysis (IIBA ). Permission is granted to IIBA Chapters to use and modify this

More information

Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Levels of S/W Requirements. Types of S/W Requirements

Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Levels of S/W Requirements. Types of S/W Requirements Requirements Overview importance of getting right difficulty of getting right types and levels of characteristics of good the Requirements Development Process inception gathering, classification actors

More information

Course Introduction and Overview

Course Introduction and Overview Who are you? 3 Course Introduction and Overview Lecture 1 Software Engineering TDDC88-theory/TDDC93 Autumn 2008 Department of Computer and Information Science Linköping University, Sweden Project 6hp Software

More information

Use cases. Paul Jackson. School of Informatics University of Edinburgh

Use cases. Paul Jackson. School of Informatics University of Edinburgh Use cases Paul Jackson School of Informatics University of Edinburgh Use cases An important part of any requirements document for a system is a description of the system s behaviour from the viewpoint

More information

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2 Passit4Sure.OG0-093.221Questions Number: OG0-093 Passing Score: 800 Time Limit: 120 min File Version: 7.1 TOGAF 9 Combined Part 1 and Part 2 One of the great thing about pass4sure is that is saves our

More information

Use cases. Version October 2013

Use cases. Version October 2013 Use cases Version 2.3 20 October 2013 Maurizio Morisio, Marco Torchiano, 2012 Requirements Document 1. Purpose and scope 2. The terms used / Glossary 3. The use cases 4. The technology to be used 5. Other

More information

Requirements Elicitation

Requirements Elicitation Requirements Elicitation Software Engineering I Lecture 4 14. November 2006 Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Outline Motivation Requirements elicitation challenges

More information

Software Requirements. CSCE Lecture 4-08/30/2016

Software Requirements. CSCE Lecture 4-08/30/2016 Software Requirements CSCE 740 - Lecture 4-08/30/2016 Today s Goals What are requirements? Understand the requirements problem Why are requirements so important? Get a feel for the structure of a requirements

More information

MAIL/PARCEL MANAGEMENT SYSTEM WITH SMS NURUL SYUHADA BINTI MD NASIR FACULTY OF COMPUTER SYSTEMS & SOFTWARE ENGINEERING UNIVERSITI MALAYSIA PAHANG

MAIL/PARCEL MANAGEMENT SYSTEM WITH SMS NURUL SYUHADA BINTI MD NASIR FACULTY OF COMPUTER SYSTEMS & SOFTWARE ENGINEERING UNIVERSITI MALAYSIA PAHANG MAIL/PARCEL MANAGEMENT SYSTEM WITH SMS NURUL SYUHADA BINTI MD NASIR FACULTY OF COMPUTER SYSTEMS & SOFTWARE ENGINEERING UNIVERSITI MALAYSIA PAHANG 2013 iv ABSTRACT Mail Management System with SMS (MPMS)

More information

What are Requirements? SENG1031 Software Engineering Workshop 1. My Notes. System Overview: The Big Picture

What are Requirements? SENG1031 Software Engineering Workshop 1. My Notes. System Overview: The Big Picture What are Requirements? SENG1031 Software Engineering Workshop 1 Requirements, An Overview Peter Ho CSE, UNSW 5 Aug 2010 Requirements are a collection of statements defined by the System Stakeholders. These

More information

Agile versus? Architecture

Agile versus? Architecture Agile versus? Architecture This presentation is about Software Architecture and its relationship to Agile practices. There is often a kind of tension between Agile Concepts and Architecture concepts. Why

More information

Chapter 1. Contents. 1.1 What is Software Engineering! Solving Problems. Objectives. What is Software Engineering

Chapter 1. Contents. 1.1 What is Software Engineering! Solving Problems. Objectives. What is Software Engineering Chapter 1 What is Software Engineering Shari L. Pfleeger Joanne M. Atlee 4 th Edition Contents 1.1 What is Software Engineering? 1.2 How Successful Have We Been? 1.3 What Is Good Software? 1.4 Who Does

More information

L2 The requirement study. Requirement Engineering. Fang Chen

L2 The requirement study. Requirement Engineering. Fang Chen L2 The requirement study Fang Chen Requirement Engineering Requirement are ubiquitous part of our lives Understand the requirement through communication People are hard to understand! Requirement Creation

More information

Requirements Basics. CSCE Lecture 4-09/02/2015

Requirements Basics. CSCE Lecture 4-09/02/2015 Requirements Basics CSCE 740 - Lecture 4-09/02/2015 This Week s Goals Understand the requirements problem Why are requirements so important? Get a feel for the structure of a requirements document What

More information

Software Architecture and Engineering Requirements Elicitation Peter Müller

Software Architecture and Engineering Requirements Elicitation Peter Müller Software Architecture and Engineering Requirements Elicitation Peter Müller Chair of Programming Methodology Spring Semester 2018 2. Requirements Elicitation Main Activities of Software Development 2 Requirements

More information

Requirements: Eliciting, Analyzing and Modeling for Success!

Requirements: Eliciting, Analyzing and Modeling for Success! Requirements: Eliciting, Analyzing and Modeling for Success! Sonja Almlie, CCBA, PMP, PMI-ACP RMC Senior Instructor 2013 RMC Project Management, Inc. Eliciting and Modeling Requirements Who uses requirements?

More information

System Engineering and Analysis. system environments. Lecture Objectives. System Elements. Definition of System. Information system types

System Engineering and Analysis. system environments. Lecture Objectives. System Elements. Definition of System. Information system types System Engineering and Analysis What is the role of the software? Information system types Manual (read a text by your eyes then summarize using your pen) Automated (get the rmation through a computerized

More information

Pertemuan 2. Software Engineering: The Process

Pertemuan 2. Software Engineering: The Process Pertemuan 2 Software Engineering: The Process Collect Your Project Topic What is Software Engineering? Software engineering is the establishment and sound engineering principles in order to obtain economically

More information

Oi Requirements Communication in New Product Development

Oi Requirements Communication in New Product Development Steer Your Development! Goal-Oriented Oi Requirements Communication in New Product Development September 9, 2008 Samuel Fricker, Tony Gorschek, Martin Glinz Product Manager in Context: Simplified, Stylized

More information

What do you need to know about Business Rules?

What do you need to know about Business Rules? What do you need to know about Business Rules? Why should you even care? Presented to you by Eugenia [Gina] Schmidt PMP CBAP VITINAR in Partnership with ASPE 1 Eugenia Schmidt PMP CBAP Working as a project

More information

Software Architecture and Engineering Requirements Elicitation Peter Müller

Software Architecture and Engineering Requirements Elicitation Peter Müller Software Architecture and Engineering Requirements Elicitation Peter Müller Chair of Programming Methodology Spring Semester 2017 2. Requirements Elicitation Main Activities of Software Development 2 Requirements

More information

Simple Satellite Tracker 2003

Simple Satellite Tracker 2003 Owen Chastain Penney Fagan Brent Evans Jan-Erik Hustrulid Akata Patel SRS for Simple Satellite Tracker 2003 Janusz Zalewski, Ph.D ISM4331, Information Systems Design Fall 2003 SRS Table of Contents 1.

More information

An Introduction to Use-Case Modeling

An Introduction to Use-Case Modeling An Introduction to Use-Case Modeling The process of modeling a system s functions in terms of business events who initiated the events how the system responds to those events An approach that facilitates

More information

ACCEPTANCE TEST PLAN. Docket Course Scheduling. For. Version 1.0 February 5, 2013

ACCEPTANCE TEST PLAN. Docket Course Scheduling. For. Version 1.0 February 5, 2013 ACCEPTANCE TEST PLAN For Docket Course Scheduling Version 1.0 February 5, 2013 Developed by Robert Brown Nathal Fonseka Max Haley Michael Kovalichik Joseph Nelson Basil Nyachogo Raymond Selfridge Prepared

More information

CSEB233: Fundamentals of Software Engineering. Software Requirements Part 1 Understanding Requirements Engineering

CSEB233: Fundamentals of Software Engineering. Software Requirements Part 1 Understanding Requirements Engineering CSEB233: Fundamentals of Software Engineering Software Requirements Part 1 Understanding Requirements Engineering Objectives Discuss the concept of requirements and the types of requirements Explain what

More information

Test Management: Part I. Software Testing: INF3121 / INF4121

Test Management: Part I. Software Testing: INF3121 / INF4121 Test Management: Part I Software Testing: INF3121 / INF4121 Summary: Week 6 Test organisation Independence Tasks of the test leader and testers Test planning and estimation Activities Entry and exit criteria

More information

Chapter 3 Prescriptive Process Models

Chapter 3 Prescriptive Process Models Chapter 3 Prescriptive Process Models - Generic process framework (revisited) - Traditional process models - Specialized process models - The unified process Generic Process Framework Communication Involves

More information

Chapter 1. Contents. What is Software Engineering 9/9/13. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition

Chapter 1. Contents. What is Software Engineering 9/9/13. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition Chapter 1 What is Software Engineering Shari L. Pfleeger Joanne M. Atlee 4 th Edition Contents 1.1 What is Software Engineering? 1.2 How Successful Have We Been? 1.3 What Is Good Software? 1.4 Who Does

More information

Chapter 1. What is Software Engineering. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition

Chapter 1. What is Software Engineering. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition Chapter 1 What is Software Engineering Shari L. Pfleeger Joanne M. Atlee 4 th Edition Contents 1.1 What is Software Engineering? 1.2 How Successful Have We Been? 1.3 What Is Good Software? 1.4 Who Does

More information

Requirements Engineering Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1

Requirements Engineering Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1 Objectives To describe the principal requirements engineering activities and their relationships

More information

Software Engineering

Software Engineering Software Engineering Part I. Aspects and Models of Software Development Process Gunadarma University 1 Software Engineering Outline 1 Introduction 2 Aspects of Software Engineering Software Engineering

More information

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY-621105. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS1301- SOFTWARE ENGINEERING UNIT I

More information

Plan. Start looking at how to model the system s requirements Identify and list. Describe use cases Draw Use Case Diagrams. user stories use cases

Plan. Start looking at how to model the system s requirements Identify and list. Describe use cases Draw Use Case Diagrams. user stories use cases CSCI 375 USE CASES Plan Start looking at how to model the system s requirements Identify and list user stories use cases Describe use cases Draw Use Case Diagrams User Stories Definition: One short sentence

More information

Software Metrics. Kristian Sandahl

Software Metrics. Kristian Sandahl Software Metrics Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify System

More information

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than

More information

0 Introduction Test strategy A Test Strategy for single high-level test B Combined testing strategy for high-level tests...

0 Introduction Test strategy A Test Strategy for single high-level test B Combined testing strategy for high-level tests... TPI Automotive Test Process Improvement Version: 1.01 Author: Sogeti Deutschland GmbH Datum: 29.12.2004 Sogeti Deutschland GmbH. Version 1.01 29.12.04-1 - 0 Introduction... 5 1 Test strategy...10 1.A Test

More information

Inception. Describe the vision and business case for this project. Determine if the enterprise should build or buy the necessary system.

Inception. Describe the vision and business case for this project. Determine if the enterprise should build or buy the necessary system. Inception What needs to be done? Describe the vision and business case for this project. Determine if the project is feasible. Determine if the enterprise should build or buy the necessary system. Make

More information

Software Quality Engineering Courses Offered by The Westfall Team

Software Quality Engineering Courses Offered by The Westfall Team Building Skills is a 3-day course that is a subset of our course. The course is designed to provide a fundamental knowledge base and practical skills for anyone interested in implementing or improving

More information

Software Quality Engineering Courses Offered by The Westfall Team

Software Quality Engineering Courses Offered by The Westfall Team Courses is a 2-day course that is a subset of our course. The course is designed to provide an overview of techniques and practices. This course starts with an overview of software quality engineering

More information

Session-2: Deep Drive into Non Functional Requirements (NFRs)

Session-2: Deep Drive into Non Functional Requirements (NFRs) Session-2: Deep Drive into Non Functional Requirements (NFRs) Important Points to Note All Participating colleges are requested to mute your telephone lines during the webinar session. Participants are

More information

IE 366 Requirements Development

IE 366 Requirements Development IE 366 Requirements Development Developing and Managing Requirements IE 366 Requirements Definition: A requirement describes something that is needed or desired in a system (or product or process) that

More information

Essentials of IBM Rational Requirements Composer, v3. Module 4: Creating a use-case model

Essentials of IBM Rational Requirements Composer, v3. Module 4: Creating a use-case model Essentials of IBM Rational Requirements Composer, v3 Module 4: Creating a use-case model Copyright IBM Corporation 2010, 2011 Module overview After completing this module, you should be able to: Explain

More information

COSC 735: Software Engineering Test 1 Sample Solution

COSC 735: Software Engineering Test 1 Sample Solution COSC 735: Software Engineering Test 1 Sample Solution QUESTION 1: 1. (a) Define Software Engineering. Software engineering is the establishment and use of sound engineering principles in order to obtain

More information

REQB Foundation Level Sample Exam paper

REQB Foundation Level Sample Exam paper REQ Foundation Level Sample Exam paper 1 Which of the following statements is NOT true? Requirements may be related to the development process and the software product. One of the most important sources

More information

Verification and Validation

Verification and Validation System context Subject facet Usage facet IT system facet Development facet Validation Core activities Elicitation Negotiation Context of consideration Execution of RE activities Created requirements artefacts

More information

What%the%user%asked%for% How%the%analyst%saw%it% the% vision %of%those%who%are%pushing%for%it?% e.g.,% Mee/ng%scheduling%is%too%costly%right%now %

What%the%user%asked%for% How%the%analyst%saw%it% the% vision %of%those%who%are%pushing%for%it?% e.g.,% Mee/ng%scheduling%is%too%costly%right%now % What%the%user%asked%for% How%the%analyst%saw%it% How%the%system%was%designed% As%the%programmer%wrote%it% What%the%user%really%wanted% How%it%actually%works% 49 Iden/fy%the%problem% what%is%the%objec/ve%of%the%project?%

More information

Software Quality Assurance

Software Quality Assurance Software Quality Assurance by Kristian Sandahl krs@ida.liu.se Perspectives of quality Transcendent something we learn to recognize Product-based measurable variable Usage-based in the eyes of the beholder

More information

Chapter 2: Requirements Elicitation. Requirements Engineering

Chapter 2: Requirements Elicitation. Requirements Engineering Chapter 2: Requirements Elicitation Requirements Engineering Objectives In this chapter, you will learn about: Eliciting Requirements Your Stakeholders Sample stakeholder s analysis template Case Study

More information

Use-Case Diagram. Contents. Introduction. 1. Introduction. User-Centred Design (UCD) Users Requirements

Use-Case Diagram. Contents. Introduction. 1. Introduction. User-Centred Design (UCD) Users Requirements Contents Use-Case Diagram MIT, Walailak University by Dr.Wichian Chutimaskul Introduction Business Model using Activity Diagram Domain Analysis using Use-Case Description Documenting Requirements using

More information

A Guide to the Business Analysis Body of Knowledge (BABOK Guide), Version 2.0 Skillport

A Guide to the Business Analysis Body of Knowledge (BABOK Guide), Version 2.0 Skillport A Guide to the Business Analysis Body of Knowledge (BABOK Guide), Version 2.0 by The International Institute of Business Analysis (IIBA) International Institute of Business Analysis. (c) 2009. Copying

More information