May 14, 2015 1 May 14, 2015May 14, 2015May 14, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University, Azusa,

Slides:



Advertisements
Similar presentations
Lecture 5: Requirements Engineering
Advertisements

Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering September 12, 2001 Capturing.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
April 30, April 30, 2015April 30, 2015April 30, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,
May 2, May 2, 2015May 2, 2015May 2, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University, Azusa, CA.
May 14, May 14, 2015May 14, 2015May 14, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University, Azusa,
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Software Requirements
Rational Unified Process
SWE Introduction to Software Engineering
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Requirements.
درس مهندسي نيازمندي ها استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت Requirement Engineering :A Roadmap.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Shiva Vafadar 1 آزمايشکاه سيستم های هوشمند ( Requirements Engineering : A Roadmap Effectiveness of.
Overview of RE techniques RE Techniques Basic Introduction.
Requirements Engineering: A Roadmap Vahid Jalali Fall 2007 Amirkabir university of technology, Department of computer engineering and information technology,
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 1 (cont ’d) Title : Client requirements (Review) Mandatory reading: I.
Requirement Engineering – A Roadmap
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
1 درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت RE in The Year 00: A Research Perspective.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Requirements.
1 SWE Introduction to Software Engineering Lecture 11 - Requirements Engineering Processes.
Chapter 4 Capturing the Requirements 4th Edition Shari L. Pfleeger
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Architectural Synthesis Approach Sheldon X. Liang Ph. D. August 18, Software Engineering in CS at APU Architectural Synthesis Approach Azusa Pacific.
August 19, August 19, 2015August 19, 2015August 19, 2015 Azusa, CA Sheldon X. Liang Ph. D. CS 470 Software Engineering I Azusa Pacific University,
The Software Development Life Cycle: An Overview
S/W Project Management
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
Software Engineering CS B Prof. George Heineman.
Requirements Analysis
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Business Analysis and Essential Competencies
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
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
Requirement Elicitation Process Lesson 3. Requirements Elicitation  Is the process to find out the requirements for an intended software system by communicating.
IFS310: Module 3 1/25/2007 Fact Finding Techniques.
Requirements Collection By Dr. Gabriel. Requirements A requirement is any function, constraint, or property that the system must provide, meet, or satisfy.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
November 22, November 22, 2015November 22, 2015November 22, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific.
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Requirements Validation
Requirements Engineering Requirements Elicitation Overview of Requirements Analysis.
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
Requirements Engineering Process
Requirements Engineering Processes. Syllabus l Definition of Requirement engineering process (REP) l Phases of Requirements Engineering Process: Requirements.
Requirements Analysis
Architectural Synthesis Approach Sheldon X. Liang Ph. D. February 5, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702,
February 19, February 19, 2016February 19, 2016February 19, 2016 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific.
February 27, February 27, 2016February 27, 2016February 27, 2016 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific.
Software Engineering Lecture 10: System Engineering.
March 19, March 19, 2016March 19, 2016March 19, 2016 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Information Technology Project Management, Seventh Edition.
 The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the requirements.  However,
 System Requirement Specification and System Planning.
Chapter 4 – Requirements Engineering
Chapter 7 Review Requirements Engineering Processes
SNS College of Engineering Coimbatore
Software Requirements analysis & specifications
Requirements Engineering Processes
Introduction to Requirements Engineering
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

May 14, May 14, 2015May 14, 2015May 14, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Abstract Success of software ? How? How to know the purpose ? –Identifying stakeholders –Identifying stakeholders’ needs –Creating documentation for: Analysis Communication Implementation

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap  Introduction  Foundation  Groundwork  Eliciting Req  Modeling & Analysis  Communicating Req  Agreeing Req  Evolving Req  Integrating Req E  RE Roadmap  What is the future?

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Inherent difficulties –Numerous and distributed stakeholders –Vary and conflicting goals –Goals may not be explicit –Difficult to articulate requirements  Introduction

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Definition of Requirement Engineering “ Requirements engineering is the branch of software engineering concerned with the real-world goals for, functions of, and constraints on software systems. It is also concerned with the relationship of these factors to precise specifications of software behavior, and to their evolution over time and across software families. ”  Foundation

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap What's good about the definition ? –Highlights the importance of real-world goals –Precise specification of: Analyzing – requirements Validating – what stakeholders need Defining – what designers have to build Verifying – they have done so correctly Evolution – capable to cope with the changes What's ambiguous in the definition ? –Main focus is on software engineering  Foundation

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap The context in which RE takes place is usually human activity system and the problem owner are people. Techniques for eliciting and modeling, drawn on cognitive and social sciences: –Cognitive Psychology –Anthropology –Sociology –Linguistics  Foundation

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap RE is often the fore-end activity in the software system development process RE plays an important role in the management of change in software development RE processes depend on the type of product Groundwork mean the assessment of project’s feasibility and associated risks  Groundwork

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Requirements to Elicit –Boundaries Identify the high level boundaries of the system Stakeholders and Use Cases depend on boundaries –Stakeholders Customer or Clients Developers Users –Goals Eliciting High level goals early in development –Tasks When it is difficult to articulate user requirements  Eliciting Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Elicitation Techniques –Traditional Techniques Questionnaires and Surveys Interviews Analysis of existing documentation –Group Elicitation Group brainstorming sessions RAD (Rapid Application Development) JAD (Joint Application Design) –Prototyping Where there is great deal of uncertainty Early feedback from stakeholders is needed  Eliciting Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Elicitation Techniques –Model-Driven Goal Based Methods – KAOS & I Scenario Based Methods - CREWS –Cognitive Protocol Analysis Laddering Card Sorting Repertory Grids –Contextual Alternative to Tradition and Cognitive techniques Ethnographic Technique– Participant Observation  Eliciting Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap “The construction of abstract descriptions that are amenable to interpretation ” Enterprise Modeling –Understanding organization's structure –Business rules –Goals, tasks and responsibilities –Data Data Modeling –Understand, manipulate and manage large volume of information –How to represent real world phenomenon into system information  Modeling & Analysis

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Behavioral Modeling –Dynamic or Functional behavior of stakeholders and system, both existing and required Domain Modeling –Abstract description of the world in which the system will operate –Requirements reuse within a domain Modeling Non-Functional Requirements –Difficult to express in a measurable way –Difficult to analyze –Properties of a system as a whole  Modeling & Analysis

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Analyzing Requirements Models –Requirements Animation –Automated Reasoning –Analogical and Case-based Reasoning –Knowledge based Critiquing –Consistency Checking  Modeling & Analysis

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Requirement Management “The ability, not only to write requirements but also to do so in a form that is readable and traceable by many, in order to manage their evolution over time ” Requirement Traceability (RT) “The ability to describe and follow life of a requirement in both forwards and backwards direction ”  Communicating Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Maintaining agreement with the stakeholders can be a problem Validation “Validation is the process of establishing that the requirements and models elicited provide an accurate account of stakeholder requirements ” Validation is difficult for two reasons: –Question of truth and what is knowable –Reaching agreement among different stakeholders  Agreeing Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Adding requirements –Changing stakeholder needs –Missed in initial analysis Requirement Scrubbing – Removing requirements –Usually only during development, to forestall cost and schedule overruns Manage inconsistency in requirements Managing changing requirements –Continued requirement elicitation –Evaluation of Risk –Evaluation of systems in the environment  Evolving Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Product Family –Increasingly important form of development activity –Range of software product that share similar requirements and architectural characteristics, yet differ in certain key requirements –Research issue : Identifying the core requirements for the architectures that are: Stable in the presence of change Flexible enough to be customized and adapted to changing requirements  Evolving Req

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Different approaches to manage and integrate RE activities: –Problem Frames –Viewpoints Automated tools: –DOORS –Requisite Pro –Cradle  Integrating RE

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap Three radical ideas –Modeling and analysis cannot be performed adequately in isolation from the organizational and social context in which the new system will have to operate –RE should not focus on specifying the functionality of a new system, but instead should concentrate on modeling indicative and optative properties of the environment –Attempt to build consistent and complete requirement models is futile.  RE Roadmap

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap New techniques for formally modeling and analyzing properties of the environment Richer model for capturing and analyzing non- functional requirements Bridging the gap between requirements elicitation apporaches. Better understanding of software architectural choices Reuse of requirement models Multidisciplinary training of requirements practitioners  What’s the Future

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap

May 14, Software Engineering in CS at APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, CS 524 Requirement Engineering: A Roadmap

Thank you very much! Questions? May 14, Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, Software Engineering in CS at APU CS 524 Requirement Engineering: A Roadmap