REQUIREMENTS ENGINEERING LECTURE 2017/2018. Dr. Jörg Dörr. Conceptual Modelling. Fraunhofer IESE

Similar documents
Modeling Issues Modeling Enterprises. Modeling

Requirements Specifications & Standards

Requirements Validation and Negotiation

Requirements. CxOne Standard

Lecture 9 Requirements Engineering II

Requirement Analysis

Requirements Analysis. SE 555 Software Requirements & Specification

Business Analysis for Practitioners - Requirements Elicitation and Analysis (Domain 3)

Lecture 6: Requirements Engineering

Lecture 4: Goals and Scenarios. System context. Usage facet. IT system facet. Core activities. Negotiation. Requirements artefacts

Lecture 8 Requirements Engineering

Requirements Validation and Negotiation

The Analysis and Proposed Modifications to ISO/IEC Software Engineering Software Quality Requirements and Evaluation Quality Requirements

Software specification and modelling. Requirements engineering

Lecture 16: (Architecture IV)

Adaptability Evaluation at Software Architecture Level

Natural Language Specification

Perspectives on User Story Based Visual Transformations

BCS Certificate in Requirements Engineering Syllabus

350 Index 2005 GOAL/QPC

The ATCP Modeling Framework

Darshan Institute of Engineering & Technology for Diploma Studies

Evidence-based Development coupling structured argumentation with requirements development.

Lesson 06. Requirement Engineering Processes

BCS Certificate in Requirements Engineering Extended Syllabus Version 2.5 May 2017

A Goal-Oriented Approach for Optimizing Non-Functional Requirements in Web Applications

Requirements Elicitation

4.2.2 Usability. 4 Medical software from the idea to the finished product. Figure 4.3 Verification/validation of the usability, SW = software

Software Architecture. Lecture 5

Scenario-Based Analysis. Scenario-Based Analysis (example) Form analysis

Requirements Engineering: Specification & Validation. Software Requirements and Design CITS 4401 Lecture 18

Progress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development

To practice UCSD Usability Design

Design. Introduction

Co-evolution of complementary formal and informal requirements

Requirements. Chapter Learning objectives of this chapter. 2.2 Definition and syntax

A Model Transformation from Misuse Cases to Secure Tropos

Extension and integration of i* models with ontologies

Lecture 8: Use Case -Driven Design. Where UML fits in

System Analysis and Design

AADL Requirements Annex Review

Requirements Engineering Process

Sofware Requirements Engineeing

Requirements Engineering. Establishing what the customer requires from a software system. Requirements Engineering. What is a Requirement?

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping

Class Meeting 04 (Lecture 03) Objectives for this class meeting

Software Engineering Unit 4- Requirement Analysis and Specification

SE 1: Software Requirements Specification and Analysis

THE USE OF PARTNERED USABILITY TESTING TO HELP TO IDENTIFY GAPS IN ONLINE WORK FLOW

MASTER S THESIS INFORMATION SCIENCE

Modelling Variation in Quality Attributes

Using a Goal-Driven Approach to Structure User Story Sets

Architectural Blueprint

Enterprise Architect Training Courses

copyright 1996, 2001, 2005 R.S. Pressman & Associates, Inc.

BUILDING GOOD-QUALITY FUNCTIONAL SPECIFICATION MODEL

Vragen. Use case analysis. Use-Cases: describing how the user will Use cases

Using FDAF to bridge the gap between enterprise and software architectures for security

VANCOUVER Chapter Study Group. BABOK Chapter 9 Techniques

CS6502-OBJECT ORIENTED ANALYSIS AND DESIGN Two Marks Question with Answers Unit-I Introduction to OOAD

Administrivia. Wednesday: Requirements and Specification. CS169 Lecture 4. We assign teams and you start on Monday. Determining Stakeholders and Needs

Requirements engineering

SE351a: Software Project & Process Management. 13 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa

Requirements Validation and Negotiation (cont d)

ROEVER ENGINEERING COLLEGE DEPARTMENT OF INFORMATION TECHNOLOGY CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN. Unit-I. Introduction to OOAD

CIS 890: Safety Critical Systems

Individual Project. Agnieszka Jastrzębska Władysław Homenda Lucjan Stapp

An Ontology-Based Methodology for Integrating i* Variants

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/17/2015

index_ qxd 7/18/02 11:48 AM Page 259 Index

Lecture 13 Introduction to Software Architecture

REQUIREMENTS. Michael Weintraub Spring, 2016

Human Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches

Basics : the Requirements Engineering Process

Tropos: Security. Agent-Oriented Software Engineering course Laurea Specialistica in Informatica A.A

i* on ADOxx : A Case Study

The Tropos visual modeling language. A MOF 1.4 compliant meta-model.

Capturing Contextual Variability in i* Models

Best Practices for Collecting User Requirements

Chapter : Analysis Modeling

UML, BPMN, UX and Database Design Solutions uml process diagrams learn enterprise uml technical systems build scope definition and.

Model-based Transition from Requirements to High-level Software Design

Software Architectures

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212

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

Lecture 19 Engineering Design Resolution: Generating and Evaluating Architectures

TESTING SOFTWARE QUALITY CHARACTERISTICS

Requirements Analysis Method For Extracting-Transformation-Loading (Etl) In Data Warehouse Systems

Loosely-coupled consistency between agentoriented conceptual models and Z specifications

Requirements. Requirements. Types of Requirement. What Is a Requirement?

A Method for Data Minimization in Personal Information Sharing

Bridging User-Centered Design and Requirements Engineering with GRL and Persona Cases

INTRODUCTION TO THE USER REQUIREMENTS NOTATION

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method

Building the User Interface: The Case for Continuous Development in an Iterative Project Environment

BDSA08 Advanced Architecture

Product. e ss. P roc. so get the right requirements. Garbage in garbage out,

Model-Based Requirements Engineering. Tutorial by Kristian Sandahl

Progress Report. Object-Oriented Software Development: Requirements elicitation and analysis. Object-oriented analysis, design, implementation

Transcription:

REQUIREMENTS ENGINEERING LECTURE 2017/2018 Dr. Jörg Dörr Conceptual Modelling

AGENDA Analysis & Specification with Conceptual Models 2

Requirements Specification ANALYSIS & SPECIFICATION WITH CONCEPTUAL MODELS 3

Requirements Analysis as Part of Specification Requirements Analysis is performed in order to analyze certain quality characteristics of requirements Is Requirements Analysis then synonym to requirements V&V? No! Analysis is concerned with an incomplete set of requirements, not discussed by the stakeholder. Requirements Analysis can be a very early activity. Requirements validation should have a complete, agreed upon set of requirements as input. Therefore, it is also regarded as part of the specification. 4

Means for Requirements Analysis Analysis Checklists Conceptual Modeling 5

Requirements Analysis Checklists Typical Questions (1) Is the requirement adequate with the business goal of the project? Does the requirement conflict with some domain constraint, policies or regulation? Does the requirement include premature design or implementation information? Is the requirement necessary? Does the requirement require non-standard hardware or must software be used? Is the requirement ambiguous, could different persons read it in different ways? What are the different interpretations for the requirement? Is the requirement realistic given the technology that will used to implement the system? 6

Requirements Analysis Checklists Typical Questions (2) Does the description of a requirement describe a single requirement or could it be broken into several different requirements? Has each requirement been assigned a priority? Are the system boundaries well defined? Have the portability, reliability, usability and maintainability requirements for the system been respected? Did you develop a behavioral or structural model for the system? Is the Data Dictionary implemented and correctly updated? Is the requirement testable by the test engineers? 7

Conceptual Modeling Conceptual Modeling is performed by the requirements engineer (analyst) to understand the problem domain and the requirements. Various models can be created to find out whether a problem domain or the requirements are understood well, i.e., whether the understanding of the requirements engineer is complete, consistent, and correct: Goals Data Interaction Structure Note: The models created during conceputal modeling are not necessarily part of the requirements specification. But they can be part of the requirements specification. 8

Conceptual Models For the different models, also various notations can be used, e.g., i-star (i*) E/R Diagrams UML SysML Business Process Modelling Notations 9

Goal Modeling Definitions Goal Models are often the first models used as they are on a high abstraction level. Definition goal: A goal is a desirable state lying in the future, which is not reached automatically but by specific actions. Goals and their dependencies are often described in conceptual models that are based on modelling languages. Definition goal model: A goal model is a conceptual model. Its goals and decompositions are documented in sub-goals and as necessary further dependencies between (sub)-goals. 10

Goal Modeling: Why should one do goal modeling? Goals can be one of the very early starting points (besides current problems) for requirements elicitation Goals are a fundamental concept to understand why new software or systems or changes to these systems are needed Goal modeling can be the anchor (rationale) for the following requirements traceability from high level to lower level 11

Classification of Goals Subject that has a goal Organizations or organizational units Individual Persons or Roles Object affected by the goal Quality goals Functional goals 12

Representation of Goals Various notations exist for goal modeling i-star (i*) GRL SIG (Softgoal interdependency graphs) And / OR Trees Just text 13

i*-framework I*-Framework I*-Framework is a graphical modelling language that is used for analysing and documentation It can be used in an early phase of system modelling for detecting and understanding problems It consists of two different models: Strategic Dependency Model (SDM): The Strategic Dependency Model is used to describe the dependency relationships among various actors. Strategic Rationale Model (SRM): The Strategic Rationale Model is used to provide rationales for single dependencies in the SDM. 14

Objects in i* Objects in i* Actor Actor Boundary Resource An actor is a person or a system that is in contact with the system. (Agents, Roles, Positions) A resource is a result required or supplied by the actor for completing the goal Softgoal A soft-goal describes the wish of an actor to complete a function regarding the quality Goal A goal is the documented intention of an actor Task A task consists of a number of steps which an actor has to execute for completing a task 15

Connections in i* Dependencies in i* Depender Dependee D D Soft-goal Dependency The soft-goal dependency describes an actors (Depender) completion of a soft-goal depends on another actor (Dependee). D Goal Dependency D The goal dependency describes an actors (Depender) completion of a goal depends on another actor (Dependee) D Task Dependency D The task dependency describes that an actor (Depender) depends on a task and that task depends on another actor (Dependee) D Resource Dependency D The resource dependency describes an actors (Depender) depending on a resource for goal completion and the resource is supplied by another actor (Dependee) 16

Connections in i* Links Means-end-Link The means-ends-link expresses what soft-goals, tasks and/or resources are needed to complete a goal. A meansends-link documents the reason why an actor is able to complete a specific goal, execute a specific task or use a specific resource. Task-Decomposition-Link The task-decomposition-link describes more detailed a task though goals, soft-goals, resources and/or more specified tasks. A task-decomposition-link documents the essential elements of a task to complete sub-goals or softgoals an the needed resources. +/- Contribution-Link + pos. affected - neg. affected The contribution-link describes a positive or a negative affect on soft-goals through tasks or other soft-goals. A contribution-link describes in what extend a task or another soft-goal contributes the soft-goal. But it does not explain the precisely range of support. 17

Example SDM Example taken from Master Software Engineering for Embedded Systems, TU Kaiserslautern, Textbook E-M.2 18

Example SRM Example taken from Master Software Engineering for Embedded Systems, TU Kaiserslautern, Textbook E-M.2 19

And / OR Decompositions (Trees) And-decomposition of a goal, i.e., the coarse-grain goal G0 is refined into several fine-grain goals G1 Gn that all have to be fulfilled to achieve goal G0. Or-decomposition of a goal. Again, a coarse-grain goal G0 is refined into several fine-grain goals G1 Gn. To fulfill G0, one (or more) of G1 Gn have to be achieved. 20

Example Example taken from Master Software Engineering for Embedded Systems, TU Kaiserslautern, Textbook E-M.2 21

Usage of UML for Conceptual Modeling (1) Various Diagrams of the UML can be used for Requirements Analyis, e.g.: Activity Diagrams for business processes / workflows Class and Object Diagrams for modeling data User Interface Navigation Maps, Collaboration Diagrams, and Sequence Diagrams for Interaction between different systems and stakeholders and systems 23

Usage of UML for Conceptual Modeling (2) Use Case Diagrams for getting an overview on the system functionality State Diagrams for modeling intended system states and their transformation or the (business) object lifecycles 24

UML Class Diagram to show Object Relationships 25 Figures taken from: Dr. Darius Silingas, Prof. Rimantas Butleris UML-Intensive Framework for Modeling Software Requirements

UML Diagram for Object Lifecycle 26 Figures taken from: Dr. Darius Silingas, Prof. Rimantas Butleris UML-Intensive Framework for Modeling Software Requirements

UML Use Case Model for Functional Overview 27 Figures taken from: Dr. Darius Silingas, Prof. Rimantas Butleris UML-Intensive Framework for Modeling Software Requirements

UML Activity Diagram to refine a Use Case 28 Figures taken from: Dr. Darius Silingas, Prof. Rimantas Butleris UML-Intensive Framework for Modeling Software Requirements

UML Information Flow Diagram for System Context 29 Figures taken from: Dr. Darius Silingas, Prof. Rimantas Butleris UML-Intensive Framework for Modeling Software Requirements

Conceptual Models in Different RE-Approaches Armour Use Case Diagram [Armour & Miller, 01] Domain Object Modell Initial what-is System Use Case Initial what will be System Use Case Base System Use Case Internal Use Case Elaborated System Use Case Transaction Information Model Transaction Trees Analysis Object Model Many different models and tasks, but basic design decisions are in common Holtzblatt [Beyer & Holtzblatt, 98] Work Model Focus Area User Environment Design (UED) Storyboard Use Case Object Model Constantine [Constantine & Lockwood, 99] Task model Domain model Content model Context Navigation Map Essential Use Case Use Case Maps 30

Conceptual Models Summary Conceptual models help clarifying certain aspects of a system in more detail than just natural language Support requirements analysis For different aspects of a system, different notations can be used 31