1 درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت RE in The Year 00: A Research Perspective.

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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
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
Software Testing and Quality Assurance
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Requirements.
Reza Gorgan Mohammadi AmirKabir University of Technology, Department of Computer Engineering & Information Technology, Intelligent.
درس مهندسي نيازمندي ها استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت Requirement Engineering :A Roadmap.
CSC 402 Requirements Engineering 1. 2 Problem Definition Requirements Definition informal statement of need for system natural language statement of what.
Shiva Vafadar 1 آزمايشکاه سيستم های هوشمند ( Requirements Engineering : A Roadmap Requirement Engineering.
1 درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت Meaning of Requirement.
درس مهندسی نیازمندی ها استاد دکتر عبداله زاده دانشجو خیرالنسا مرچانت Dealing with NFR : Three Experimental Studies of a Process-Oriented Approach.
Requirements Analysis Concepts & Principles
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
Software Requirements
Towards Modelling and Reasoning Support for Early-Phase Requirements Engineering درس مهندسی نیازمندی ها استاد دکتر عبداله زاده دانشجو خیرالنسا مرچانت.
Requirement Engineering – A Roadmap
Overview of Software Requirements
SE 555 – Software Requirements & Specifications Introduction
درس :مهندسي نيازمندي ها استاد: دكتر عبداله زاده دانشجو: خيرالنسا مرچانت Effectiveness of Elicitation Techniques in Distributed Requirement Engineering.
7M822 Software Requirements Introduction 7 September 2010.
Requirements Engineering Process – 1
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Chapter 4 Capturing the Requirements 4th Edition Shari L. Pfleeger
Verification and Validation
The Software Development Life Cycle: An Overview
Requirements Analysis
©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.
1 REQUIREMENT ENGINEERING Chapter 7. 2 REQUIREMENT ENGINEERING Definition Establishing what the customer requires from a software system. OR It helps.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
lamsweerde Requirements Engineering © 2009 John Wiley and Sons 1 Requirements Engineering From System Goals to UML Models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Topic (1)Software Engineering (601321)1 Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
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
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1 Software Engineering Ian Sommerville th edition Instructor: Mrs. Eman ElAjrami University Of Palestine.
Requirement Handling
Requirements Engineering Overview Senior Design Don Evans.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
Formal Methods.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Requirements Validation
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
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.
Smart Home Technologies
Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering) Jing Ai 10/28/2003.
Lecture 4: Requirements Engineering COSI 120b, Principles of Software Engineering.
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Requirements Analysis
Software Engineering Lecture 10: System Engineering.
Requirements. Outline Definition Requirements Process Requirements Documentation Next Steps 1.
Introduction to Software Requirement Engineering Nisa’ul Hafidhoh Teknik Informatika
1 Software Requirements Descriptions and specifications of a system.
Requirements Introduction Emerson Murphy-Hill. Scope of Software Project Failures WHY PROJECTS FAIL % 1. Incomplete Requirements Lack of user involvement12.4.
Requirements Engineering Process – 1
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

1 درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت RE in The Year 00: A Research Perspective

2 Introduction Bell & Thayer observed that: –The requirements for a system do not arise naturally; instead, they need to be engineered and have continuing review and revision Boehm estimated that: –The late correction of requirements errors could cost up to 200 times as much as correction during such requirements engineering Brooks stated that: –The hardest single part of building a software system is deciding precisely what to build … Therefore, the most important function that the software builder performs for the client is the iterative extraction and refinement of the product requirements

3 Introduction (Cont.) Major causes of failure of projects –A survey over 8000 projects undertaken by 350 US companies The lack of user involvement (13%) Requirements incompleteness (12%) Changing requirements (11%) Unrealistic expectations (6%) Unclear objectives (5%) –On the European side Some problems in requirements specification (>50%) Some problems in requirements management (<50%)

4 What is RE? Ross and Schoman stated that –Requirements definition is a careful assessment of the needs that a system is to fulfill. It must say why a system is needed, based on current or foreseen conditions, which may be internal operations or an external market. It must say what system features will serve and satisfy this context. It must say how the system is to be constructed

5 Why the process of RE is complex? 1.The scope is fairly broad as it ranges from –a world of human organizations or physical laws to a technical artifact that must be integrated in it –high level objectives to operational prescriptions –Informal to formal. 2.Non-functional concerns such as –Safety –Security –Usability –Flexibility –Performance –… are often conflicting.

6 Why the process of RE is complex? (Cont.) 3.There are multiple parties such as –Customers –Commissioners –Users –Domain experts –Requirements engineers –… involved in the RE process, which have conflicting viewpoints

7 Why the process of RE is complex? (Cont.) 4.Requirement specifications may suffer a great variety of deficiencies such as –errors –inadequacies with respect to the real world –Incompleteness –contradictions –ambiguities –… That may yield undesired consequences such as –waste of time –generation of new errors –noises –forward references –…

8 Why the process of RE is complex? (Cont.) 5.RE covers multiple intertwined activities –Domain analysis –Elicitation –Negotiation and agreement –Specification –Specification analysis –Documentation –Evolution

9 Modeling A core process in RE The existing system has to be modeled in some way or another The alternative hypothetical systems have to be modeled as well On one hand –Models result from Domain analysis, Elicitation, Specification Analysis, Negotiation On the other hand –Models guide further Domain analysis, Elicitation, Specification Analysis, Negotiation Models provide the basis for documentation and evolution

10 Modeling (Cont.) Yue stated that –The integration of explicit goal representations in requirements models provides a criterion for requirements completeness –The requirements are complete if they are sufficient to establish the goal they are refining –A goal corresponds to an objective the system should achieve through cooperation of agents in the software- to-be and in the environment.

11 Approaches for solve the conflicts among requirements Conflicts among requirements often arise from multiple stakeholders viewpoints Fore sake of adequacy and completeness during requirements elicitation it is essential that –the viewpoints of all parties involved, be captured and eventually integrated in a consistent way Centralized approach –The viewpoints are translated into some logic-based “ assembly ” language for global analysis –Viewpoints integration then amounts to some form of conjunction Distributed approach –Viewpoints have specific consistency rules associated with them –Consistency checking is made by evaluating the corresponding rules on pairs of viewpoints

12 Scenario-based techniques These techniques have been proposed –for elicitation and for validation To elicit requirements in hypothetical situations –to help identify exceptional cases –to populate more abstract conceptual models –to validate requirements in conjunction with prototyping –for animation –to plan generation tools –To generate acceptance test cases

13 Being Pessimistic First-sketch specifications of goals, requirements and assumptions tend to be too ideal. –If so they are likely to be violated from time to time in the running system due to unexpected behavior of agents The lack of anticipation of exceptional behaviors may result in unrealistic, unachievable and/or incomplete requirements

14 From Requirements to Architecture A goal-based approach for architecture derivation might be useful and is feasible The general principle is to: –Use functional goals assigned to software agents to derive a first abstract dataflow architecture –Use non-functional goals to refine dataflow connectors

15 More work for future Efforts should be devoted to bridging the gap between RE research and research in software architecture Another unexpected transition that should be investigated is the systematic derivation of parameter settings from requirements The gap between RE research and formal specification research is another important one to bridge Requirement reengineering …

16 Reference Axel van Lamsweerde, “ Requirements Engineering in the Year 00: A Research perspective ”, ACM Press,Proc. 22 nd International Conference on Software Engineering, Limerick, June 2000.