IS 401 CH. 2 (Terms) Flashcards
System requirements
are all the activities the new system must perform
or support and the constraints that the new system must meet. Generally, analysts divide system requirements into two categories: functional and nonfunctional requirements.
Functional requirements
are the activities that the system must perform (i.e., the business uses to which the system will be applied).
For example, if you are developing a payroll system, the required business uses might include such functions as “generate electronic fund transfers,” “calculate commission amounts,” “calculate payroll taxes,” “maintain employee-dependent information,” and “report tax deductions to the IRS.” The new system must handle all these functions. Identifying and describing all these business uses require a substantial amount of time and effort because the list of functions and their relationships can be very complex. Functional requirements are based on the procedures and rules that the organization uses to run its business.
Nonfunctional requirements
are characteristics of the system other than those activities it must perform or support. It is not always easy to distinguish functional from nonfunctional requirements. One way to do so is to use a framework for identifying and classifying requirements. There have been many
such frameworks developed over time; the most widely used today is called FURPS+
FURPS/FURPS+
is an acronym that stands for functionality, usability, reliability, performance, and security. The “F” in FURPS is equivalent to the functional requirements defined previously. The remaining FURPS categories describe nonfunctional requirements. The “+” describes even more categories
Usability requirements
describe operational characteristics related to users, such as the user interface, related work procedures, online help, and documentation.
For example, the user interface for a smartphone app should behave similarly to other apps when responding to such gestures as two-finger slides, pinching, and expanding. Additional requirements might include menu format, color schemes, use of the organization’s logo, and multingual support.
Reliability requirements
describe the dependability of a system—how often a system exhibits such behaviors as service outages and incorrect processing and how it detects and recovers from those problems.
Performance requirements
describe operational characteristics related to measures of workload, such as throughput and response time. For example, the client portion of a system might be required to have a one-half-second response time to all button presses, and the server might need to support 100 simultaneous client sessions (with the same response time).
Security requirements
describe how access to the application will be controlled and how data will be protected during storage and transmission.
For example, the application might be password protected, encrypt locally stored data with 1024-bit keys, and use secure HTTP for communication among client and server nodes.
FURPS+ (DIPPS)
is an extension of FURPS that adds additional categories, including design constraints as well as implementation, interface, physical, and supportability requirements—all these additional categories summarized by the plus
sign. Here are short descriptions of each category:
Design constraints
Implementation
Interface requirements
Physical requirements
Supportability
Design constraints
describe restrictions to which the hardware and software must adhere. For example, a cell phone application might be required to use the Android operating system, consume no more than 30MB of flash memory storage, consume no more than 10MB of system memory while
running, and operate on CPUs rated at 1 GHz or higher.
Implementation requirements
describe constraints such as required programming languages and tools, documentation method and level
of detail, and a specific communication protocol for distributed components.
Interface requirements
describe interactions among systems. For example, a financial reporting system for a publicly traded company
in the United States must generate data for the Securities and Exchange Commission (SEC) in a specific XML format. The system might also supply data directly to stock exchanges and bond rating agencies and automatically generate Twitter messages, RSS feeds, and Facebook updates.
Physical requirements
describe such characteristics of hardware as size, weight, power consumption, and operating conditions. For example, a system that supports battlefield communications might have such requirements as weighing less than 200 grams, being no larger than 5 centimeters cubed, and operating for 48 hours on a fully charged 1200 milliwatt lithium ion battery.
Supportability
requirements describe how a system is installed, configured, monitored, and updated. For example, requirements for a game installed on a home PC might include automatic configuration to maximize performance on existing hardware, error reporting, and download of updates from a support server.
model
is a representation of some aspect of the system being built.