SECM - Requirements Concepts discussion on the differences of existing structured and/or restricted requirements Tao Yue and Shaukat Ali {tao, shaukat}@simula.no.

Slides:



Advertisements
Similar presentations
1 Verification by Model Checking. 2 Part 1 : Motivation.
Advertisements

System Integration Verification and Validation
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Lesson-16 Systems Analysis(2)
Requirement Analysis and Specification Mr. Manoj Kumar Kar.
Alternate Software Development Methodologies
Information Systems Development and Acquisition Chapter 8 Jessup & Valacich Instructor: Ramesh Sankaranarayanan.
9 1 Chapter 9 Database Design Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
1 Chapter 2 Problem Solving Techniques INTRODUCTION 2.2 PROBLEM SOLVING 2.3 USING COMPUTERS IN PROBLEM SOLVING : THE SOFTWARE DEVELOPMENT METHOD.
Prepared by Long Island Quality Associates, Inc. ISO 9001:2000 Documentation Requirements Based on ISO/TC 176/SC 2 March 2001.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter 1 The 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,
The Software Development Life Cycle: An Overview
Reverse Engineering State Machines by Interactive Grammar Inference Neil Walkinshaw, Kirill Bogdanov, Mike Holcombe, Sarah Salahuddin.
Software Engineering 2003 Jyrki Nummenmaa 1 REQUIREMENT SPECIFICATION Today: Requirements Specification Requirements tell us what the system should.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
RUP Implementation and Testing
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Chapter 11 Describing Process Specifications and Structured Decisions Systems Analysis and Design Kendall and Kendall Fifth Edition.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa REQUIREMENT SPECIFICATION Today: Requirements Specification.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Object Modeling.
Problem Solving Techniques. Compiler n Is a computer program whose purpose is to take a description of a desired program coded in a programming language.
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.
4. The process specification (プロセス仕様) You will learn: (次の内容を学び) The concept of process specification (プロセス 仕様の概念) Notations for process specification (プロセス.
Requirements Specification. Welcome to Software Engineering: “Requirements Specification” “Requirements Specification”  Verb?  Noun?  “Specification”
1 An Aspect-Oriented Implementation Method Sérgio Soares CIn – UFPE Orientador: Paulo Borba.
1 Checking Interaction Consistency in MARMOT Component Refinements Yunja Choi School of Electrical Engineering and Computer Science Kyungpook National.
OHTO -01 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
Problem solving in control of discrete-event systems Lenko Grigorov and Karen Rudie Queen’s University Kingston, Canada.
Modelling the Process and Life Cycle. The Meaning of Process A process: a series of steps involving activities, constrains, and resources that produce.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Software Engineering Lecture 9: Configuration Management.
ISO 9001:2015 Subject: Quality Management System Clause 8 - Operation
The PLA Model: On the Combination of Product-Line Analyses 강태준.
M&CML: A Monitoring & Control Specification Modeling Language
WP4 Models and Contents Quality Assessment
Systems Engineering Concept Model (SECM) Update
Basic Language Concepts
Tao Yue and Shaukat Ali Simula Research Laboratory Nov. 1st, 2016
Software Testing.
SECM - Requirements Concepts Proposal on restricted textual requirements (v1) Tao Yue and Shaukat Ali {tao, Simula Research Laboratory.
SECM - Requirements Concepts Initial proposal on uncertainty modeling
Extending Model-Driven Engineering in Tango
Object-Oriented Software Engineering Using UML, Patterns, and Java,
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
Software Requirements
Ontology Evolution: A Methodological Overview
Component-Level Design
Component-Level Design
DoDAF 2.x Meta Model (DM2) Conceptual Level
Software life cycle models
Software Requirements Specification Document
Coding Concepts (Basics)
Systems Engineering for Mission-Driven Modeling
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
Chapter 11 Describing Process Specifications and Structured Decisions
SECM - Requirements Concepts - Review
Dept. of Computation, UMIST
Pseudocode For Program Design.
Software Development Process Using UML Recap
Presentation transcript:

SECM - Requirements Concepts discussion on the differences of existing structured and/or restricted requirements Tao Yue and Shaukat Ali {tao, shaukat}@simula.no Simula Research Laboratory Dec. 14th, 2016

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] 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

Restricted Textual Requirements Suggested keywords to use: REALIZE IS GREATER THAN, LESS THAN, EQUAL TO, etc. We have defined a list of such keywords for iOCL. IF-THEN-ELSE-ELSEIF-THEN-ENDIF, DO UNTIL, MEANWHILE, VALIDATES THAT RUCM has a list of keywords defined for conditions, iteration and concurrency INCLUDE, EXTENDED BY Example Input “IF the boiler water temperature [ContextProperty] IS GREATER THAN the Boiler Water Valve Threshold of 85oC [ContextProperty], THEN Actual Inlet Valve Control Behavior [ConstrainedProperty] of Control Subsystem shall REALIZE INCLUDE Inlet Valve Control Function [ConstrainingProperty] to open the inlet valve [RealizedElement], ELSE close the inlet valve [RealizedElement] ENDIF.” Output List of properties IF Boiler Water Temperature > Boiler Water Threshold, THEN Open Inlet Valve, ELSE Close Inlet Valve ENDIF. With this constraint, a Realize Evaluation can be generated automatically when needed.