Software Requirements - Memory Jogger - Chapter 1 Flashcards
Overview of Software Requirements. pg 1-26
Requirements
Are descriptions of the necessary and sufficient properties of a product that will satisfy the consumer’s need.
Software Requirements
Therefore, are descriptions of the necessary and sufficient properties of the software that must be met to ensure the product achieves what it was designed to accomplish for its users.
Software Applications Forms
- Business System Software
- Embedded Software
- Engineering and Scientific Software
- Expert System Software
- Personal Computing Software
- Real-Time Software
- System Software
Business System Software
Management information systems used within a company to manage operations or core business services (e.g., accounting, payroll, or accounts receivable). (Note: Some organizations satisfy their business systems needs by acquiring commercial off-the-shelf (COTS) software developed for an industry-specific market.)
Embedded Software
Software, residing in memory, that controls products for consumer and industrial use (e.g., microwaves, dashboard displays, or personal stereos).
Engineering and Scientific Software
Intensive “number-crunching’ software (e.g., orbital dynamics, automated manufacturing, or computer aided design).
Expert System Software
Artificial Intelligence computing that solves complex problems (e.g., claim underwriting or Internet searching).
Personal Computing Software
Software used for personal and business use (e.g., word processing, games, or personal finance).
Real-Time Software
Software that monitors and analyzes events as they occur, typically within milliseconds (e.g., equipment control and process control).
System Software
Software written to service other programs (e.g., file management, operating systems, and compilers).
System
A collection of interrelated elements that work together to achieve an objective.
Complex System
Composed of interrelated parts or subsystems, each with its own operational capabilities and sets of requirements.
System Requirements
Define the top-level requirements for allocation to subsystems.
Subsystem
Has its own requirements allocated to hardware, software, and people.
Hardware
Refers to the physical components or devices that have their own set of allocated requirements.
Software
Controls the operation of the processing, data, and hardware devices.
People
The individuals who operate and maintain the system.
Software Requirements in Systems
Describes the software capabilities needed by the system being built, enhanced, or acquired, as well as the constraints on the system’s implementation and operation.
What is needed to Deliver a Successful Software Product?
Developed, documentation and validation of software requirements.
Poorly Defined Requirements result in what?
Requirement defects, errors in requirements caused by incorrect, incomplete, missing, or conflicting requirements.
Defective Requirements may result in?
- Cost Overruns
- Expensive Rework
- Poor Quality
- Late Delivery
- Dissatisfied Customers
- Exhausted and Demoralized Team Members.
Correcting Defective Requirements accounts…….
for almost one-half of the cost of software development and is the most expensive kind of development error to fix.
How do you reduce high risk software project failure and the large cost associated with defective requirements?
You must properly define requirements early in the software development process.
Requirements Developmental Process
Before writing Software Code - focus on the problem. - Perform conceptual test. (Uncover incomplete, incorrect, and unclear requirements.) After writing the Software Code - testing the software solution. - Performing user acceptance test