INFO 627Lecture #101 Requirements Engineering and Management INFO 627 Review Glenn Booker.

Slides:



Advertisements
Similar presentations
System Integration Verification and Validation
Advertisements

Software Quality Assurance Plan
DoD Information Technology Security Certification and Accreditation Process (DITSCAP) Phase III – Validation Thomas Howard Chris Pierce.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
SE 555 Software Requirements & Specification Beyond Requirements Based on Weigers Chapter17.
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
SE 555 – Software Requirements & Specifications Introduction
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
1 REQUIREMENTS ENGINEERING and SYSTEMS ANALYSIS Elements and Definitions.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
IV&V Facility Model-based Design Verification IVV Annual Workshop September, 2009 Tom Hempler.
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
Chapter 4 Capturing the Requirements 4th Edition Shari L. Pfleeger
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
Information Technology Project Management By Denny Ganjar Purnama, MTI Universitas Pembangunan Jaya May 2014.
Effective Methods for Software and Systems Integration
RUP Requirements RUP Artifacts and Deliverables
CC20O7N - Software Engineering 1 CC2007N Software Engineering 1 Requirements Engineering Practices with Techniques.
Pre-Project Activities Text Chapters 5 and 6. Pre-Project Activities 1.Contract Review 2.Development Plan 3.Quality Plan.
Introduction to ISO New and modified requirements.
Extreme Programming Software Development Written by Sanjay Kumar.
Introduction to Software Quality Assurance (SQA)
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Software Quality Assurance Activities
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
Dr. Ralph R. Young Director of Software Engineering Systems and Process Engineering Northrop Grumman Information Technology (703)
Software System Engineering: A tutorial
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Business Analysis and Essential Competencies
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
SENG521 (Fall SENG 521 Software Reliability & Testing Software Product & process Improvement using ISO (Part 3d) Department.
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
IT Requirements Management Balancing Needs and Expectations.
Some Sub-Activities within Requirements Engineering 1.Prototyping 2.Requirements Documentation 3.Requirements Validation 4.Requirements Measurements 5.Requirements.
Software Requirements Engineering: What, Why, Who, When, and How
INFO 637Lecture #51 Software Engineering Process II Defining Requirements INFO 637 Glenn Booker.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
Lecture 7: Requirements Engineering
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
Develop Project Charter
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.
CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,
CS 5150 Software Engineering Lecture 7 Requirements 1.
Systems Development Life Cycle
1 Quality Attributes of Requirements Documents Lecture # 25.
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System A Use Case Primer Organizing.
Lecture 4: Requirements Engineering COSI 120b, Principles of Software Engineering.
CS223: Software Engineering Lecture 2: Introduction to Software Engineering.
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
It is the fuel of modern life Business are run Government rule Scientists Industries Education However, building and maintaining software is hard and getting.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Team Skill 2 Understanding User and Stakeholder Needs The features of a Product or System (9)
SwCDR (Peer) Review 1 UCB MAVEN Particles and Fields Flight Software Critical Design Review Peter R. Harvey.
Software Project Management Lecture 3. What is Project Management?  Project management is “the application of knowledge, skills, tools and techniques.
 System Requirement Specification and System Planning.
Your Prescription for Requirements Management 1. Assumptions The prescription for requirements management is based on the following assumptions:  The.
The Development Process of Web Applications
Software Verification and Validation
Software Requirements
Requirements Analysis
First Article Inspection
Chapter 6: Principles of Requirements Analysis
Presentation transcript:

INFO 627Lecture #101 Requirements Engineering and Management INFO 627 Review Glenn Booker

INFO 627Lecture #102 Verification Methods  Test  Demonstration  Analysis  Inspection  Certification  Similarity  Not Applicable

INFO 627Lecture #103 Verification Methods Test: Verification by test involves operation of the system and requires instrumentation for recording and evaluation of quantitative data. Acceptability of the item is determined by a comparison of the data with the specified quantitative parameters and tolerances.

INFO 627Lecture #104 Verification Methods Demonstration: Verification by demonstration involves operation of the system and requires evaluation of functional responses. Acceptability of the item is determined by a qualitative comparison of the data with the specified functional performance.

INFO 627Lecture #105 Verification Methods Analysis: Verification by analysis involves mathematical and/or analytical examination of the system design or test data. Acceptability of the item is determined by a comparison of the analytical results with the specified performance.

INFO 627Lecture #106 Verification Methods Inspection: Verification by inspection involves physical and visual measurements or examinations made under fully controlled and traceable conditions. Acceptability of the item is determined by a comparison of the data with the specified requirements.

INFO 627Lecture #107 Verification Methods Certification: Verification that a specification requirement is met by a documented certification of compliance. Similarity: Verification by similarity will be allowed in lieu of the other verification methods for products previously qualified. This will require evidence of product similarity as well as documented test results that prove the requirements were met.

INFO 627Lecture #108 Verification Methods Not Applicable: Verification is not required because the specification paragraph is a heading, title, or general introduction paragraph containing no specific “shall” requirements. Used for completeness to show that every paragraph of the requirements document was accounted for

INFO 627Lecture #109 Non-Functional Requirements  Availability  Maintainability  Performance  Portability  Reliability  Security  Supportability  Usability Additional examples of, and resources for

INFO 627Lecture #1010 Availability The operational availability of the system shall not be less than 0.96 (threshold) and 0.98 (objective) in the environments specified in paragraph blah. System shall have no more than 5 minutes of malfunctions per year. Operational Availability = (UT)/(UT+MT) where UT = system up time, and MT = system maintenance (down) time

INFO 627Lecture #1011 Maintainability Operations staff shall be alerted to each unit failure within 30 seconds of its detection. The data processors shall be capable of having, memory added (through modification, addition, or replacement) to attain a 200 percent greater memory capacity than the base resource requirement. All components, assemblies, subassemblies, and modules that are identical with respect to fit, form, and function shall be interchangeable.

INFO 627Lecture #1012 Performance Response times, delivery times, timeliness – meeting deadlines or due dates, adherence to schedule Error rates – number of mistakes/errors allowed in meeting the performance standard Accuracy rates – similar to error rates, but most often stated in terms of percentages Completion milestone rates – x% complete at a date Cost control – keeping within the estimated cost or target cost Notice that “performance” can relate to the system’s performance, or the developer’s performance in creating the system.

INFO 627Lecture #1013 Portability  Software portability refers to the ability to run application on different platforms or with different applicationsportability Use of open standards supports portabilityopen standards  Define specific format standards for exchange of information

INFO 627Lecture #1014 Reliability All mission critical systems shall be designed to be two-fault tolerant. The system shall provide the capability for automatic switchover to available backup components where failure of an element would cause loss of mission. Mean Time Between Failures Mean Time Between Maintenance Actions

INFO 627Lecture #1015 Security The system shall source-authenticate all incoming commands. The system shall not accept invalid commands, noise, or spoofing as valid commands. Commands that fail authentication shall not be executed. Any element that processes multiple security levels of data should comply with DOD STD, Para DOD STD

INFO 627Lecture #1016 Supportability Define skill level or job category of people who will maintain the system System support will be consistent with: a single Operational Support Facility which provides engineering, operations support, and software systems maintenance; a single depot which provides central repair and reprocurement services; and a separate supply depot for each principal user.

INFO 627Lecture #1017 Usability Define requirements for use of the system by seeing or hearing challenged people Define requirements for use of the system by people who don’t have typical anatomyrequirements Software shall not interfere with existing features of other products or operating systems that affect the usability for people with disabilities Require compliance with accepted standards for interface design

INFO 627Lecture #1018 Where to Begin?  We started by recognizing that the software industry does terribly at developing stuff on time and within budget, often because requirements are poorly managed  To avoid this, we define the need for a requirements management process, with emphasis on customer agreement on the nature of the requirements

INFO 627Lecture #1019 Team Skill 1  The first skill was to understand the problem to be solved Define the problem Look for its root causes Identify relevant stakeholders and users Define system boundaries Understand constraints on the solution

INFO 627Lecture #1020 Team Skill 2  The second skill was to understand user needs, in part by avoid three syndromes “Yes, But…”, Undiscovered Ruins, User vs. the Developer  Extract requirements using seven skills: Interviewing, workshops, brainstorming, storyboarding, use cases, role playing, and/or prototyping

INFO 627Lecture #1021 Team Skill 3  Next skill was to define the system  Defined hierarchy to help understand the system: Needs, features, and requirements  Define the Vision for the system  Identify a champion for the Vision, to help keep it from drifting

INFO 627Lecture #1022 Team Skill 4  Once the requirements have been initially defined, we need to manage their scope  Identify priorities for requirements, and assign them to a baseline and later releases If using incremental development  Negotiate scope changes (cost/time/features)  Select an appropriate life cycle model to help guide the project

INFO 627Lecture #1023 Team Skill 5  Now we can refine the system definition  Capture requirements and constraints in a Software Requirements Specification (SRS) Including suitable high level models, use cases Gave two structures from which to choose  Need development to implement the SRS, only the SRS, and the whole SRS

INFO 627Lecture #1024 Team Skill 6  Finally we need to build the right system  Inspect, trace, and test to verify that the actual system meets the requirements  Validate the correctness of the system to meet user needs, including user testing  Might use risk analysis to decide how much verification and validation are needed where  Define and use a change control process

INFO 627Lecture #1025 Easy, right?  Capturing and implementing requirements is a tricky business, since it means communicating with *ugh* people  No magic pill can absolutely guarantee that your system will ultimately result in a happy customer, but we have covered a lot of techniques which can certainly make it lot more likely!