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



Similar documents
Requirements Engineering Process

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

What is a requirement? Software Requirements. Descriptions and specifications of a system

Software Requirements. Objectives

Interactive system specification. Interactive system definition. Issues to be taken into account for interactive systems

What is a requirement? Software Requirements. User requirements readers. Types of requirements. Descriptions and specifications of a system

SOFTWARE REQUIREMENTS

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Requirements Analysis through Viewpoints Oriented Requirements Model (VORD)

Génie Logiciel et Gestion de Projets. Software Requirements Engineering

Software Engineering. Requirements elicitation - Facts finding. Software Engineering Requirements Elicitation Slide 1

Software Requirements

Story Card Based Agile Software Development

To introduce software process models To describe three generic process models and when they may be used

Chapter 8 Requirements Management Organizational Requirements Engineering

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

Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1

Requirements Engineering: A Roadmap

Socio technical Systems. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 2 Slide 1

Requirements engineering

Requirements Analysis Concepts & Principles. Instructor: Dr. Jerry Gao

Software Processes. The software process. Generic software process models. Waterfall model. Waterfall model phases

How era Develops Software

Objectives. The software process. Basic software process Models. Waterfall model. Software Processes

Software Engineering. Software Engineering. Software Costs

Effective Business Requirements (Virtual Classroom Edition)

A Survey on Requirement Analysis in the Nigerian Context

Sofware Requirements Engineeing

Advanced Project Management Incl. MS Projects 5 DAYS

Unit 1 Learning Objectives

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

Writing a Requirements Document For Multimedia and Software Projects

DSDM DSDM. CONSORTiUM. CONSORTiUM. AgileBA. The Handbook for Business Analysts. Extract The Requirements Lifecycle In An Agile Project.

Software Requirements Specification (SRS)

Ten steps to better requirements management.

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design

STSG Methodologies and Support Structure

Job Description Head of CRM

Digital Asset Manager, Digital Curator. Cultural Informatics, Cultural/ Art ICT Manager

The role of integrated requirements management in software delivery.

11 Tips to make the requirements definition process more effective and results more usable

Expert Reference Series of White Papers. Intersecting Project Management and Business Analysis

Requirements engineering and quality attributes

Requirements Management In Action. A beginners guide to Requirements Management

Bottom-Line Management

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

Software Processes. Topics covered

Examination SUBJECT. Version:

The ICMCI CMC Competence Framework - Overview

VPQ Level 6 Business, Management and Enterprise

Using Use Cases on Agile Projects

Smarter Balanced Assessment Consortium. Recommendation

Socio-Technical Systems

Business Requirements Guidelines

This alignment chart was designed specifically for the use of Red River College. These alignments have not been verified or endorsed by the IIBA.

Software Engineering. Objectives. Designing, building and maintaining large software systems

BAL2-1 Professional Skills for the Business Analyst

Achieve. Performance objectives

STAGE 6 MONITORING AND EVALUATING CHILD PROTECTION POLICIES AND PROCEDURES

CSC340: Information Systems Analysis and Design. About the Course

Internal Quality Management System Audit Checklist (ISO9001:2015) Q# ISO 9001:2015 Clause Audit Question Audit Evidence 4 Context of the Organization

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

Bidirectional Tracing of Requirements in Embedded Software Development

How To Improve User Interface Design In An Ema System

the Defence Leadership framework

Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1

26. Legacy Systems. Objectives. Contents. Legacy systems 1

REQUIREMENTS SPECIFICATION AND MANAGEMENT. Requirements Analysis and Specification

Role Reporting Information. Role Family Analyst (Why the family exists and how it adds value to EnergyAustralia)

Organizational Requirements Engineering

Software Requirements. Descriptions and specifications of a system. Ian Sommerville 2000 Software Engineering, 6th edition.

Software Configuration Management Plan

Fourth generation techniques (4GT)

Survey Research. Classifying surveys on the basis of their scope and their focus gives four categories:

Managing and Maintaining Windows Server 2008 Servers

3SL. Requirements Definition and Management Using Cradle

Reaching CMM Levels 2 and 3 with the Rational Unified Process

Fundamentals of Measurements

Why & How: Business Data Modelling. It should be a requirement of the job that business analysts document process AND data requirements

Systems Analysis and Design Life Cycle

ESRC Research Data Policy

Requirements Definition and Management Processes

OIML D 18 DOCUMENT. Edition 2008 (E) ORGANISATION INTERNATIONALE INTERNATIONAL ORGANIZATION

CDC UNIFIED PROCESS PRACTICES GUIDE

These guidelines can help you in taking the first step and adopt a sustainability policy as well as plan your further sustainability communication.

TITLE C193 BUSINESS CREDIT CARDS POLICY AND PROCEDURES DEPARTMENT POLICY

Week 3. COM1030. Requirements Elicitation techniques. 1. Researching the business background

Joint Universities Computer Centre Limited ( JUCC ) Information Security Awareness Training- Session One

IT Service Management

Superseded by T MU AM PL v2.0

2015 UK Payment Statistics. Key statistics on the UK payment clearings, cash, card payments and payment markets

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali

Process Models and Metrics

The software process. Generic software process models. Waterfall model. Software Development Methods. Bayu Adhi Tama, ST., MTI.

Transcription:

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. However, there are a number of generic activities common to all processes Requirements elicitation; Requirements analysis; Requirements validation; Requirements management. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 2 The engineering process Feasibility studies A feasibility study decides whether or not the proposed system is worthwhile. A short focused study that checks If the system contributes to organisational objectives; If the system can be engineered using current technology and within budget; If the system can be integrated with other systems that are used. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 3 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 4 Elicitation and analysis Sometimes called elicitation or discovery. Involves technical staff working with customers to find out about the application domain, the services that the system should provide and the system s operational constraints. May involve end-users, managers, engineers involved in maintenance, domain experts, trade unions, etc. These are called stakeholders. Problems of analysis Stakeholders don t know what they really want. Stakeholders express in their own terms. Different stakeholders may have conflicting. Organisational and political factors may influence the system. The change during the analysis process. New stakeholders may emerge and the business environment change. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 5 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 6

Process activities Requirements discovery Requirements discovery Interacting with stakeholders to discover their. Domain are also discovered at this stage. Requirements classification and organisation Groups related and organises them into coherent clusters. Prioritisation and negotiation Prioritising and resolving conflicts. Requirements documentation Requirements are documented and input into the next round of the spiral. The process of gathering information about the proposed and existing systems and distilling the user and system from this information. Sources of information include documentation, system stakeholders and the specifications of similar systems. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 7 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 8 Viewpoints Viewpoints are a way of structuring the to represent the perspectives of different stakeholders. Stakeholders may be classified under different viewpoints. This multi-perspective analysis is important as there is no single correct way to analyse system. Types of viewpoint Interactor viewpoints People or other systems that interact directly with the system. In an ATM, the customer s and the account database are interactor VPs. Indirect viewpoints Stakeholders who do not use the system themselves but who influence the. In an ATM, management and security staff are indirect viewpoints. Domain viewpoints Domain characteristics and constraints that influence the. In an ATM, an example would be standards for inter-bank communications. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 9 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 10 Viewpoint identification ATM Viewpoints Identify viewpoints using Providers and receivers of system services; Systems that interact directly with the system being specified; Regulations and standards; Sources of business and non-functional. Engineers who have to develop and maintain the system; Marketing and other business viewpoints. Query balance Machine supplies User interface Account holder Remote diagnostics Get transactions Account information System cost Stolen card Manager Reliability Customer database Message log Order statement returning Foreign customer Update account Cash withdrawal Software size Printe r Hardware maintenance Funds transfer Remote software upgrade Bank teller Transaction log Security Message passing Order cheques Invalid user retention validation Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 11 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 12

ATM stakeholders LIBSYS viewpoint hierarchy Bank customers Representatives of other banks Bank managers Counter staff Database administrators Security managers Marketing department Hardware and software maintenance engineers Banking regulators Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 13 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 14 Interviewing In formal or informal interviewing, the RE team puts questions to stakeholders about the system that they use and the system to be developed. There are two types of interview Closed interviews where a pre-defined set of questions are answered. Open interviews where there is no pre-defined agenda and a range of issues are explored with stakeholders. Interviews in practice Normally a mix of closed and open-ended interviewing. Interviews are good for getting an overall understanding of what stakeholders do and how they might interact with the system. Interviews are not good for understanding domain Requirements engineers cannot understand specific domain terminology; Some domain knowledge is so familiar that people find it hard to articulate or think that it isn t worth articulating. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 15 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 16 Requirements validation Concerned with demonstrating that the define the system that the customer really wants. Requirements error costs are high so validation is very important Fixing a error after delivery may cost up to 100 times the cost of fixing an implementation error. Requirements checking Validity. Does the system provide the functions which best support the customer s needs? Consistency. Are there any conflicts? Completeness. Are all functions required by the customer included? Realism. Can the be implemented given available budget and technology Verifiability. Can the be checked? Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 17 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 18

Requirements validation techniques Requirements reviews Systematic manual analysis of the. Prototyping Using an executable model of the system to check. Covered in Chapter 17. Test-case generation Developing tests for to check testability. Requirements reviews Regular reviews should be held while the definition is being formulated. Both client and contractor staff should be involved in reviews. Reviews may be formal (with completed documents) or informal. Good communications between developers, customers and users can resolve problems at an early stage. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 19 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 20 Review checks Requirements management Verifiability. Is the requirement realistically testable? Comprehensibility. Is the requirement properly understood? Traceability. Is the origin of the requirement clearly stated? Adaptability. Can the requirement be changed without a large impact on other? Requirements management is the process of managing changing during the engineering process and system development. Requirements are inevitably incomplete and inconsistent New emerge during the process as business needs change and a better understanding of the system is developed; Different viewpoints have different and these are often contradictory. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 21 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 22 Requirements change The priority of from different viewpoints changes during the development process. System customers may specify from a business perspective that conflict with end-user. The business and technical environment of the system changes during its development. Enduring and volatile Enduring. Stable derived from the core activity of the customer organisation. E.g. a hospital will always have doctors, nurses, etc. May be derived from domain models Volatile. Requirements which change during development or when the system is in use. In a hospital, derived from health-care policy Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 23 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 24

Requirements classification Requirements management planning Requirement Type Mutable Emergent Consequential Compatibility Description Requirements that change because of changes to the environment in which the organisation is operating. For example, in hospital systems, the funding of patient care may change and thus require different treatment information to be collected. Requirements that emerge as the customer's understanding of the system develops during the system development. The design process may reveal new emergent. Requirements that result from the introduction of the computer system. Introducing the computer system may change the organisations processes and open up new ways of working which generate new system Requirements that depend on the particular systems or business processes within an organisation. As these change, the compatibility on the commissioned or delivered system may also have to evolve. During the engineering process, you have to plan: Requirements identification How are individually identified; A change management process The process followed when analysing a change; Traceability policies The amount of information about relationships that is maintained; CASE tool support The tool support required to help manage change; Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 25 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 26