© 2014 Systems and Proposal Engineering Company. All Rights Reserved Using Natural Language Parsing (NLP) for Automated Requirements Quality Analysis Chris.

Slides:



Advertisements
Similar presentations
Better Specifications. What is a Specification? A Statement of the Customers Needs In the Form of Required Characteristics of a Product A Component of.
Advertisements

What colour is the house on the hill? Waterloo – Wellington IIBA Chapter presentation April 11, 2007 David Milne.
Software Requirements
CS 411W - Notes Product Development Documentation.
Requirements and Design
Software Requirements
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
Requirements Specification
Verification “Auditability” Can Be “Free” James H. Jones Optants Documented Decision Support Company (ODDSCO)
Capturing the requirements
Unit 211 Requirements Phase The objective of this section is to introduce software system requirements and to explain different ways of expressing these.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Designing a Product Product design is usually a problem that requires a creative Design and/or manufacturing solution.
Software Requirements
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Overview of Software Requirements
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
1 Software Requirements Specification Lecture 14.
9 1 Chapter 9 Database Design Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
CS 235: User Interface Design August 27 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
The Software Development Life Cycle: An Overview
S/W Project Management
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Managing the development and purchase of information systems (Part 1)
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
Tarkvaranõuded ja nende vormistamise tehnikad Enn Õunapuu
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
Dr. Tom WayCSC Software Requirements CSC 4700 Software Engineering Lecture 2 Based on Sommerville, Chapter 6.
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
Introduction To System Analysis and Design
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Software Requirements Engineering: What, Why, Who, When, and How
John D. McGregor Session 2 Preparing for Requirements V & V
Approaching a Problem Where do we start? How do we proceed?
Lecture 7: Requirements Engineering
Chapter 1. Introduction.
1. Objectives At the end of this chapter you should be able to:  Discuss the use and features of a data model  Define the terms entity and attribute.
IS550: Software requirements engineering Dr. Azeddine Chikh 2. Functional and non-functional requirements.
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. 2 Preface In the time since the 1986 edition of this book, the world of compiler design has changed significantly 3.
Chapter 4 Software Requirements
CT1404 Lecture 2 Requirement Engineering 1 1. Today's Lecture Definition of a Software Requirement Definition of Software Requirements Management Characteristics.
Systems Development Life Cycle
1 Quality Attributes of Requirements Documents Lecture # 25.
Copyright ©2004 Virtusa Corporation | CONFIDENTIAL Requirement Engineering Virtusa Training Group 2004 Trainer: Ojitha Kumanayaka Duration : 1 hour.
Smart Home Technologies
第 11 組 MIS 報告. Phases of any information system ~ recognition of a business problem or opportunity ~ recognition of a business problem or opportunity.
Software Requirements Specification (SRS)
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Software Requirements Specification Document (SRS)
Requirements Analysis
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
1 Requirements Analysis Lecture # Recap of Requirements Elicitation - 1 Requirements elicitation deals with discovering requirements for a software.
 System Requirement Specification and System Planning.
SEG 3300 W RITING B ETTER R EQUIREMENTS Supplement to Chapter 4 Source: Ian Zimmerman, Daniel Amyot Telelogic, July 9, 2001.
1 Requirements Management - II Lecture # Recap of Last Lecture We talked about requirements management and why is it necessary to manage requirements.
Algorithms and Problem Solving
Chapter 4 – Requirements Engineering
Chapter 5 – Requirements Engineering
Requirements Elicitation and Elaboration
Requirement Engineering
Algorithms and Problem Solving
Dr. Jiacun Wang Department of Software Engineering Monmouth University
Presentation transcript:

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Using Natural Language Parsing (NLP) for Automated Requirements Quality Analysis Chris Ritter, Daniel Hettema, Steven H. Dam, Ph.D., ESEP, SPEC Innovations April 2014

© 2014 Systems and Proposal Engineering Company. All Rights Reserved 1 Requirement Levels The Requirements Hierarchy Number of Requirements, Level of Detail Increases User Needs Conceptual Requirements System Requirements Application/Component Specifications A capability or feature identified by a User as being needed to perform his mission A high-level requirement generated during the concept development phase. Contained in ORD, CONOPS A requirement that describes in technical language the desired capabilities of a system. Requirement that is at the level of detail needed for actually designing a new capability. Contained in System Requirements Specification (SRD)

© 2014 Systems and Proposal Engineering Company. All Rights Reserved 2 Characteristics of Good Requirements Each individual requirement should be: –Correct: Describes the users true intent and is legally possible –Complete: Express a whole idea –Clear: Unambiguous and not confusing –Consistent: Not in conflict with other requirements –Verifiable: Provable (within realistic cost and schedule) that the system meets the requirement –Traceable: Uniquely identified, and able to be tracked to predecessor and successor lifecycle items/objects –Feasible: Able to be implemented with existing technology, and within cost and schedule –Modular: Can be changed without excessive impact on other requirements –Design: Does not impose a specific solution on design; says what, Independent not how

© 2014 Systems and Proposal Engineering Company. All Rights Reserved 3 Avoid these Pitfalls DONT use ambiguous language DONT use bullet lists; use numbered lists instead DONT use jargon DONT use language that provides an escape clause –Ex: The user shall be able to access the Internet as often as is practicable DONT write long, rambling sentences DONT put two requirements in one sentence; e.g., The system shall … and … DONT use vague terms -- Ex: user-friendly DONT include suggestions or possibilities – Ex: may, should, ought DONT include wishful thinking – Ex: The system shall be 100% reliable

© 2014 Systems and Proposal Engineering Company. All Rights Reserved How Do We Ensure Quality Requirements? Follow the rules for what makes a good requirement Enforce the rule requires significant training and discipline Most tools help manage the requirements, but do not help you track the quality of the requirements 4

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Solution 1: Identify Requirements on Import Innoslates one button Import Analyzer identifies requirements vs. statements (context for a requirements) by using a key word search (will, shall, should, or requirement) Requirements entities have quality attributes associated with them The user can transform a statement to a requirement and vice versa 5

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Requirement Entities Each quality factor has a Yes/No value to determine if it meets the requirement Uncertain what attributes means? –Hover over name and definitions appear 6

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Solution 2: Innoslates Quality Check 7 Run quality checker to automatically analyze the quality attributes of the requirements

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Quality Check Uses NLP Technology Natural Language Processing: –a field of computer science, artificial intelligence, and linguistics concerned with the interactions between computers and human (natural) languages Innoslate uses this technology to break down sentences into nouns, verbs and adjectives to identify when conjunctions are used (clear), specific types of hardware/software specified (design), and other parameters that affect the requirements quality 8 Wikipedia

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Solution 3: Roll-up Quality Score Change values from No to Yes to adjust score upward 9

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Solution 4: Add Comments Authors and reviewers can add comments and describe changes in more detail 10

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Summary We need to do more than just manage requirements Innoslate brings new technology (NLP) into the automation of requirements analysis However, it does not substitute for good engineering judgment – it is meant as a way to cue the analyst to potential problems 11