MANAGING INFORMATION. On the Complexity of Requirements Flow-down. An Integrate white paper

Similar documents
CHARTING SPATIAL BUSINESS TRANSFORMATION

Entropy Measures for System Identification and Analysis Joseph J. Simpson, Mary J. Simpson System Concepts, LLC

Economic and Social Council

PostPoint Professional

Maritime Safety Services. Supporting Safe and Efficient Transfer Operations

NHS Occupational Health Workforce Survey 2009

Introductory Statistics Neil A. Weiss Ninth Edition

KEYWORDS: Curie; radium; legacy; contamination; gamma spectrometry; radium-226; thorium- 232.

The International Mining & Minerals Association. The new home for mining and minerals professionals in the UK and overseas

Practice General Test # 4 with Answers and Explanations. Large Print (18 point) Edition

This introduction is intended for compliance officers at Protection Seller and Broker-Advisor firms

Page No. (and line no. if applicable):

Elementary Linear Algebra with Applications Bernard Kolman David Hill Ninth Edition

UN-GGIM: Strengthening Geospatial Capability

Department Of Geography. MSc Applied GIS.

For personal use only

Map your way to deeper insights

THE SEVILLE STRATEGY ON BIOSPHERE RESERVES

Mark Scheme (Results) June GCE Physics (6PH08) Paper 01 Experimental Physics (WA)

GCE Mathematics. Mark Scheme for June Unit 4723: Core Mathematics 3. Advanced GCE. Oxford Cambridge and RSA Examinations

Reduction of Random Variables in Structural Reliability Analysis

Delivering Met to the Military User

Section 2. Indiana Geographic Information Council: Strategic Plan

Population models from PEPA descriptions

ArcGIS. for Server. Understanding our World

8.3.2 The finite size scaling method

PMT. Mark Scheme (Results) January GCE Physics (6PH08) Paper 01 Experimental Physics (Written Alternative)

What s the problem? A Modern Odyssey in Search of Relevance. The search for relevance. Some current drivers for new services. Some Major Applications

GETTING BRITAIN MOVING THIS WINTER Forecast, Gritting and Snow Clearing Services from Paxman Landscapes UK Ltd

Reading for Lecture 13 Release v10

Mark Scheme (Results) January 2010

This document is a preview generated by EVS

Concept Formulation of Geospatial Infrastructure. Hidenori FUJIMURA*

SPR Satisfaction Survey BC Surgical Patient Registry (SPR) Satisfaction Survey 2012

Implementing the Sustainable Development Goals: The Role of Geospatial Technology and Innovation

Mark Scheme (Results) November 2009

ArcGIS for Desktop. ArcGIS for Desktop is the primary authoring tool for the ArcGIS platform.

The Green. Chemistry Checklist Why Green Chemistry? The Business Case. Inside. Support and Communication. Design and Innovation

Session-Based Queueing Systems

Developing the +1.2Moz Pilbara Gold Project

GCE. Mathematics. Mark Scheme for January Advanced GCE Unit 4729: Mechanics 2. Oxford Cambridge and RSA Examinations

No.5 Node Grouping in System-Level Fault Diagnosis 475 identified under above strategy is precise in the sense that all nodes in F are truly faulty an

T: E:

ISO/TR TECHNICAL REPORT. Nanotechnologies Methodology for the classification and categorization of nanomaterials

Restricted and Unrestricted Coverings of Complete Bipartite Graphs with Hexagons

COGNITIVE GROUP why talent is the key to successful business transformation

SRI Briefing Note Series No.8 Communicating uncertainty in seasonal and interannual climate forecasts in Europe: organisational needs and preferences

A COMPARATIVE STUDY OF COMPLEXITY MEASURES TO ANALYZE BUSINESS PROCESS MODELS. Stephan Borgert, Matthias Dehmer and Erwin Aitenbichler

Programme Specification (Undergraduate) Chemistry

Standards Alignment... 5 Safe Science... 9 Scienti c Inquiry Assembling Rubber Band Books...15

The purpose of this report is to recommend a Geographic Information System (GIS) Strategy for the Town of Richmond Hill.

Sampling: A Brief Review. Workshop on Respondent-driven Sampling Analyst Software

Economics 204 Summer/Fall 2017 Lecture 7 Tuesday July 25, 2017

The Fundamentals of Moisture Calibration

Flood Risk Forecasts for England and Wales: Production and Communication

Hydrological Applications of Weather Radar

Mark Scheme (Results) June GCE Physics (6PH07) Paper 01 Exploring Physics (WA)

Thank you for your interest in the Support Resistance Strength Analyzer!

An online data and consulting resource of THE UNIVERSITY OF TOLEDO THE JACK FORD URBAN AFFAIRS CENTER

Derogation Criteria for the Requirements for Generators Network Code

for Complex Environmental Models

Reference: 4880(DOP.ADA)1136 Subject: Survey on the integration of geographic information systems into postal address development

GIS Capability Maturity Assessment: How is Your Organization Doing?

Alluvium Consulting Australia Senior integrated water management specialist Position Description March 2018

SYSTEM EVALUATION AND DESCRIPTION USING ABSTRACT RELATION TYPES (ART)

ROLE AND SIGNIFICANCE OF UNCERTAINTY IN HV MEASUREMENT OF PORCELAIN INSULATORS A CASE STUDY

Readers are advised to proceed with caution. Those with a weak heart may wish to. Exploding the Ellipse Arnold Good

Stator Thermal Time Constant

Process Control Instrumentation Technology Curtis D. Johnson Eighth Edition

The Road to Improving your GIS Data. An ebook by Geo-Comm, Inc.

Mark Scheme (Results) June GCE Further Pure FP1 (6667) Paper 1

Haida Gwaii Queen Charlotte Islands

St. Pölten University of Applied Sciences. Strategy St. Pölten University of Applied Sciences. fhstp.ac.at

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS CALCULUS III MATH 2110

Evaluation of fog-detection and advisory-speed system

Source Protection Zones. National Dataset User Guide

1330. Comparative study of model updating methods using frequency response function data

Mark Scheme (Results) January 2011

13.7 ANOTHER TEST FOR TREND: KENDALL S TAU

While entry is at the discretion of the centre, candidates would normally be expected to have attained one of the following, or equivalent:

Communicating Hurricane Threats and Impacts on a National Scale. Daniel Brown Warning Coordination Meteorologist National Hurricane Center

CHAIN LADDER FORECAST EFFICIENCY

SuperPack North America

Google Maps and Beyond

Examiners Report/ Principal Examiner Feedback. Summer GCE Core Mathematics C3 (6665) Paper 01

Get in touch. orstedbusiness.co.uk. Page 1 of 14

Path Testing and Test Coverage. Chapter 9

Path Testing and Test Coverage. Chapter 9

An examination of some aspects of the use of ISO 140 Part 4 and 7 in field measurements.

GLOBAL EDITION. Thomas. CALCULUS Early Transcendentals Thirteenth Edition in SI Units

Larry R. Glass, Ph.D., M.P.H. Xerox Corporation

GCE Mathematics. Mark Scheme for June Unit 4723: Core Mathematics 3. Advanced GCE. Oxford Cambridge and RSA Examinations

The Future of Tourism in Antarctica: Challenges for Sustainability

Sampling distributions and the Central Limit. Theorem. 17 October 2016

Pearson Education Limited Edinburgh Gate Harlow Essex CM20 2JE England and Associated Companies throughout the world

Cadcorp Introductory Paper I

Elementary Point-Set Topology

Overlay Transport Virtualization (OTV) Unicast-Mode Transport Infrastructure Deployment

Green Chemistry Member Survey April 2014

Transcription:

MANAGING INFORMATION On the Complexity of Requirements Flow-down An Integrate white paper

On the Complexity of Requirements Flow-down Structures An Integrate white paper On the Complexity of Requirements Flow-down Abstract The process of systematically decomposing and tracing requirements results in graphs in which the tracing diverges and converges as the requirements are re-factored through the layers of design. This paper reports on work to assess measures for the complexity of requirements decomposition graphs, including the use of the standard definition of cyclomatic complexity. It discusses what the complexity of requirements flow-down means intuitively, and establishes some informal assessment criteria. A number of measures are motivated and defined, and then assessed against the criteria. Finally, the paper discusses the use of such measures as viable tools for assisting in the review of requirements development, and the future directions the ongoing work should take. Introduction Requirements development is the process of systematically decomposing and tracing requirements through multiple levels of abstraction; e.g. developing a user requirement progressively into system requirements, subsystem requirements and component requirements. The resulting structures are directed graphs in which the decomposition paths diverge and converge as the requirements are re-factored through the layers of design. In general, one expects divergence, since each layer adds design detail to the layer above. Nevertheless, convergence will occur; for instance, each time a single design feature satisfies multiple requirements. Where complex systems are being developed, different teams may address each layer of design and the requirements decomposition associated with it. With no one team in charge, the complexity of the whole chain of decomposition arising from a single high level requirement may not be evident to an individual engineer. Hence the desire exists to have a tool for highlighting complexity. Such measures could be used in the following scenarios:. As a metric for the flow-down complexity within a whole requirements layer. This may help answer the question: how complex is the design relating to this set of requirements?. As a metric for identifying individual requirements as those that give rise to flow-down complexity over a certain threshold, or significantly higher or lower than the standard variance. This may help answer the question: where should review effort be focused? 3. As a means of assessing the complexity of the relationships between clusters of requirements. This may help answer the question: what would be the cost associated with changing a requirement? Previous work (Hull, Jackson, Dick ) has recommended the use of flow-down statistics to identify requirements whose decomposition is significantly different from others, and to apply special consideration to such requirements during reviews. This paper amplifies that suggestion by proposing the use of a number of complexity measures as means of assessing flow-down complexity. The work reported is still in progress, and so only tentative conclusions can be drawn at this stage. Graph Complexity McCabe (McCabe, 9) originally proposed his complexity measure in the context of software development; the measure corresponds to the number of linearly independent paths through a piece of code, and is an indicator of the amount of testing required. The approach involves reducing the structure of the code into a strongly connected graph, and applying the measure to the graph. Indeed, the origins of the measure are in general graph theory, and it can be used to measure graph complexity in many other contexts. Therefore, we propose that McCabe s measure can be adapted to requirements flow-down graphs. In the context of requirements management, we wish to consider flow-down graphs that start from one or more high-level requirements and finish in one or more low-level requirements. In McCabe s formulation, this is equivalent to a software program that has multiple entry and exit points. Such graphs can always be made single entry and exit by adding an imaginary single entry

3 above the existing ones and connecting them all; similarly for the exit points. Therefore, the formulation of the McCabe measure that we use is: C = L R + R E + R X where C is the measure, L is the number of links, R is the number of requirements, RE is the number of entry requirements (those with no inflow in the directed graph), and RX is the number of exit requirements (those with no out-flow in the directed graph). The sense of this measure is that, the higher the value of C, the greater the complexity, with C = the minimum. In the context of the flow-down of requirements, the McCabe metric, in effect, counts the number of paths through the structure. While we view this as one useful measure of complexity, we recognize that there are significant differences between the structure of code and requirements flow-down structures. Firstly, requirements flow-down graphs have no loops or should not have, since a loop corresponds to a low-level requirement being decomposed into a higher-level requirement. Secondly, requirements development is expected to introduce detail through systematic design, and so it is normal for there to be more low-level requirements than high-level. One view of complexity is the degree to which lower level requirements are inter-connected in other words, the extent to which the flow-down is more than just a tree, and some low-level requirements respond to multiple high-level requirements. While McCabe cyclomatic complexity treats divergence and convergence symmetrically, we should also consider measures that tolerate divergence more than convergence. Thirdly, we are interested in layers of requirements, in the sense that complexity may be measured between a layer of entry requirements and a layer of exit requirements regardless of the number of intermediate requirements (non-entry and non-exit requirements). These differences suggest that cyclomatic complexity should not be the only measure for requirement decomposition. A Measure of Connectedness In this section, we are going to define a metric that measures the degree of inter-connection that exists in a graph. The metric normalizes cyclomatic complexity for the expansion in the number of requirements resulting from divergence in decomposition, which is the normal case. The intuition driving this is the idea of saturation in the number of links. In other words, the idea that complexity is related to the number of links more than is necessary for a hierarchy. To make a tree, you need R RE links (where R and RE are as defined above.) Any more links than this, and there is added complexity. Therefore, we define the saturation of a graph, S, as the difference between the actual number of links, L, and the minimum number of links necessary to make each part of the graph a tree, R RE: S = L R + R E where L, R and R E are as defined above. The sense of this measure is that the higher the value of S the more complex the graph, with S = the minimum. Our intuition is re-enforced by the observation that the definition of S is identical to the definition of C but without the term R X, thus removing the divergence of the graph from the equation. How intuitive S is as a measure will be discussed in the section entitled Comparing Measures below. A Measure of Expansion Another simple measure of the complexity of a requirements decomposition graph is how the number of requirements expands in a layer, regardless of the complexity within the layer. We define the expansion ratio, E, of a graph: E = R X / R E where R E and R X are as defined above. Note that intermediate requirements are not taken into account in this measure, making it a kind of black-box measure. Relative Complexity The measures defined so far are absolute measures, in the sense that they don t take into account the size of the graph, which means that the bigger the overall graph, the higher the complexity is likely to be. In this section, we try to turn these measures into relative measures by normalizing them for the size of the graph. The size of a graph can be measured by the number of links, the number of requirements, the number of entry requirements or the number of exit requirements. We choose two ways of making McCabe s measure relative to the size of the graph: by the number of entry requirements, RCE, and by the number of exit requirements, RCX: RC E = C / R E RC X = C / R X where C, R E and R X are defined as above.

On the Complexity of Requirements Flow-down Structures An Integrate white paper These measures, in effect, average the overall complexity of the graph over the entry and exit requirements respectively. They give a real number value greater than., with higher values representing greater relative complexity. Note that, if E =., then RE = RX, and thus RCE = RCX. With regard to saturation, this is defined in terms of the number of links, so we choose the total number of links as the measure of the size of the graph, giving Relative Saturation, RS, as: RS = S / L This measure gives a real value between. and., with those values closest to. being the highest saturation. Comparing Measures In this section, we compare the various measures proposed to assess their performance against our intuition. Figure shows six simple flow-down shapes showing the complexity measures, C, S, E, RCE, RCX and RS, of each. The graphs are implicitly directed from top to bottom. C = S = E =. RC E =. RC X =. RS =. C = S = E =. RC E =. RC X =. RS =. C = S = E =. RC E =. RC X =. RS =. C = 3 S = E =. RC E =. RC X =. RS =.33 C = S = E =. RC E =. RC X =. RS =. C = S = E =. RC E =. RC X =. RS =. (a) (b) (c) < (d) (e) (f) C = S = E =. RC E =. RC X =. RS =. C = S = E =. RC E =. RC X =. RS =. C = 3 S = E = 3. RC E = 3. RC X =. RS =. C = S = E = 3. RC E =. RC X =. RS =. C = 3 S = E =. RC E =. RC X =. RS =. C = S = E =. RC E =. RC X =. RS =. (g) (h) (i) < (j) (k) Figure : Simple flow- down graphs (l)

Graphs (a) to (f) and (g) to (j) are arranged in intuitive order of complexity. Graph (k) is considered less complex than (l) in that the number of intermediate requirements is higher relative to the number of entry and exit requirements. A similar argument applies to (d) and (e). It can be seen that cyclomatic complexity, C, does not respect this intuitive ordering. The saturation measure, S, which accepts divergence as normal, does better, but does not distinguish between (d) and (e), nor between (k) and (l). The measures that best reflect our intuition are RCX and RS. Figure shows some more complex examples of clusters of requirements that demonstrate more clearly the difference between the absolute and elative complexity values. C = 8 S = E =. RCE =. RCX =. RS =.38 (o) C = 8 S = 3 E =. RCE = 8. RCX =.8 RS =.9 (m) C = 9 S = E =. RCE =. RCX =.8 RS =. (n) Figure : More complex requirements clusters Using Complexity Measures Three scenarios for the use of flow-down complexity measures were listed in the introduction. Here is a brief discussion about how the measures discussed in this paper may be deployed in these scenarios. ) Complexity within a requirements layer: Here we suggest the use of relative measures, RC X and RS, both of which are biased towards convergence rather than divergence as the indication of complexity. The expansion measure, E, is also a simple but useful measure in this context. ) Complexity flowing out of an individual requirement: Here we suggest the use of one of the absolute measures C or S. The former gives a measure that takes into account the expansion of the requirement through the layers, whereas the latter takes just convergence into account. 3) Complexity with a cluster of requirements: Here we suggest the use of the absolute measure, C, since impact analysis usually has to consider both upwards and downwards connections, suggesting a symmetrical treatment of complexity. Figure 3 shows an example drawn from some real project data. There are development layers present, marked by the dashed horizontal lines. The eye is drawn to parts of the graph where links are clustered, and which may be construed as areas of complexity. The requirements marked by the letters A through G were carefully reviewed, and one area was found to be erroneous: all but one of the multiple links flowing out of requirement B were redundant. The complexity associated with requirements C to G was considered correct, since there are two groups of closely related requirements whose decomposition is fully interconnected. The complexity measures C, S, RC X and RS are shown per layer, and reflect the absolute and relative complexity of each layer. The values are higher where the clusters of links occur. To assess the complexity of the flow-down associated with each node, we will consider the graph which is the union of the graph looking up from the subject node and the graph looking down from the subject node. For instance, if the subject node is the one marked X in Figure 3, then the graph comprises those nodes filled in white and the links marked in bold.

On the Complexity of Requirements Flow-down Structures An Integrate white paper X A B C = 8 S = RC X =.38 RS =. C = S = 9 RC X =. RS =.3 C = S = RC X =. RS =.3 C D E F G C = S = 8 RC X =. RS =. Figure 3 : A real flow-down example In Figure, the measure C is given for such a graph flowing out of each individual requirement. Figure shows the same for the S measure. 39 3 8 3 3 3 38 38 8 3 Figure : Low level model showing kinds of argument

3 3 3 3 3 3 Figure Saturation (S) values for corrected flow-down example Both these properties allow the step-wise location of complexity in the graph by starting with individual requirements in the top layer, and following down the chains of high-complexity in the subsequent layers. The difference is that C considers divergence and convergence symmetrically, whereas S considers only convergence. Removing the erroneous links on requirement A reduces the complexity of the graph as a whole. Figure and Figure respectively show the C and S complexities of each node. 3 8 3 3 3 Figure Cyclometric complexity (C) values for corrected flow-down example

8 On the Complexity of Requirements Flow-down Structures An Integrate white paper 3 3 3 3 Figure Saturation (S) values for corrected flow-down example Summary and Conclusions We have reported on the early results of an assessment a number of measures of complexity with requirements flow-down structures, and tentatively concluded that different measures are useful for different assessment scenarios. In particular, cyclomatic complexity offers a symmetrical assessment of complexity, which is well suited to complexity assessment related impact analysis, whereas measures that provide an asymmetrical treatment in favour of convergence are more suited to other scenarios. The potential uses of these measures are summarized in Table. Clearly further work is needed to validate these measures in live project environments. Comparison of requirements flow-down complexity with existing measures of design complexity would also strengthen the assessment. References Hull E., Jackson K., and Dick J.. Requirements Engineering, st ed., Springer,, pp. 8. (Hull, Jackson and Dick ) McCabe, Thomas J. 9. A Complexity Measure, IEEE Trans on Software Eng., Vol. Se-, No.. (McCabe 9)

9 Table : Summary of complexity measures discussed in this paper Description Absolute and Relative forms Potential use C Cyclomatic complexity: the number of independent paths through the requirements flowdown. C = L R + R E + R X RC X = C / R X As an indication of the number of potentially impacted requirements during impact analysis. As an indication of the complexity of requirements within a layer, in comparison with other layers. E Expansion: the growth in the number of requirements between layers E = R X / R E As an indication of the overall growth in the number of requirements through layers, regardless of the complexity within the layer. n/a n/a S Saturation: The number of links more than is necessary for a tree S = L R + R E As an indication of complexity due to convergence rather than divergence, which is the norm. RS = S / L As an indication of the complexity (in terms of convergence) of requirements within a layer, in comparison with other layers.

On the Complexity of Requirements Flow-down Structures An Integrate white paper About the authors Dr. Jeremy Dick was educated at London University s Imperial College in Computing Science, majoring in formal methods of software development. He went on to pursue academic and industrial research in this field for a number of years. From 99 to, he worked for software tool supplier Telelogic (now IBM) in their UK professional services organization, as a principal consultant in tool-supported requirements management. This role has afforded him a broad exposure to requirements management practices and issues across many industry sectors. In this role, he developed the concept of Rich Traceability. He co-authored the Springer book entitled Requirements Engineering, and toured internationally giving seminars in this subject. In, he moved to UK-based consultancy Integrate Systems Engineering Ltd, where he has been helping to develop and promote the concept of Evidence-based Development. He is a past Chairman of INCOSE s Requirements Working Group. Dr. Brendan Jones took a first degree in Mechanical Engineering with French at Bath University, and went on to gain a PhD in modelling and simulation of fluid-borne noise and vibration in hydraulic systems. For nine years he worked for Stirling Dynamics Ltd, providing mechatronic systems and specialist design services for the aerospace and defence, space, marine and energy sectors. As Stirling s Technical Director, he helped to introduce systems engineering principles to transform the business into a true systems engineering and design organisation. During this time he worked with many multi-company teams to provide safe solutions in the face of various hazards and levels of criticality, working within regulatory regimes including DEF STAN -, DO8B and IEC8. Since he has been promoting the adoption of systems engineering principles within integrate clients in the defence sector. About Integrate integrate's vision is for companies to align strategy and execution, drive quality and ensure compliance through using systems engineering techniques as the bridge between the domains of engineering and management. Our consultancy practice and supporting technologies help clients deliver this vision. We use systems engineering as a vehicle to support informed management and direction, and to optimise solutions against both technical and business constraints. Our approach is intensely pragmatic, firmly focused on our clients' delivery needs, and founded on a thorough understanding of the underlying problem. This paper is an edited version of a paper presented to the INCOSE International Symposium, Rome, July For more information go to http://www.integrate.biz Find out more If you require further information, please contact e: sales@integrate.biz integrate systems engineering ltd integrate systems engineering ltd All rights reserved. This document is copyright of Integrate Systems Engineering Ltd. Integrate Systems Engineering Ltd is registered in England no 88 and has its registered office at St Thomas Street, Bristol BS JS PO Box 9 Sherborne Dorset DT9 9DX United Kingdom www.integrate.biz