TDT 4242 Inah Omoronyia and Tor Stålhane Guided Natural Language and Requirement Boilerplates TDT 4242 Institutt for datateknikk og informasjonsvitenskap.

Slides:



Advertisements
Similar presentations
Dr. Leo Obrst MITRE Information Semantics Information Discovery & Understanding Command & Control Center February 6, 2014February 6, 2014February 6, 2014.
Advertisements

Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Software Requirements
LIFE CYCLE MODELS FORMAL TRANSFORMATION
ISBN Chapter 3 Describing Syntax and Semantics.
CS 355 – Programming Languages
Introduction to Software Engineering Dr. Basem Alkazemi
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
TDT 4242 Inah Omoronyia and Tor Stålhane Requirements Traceability TDT 4242 Institutt for datateknikk og informasjonsvitenskap.
Software Testing and Quality Assurance
Introduction to Software Engineering
The Semantic Web Week 13 Module Website: Lecture: Knowledge Acquisition / Engineering Practical: Getting to know.
SWE Introduction to Software Engineering
1 / 26 CS 425/625 Software Engineering Software Requirements Based on Chapter 5 of the textbook [Somm00] Ian Sommerville, Software Engineering, 6 th Ed.,
CS 425/625 Software Engineering Software Requirements
How can Computer Science contribute to Research Publishing?
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Software Requirements
1 To introduce the concepts of user and system requirements To introduce the concepts of user and system requirements To describe functional and non- functional.
Information Modeling: The process and the required competencies of its participants Paul Frederiks Theo van der Weide.
11/8/20051 Ontology Translation on the Semantic Web D. Dou, D. McDermott, P. Qi Computer Science, Yale University Presented by Z. Chen CIS 607 SII, Week.
Describing Syntax and Semantics
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
Domain-Specific Software Engineering Alex Adamec.
Semantic Web Technologies Lecture # 2 Faculty of Computer Science, IBA.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Test vs. inspection Part 1 Tor Stålhane. What we will cover Part 1 – Introduction – Inspection processes – Testing processes Part 2 – Tests and inspections.
Ontology Development Kenneth Baclawski Northeastern University Harvard Medical School.
Requirements Expression and Modelling
Robert Tairas, Marjan Mernik, Jeff Gray Using Ontologies in the Domain Analysis of Domain-Specific Languages Workshop on Transformation and Weaving Ontologies.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements.
 Knowledge Acquisition  Machine Learning. The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Mathematical Modeling and Formal Specification Languages CIS 376 Bruce R. Maxim UM-Dearborn.
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
Requirements and boilerplates
Ontology Summit2007 Survey Response Analysis -- Issues Ken Baclawski Northeastern University.
TDT 4242 Inah Omoronyia and Tor Stålhane Guided Natural Language and Requirement Boilerplates TDT 4242 Institutt for datateknikk og informasjonsvitenskap.
Of 33 lecture 10: ontology – evolution. of 33 ece 720, winter ‘122 ontology evolution introduction - ontologies enable knowledge to be made explicit and.
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
Test vs. inspection Part 1 Tor Stålhane. What we will cover Part 1 – Introduction – Inspection processes – Testing processes Part 2 – Tests and inspections.
Test vs. inspection Part 1 Tor Stålhane. What we will cover Part 1 – Introduction – Inspection processes – Testing processes Part 2 – Tests and inspections.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
Deriving Operational Software Specification from System Goals Xin Bai EEL 5881 Course Fall, 2003.
TDT 4242 Inah Omoronyia and Tor Stålhane Requirements Specification and Testing An introduction TDT 4242 Institutt for datateknikk og informasjonsvitenskap.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
Formal Methods.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
Requirements Validation
Semantic web Bootstrapping & Annotation Hassan Sayyadi Semantic web research laboratory Computer department Sharif university of.
Requirements Analysis
Be.wi-ol.de User-friendly ontology design Nikolai Dahlem Universität Oldenburg.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
Semantic Data Extraction for B2B Integration Syntactic-to-Semantic Middleware Bruno Silva 1, Jorge Cardoso 2 1 2
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
International Workshop 28 Jan – 2 Feb 2011 Phoenix, AZ, USA Ontology in Model-Based Systems Engineering Henson Graves 29 January 2011.
On Relationships among Models, Meta Models and Ontologies Motoshi Saeki Tokyo Institute of Technology Haruhiko Kaiya Shinshu University
Semantic Web. P2 Introduction Information management facilities not keeping pace with the capacity of our information storage. –Information Overload –haphazardly.
MDD-Kurs / MDA Cortex Brainware Consulting & Training GmbH Copyright © 2007 Cortex Brainware GmbH Bild 1Ver.: 1.0 How does intelligent functionality implemented.
1 Software Requirements Descriptions and specifications of a system.
Language = Syntax + Semantics + Vocabulary
CMPE 280 Web UI Design and Development August 29 Class Meeting
Security Issues Formalization
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
SysML v2 Formalism: Requirements & Benefits
Computer Programming.
Informatics 121 Software Design I
ece 627 intelligent web: ontology and beyond
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Software Architecture & Design
Presentation transcript:

TDT 4242 Inah Omoronyia and Tor Stålhane Guided Natural Language and Requirement Boilerplates TDT 4242 Institutt for datateknikk og informasjonsvitenskap

TDT 4242 Requirements There are three levels of requirements: Informal – e.g. Natural language (NL): free text, no rules apply Semiformal Guided Natural Language (GNL): free text but allowable terms are defined by a vocabulare Boilerplates (BP): structured text and an ontology – vocabulary plus relationships between terms Formal: e.g. state diagrams or predicate logic

Requirements elicitation

Humans and machines – 1 Given the amount and complexity of RE, we need to automate as much as possible. Humans and machines have different strong and weak points. We want to elicit and analyze requirements in a way that allows both parties to build on their strong sides.

Humans and machines - 2  Machines are  good at observing quantitative data and being deductive, fast and precise. In addition, they are good at doing consistent repetition of several actions.  bad at handling variations in written material and pattern recognition.  Humans are good at handling variations in written material, being inductive. In addition, they are good at doing error correction.

 GNL and BPs will reduce variation and thus giving the machines the opportunity to do what they are best at: to be fast, precise and consistent.  By combining humans and machines and let both do what they are best at, we get a better result than we would get if we left the job of handling requirements to just one of them. Why BPs and GNL – 1

Why BPs and GNL - 2  The final goal is to allow the machine to assist the developers in analysing requirements for:  Consistency  Completeness  Safety implications

GNL and BPs RMM - Refinement - Specialization Example: The shall provide to achieve Template based textual Meta ModelSyntax Semantics Guided RSLBoilerplates Requirements expressed using a vocabulary guide Uses predefined concepts, relations and axioms to guide requirements elicitation Requirements expressed on templates Uses predefined templates based on concepts, relations and axioms to guide requirements elicitation Keywords: Reflects requirement, system and domain concepts Analysis -Correctness -Completeness -Consistency -Safety analysis Ontology: General and SP specific - Requirements classification - System attributes - Domain concepts = ++ Example: The ACC system shall be able to determine the speed of the ego-vehicle.

 Free text requirement elicitation with the assistance of prescribed words from a dictionary. This will give us requirements which use all terms in a uniform way, this reducing misunderstandings  No formal constraints  Requires minimal expertise. What is GNL - 1

What is GNL - 2 Aim: Bridge the gap between unconstrained expression and quality checking when representing requirements as free text. Quality measures: Correctness, consistency, completeness and un- ambiguity (reduced variability) Provide the basis for semantic processing and checking of requirements. Dictionary – Simple taxonomy or more formal ontology

Ontology = Thesaurus + Inference Rules Thesaurus – Domain concepts: entities, terms and events Inference Rules – Relations, attributes and axioms Causality, similarity, reflexivity, transitiveness, symmetric, disjoint (contradiction) … Approach for GNL – 1

Approach for GNL – 2 Required Activity  Knowledge capture: Information embedded in domain events from domain experts and ontologist  Implementation: Formal representation of captured knowledge. Language: OWL, Support environment: Protégé.  Verification: Checking that represented ontology is correct using Classifiers/reasoners Domain experts (semantic accuracy) Mapping of requirement segments to ontology concepts

TDT 4242 Motivation for use of templates - 1 Text has the advantage of unconstrained expression. There is, however, a need for common Understanding of concepts used to express the requirements and relations between them. Format of presentation Lack of common understanding makes requirement specifications expressed as free text prone to ambiguous representations and inconsistencies.

TDT 4242 Motivation for use of templates - 1 Template based textual requirements specification (boilerplates) will introduce some limitations when representing requirements but will also reduce the opportunity to introduce ambiguities and inconsistencies. Boilerplates Provides an initial basis for requirements checking Are easy to understand for stakeholders compared to more formal representations

TDT 4242 What is a boilerplate – 1 Boilerplates is a set of structures that can be used to write requirements. They use high-level concept classification and attributes

TDT 4242 What is a boilerplate – 2 The RE process is as follows: 1.Select a boilerplate or a sequence of boilerplates. The selection is based on the attributes that need to be included and how they are organized – fixed terms. 2.If needed, identify and include mode boilerplates 3.Instantiate all attributes A boilerplate consists of fixed terms and attributes. It may, or may not, contain one or more modes.

Fixed Terms

Attributes

TDT 4242 Boilerplate examples - 1 BP32 The shall be able to Attributes: = driver = start the ACC system Requirement The driver shall be able to start the ACC system

TDT 4242 Boilerplate examples - 2 BP2 The shall be able to Attributes: = ACC system = determine = the speed of the ego-vehicle Requirement The ACC system shall be able to determine the speed of the ego-vehicle

TDT 4242 Boilerplate examples - 3 BP43 While BP32 The shall be able to BP43 is a mode Attributes = activated = driver = override engine power control of the ACC system Requirement While activated the driver shall be able to override engine power control of the ACC-system

TDT 4242 Functional requirements example Functional requirements from the SafeLoc system  The robot control system shall stop the robot within 10 milliseconds if a gate is opened to the zone where the robot is operating  The robot shall only be allowed to start when all gates are closed and the reset button is pushed  The robot shall stop if it tries to move into a zone already occupied by an operator

TDT 4242 Non functional requirement example – 1 Non-functional requirements and soft goals fits into the same BPs as functional requirements BP61 The shall be able to to Suitability: The shall be able to to

TDT 4242 Non functional requirement example – 2 Non-functional requirements and soft goals fits into the same BPs as functional requirements BP2-1 The shall be able to BP12 …for a sustained period of at least Maturity: The shall be able to for a sustained period of at least

Non functional requirement example – 3 BP43 While BP2 The shall be able to While the shall be able to

TDT 4242 Summing up The use of boiler plates and ontologies will Enforce a uniform use of terms Reduce the variability of presentations – requirements that are similar will look similar Reduced variation in form and contents simplifies the use of automatic and semi-automatic tools for Checking requirement quality – e.g completeness and consistency Creating test cases