SECM - Requirements Concepts Proposal on restricted textual requirements (v1) Tao Yue and Shaukat Ali {tao, shaukat}@simula.no Simula Research Laboratory.

Slides:



Advertisements
Similar presentations
Overcoming Customer Constraints on Requirements Documents Presented by: Robert Smole Presented by: Robert Smole November 5, 2008 Sub-Optimization of Systems.
Advertisements

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Using Natural Language Parsing (NLP) for Automated Requirements Quality Analysis Chris.
System Integration Verification and Validation
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Alternate Software Development Methodologies
Chapter 4.
Detailed Design Kenneth M. Anderson Lecture 21
Requirements Specification
Chapter 9 Describing Process Specifications and Structured Decisions
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 10 Slide 1 Formal Specification.
1 Chapter 2 Problem Solving Techniques INTRODUCTION 2.2 PROBLEM SOLVING 2.3 USING COMPUTERS IN PROBLEM SOLVING : THE SOFTWARE DEVELOPMENT METHOD.
[ §4 : 1 ] 4. Requirements Processes II Overview 4.1Fundamentals 4.2Elicitation 4.3Specification 4.4Verification 4.5Validation Software Requirements Specification.
1.3 Executing Programs. How is Computer Code Transformed into an Executable? Interpreters Compilers Hybrid systems.
An Information Theory based Modeling of DSMLs Zekai Demirezen 1, Barrett Bryant 1, Murat M. Tanik 2 1 Department of Computer and Information Sciences,
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Chapter 11 Describing Process Specifications and Structured Decisions Systems Analysis and Design Kendall and Kendall Fifth Edition.
WXGE6103 Software Engineering Process and Practice Formal Specification.
 Definition Definition  Bit of History Bit of History  Why Fuzzy Logic? Why Fuzzy Logic?  Applications Applications  Fuzzy Logic Operators Fuzzy.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Simulation is the process of studying the behavior of a real system by using a model that replicates the behavior of the system under different scenarios.
Requirements Specification. Welcome to Software Engineering: “Requirements Specification” “Requirements Specification”  Verb?  Noun?  “Specification”
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
1 Quality Attributes of Requirements Documents Lecture # 25.
Written by Changhyun, SON Chapter 5. Introduction to Design Optimization - 1 PART II Design Optimization.
Business Rules 12 th Meeting Course Name: Business Intelligence Year: 2009.
DETAILED DESIGN, IMPLEMENTATION AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Understanding Naturally Conveyed Explanations of Device Behavior Michael Oltmans and Randall Davis MIT Artificial Intelligence Lab.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
1 © 2014 Atego. All Rights Reserved. Infrastructure Bridge Model Matthew Hause – Atego Chief Consulting Engineer
The PLA Model: On the Combination of Product-Line Analyses 강태준.
© 2012 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from the U.S.
1 Modeling Formalism (Modeling Language Foundations) System Modeling Assessment & Roadmap Working Group Meeting – SE DSIG Reston – March, 2016 Yves BERNARD.
M&CML: A Monitoring & Control Specification Modeling Language
WP4 Models and Contents Quality Assessment
Testability.
Formal Specification.
Systems Engineering Concept Model (SECM) Update
OPERATING SYSTEMS CS 3502 Fall 2017
Friends and Partners of Aviation Weather
An Overview of Requirements Engineering Tools and Methodologies*
Business System Development
SECM - Requirements Concepts discussion on the differences of existing structured and/or restricted requirements Tao Yue and Shaukat Ali {tao,
Tao Yue and Shaukat Ali Simula Research Laboratory Nov. 1st, 2016
Software Testing.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Systems Design.
SECM - Requirements Concepts - Review
SECM - Requirements Concepts Initial proposal on uncertainty modeling
Software Engineering: A Practitioner’s Approach, 6/e Chapter 11 Component-Level Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Tao Yue and Shaukat Ali Simula Research Laboratory Oct 19nd, 2016
Daniel Amyot and Jun Biao Yan
SECM - Requirements Concepts - Review
SECM - Requirements Concepts - Review
Software Requirements analysis & specifications
Professor S K Dubey,VSM Amity School of Business
Analysis Procedures Goal Statement - Purpose of the Analysis
Daniel Siahaan February 2012
LDV Real Driving Emissions: - Drafting of physical PEMS protocol –
Coding Concepts (Basics)
Enabling Unambiguous GRDDL Results
Subject: Language Processor
Systems Engineering for Mission-Driven Modeling
Templatized Model Transformation: Enabling Reuse in Model Transformations Amogh Kavimandan and Aniruddha Gokhale Dept. of EECS, Vanderbilt University,
SECM - Requirements Concepts Reston Review
Chapter 11 Describing Process Specifications and Structured Decisions
Introduction to Text Analysis
SECM - Requirements Concepts - Review
Software Development Process Using UML Recap
Presentation transcript:

SECM - Requirements Concepts Proposal on restricted textual requirements (v1) Tao Yue and Shaukat Ali {tao, shaukat}@simula.no Simula Research Laboratory Feb 6th, 2017

outline Background Definition Tentative Solution Metamodel Examples Simula Research Laboratory

Background Structured/Pattern-Based vs. Keyword-Based NL Common practices Related standards SBVR Simula Research Laboratory

Structure/Pattern-based vs. Keyword-based Natural Language Structured documents Structured NL Follow specific grammars or patterns to write different types of requirements. The grammars are usually not enforced by tools. Keyword-based NL Predefined keywords for writing requirements. Using keywords can be enforced by tools. The main purpose is to enable automated transformation for enabling analyses and generations of other artifacts. Structured and keyword-based NL-based methods can be combined. Simula Research Laboratory

Boeing practice – from Ronald S. Carson Classified requirements into four types: Functional/Performance requirements Design requirements Environmental requirements Suitability requirements Patterns General pattern: The agent shall what, how well, under what conditions. Specific patterns: The AGENT shall FUNCTION in accordance with INTERFACE-OUTPUT with PERFORMANCE [and TIMING upon EVENT TRIGGER in accordance with INTERFACE-INPUT] while in CONDITION. Environmental requirements: The AGENT shall exhibit CHARACTERISTIC with PERFORMANCE while CONDITION [for CONDITION DURATION]. Measuring Requirements Quality for Verifiability An editor and the measurement have been implemented in DOORS. Carson et al. filed a US patent on this topic. It is a structured NL-based requirements specification method. Simula Research Laboratory

Requirements patterns from INCOSE and ISO/IEC/IEEE 29148:2011 The <subject clause> shall <action verb clause><object clause><optional qualifying clause>, when <condition clause> ISO/IEC/IEEE 29148:2011 [condition][subject][action][object][constraint] [condition][action or constraint][value] [subject][action][value] Simula Research Laboratory

Restricted Use case Modeling (rucm) Keywords Conditional logic sentences IF-THEN-ELSE-ELSEIF-ENDIF Concurrency sentences MEANWHILE Iteration sentences DO-UNTIL Conditional checking sentences VALIDATES THAT Other keywords specific to use case modeling Sentences structures Parts of speech (POS) are automatically obtained by using Natural Language Processing techniques. RUCM requirements can be automatically formalized if needed. Simula Research Laboratory

Summary of existing solutions Criterion Boeing Practice INCOSE ISO/IEC/IEEE 29148 RUCM Requirements Structures/Patterns Yes (enforced) Sentences Yes Yes (partially) Sentences and cross sentences Keywords No Transformation to more formal specification Yes, natural language processing (NLP) techniques help to relax restrictions on requirements structures/patterns, help to formalize requirements, and eventually help to generate other artifacts. Simula Research Laboratory

Summary of existing solutions The question is: Do we enforce sentence structures? If yes, how much do we enforce? People can rely on NLP techniques to obtain sentence structures. Enforcing requirements structures with an acceptable extent and combining it with keywords (IF-THEN..) might be a good option. Candidate solutions for restricted requirements specifications Keywords + NLP Patterns + Keywords Patterns + Keywords + NLP With all the three above, transformations to other artifacts can be enabled to various extents. Simula Research Laboratory

Definition Restricted Requirements Statement (RRS) is a specific type of Textual Requirement Statement, specified by using a restricted/controlled natural language that puts restrictions on grammar (which can be realized by templates and patterns) and vocabulary (by using e.g., pre-defined keywords). RRS strikes a balance between practicality and level of automation, bridges the gap from informal requirements specifications in natural language to formal, precise, and analyzable specifications. Simula Research Laboratory

Simula’s Initial solution (RRS Metamodel) From Jonh’s slide on 20 Dec 2016 Simula Research Laboratory

Simula’s Initial solution (RRS Metamodel) restrictions on grammar (which can be realized by templates and patterns) vocabulary (by using e.g., pre-defined keywords) Simula Research Laboratory

examples Simula Research Laboratory

Vehicle Weight Requirement (Non-functional) Textual Requirement Statement ”With zero passengers, a cargo weight of 0 pounds, and with a full capacity of fuel, transmission oil, engine oil and engine coolant, the vehicle actual Curb Weight shall be equal to or less than the vehicle required Curb Weight of 3000 pounds.” Restricted Requirement Statement Option 1: “WHEN there are zero passengers AND the cargo weight is 0 pounds AND the capacity of fuel, transmission oil, engine oil and engine coolant is full, the vehicle actual Curb Weight SHALL be EQUAL TO OR LESS THAN the vehicle required Curb Weight of 3000 pounds AND three sigma is 5 pounds.” Option 2: “WHEN there are zero passengers AND the cargo weight is 0 pounds AND the capacity of fuel, transmission oil, engine oil and engine coolant is full, the vehicle actual Curb Weight SHALL conform to the constraints of [unit = pound, max=3000, 3 sigma = 5].” Option 3: “WHEN there are zero passengers AND the cargo weight is 0 pounds AND the capacity of fuel, transmission oil, engine oil and engine coolant is full, the vehicle actual Curb Weight SHALL be EQUAL TO OR LESS THAN the vehicle required Curb Weight of 3000 pounds.” Sentence Constructs: ConditionConstraint Condition with WHEN: Sentence Pattern is SLVSubjectComplt Constraint with SHALL and linking verb ”be”: Uncertainty Variable: vehicle actual Curb Weight Type: content Measurement: [unit = pound, max=3000, 3 sigma = 5] Measure: U-Model::Probability::NormalDistribution

An example on probabilistic over time Textual Requirement Statement “…any given vehicle may be required to maintain a minimum fuel efficiency over the life of the vehicle with a probability distribution that is a function of time. It’s minimum fuel efficiency may be 20 miles per gallon with a 3 sigma value over time of 1 mile per gallon. “ - From Sandy. Restricted Requirement Statement “Fuel Efficiency of a vehicle MAY be [unit = mile/gallon, min=20, 3 sigma = 1].” Sentence Construct: Constraint Sentence Pattern: SLVSubjectComplt Variable: Fuel Efficiency (values of which vary over time) Uncertainty Type: Content. Measurement: [unit = mile/gallon, min=20, 3 sigma = 1] Measure: U-Model::Probability::NormalDistribution Keyword MAY also indicates uncertainty of the constraint. Simula Research Laboratory

Inlet Valve control (functional) Textual Requirement Statement “When the boiler water temperature is greater than the Boiler Water Valve Threshold of 85oC, the Control Subsystem Actual Inlet Valve Control Behavior shall realize the Required Inlet Valve Control Function to open the inlet valve, else close the inlet valve.” Restricted Requirement Statement “IF the boiler water temperature is GREATER THAN the Boiler Water Valve Threshold of 85oC, THEN Actual Inlet Valve Control Behavior of Control Subsystem SHALL REALIZE Inlet Valve Control Function to open the inlet valve, ELSE close the inlet valve ENDIF.” Sentence Constructs: ConditionAction Condition with IF-THEN-ELSE-(ELSEIF)-ENDIF Sentence Pattern: SLVSubjectComplt Action with SHALL REALIZE Subject-Verb-DirectObject-Complement Simula Research Laboratory

INLET VALVE Close (Functional) Textual Requirement Statement “The Control_Subsystem shall open the Inlet_Valve in less than 3 seconds when the temperature of water in the Boiler is less than or equal to 85oC.” Restricted Requirement Statement “The Control_Subsystem SHALL open the Inlet_Valve in LESS THAN 3 seconds, WHEN the temperature of water in the Boiler is LESS THAN OR EQUAL TO 85oC.” Sentence Construct: ActionConstraintCondition Action with SHALL and Constraint with LESS THAN Sentence Pattern: Subject-Verb-DirectObject Condition with LESS THAN OR EQUAL Sentence Pattern: SLVSubjectComplt Simula Research Laboratory

Vehicle stopping distance (performance) Textual Requirement Statement “When the brake pedal is initially pressed, and with a Surface Type of concrete, a Surface Robustness of less than 125 µm, and a Surface incline of 0.0’+/-0.5’, Actual Stopping Distance shall be less than or equal to the Stopping Distance provided for each of the 22 conditions of Initial Speed and Surface Condition available in the Required Stopping Distance table (array).” Restricted Requirement Statement “WHEN the brake pedal is initially pressed with a Surface Type of concrete, AND a Surface Robustness of LESS THAN 125 µm, AND a Surface incline of 0.0’+/-0.5’, Actual Stopping Distance SHALL be LESS THAN OR EQUAL TO the Stopping Distance provided for each of the 22 conditions of Initial Speed and Surface Condition DESCRIBED IN the Required Stopping Distance table (array).” Sentence Construct: ConditionConstraint Condition with WHEN Sentence Pattern: SLVSubjectComplt Possible to identify three conjunctive constraints, constraining the condition. Constraint with SHALL Simula Research Laboratory

CONTROLLER-SENSOR INTERFACE (INTERFACE) Textual Requirement Statement “The Actual Controller-Sensor Interface shall realize the Required Controller-Sensor Interface.” Restricted Requirement Statement “The Actual Controller-Sensor Interface SHALL REALIZE the Required Controller-Sensor Interface.” Sentence Construct: Action Sentence Pattern: SVO Most of interface requirements use SHALL REALIZE. Simula Research Laboratory

David’s example (1) Textual Requirement Statement “The aircraft shall be capable of the following missions as defined in the CRD: Air Superiority, High Altitude Reconnaissance, Tactical Strike and Close Air Support.” Restricted Requirement Statement “The aircraft SHALL follow missions of Air Superiority, High Altitude Reconnaissance, Tactical Strike and Close Air Support, as DESCRIBED IN the CRD.” Sentence Construct: Action Sentence Pattern: Subject-Verb-Direct Object-Object Complement Notice that we change the sentence to make sure the proper parse of the sentence into a tree using NLP techniques. Altitude Reconnaissance, Tactical Strike and Close Air Support can be further specified as use cases with detailed scenarios. Keyword DESCRIBED IN is used for cross-references. The dependency graph is generated by Stanford Parser: http://nlp.stanford.edu:8080/corenlp/process Simula Research Laboratory

David’s example (2) Textual Requirement Statement The aircraft shall be capable of flight over the following range of conditions: Altitude from 1,000 - 45,000 feet Airspeed from Mach 0.2 - 1.2 at low altitudes Airspeed from Mach 0.5 - 2.5 at high altitudes Restricted Requirement Statement “The aircraft SHALL flight WHEN (the Altitude is FROM 1000 TO 45000 feet) AND (Airspeed is FROM 0.2 TO 1.2 Mach WHEN Altitude is low) AND (Airspeed is FROM 0.5 TO 2.5 Mach WHEN Altitude is high). Sentence Construct: ActionCondition Sentence Patterns Action: Subject-Verb-DirectObject Conditions: SLVSubjectComplt. Measurements for variable Altitude (Uncertainty measure) Fuzzy Set: [Low, High] It can be automatically parsed by analyzing phrases, Parts-Of-Speech (POS), Sentence Patterns and Sentence Templates. AdjectiveNoun, AdjectiveNounPhrase, SLVSubjectComplt. Range: 1000-45000 feet Measurements for variable Airspeed Range: 0.2-1.2 Mach and 0.5-2.5 Mach. Run slowly. Simula Research Laboratory