SEG 3300 W RITING B ETTER R EQUIREMENTS Supplement to Chapter 4 Source: Ian Zimmerman, Daniel Amyot Telelogic, July 9, 2001.

Slides:



Advertisements
Similar presentations
Technical System Options
Advertisements

© 2014 Systems and Proposal Engineering Company. All Rights Reserved Using Natural Language Parsing (NLP) for Automated Requirements Quality Analysis Chris.
Writing Better Requirements DRAFT
Software Requirements
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
Database Software Application
Basics of Good Documentation Document Control Systems
Designing for the Web 7 Useful Design Principles.
System Testing There are several steps in testing the system: –Function testing –Performance testing –Acceptance testing –Installation testing.
DAY 15: ACCESS CHAPTER 2 Larry Reaves October 7,
Behind the Scenes – Scoping a Solution Chris Maertz, CTO.
CHAPTER 8: MANAGING DATA RESOURCES. File Organization Terms Field: group of characters that represent something Record: group of related fields File:
A GENERIC PROCESS FOR REQUIREMENTS ENGINEERING Chapter 2 1 These slides are prepared by Enas Naffar to be used in Software requirements course - Philadelphia.
CS 350, slide set 5 M. Overstreet Old Dominion University Spring 2005.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Human Computer Interface Design (HCI - Human Computer Interactions Alias.
Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.
L To identify the services that the customer requires from a system and the constraints under which it operates and is developed.
Miguel Garzón - University of Ottawa Based on slides by Gunter Mussbacher with material from: Ian Zimmerman (Telelogic, 2001), Ivy Hooks (Compliance Automation,
AX DEVELOPMENT FOR NON- DEVELOPERS Why did my 15 minute change take 3 weeks.
Topic : Sentence Chun-Chung Chen Zong-Cing Lin Csie, Ntu.
Basics of Specification Writing. Extract from 1997 audit:  A well-written specification can do more to assure success of the acquisition effort than.
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
1 Requirements Management - II Lecture # Recap of Last Lecture We talked about requirements management and why is it necessary to manage requirements.
WP4 Models and Contents Quality Assessment
12 Steps to More Effective Instructions
Core ELN Training: Office Web Apps (OWA)
ITIL: Service Transition
(Winter 2017) Instructor: Craig Duckett
Data Virtualization Demoette… ODBC Clients
Prepared By: Bobby Wan Microsoft Access Prepared By: Bobby Wan
Writing Better Requirements
Project Management: Messages
Form Development (Chapter 6)
Software Requirements
Chapter 5 – Requirements Engineering
Modal Verbs
Chapter 5 유스케이스 개요 Introduction to Use Cases
Writing Requirements Lecture # 23.
Objectives Importance of Requirement Engineering
System Design Ashima Wadhwa.
ESSENTIALS FOR RESUME DEVELOPMENT
Requirements Management
IS442 Information Systems Engineering
IBM Start Now Host Integration Solutions
By Dr. Abdulrahman H. Altalhi
CSC480 Software Engineering
Word Classes and Linguistic Terms
THE BASICS.
Databases.
TPP Standard PCS Requirements
Increased Efficiency and Effectiveness
Writing Better Requirements
James Blankenship March , 2018
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Module 3 Expenditure Cycle Using SAP Individual Assignment
Module 3 Expenditure Cycle Using SAP Individual Assignment
Software Requirements Specification Document
Topic Principles and Theories in Curriculum Development
HANDOUT Page for facilitators that lists all the hand outs needed for the workshop and the meanings of icons used on the slides in this workshop. SLIDE.
Software Design Lecture : 9.
Requirements Factoring Themes
PRINCIPLES OF WRITING AND CLASSIFICATION OF QUESTIONS
Utility Billing Balancing the Accounts Receivable
Guidelines for Selecting Computer Software
Writing Better Requirements
REPORTED SPEECH A short guide.
C-Notes and You A brief presentation over the first AVID initiative to be implemented school-wide.
Fragment Errors.
Presentation transcript:

SEG 3300 W RITING B ETTER R EQUIREMENTS Supplement to Chapter 4 Source: Ian Zimmerman, Daniel Amyot Telelogic, July 9, 2001

Standard for writing a requirement Each requirement must first form a complete sentence (not a bullet list of buzz words, list of acronyms, or sound bites on a slide). Each requirement contains a subject and predicate where the subject is a user type or the system under discussion, and the predicate is a condition, action, or intended result. Consistent use of the verb: —“shall,” “will,”or “must” to show mandatory nature —“should” or “may” to show optionality —Usually, shall and should are used. The whole requirement provides the specifics of a desired end goal or result. Contains a success criterion or other measurable indication of the quality.

“The internet user shall be able to access their current account balance in less than 5 seconds.” Defines a user type Defines a positive end resultPerformance criteria To be verb Anatomy of a good user requirement This requirement sentence identifies a specific user and end result that is wanted within a specified time. It also defines the success criteria in measurable terms - “access... account balance” “in less than 5 seconds.” The challenge is to seek out the user type, end result, and success measure in every requirement you define.

Writing Pitfalls to Avoid Avoid Ambiguity Write as clearly and explicitly as possible Ambiguities can be caused by: —the word “or” to create a compound requirement —poor definition (giving only examples or special cases) —lax definition (use of “etc”, “…and so on”) Don’t make multiple requirements Keep each requirement as a single sentence. Requirements which contain conjunctions (words that join sentences together) are dangerous. Dangerous conjunctions include “and”, “or”, “with”, “also”.

Writing Pitfalls to Avoid Never build in let-out or escape clauses Requirements with let-outs or escapes are dangerous Ask for something definite, but later back down and allow for other options Problem arise in testing Dangerous let-outs include: if, but, when, except, unless, although. Don’t Ramble Long sentences with arcane language References to unreachable documents

Writing Pitfalls to Avoid Refrain from designing the system Requirements should specify the design envelope for the level required. If you supply too much detail you design the system (and increase the cost of systems). Danger signs include names of components, materials, software objects, fields & records in the user or system requirements. Mixing different kinds of requirements Avoid mixing up requirements for users, system, and how the system should be designed, tested, or installed. Danger signs are very high level requirements mixed in with database design, software terms, or very technical terms.

Writing Pitfalls to Avoid Do not speculate There is no room for “wish lists” – general terms about things that somebody probably wants. Danger signs include vagueness about which type of user is speaking, and generalisation words: usually, generally, often, normally, typically. Do not use vague indefinable terms Many words used informally to indicate system quality are too vague to be verified. Vague terms include: user-friendly, highly versatile, flexible, to the maximum extent, approximately, as much as possible, minimal impact.

Writing Pitfalls to Avoid Do not express suggestions or possibilities. Suggestions that are not explicitly stated as requirements are invariably ignored by developers. Possible options are indicated with terms such as: may, might, should, ought, could, perhaps, probably. Avoid wishful thinking Wishful thinking means asking for the impossible. Wishful terms include: 100% reliable. Safe. Handle all failures. Fully upgradeable. Run on all platforms.

Rate these Requirements 1.The Order Entry system provides for quick, user- friendly and efficient entry and processing of all orders. 2.Invoices, acknowledgments, and shipping notices shall be automatically faxed during the night, so customers can get them first thing in the morning. 3.Changing report layouts, invoices, labels, and form letters shall be accomplished. 4.The system shall be upgraded in one whack. Are these good requirements? If not recommend an improvement.

Remember the key questions - “WHY?” or “What is the purpose of this?” Rate these Requirements 1.The Easy Entry Navigator module converges the elements of order entry and communications, order processing, result processing, and reporting. The Order Entry module is fully integrated with the Organization Intranet System and results are stored in the group’s electronic customer record. 2.Easy Entry shall be easy to use and require a minimum of training. 3.The system has a goal that as much of the IS data as possible be pulled directly from the T&M estimate. Are these good requirements? If not recommend an improvement.