E5-Requirements? What requirements?

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Slide 1 Shall Lists. Slide 2 Shall List Statement Categories  Functional Requirements  Non-Functional Requirements.
IS 466 ADVANCED TOPICS IN INFORMATION SYSTEMS LECTURER : NOUF ALMUJALLY 12 – 11 – 2011 College Of Computer Science and Information, Information Systems.
Requirements and Design
Software Requirements
Unit 211 Requirements Phase The objective of this section is to introduce software system requirements and to explain different ways of expressing these.
Systems Design. Analysis involves understanding and documenting user requirements in a clear and unambiguous way. It focuses on the business side and.
1. 2  This lab accompanies the software engineering course to support the content in the course. The overall goals of this lab are to introduce examples.
Managing Software Quality
RECORDS AND REGISTRATION FOR DEPARTMENT CHAIRS. TOPICS  Prerequisites  Registration Restrictions  Registration Overrides  Waitlists  Enrollment Capacity.
Registration On WebAdvisor 1. Login to Web Advisor 2.
Writing Quality Requirements Karl E. Wiegers Presented by: Ricardo Carlos.
Introduction to the Requirements Document
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
IT Requirements Management Balancing Needs and Expectations.
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
CT1404 Lecture 2 Requirement Engineering 1 1. Today's Lecture Definition of a Software Requirement Definition of Software Requirements Management Characteristics.
1 Quality Attributes of Requirements Documents Lecture # 25.
The Quality Gateway Chapter 11. The Quality Gateway.
1 January 31, Documenting Software William Cohen NCSU CSC 591W January 31, 2008.
Riverside City College
Getting Started Using the Wheelock Student Portal
Segments Introduction: slides 2–6, 8 10 minutes
Introduction To DBMS.
a Glance Once waitlisted…
Online Training Course
Designing and Implementing an ETL Framework
System.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Elicitation and Requirements
Security Management: Successes and Failures
Chapter 4 – Requirements Engineering
(Professional Business Analyst Training organisation)
Chapter 4 – Requirements Engineering
Contract Marketplace Online Shopper Training
The NEW Distance Education Guidelines
IS4500 Software Quality Assurance
Software testing
Configuration Management and Prince2
APARTMENT MAINTENANCE SYSTEM
Distribution and components
Chapter 21 Software Quality Assurance
Requirement Engineering
SNS College of Engineering Coimbatore
Chapter 4 Software Requirements
Curricular Practical Training
How to add and drop classes
Chapter 21 Software Quality Assurance
Post Enrollment Requisite Checking (PERC)
UNIT II.
Records and Registration for Department Chairs
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
This video will walk you though the process of registering for additional workshops if you have registered for any HR workshops in the past using the CVENT.
Software Requirements Specification Document
First Year Plan Workshop Spring 2018
Managing TANF Policies and Procedures August 2017
Algorithm and Ambiguity
Curricular Practical Training
for Instructors and Roster Contacts
Software Requirements Specification (SRS) Template.
Case study: A museum information system
for Instructors and Roster Contacts
Chapter 17 Technical Instructions
Configuration management
Dr. Jiacun Wang Department of Software Engineering Monmouth University
Better Management of Instructors
Non-Resident Tuition Exception
User Requirements: The user requirement(s) document (URD) or user requirement(s) specification is a document usually used in software engineering that.
An Automated Registration System
Riverside City College
Presentation transcript:

E5-Requirements? What requirements? How well-written requirements lead to good systems. Steven barnhart, university of southern California, emeritus

Let’s start at the very beginning… What is a software requirement? A need of a stakeholder which must be delivered or solved by the software to achieve some business value A capability of the software to comply with external needs not directly related to achieving some business value

A very good place to start Types of requirements Functional requirements – what the system should do Authentication and authorization Transactions, corrections, auditing, reporting, and historical data External interfaces Business rules, regulatory requirements Non-functional requirements – how should the system behave Availability, capacity, scalability, reliability Performance, security, usability

WHEN you read you begin with a, b, c The. Glossary. Are these terms synonyms? Course, class, section Registered, enrolled Cross-listed, co-located Co-requisite, concurrent registration Expulsion, dismissal Withdrawal, separation We don’t use our common language in a common way. Define everything!

When yOu sing you begin with do, re, me Characteristics of well-written requirements Clear, concise, and cogent Understandable Unambiguous Testable Independent Atomic* Realistic

Clear, concise, cogent Not containing unnecessary information or wording Ability for the user to enter a department code or a department name, whichever they prefer, in order to bring up a list of courses (Poor) Ability of users to access course listing by department code, or name (Better)

understandable Correct grammatically Use standard conventions “Ability of/for/to…” “The system shall…” Consistent style Preference for use of “shall” rather than “will,” “must,” or “may”

unambiguous A single way to interpret the requirement Common errors: Use of undefined acronyms no matter how commonly used Use of the word “or” Use of the word “and” Placement of qualifying words such as “only”

testable Users should be able to confirm the correct implementation of the requirement Result of testing should be pass or fail, nothing in-between Common errors: Using words such as “safe,” “effective,” “user-friendly,” “unlimited,” “flexible,” “configurable,” “state of the art,” “and/or,” “few,” “most,” “some,” “several,” “TBD,” and “etc.” Using passive voice can introduce testing ambiguity

Independent The understanding of a requirement should not be dependent on any other requirement Common errors: Using unclear antecedents such as “it,” “them,” or “they” as shorthand for elements of other requirements Relying on the sequence of the requirements to convey meaning

Atomic* Only include a single testable element in the requirement Common errors: Using the words “and” or “but” are danger signs Using the word “then” or a proliferation of commas in the requirement are warning signs

realistic Can the requirement be delivered given the current technology, number of resources, or time

Example #1 Ability to add registration requisites at the course level Ability to add registration requisites at the section level

Example #2 Ability to maintain a history of unlimited address changes

Example #3 Ability to determine and store Dean’s List for a term or academic year

Example #4 Ability to track college major, graduate school majors, dates of graduation, and credentials (multiple at each level)

Example #5 Ability for 43,000 students to register via web-registration each term

Example #6 Ability to record lengthy dissertation or thesis title for download for commencement program

Example #7 Ability to implement a balance forward or open item receivables methodology

Example #8 Ability for staff to add/drop students at any point in a term Ability to set timelines on when staff is able to add/drop students

Example #9 Ability to set registration appointments that do not conflict with students’ class attendance times

Example #10 Ability to comply with accessibility standards

Example #11 Ability to handle registration functions for courses and programs not part of the normal registration process such as independent study courses, workshops, continuing education, and consortium courses (students taking classes at other schools)

Example #12 Ability to check for duplicate courses/sections at registration and block or display warning

conclusion Contact information: Steven Barnhart, barnhart@usc.edu