Requirements Specification and Testing Part 1

Similar documents
Estimating Impact of Change

A Framework to Balance Tracing Agility and Formalism

Using Requirements Traceability Links At Runtime A Position Paper

3SL. Requirements Definition and Management Using Cradle

RETRATOS: Requirement Traceability Tool Support

Bidirectional Tracing of Requirements in Embedded Software Development

Requirements Traceability. Mirka Palo

Lecture 9: Requirements Modelling

Traceability Patterns: An Approach to Requirement-Component Traceability in Agile Software Development

3.2 Scenarios and Observations. 3.1 VOD System and Model

Chapter 5 Understanding Architectural Elements from Requirements Traceability Networks

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis

ELECTRONIC TRACEABILITY SYSTEMS VS. PAPER BASED TRACEABILITY SYSTEMS

Requirements traceability, Requirements management, Requirements change, Functional traces, Non-functional traces.

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

Requirements Definition and Management Processes

Change Impact Analysis

VAIL-Plant Asset Integrity Management System. Software Development Process


Lecture 20: Software Evolution

Using TechExcel s DevSuite to Achieve FDA Software Validation Compliance For Medical Software Device Development

Software Engineering Reference Framework

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

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

Software Requirements, Third Edition

A Framework of Model-Driven Web Application Testing

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites:

System Development Life Cycle Guide

CHAPTER 20 TESING WEB APPLICATIONS. Overview

ESTABLISHING A MEASUREMENT PROGRAM

VDM vs. Programming Language Extensions or their Integration

Requirements engineering

Project VIDE Challenges of Executable Modelling of Business Applications

DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES

Automatically Detecting and Tracking Inconsistencies in Software Design Models

A Requirements-to-Implementation Mapping Tool for Requirements Traceability

Contributions To Ontology-Driven Requirements Engineering

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Latest Trends in Testing. Ajay K Chhokra

Agile Requirements Traceability Using Domain-Specific Modelling Languages

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

SERG. Reconstructing Requirements Traceability in Design and Test Using Latent Semantic Indexing

Test Management Tool for Risk-based Security Testing

A CONCEPTUAL MODEL FOR REQUIREMENTS ENGINEERING AND MANAGEMENT FOR CHANGE-INTENSIVE SOFTWARE

Policy Modeling and Compliance Verification in Enterprise Software Systems: a Survey

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into

5 Best Practices for SAP Master Data Governance

Introducing Formal Methods. Software Engineering and Formal Methods

Aligning IT investment and Business

Use Cases. Massimo Felici. Massimo Felici Use Cases c

Service Strategy and Design

Scenario-driven Testing of Security-related Domain-specific Language Models

Outputs from When Everything Changes: DSL Evolution

Reduce Medical Device Compliance Costs with Best Practices.

Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014

Prüfung von Traceability Links -Workshop

Interactive Recovery of Requirements Traceability Links Using User Feedback and Configuration Management Logs

Overview of STS Consulting s IV&V Methodology

Partnering for Project Success: Project Manager and Business Analyst Collaboration

Round-Trip Software Engineering Using UML: From Architecture to Design and Back

The OMG BPM Standards

CRISP-DM, which stands for Cross-Industry Standard Process for Data Mining, is an industry-proven way to guide your data mining efforts.

The Role of Requirements Traceability in System Development

Rich Traceability. by Jeremy Dick Quality Systems and Software Ltd. Abstract

Developing Business Architecture with TOGAF

Title: Topic 3 Software process models (Topic03 Slide 1).

Information Management & Data Governance

Software Quality Assurance Plan

Change Pattern-Driven Traceability of Business Processes

Designing a Semantic Repository

Data Quality in Information Integration and Business Intelligence

Module 6 Essentials of Enterprise Architecture Tools

Copyright 2014 Carnegie Mellon University The Cyber Resilience Review is based on the Cyber Resilience Evaluation Method and the CERT Resilience

CDC UNIFIED PROCESS PRACTICES GUIDE

Effective Business Requirements (Virtual Classroom Edition)

Model Based System Engineering (MBSE) For Accelerating Software Development Cycle

JOURNAL OF OBJECT TECHNOLOGY

SOFTWARE TESTING TRAINING COURSES CONTENTS

Development Process Automation Experiences in Japan

System Build 2 Test Plan

SysML Modelling Language explained

How To Write Software

Masters in Information Technology

Metrics in Software Test Planning and Test Design Processes

Quest for a Business Rules Management Environment (BRME) in the Internal Revenue Service

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

FIREWALL CLEANUP WHITE PAPER

Validating Methods using Waters Empower TM 2 Method. Validation. Manager

Traffic Driven Analysis of Cellular Data Networks

UML TUTORIALS THE USE CASE MODEL

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME >

Towards Collaborative Requirements Engineering Tool for ERP product customization

How To Validate Software

Methodology: Agile development of safety critical systems Annex D1.1.d to deliverable D1.1

Support Online Updates of Software

How To Test For Elulla

Chap 1. Introduction to Software Architecture

Compliance ow - managing the compliance of dynamic and complex processes

Introduction to Data Mining

Matrix Calculations: Applications of Eigenvalues and Eigenvectors; Inner Products

Transcription:

Institutt for datateknikk og informasjonsvitenskap Inah Omoronyia Requirements Specification and Testing Part 1 TDT 4242 TDT 4242

Lecture 3 Requirements traceability Outcome: 1. Understand the meaning of requirements traceability 2. Understand the challenges of requirements traceability 3. Insight into different traceability meta- models 4. Approaches to requirements traceability 1. Automated requirements traceability TDT 4242

What is requirements traceability Requirements traceability refers to the ability to describe and follow the life of a requirement, in both a forwards and backwards direction, i.e. from its origins, through its development and specification, to its subsequent deployment and use, and through periods of on- going refinement and iteration in any of these phases. Gotel and Finkelstein TDT 4242

Why? Traceability Goals (I): Project Management Status: When will we finish? and what will it cost? Quality: How close are we to our requirements? Improve Quality: What can we do better? Change Management Versioning, documentation of changes (Why? What? When?) Change Impact analysis Reuse Variants and product families Requirements themselves can be targeted for reuse TDT 4242

Why? Traceability Goals (II): Validation finding and removing conflicts between requirements completeness of requirements derived requirements cover higher level requirements each requirement is covered by part of the product Verification assure that all requirements are fulfilled System Inspection identify alternatives and compromises Certification/Audits proof of being compliant to standards TDT 4242

Habitat of Traceability Links TDT 4242

Habitat of Traceability Links: Pre- vs. Post-Requirements Specification TDT 4242

Challenges of requirements traceability: Traces have to be identified and recorded among numerous, heterogeneous entity instances (document, models, code,... ). It is challenging to create meaningful relationships in such a complex context. Traces are in a constant state of flux since they may change whenever requirements or other development artefacts change. A variety of tool support based on traceability matrix, hyperlink and identifiers. still manual with little automation Incomplete trace information is a reality due to complex trace acquisition and maintenance. Trust is a big issue: lack of quality attribute There is no use of the information that 70% of trace links are accurate without knowing which of the links forms the 70% TDT 4242

Challenges of requirements traceability: Different stakeholders usage viewpoint (different questions asked by different stakeholders): Project management: how close are we to our requirements and what can we do better to improve quality. Change management Tracking down the effect of each change to each involved component that might require adaptations to the change, recertification or just retesting to proof functionality. Reuse: Pointing out those aspects of a reused component that need to be adapted to the new system requirements. Even the requirements themselves can be targeted for reuse. Validation: Traceabilility can be used as a pointer to the quality of requirements: Completeness, ambiguity, correctness/noise, inconsistency, forward referencing, opacity Ensures that every requirement has been targeted by at least one part of the product Verification Checking that constraints are not violated (in most cases this is an extension of validation context) Certification/Audit Testing, maintainance (reverse engineering) TDT 4242

Traceability meta-models: A model is an abstrac0on of phenomena in the real world; a metamodel is yet another abstrac0on, highligh0ng proper0es of the model itself. Meta- models for traceability are o<en used as the basis for the different traceability methodologies and frameworks: Define what type of artefacts should be traced. Define what type of rela0ons could be established between these artefacts. Traceability Meta Model TDT 4242

Traceability meta-models: European EMPRESS project: Meta model for requirements traceability

Traceability meta-models: PRECISE Meta- model (SINTEF)

Approaches to requirements traceability Creating trace links: critical tasks in requirements traceability: establish links between requirements and between requirements and other artefacts. Manual linking and maintaining of such links is time consuming and error prone Focus is on requirements traceability through (semi- ) automatic link generation or through prioritization of links.

Approaches to requirements traceability Creating trace links: Classical traceability methods - the simplest form of traceability requirements traceability matrices, hypertext, cross referencing schemes Use of excel very common Issues: long- term difficulty of maintaining large numbers of links. The static nature of the links (lack of attributes) limit the scope of potential automation.

Approaches to requirements traceability Creating trace links: Scenario driven traceability method Test- based approach to uncover relations amongst requirements, design and code artefacts (Alexander Egyed ) Accomplished by observing the runtime behavior of test scenarios. IBM Rational PureCoverage, open source tool (org.jmonde.debug.trace) Translate this behavior into a graph structure to indicate commonalities among entities associated with the behavior.

Approaches to requirements traceability Scenario driven approach: List of Video on demand VOD Requirements Overlapping between r6 and r1 suggest some trace dependency between the two requirements. No overlapping between r6 and r2 suggest no dependency between the two requirements Execution Paths (footprints) of three VOD requirements

Approaches to requirements traceability Creating trace links: Scenario driven traceability method Issues: Semi- automated but requires enormous amount of 0me from system engineers to itera0vely iden0fy a subset of test scenarios and how they related to requirement artefacts. Requirements that are not related due to non matching execu0on paths might be related in some other form (e.g calling, data dependency, implementa0on pajern similarity, etc).

Approaches to requirements traceability Creating trace links: Information retrieval (IR) methods Based on the similarity of terms across requirements and artefacts. vector-space model probabilistic network model Latent semantic indexing

Approaches to requirements traceability: IR method Terms /Requirements matrix for VOD system r7 r0 r8 r3 r9 r6 r1 r4 r2 r5 Cosine similarity LSA visualisation for r6 Outcome closely correspond with scenario based approach Possible trace dependency between r6 and r1 Lesser likelihood of dependency between r6 and r2 Further more, IR approach suggest dependency b/w r6 and r8, r3, r0, r9.

Approaches to requirements traceability Creating trace links: Information retrieval (IR) methods Issues: Further inves0ga0on needed by a stakeholder to accept the proposed links The accuracy (precision and recall) depends on the underlying processes and guidelines (e.g. presence of dic0onaries, naming conven0on, etc.).

Approaches to requirements traceability Creating trace links: Event based Requirements Tracing Automated harvesting of trace links based on navigations and influence across the collaboration space. (Omoronyia et.al) Identification of single point of failure Experience instances Issues: - Highly reliant on capturing navigation patterns within a development platform

Conclusion Requirements traceability is an important aspect of requirements management Stakeholders have different traceability information needs Traceability can be complex for not trivial projects Traceability meta-models provide insight on the type of traceability information required for a project There exist different automated approaches for requirements traceability. The strength is in a synergy of different automated approaches