Modelling Software Systems and Engineering their Requirements: Why should we care?

Size: px
Start display at page:

Download "Modelling Software Systems and Engineering their Requirements: Why should we care?"

Transcription

1 Modelling Software Systems and Engineering their Requirements: Why should we care? Axel van Lamsweerde University of Louvain B-1348 Louvain-la-Neuve Inaugural Lecture A serious problem... US survey: 8000 software projects, 350 companies success: 16 % failure: 33 % so so: 51 % (partial functionalities, excessive costs, big delays) major source of failure: requirements-related 50% responses A. van Lamsweerde 1

2 A serious problem... (2) Major source of failure: requirements-related 50% responses: lack of user involvement 13% incomplete requirements 13% changing requirements 9% unrealistic expectations 10% unclear goals 5% ( 1995) A serious problem... (3) EU survey: 3800 organizations, 17 countries Main perceived software problems are in... requirements specification > 50% responses requirements management 50% responses (European Software Institute, 1996) A. van Lamsweerde 2

3 A serious problem... (4)... perceived to persist in spite of progress in software technology Failure % 100 other causes 50 requirements-related (J. Maresco, IBM developerswork, 2007) Outline Requirements engineering (RE) What it is Why it is difficult Why it is important Models for RE Why models, what models? Goal-oriented RE Goal-based model building Model analysis A. van Lamsweerde 3

4 What RE is, roughly... Analyze problems with an existing system (system-as-is), Identify objectives & opportunities for new system (system-to-be), Define functionalities of, constraints on, responsibilities in system-to-be, Specify all of these in a requirements document System = software + environment (humans, devices, other software) Requirements in the software lifecycle Getting the right system Requirements engineering Getting the software right Software design Software implementation Software evolution A. van Lamsweerde 4

5 What is RE about? WHY? WHAT? domain knowledge goals requirements, assumptions operationalization What is RE about? WHY? WHAT? WHO? domain knowledge goals requirements, assumptions operationalization responsibility assignment A. van Lamsweerde 5

6 What is RE about? (2) System requirements vs. software requirements some phenomena are shared by the software and its environment other phenomena are owned by the environment other phenomena are owned by the software TrainMoving measuredspeed 0 DoorsClosed errorcode = 013 E S TrainAtStation Environment Sofware doorsstate = closed' What is RE about? (3) System requirements: prescriptive assertions formulated in terms of environment phenomena TrainMoving DoorsClosed Software requirements: prescriptive assertions formulated in terms of shared phenomena measuredspeed 0 doorsstate = 'closed' Domain properties: descriptive assertions about environment, needed for mapping SysReq to SoftReq TrainMoving measuredspeed 0 A. van Lamsweerde 6

7 Requirements vs. assumptions and domain properties RE involves satisfaction arguments SoftReq, Ass, Dom SysReq in view of properties Dom & assumptions Ass, the software requirements SoftReq meet the system requirements SysReq SoftReq: doors get open at station Dom: passenger can get out when doors are open Ass: passenger gets out if doors open at destination SysReq: passenger gets out at destination station domain analysis & elicitation The RE process alternative proposals start A. van Lamsweerde 7

8 The RE process alternative proposals domain analysis & elicitation evaluation & negotiation start agreed requirements The RE process alternative proposals domain analysis & elicitation evaluation & negotiation start agreed requirements documented requirements specification & documentation A. van Lamsweerde 8

9 The RE process alternative proposals domain analysis & elicitation evaluation & negotiation consolidated requirements validation & verification start agreed requirements specification & documentation documented requirements RE: an iterative process alternative proposals domain analysis & elicitation evaluation & negotiation consolidated requirements validation & verification start agreed requirements specification & documentation documented requirements A. van Lamsweerde 9

10 Why RE is hard Broad scope two systems: system-as-is, system-to-be system-to-be = software + environment hybrid environment: human organizations, policies devices, physical laws Multiple concerns functional, quality, development concerns Multiple abstraction levels strategic objectives, operational details Why RE is hard Broad scope two systems: system-as-is, system-to-be system-to-be = software + environment hybrid environment: human organizations, policies devices, physical laws Multiple concerns functional, quality, development concerns Multiple abstraction levels strategic objectives, operational details A. van Lamsweerde 10

11 Why RE is hard (2) Multiple stakeholders with different background with different interests and conflicting viewpoints project managers domain experts users, clients subcontractors decision makers analysts, developers... Why RE is hard (3) Multiple intertwined activities during iterative elicitation-evaluation-specification-consolidation conflict management functionality vs. quality vs. cost diverging viewpoints among stakeholders risk management anticipation of hazards and threats evaluation of alternatives, prioritization quality assurance change anticipation A. van Lamsweerde 11

12 Why RE is hard (3) Multiple intertwined activities during iterative elicitation-evaluation-specification-consolidation conflict management functionality vs. quality vs. cost diverging viewpoints among stakeholders risk management anticipation of hazards and threats evaluation of alternatives, prioritization quality assurance change anticipation Why RE is important Legal impact contractual commitment client-provider Social impact from user satisfaction to degradation of working conditions to system rejection Technical impact on many software-related artefacts A. van Lamsweerde 12

13 Requirements impact on many software artefacts call for tenders, proposal evaluation project contract project estimations & planning (size, cost, schedules) software prototype, mockup requirements & assumptions software architecture acceptance test data quality assurance checklists implementation directives software documentation user manual software evolution directives impact Why RE is important (2) Impact on certification mastered RE process required by many quality standards & certification authorities Impact on economy, security, and safety cost and consequences of errors in... requirements on software assumptions about environment A. van Lamsweerde 13

14 Wide variety of errors & flaws in requirements, assumptions, and domain properties Incompleteness critical! Inconsistency critical! Inadequacy critical! Ambiguity critical! Unintelligibility Unmeasurability Poor structure Overspecification Noise Errors in requirements/assumptions are... the most numerous ± 40% of software errors the most persistent often found very late, after software delivery the most expensive costs... 5x more if fixed during design 10x more if fixed during implementation 20x more if fixed during integration testing 200x more if fixed after delivery 66% of software error costs (Boehm, Jones, Lutz, Hooks & Farry,...) A. van Lamsweerde 14

15 Errors in requirements/assumptions are... the most numerous ± 40% of software errors the most persistent often found very late, after software delivery the most expensive cost... 5x more if fixed during design 10x more if fixed during implementation 20x more if fixed during integration testing 200x more if fixed after delivery account for 66% of software error costs (Boehm, Jones, Lutz, Hooks & Farry,...) Requirements errors are the most dangerous US Aegis/Vincennes (1988): shooting of IranAir airbus missing timing between 2 threat events in requirements on alarm software Patriot anti-missile system (1st Gulf war) hidden assumption on maximum usage time London Ambulance System: fatal intervention delays wrong assumptions on crew behavior, ambulance localization system, radio communication,... Boeing 757 crash, Cali wrong timing/localization assumption on flap extension point etc A. van Lamsweerde 15

16 Requirements errors are the most dangerous US Aegis/Vincennes (1988): shooting of IranAir airbus missing timing between 2 threat events in requirements on alarm software Patriot anti-missile system (1st Gulf war) hidden assumption on maximum usage time London Ambulance System (1993): fatal delays wrong assumptions on crew behavior, ambulance localization system, radio communication,... Boeing 757 crash, Cali (1995) autopilot s wrong timing/localization assumption on flap extension point... Example: a fatal error in A320 braking logic MotorReversed MovingOnRunway MovingOnRunway WheelsTurning MotorReversed WheelsTurning A. van Lamsweerde 16

17 Finding the error by obstacle analysis MotorReversed MovingOnRunway MovingOnRunway WheelsTurning NOT MovingOnRunway WheelsTurning obstruction MotorReversed WheelsTurning NOT MotorReversed WheelsTurning Detecting the error by obstacle analysis MotorReversed MovingOnRunway MovingOnRunway WheelsTurning NOT MovingOnRunway WheelsTurning obstruction MotorReversed WheelsTurning NOT MotorReversed WheelsTurning MovingOnRunway And Not WheelsTurning WheelsTurning And Not MovingOnRunway MotorReversed And Not WheelsTurning WheelsTurning And Not MotorReversed... WheelsNotOut WheelsBroken Aquaplaning Lufthansa crash in Warsaw... A. van Lamsweerde 17

18 A similar fatal error in the handbraking logic of an intelligent car BrakeReleased DriverWantsToStart BrakeReleased MotorRaised MotorRaised AccelerPedalPressed AccelerPedalPressed DriverWantsToStart A similar fatal error in the handbraking logic of an intelligent car BrakeReleased DriverWantsToStart BrakeReleased MotorRaised... MotorRaised AccelerPedalPressed AccelerPedalPressed DriverWantsToStart MotorRaised And Not AccelerPedalPressed... Driver killed by his luxurious car on a hot summerday AirConditioningRaised A. van Lamsweerde 18

19 Outline Requirements engineering (RE) What it is Why it is difficult Why it is important Models for RE Why models, what models? Goal-oriented RE model building model analysis Model-based RE Model = abstract representation of complex system (as-is or to-be) highlights, specifies, inter-relates key system features facilitates analysis Provides focus & structure for RE activities target for what must be elicited, evaluated, specified, consolidated, modified A. van Lamsweerde 19

20 Why models for RE? Abstraction from multiple details: focus on key aspects Support for early detection and fix of errors Interface among RE activities: produce or consume model items Support for understanding and explanation to stakeholders Basis for making decisions: multiple options made explicit Basis for generating requirements document Why models for RE? Abstraction from multiple details: focus on key aspects Support for early detection and fix of errors Interface among RE activities: produce or consume model items Support for understanding and explanation to stakeholders Basis for making decisions: multiple options made explicit Basis for generating requirements document A. van Lamsweerde 20

21 Requirements on models for RE Adequate: close reflection of system while abstracting from unnecessary details Complete & pertinent: capture of all relevant system facets along WHY-, WHAT-, WHO-dimensions multi-view model Precise & analyzable: for error detection/fix formal specification when & where needed Multi-level: capture of different levels of abstraction & precision for incremental analysis refinement mechanism Requirements on models for RE Adequate: close reflection of system while abstracting from unnecessary details Complete & pertinent: capture of all relevant system facets along WHY-, WHAT-, WHO-dimensions multi-view model Precise & analyzable: for error detection/fix formal specification when & where needed Multi-level: capture of different levels of abstraction & precision for incremental analysis mechanism for model refinement A. van Lamsweerde 21

22 Requirements on models for RE (2) Open & evolvable highlighting of alternative options Traceable: easy retrieval of source, rationale, impact of modeling decisions rich traceability links Comprehensible by stakeholders for further elicitation, evaluation, validation, modification diagrammatic representation Requirements on models for RE (2) Open & evolvable highlighting of alternative options Traceable: easy retrieval of source, rationale, impact of modeling decisions rich traceability links Comprehensible by stakeholders for further elicitation, evaluation, validation, modification diagrammatic representation A. van Lamsweerde 22

23 KAOS: goal-oriented, model-driven RE interviews existing systems documents analysis modeling generation of RE deliverables.html.rtf.pdf.mif What models? Goals Agents, responsibilities why? how? Objects who? Operations on what? what? A. van Lamsweerde 23

24 What models? (2) Hazards Threats I Interaction scenarios Behaviors Multiple languages are integrated for specification of model components Diagrammatic, for comprehension AND/OR graphs simple subset of UML Formal, for analysis (optional) based on mathematical logic and automata Real-time linear temporal logic Labeled Transition Systems (LTS) A. van Lamsweerde 24

25 Goals Specifying goals in RT-LTL for formal analysis Goal Maintain [DoorsClosedUntilNextStation] FormalSpec tr: Train, s: Station At (tr, st) o At (tr, st) tr.doors = "closed" W At (tr, next(st)) Goal Achieve [FastJourneyBetweenStations] FormalSpec tr: Train, s: Station At (tr, st) At (tr, next(st)) T A. van Lamsweerde 25

26 Objects Responsibilities A. van Lamsweerde 26

27 Hazards, responses Operationalizations A. van Lamsweerde 27

28 What kind of model-based reasoning? Checking / deriving goal refinements & operationalizations Goal-oriented model animation Conflict analysis Hazard analysis: generating & resolving obstacles to goals Threat analysis for more complete model with countermeasures - generating attack graphs Synthesis of behavior models from scenarios & goals What kind of model-based reasoning? Checking / deriving goal refinements & operationalizations Goal-oriented model animation Conflict analysis Hazard analysis: generating & resolving obstacles to goals Threat analysis for more complete model with countermeasures - generating attack graphs Synthesis of behavior models from scenarios & goals A. van Lamsweerde 28

29 Animation Check demo Refinement checking A. van Lamsweerde 29

30 Threat analysis for more complete model ItemOrderedByBuyer 7d ItemReceivedByBuyer ItemOrdered 2d ItemPaid ItemPaid 2d ItemSent ItemSent 3d ItemReceived ShippingCo ItemPaid 1d BELIEF S (ItemPaid) BELIEF S (ItemPaid) 1d ItemSent Seller ItemPaid 8h PaymentReceived PaymentReceived 8h NotificationSent NotificationSent 8h NotificationReceived NotificationReceived BELIEF S (ItemPaid) Seller Threat analysis for more complete model ItemOrderedByBuyer 7d ItemReceivedByBuyer anti-model 2d ItemSent ItemPaid ItemOrdered 2d ItemPaid ItemPaid 2d ItemSent ItemPaid ItemSent 3d ItemReceived ShippingCo 1d BELIEF S (ItemPaid) ItemPaid 8h PaymentReceived ItemPaid 1d BELIEF S (ItemPaid) PaymentReceived 8h NotificationSent NotificationSent 8h NotificationReceived BELIEF S (ItemPaid) 1d ItemSent Seller 1d NotificationReceived NotificationReceived BELIEF S (ItemPaid) Seller 16h FakeNotificSent Attacker A. van Lamsweerde 30

31 Application: Security of Aircraft in the Future European Environment Threats against crew & passengers (External threats) Threats from baggage area Modeling terrorist threats (anti-goal model) RE for on-board detection & reaction system Synthesis of state machines from scenarios & goals A. van Lamsweerde 31

32 The next lectures... L2-L3: Model-based RE goals, objects, agents, operations a systematic model building method L4-L6: Reasoning about system models Checking goal refinements Deriving goal operationalizations Obstacle analysis Threat analysis Conflict analysis Goal-oriented model animation Synthesizing behavior models from scenarios/goals Conclusion Engineering high-quality requirements is difficult and critical... do requirements meet the system s goals? under realistic assumptions? are such goals, requirements, assumptions complete, adequate, consistent, non-ambiguous? The earliest requirements errors are found, the best For requirements completeness: be pessimistic from beginning about software and environment hazards, threats, conflicts A. van Lamsweerde 32

33 Conclusion Engineering high-quality requirements is difficult and critical... do requirements meet the system s goals? under realistic assumptions? are such goals, requirements, assumptions complete, adequate, consistent, non-ambiguous? The earliest requirements errors are found, the best For requirements completeness: be pessimistic from beginning about software and environment hazards, threats, conflicts Conclusion (2) Rich models facilitate the RE process and increase the quality of the resulting product... software + environment (humans, devices, other software, mother Nature, attacker, attackee) multiple dimensions: intentional, structural, responsibility, operational, behavioral analyzability for early error detection & fix seamless transition from high-level concerns to operational requirements A. van Lamsweerde 33

34 Conclusion (3) Goal-based reasoning is central to RE for... model building & elaboration of requirements exploration & evaluation of alternative options (refinements, assignments) conflict management anticipation of abnormal behaviors optimization of model synthesis Thanks... to the KAOS crew at UCL, CEDITI and CETIC as researchers, consultants, or tool developers E. Letier, R. Darimont, C. Damas, A. Dardenne, R. De Landtsheer, E. Delor, D. Janssens, B. Lambeau, P. Massonet, C. Ponsard, A. Rifaut, H. Tran Van to Steve Fickas and his group at Univ. Oregon to the EU & Region of Wallonia for significant funding of research A. van Lamsweerde 34

35 More information on the method & associated techniques A. van Lamsweerde, Requirements Engineering - From System Goals to UML Models to Software Specifications. Wiley, on the tools: A. van Lamsweerde 35

Goal-Oriented Requirements Engineering: An Overview of the Current Research. by Alexei Lapouchnian

Goal-Oriented Requirements Engineering: An Overview of the Current Research. by Alexei Lapouchnian Goal-Oriented Requirements Engineering: An Overview of the Current Research by Alexei Lapouchnian Department of Computer Science University Of Toronto 28.06.2005 1. Introduction and Background...1 1.1

More information

Software Requirements, Third Edition

Software Requirements, Third Edition j Microsoft Software Requirements, Third Edition Karl Wiegers and Joy Beatty Contents Introduction Acknowledgments xxv xxxi PART I SOFTWARE REQUIREMENTS: WHAT, WHY, AND WHO Chapter 1 The essential software

More information

GOAL-BASED WEB DESIGN TOWARDS BRIDGING THE GAP BETWEEN REQUIREMENTS AND DESIGN OF WEB APPLICATIONS

GOAL-BASED WEB DESIGN TOWARDS BRIDGING THE GAP BETWEEN REQUIREMENTS AND DESIGN OF WEB APPLICATIONS 13_BOLCHINI.qxd 3/26/2003 10:25 Pagina 187 SComS: New Media in Education (2003) 187-191 DAVIDE BOLCHINI* GOAL-BASED WEB DESIGN TOWARDS BRIDGING THE GAP BETWEEN REQUIREMENTS AND DESIGN OF WEB APPLICATIONS

More information

Requirements Engineering: A Roadmap

Requirements Engineering: A Roadmap Requirements Engineering: A Roadmap Bashar Nuseibeh & Steve Easterbrook Department of Computing Imperial College of Science, Technology & Medicine London SW7 2BZ, UK Email: [email protected] http://www-dse.doc.ic.ac.uk/~ban/

More information

Lecture 9: Requirements Modelling

Lecture 9: Requirements Modelling A little refresher: What are we modelling? Lecture 9: Requirements Modelling Requirements; Systems; Systems Thinking Role of Modelling in RE Why modelling is important Limitations of modelling Brief overview

More information

Requirements Traceability. Mirka Palo

Requirements Traceability. Mirka Palo Requirements Traceability Mirka Palo Seminar Report Department of Computer Science University of Helsinki 30 th October 2003 Table of Contents 1 INTRODUCTION... 1 2 DEFINITION... 1 3 REASONS FOR REQUIREMENTS

More information

Requirements Engineering Process

Requirements Engineering Process Software Engineering Requirements Engineering Process Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To describe the principal requirements engineering activities and d their

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Lecture 17: Requirements Specifications

Lecture 17: Requirements Specifications Lecture 17: Requirements Specifications Why we need to write specifications Purpose and audience Choosing an appropriate size and formality Desiderata for Specifications Properties of good specifications

More information

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping

More information

Overview. Software engineering and the design process for interactive systems. Standards and guidelines as design rules

Overview. Software engineering and the design process for interactive systems. Standards and guidelines as design rules Overview Software engineering and the design process for interactive systems Standards and guidelines as design rules Usability engineering Iterative design and prototyping Design rationale A. Dix, J.

More information

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

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

More information

Software Process for QA

Software Process for QA Software Process for QA Basic approaches & alternatives CIS 610, W98 / M Young 1/7/98 1 This introduction and overview is intended to provide some basic background on software process (sometimes called

More information

Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci

Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci Software Engineering Software Development Process Models Lecturer: Giuseppe Santucci Summary Modeling the Software Process Generic Software Process Models Waterfall model Process Iteration Incremental

More information

VAIL-Plant Asset Integrity Management System. Software Development Process

VAIL-Plant Asset Integrity Management System. Software Development Process VAIL-Plant Asset Integrity Management System Software Development Process Document Number: VAIL/SDP/2008/008 Engineering For a Safer World P u b l i c Approved by : Ijaz Ul Karim Rao Revision: 0 Page:2-of-15

More information

DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES

DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology [email protected] Beate List Vienna University of Technology [email protected]

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,

More information

Module 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur

Module 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur Module 2 Software Life Cycle Model Lesson 4 Prototyping and Spiral Life Cycle Models Specific Instructional Objectives At the end of this lesson the student will be able to: Explain what a prototype is.

More information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development

More information

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki SE464/CS446/ECE452 Software Life-Cycle and Process Models Instructor: Krzysztof Czarnecki 1 Some of these slides are based on: Lecture slides by Ian Summerville accompanying his classic textbook software

More information

Requirements Engineering for Software

Requirements Engineering for Software Requirements Engineering for Software and Systems Second Edition Phillip A. Laplante CRC Press Taylor & Francis Group Boca Raton London New York CRC Press is an imprint of the Taylor & Francis Croup, an

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:

More information

A Methodology for Capturing Software Systems Security Requirements

A Methodology for Capturing Software Systems Security Requirements A Methodology for Capturing Software Systems Security Requirements Hassan EL-Hadary Supervised by: Prof. Sherif EL-Kassas Outline Introduction to security Software Security Security Definitions Security

More information

Agile Software Engineering Practice to Improve Project Success

Agile Software Engineering Practice to Improve Project Success Agile Software Engineering Practice to Improve Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems [email protected]

More information

Requirements engineering and quality attributes

Requirements engineering and quality attributes Open Learning Universiteit Unit 2 Learning Unit 2 Requirements engineering and quality attributes Contents Introduction............................................... 21 2.1 Important concepts........................................

More information

On Efficient Collaboration between Lawyers and Software Engineers when Transforming Legal Regulations to Law-related Requirements

On Efficient Collaboration between Lawyers and Software Engineers when Transforming Legal Regulations to Law-related Requirements Proceedings of the 2n d International Conference on Information Technology, ICIT 2010 28-30 June 2010, Gdansk, Poland. On Efficient Collaboration between Lawyers and Software Engineers when Transforming

More information

CREDENTIALS & CERTIFICATIONS 2015

CREDENTIALS & CERTIFICATIONS 2015 THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2015 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 3 Software Design

More information

Software Processes. Coherent sets of activities for specifying, designing, implementing and testing software systems

Software Processes. Coherent sets of activities for specifying, designing, implementing and testing software systems Questions What is the life cycle of a software product? Why do we need software process models? What are the goals of a software process and what makes it different from other industrial processes? Software

More information

Requirements Engineering for Web Applications

Requirements Engineering for Web Applications Web Engineering Requirements Engineering for Web Applications Copyright 2013 Ioan Toma & Srdjan Komazec 1 What is the course structure? # Date Title 1 5 th March Web Engineering Introduction and Overview

More information

Requirements Engineering: Elicitation Techniques

Requirements Engineering: Elicitation Techniques 2008:PR003 Requirements Engineering: Elicitation Techniques Sai Ganesh. Gunda Source:http://www.marcocioffi.com/archives/2005/04/requirements-engineering/ MASTER S THESIS Software Engineering, 2008 Department

More information

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan 1 W E B B A S E D M E E T I N G S C H E D U L E R S Y S T E M Project Plan Version 4.0 CS 6361 ADVANCED REQUIREMENTS ENGINEERING, SPRING 2010 UNIVERSITY OF TEXAS AT DALLAS R E Q U I R E M E N T S E N G

More information

Develop Project Charter. Develop Project Management Plan

Develop Project Charter. Develop Project Management Plan Develop Charter Develop Charter is the process of developing documentation that formally authorizes a project or a phase. The documentation includes initial requirements that satisfy stakeholder needs

More information

Chapter 2 Software Processes

Chapter 2 Software Processes Chapter 2 Software Processes Chapter 2 Software Processes Slide 1 Topics covered Software processes and process models Generic models: Waterfall Incremental development Reuse-oriented software engineering

More information

Unit I. Introduction

Unit I. Introduction Unit I Introduction Product Life Cycles Products also have life cycles The Systems Development Life Cycle (SDLC) is a framework for describing the phases involved in developing and maintaining information

More information

Contributions To Ontology-Driven Requirements Engineering

Contributions To Ontology-Driven Requirements Engineering Dissertation Contributions To Ontology-Driven Requirements Engineering bearbeitet von Dipl.-Medieninf. Katja Siegemund geboren am 26.05.1981 in Leipzig vorgelegt an der Technischen Universität Dresden

More information

Chapter 3 The Integrated Requirements Management Framework (IREQM)

Chapter 3 The Integrated Requirements Management Framework (IREQM) Chapter 3 The Integrated Management Framework (IREQM) During the software requirements development process, customer and development team meet together for many times to obtain customer and product requirements

More information

Investigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations

Investigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations Investigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations Mennatallah H. Ibrahim Department of Computers and Information Sciences Institute

More information

Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504

Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504 Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504 Dipak Surie, Email : [email protected] Computing Science Department Umea University, Umea, Sweden Abstract. During software development,

More information

Lecture 3 Topics on Requirements Engineering

Lecture 3 Topics on Requirements Engineering Lecture 3 Topics on Requirements Engineering Some material taken from the Tropos project at U of T Copyright Yijun Yu, 2005 Course information Let s vote Course Project/Final Exam 50-50 or 60-40? Midterm/Final

More information

Elite: A New Component-Based Software Development Model

Elite: A New Component-Based Software Development Model Elite: A New Component-Based Software Development Model Lata Nautiyal Umesh Kumar Tiwari Sushil Chandra Dimri Shivani Bahuguna Assistant Professor- Assistant Professor- Professor- Assistant Professor-

More information

Phases, Activities, and Work Products. Object-Oriented Software Development. Project Management. Requirements Gathering

Phases, Activities, and Work Products. Object-Oriented Software Development. Project Management. Requirements Gathering Object-Oriented Software Development What is Object-Oriented Development Object-Oriented vs. Traditional Development An Object-Oriented Development Framework Phases, Activities, and Work Products Phases,

More information

Syllabus. REQB Certified Professional for Requirements Engineering. Advanced Level Requirements Manager

Syllabus. REQB Certified Professional for Requirements Engineering. Advanced Level Requirements Manager Syllabus REQB Certified Professional for Requirements Engineering Requirements Manager Version 1.0 2011 The copyright to this edition of the syllabus in all languages is held by the Global Association

More information

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti Software Engineering Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

Software Development Processes. Software Life-Cycle Models

Software Development Processes. Software Life-Cycle Models 1 Software Development Processes Sequential, Prototype-based RAD, Phased, Risk-based Spiral (c) 1998 M Young CIS 422/522 4/3/98 1 Software Life-Cycle Models Breaking projects down into pieces for... Planning

More information

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of

More information

Introduction to OpenUP (Open Unified Process)

Introduction to OpenUP (Open Unified Process) Introduction to OpenUP (Open Unified Process) Different projects have different process needs. Typical factors dictate the needs for a more formal or agile process, such as team size and location, architecture

More information

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

3C05: Unified Software Development Process

3C05: Unified Software Development Process 3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2

More information

Requirements Definition and Management Processes

Requirements Definition and Management Processes Software Engineering G22.2440-001 Session 1 Sub-Topic 1 Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute

More information

The profile of your work on an Agile project will be very different. Agile projects have several things in common:

The profile of your work on an Agile project will be very different. Agile projects have several things in common: The Agile Business Analyst IT s all about being Agile? You re working as a Business Analyst in a traditional project environment, specifying the requirements for IT Developers to build. Suddenly everyone

More information

Towards a CMMI-compliant Goal-Oriented Software Process through Model-Driven Development

Towards a CMMI-compliant Goal-Oriented Software Process through Model-Driven Development The 4th IFIP WG8.1 Working Conference on the Practice of Enterprise Modelling PoEM 2011 Universidade Federal de Pernambuco Towards a CMMI-compliant Goal-Oriented Software Process through Model-Driven Development

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 15 Agile Methodologies: AUP 1 Agile Unified Process (AUP) Proposed by Ambler as a simplified version of the Rational Unified Process (RUP).

More information

Software Development Processes. Software Life-Cycle Models. Process Models in Other Fields. CIS 422/522 Spring 1998 1

Software Development Processes. Software Life-Cycle Models. Process Models in Other Fields. CIS 422/522 Spring 1998 1 1 Software Development Processes Sequential, Prototype-based RAD, Phased, Risk-based Spiral (c) 1998 M Young CIS 422/522 1/10/99 1 Software Life-Cycle Models Breaking projects down into pieces for... Planning

More information

WebSphere Business Modeler

WebSphere Business Modeler Discovering the Value of SOA WebSphere Process Integration WebSphere Business Modeler Workshop SOA on your terms and our expertise Soudabeh Javadi Consulting Technical Sales Support WebSphere Process Integration

More information

Appendix B Data Quality Dimensions

Appendix B Data Quality Dimensions Appendix B Data Quality Dimensions Purpose Dimensions of data quality are fundamental to understanding how to improve data. This appendix summarizes, in chronological order of publication, three foundational

More information

PORTFOLIO, PROGRAMME & PROJECT MANAGEMENT MATURITY MODEL (P3M3)

PORTFOLIO, PROGRAMME & PROJECT MANAGEMENT MATURITY MODEL (P3M3) PORTFOLIO, PROGRAMME & PROJECT MANAGEMENT MATURITY MODEL (P3M3) 1st February 2006 Version 1.0 1 P3M3 Version 1.0 The OGC logo is a Registered Trade Mark of the Office of Government Commerce This is a Value

More information

Goal-Based Self-Contextualization

Goal-Based Self-Contextualization Goal-Based Self-Contextualization Raian Ali, Fabiano Dalpiaz Paolo Giorgini University of Trento - DISI, 38100, Povo, Trento, Italy {raian.ali, fabiano.dalpiaz, paolo.giorgini}@disi.unitn.it Abstract.

More information

Module 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur

Module 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur Module 2 Software Life Cycle Model Lesson 3 Basics of Software Life Cycle and Waterfall Model Specific Instructional Objectives At the end of this lesson the student will be able to: Explain what is a

More information

Bidirectional Tracing of Requirements in Embedded Software Development

Bidirectional Tracing of Requirements in Embedded Software Development Bidirectional Tracing of Requirements in Embedded Software Development Barbara Draxler Fachbereich Informatik Universität Salzburg Abstract Nowadays, the increased complexity of embedded systems applications

More information

feature requirements engineering

feature requirements engineering feature requirements engineering Exploring Alternatives during Requirements Analysis John Mylopoulos, University of Toronto Goal-oriented requirements analysis techniques provide ways to refine organizational

More information

What SOA can do for Software Dependability. Karl M. Göschka [email protected] Vienna University of Technology

What SOA can do for Software Dependability. Karl M. Göschka Karl.Goeschka@tuwien.ac.at Vienna University of Technology What SOA can do for Software Dependability Karl M. Göschka [email protected] Vienna University of Technology Overview Dependability challenges Control loop: Adaptivity and evolution The SOA potential

More information

So You Want To Be a Requirements Analyst? 1

So You Want To Be a Requirements Analyst? 1 So You Want To Be a Requirements Analyst? 1 Karl E. Wiegers Process Impact www.processimpact.com Be it explicitly or not, someone always performs the role of requirements analyst on a software project.

More information

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality

More information

A Framework for Software Product Line Engineering

A Framework for Software Product Line Engineering Günter Böckle Klaus Pohl Frank van der Linden 2 A Framework for Software Product Line Engineering In this chapter you will learn: o The principles of software product line subsumed by our software product

More information

SOFTWARE REQUIREMENTS

SOFTWARE REQUIREMENTS SOFTWARE REQUIREMENTS http://www.tutorialspoint.com/software_engineering/software_requirements.htm Copyright tutorialspoint.com The software requirements are description of features and functionalities

More information

Requirements Engineering Processes. Feasibility studies. Elicitation and analysis. Problems of requirements analysis

Requirements Engineering Processes. Feasibility studies. Elicitation and analysis. Problems of requirements analysis Requirements engineering processes Requirements Engineering Processes The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the.

More information

Software Engineering Reference Framework

Software Engineering Reference Framework Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,

More information

COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS

COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS *1 Mrs. Kalaivani S., * 2 Mrs. Kavitha S., *1 M.Phil Research Scholar, Department of Computer Science Auxilium College (Autonomous), Vellore, TamilNadu,

More information

Detecting Inconsistencies in Requirements Engineering

Detecting Inconsistencies in Requirements Engineering Swinburne University of Technology Faculty of Information and Communication Technologies HIT4000 Honours Project A Thesis on Detecting Inconsistencies in Requirements Engineering Tuong Huan Nguyen Abstract

More information

Software Production and Lifecycle Models

Software Production and Lifecycle Models Software Production and Lifecycle Models 1 Problem Definition Change Architectural Design Verification Personnel Basic Phases Potential Difficulties, Verification, and Testing Implementation and Integration

More information

Sofware Requirements Engineeing

Sofware Requirements Engineeing Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (). Understandable

More information

ESTABLISHING A MEASUREMENT PROGRAM

ESTABLISHING A MEASUREMENT PROGRAM ESTABLISHING A MEASUREMENT PROGRAM The most important rule is to Understand that software measurement is a means to an end, not an end in itself Three key reasons for Software Measurement Understanding

More information

Automotive System and Software Architecture

Automotive System and Software Architecture Automotive System and Software Architecture Yanja Dajsuren 2IW80 Software specification and architecture March 25, 2014 Which one has more software? Chevrolet Volt, an example modern day car Boeing 787,

More information

ISO/IEC 9126-1 Software Product Quality Model

ISO/IEC 9126-1 Software Product Quality Model Why do current systems fail? Standish Group found that 51% of projects failed 31% were partially successful Main causes were poor user requirements: 13.1% Incomplete requirements 12.4% Lack of user involvement

More information

How To Develop A Multi Agent System (Mma)

How To Develop A Multi Agent System (Mma) S-Tropos: An Iterative SPEM-Centric Software Project Management Process Yves Wautelet, Manuel Kolp, Youssef Achbany IAG Institut d Administration et de Gestion, ISYS Unité de Systèmes d Information, Université

More information

CSC340: Information Systems Analysis and Design. About the Course

CSC340: Information Systems Analysis and Design. About the Course CSC340: Information Systems Analysis and Design Professor Jennifer Campbell [email protected] http://www.cs.toronto.edu/~csc340h/ Acknowledgement: Material Provided by Professor Steve Easterbrook

More information

Business Analyst Work Plan. Presented by: Billie Johnson, CBAP CSM

Business Analyst Work Plan. Presented by: Billie Johnson, CBAP CSM Business Analyst Work Plan Presented by: Billie Johnson, CBAP CSM Agenda Topic Introduction Overview of a Business Analysis Work Plan Initiating a Business Analysis Effort Components of the Business Analysis

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information