IS 401 CH. 2 (Terms) Flashcards
(26 cards)
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.
textual models
text-based system models such as memos, reports, narratives, and lists
graphical models
system models that use pictures and other graphical elements
mathematical models
system models that describes requirements numerically or as mathematical expressions
Unified Modeling Language (UML).
Standard graphical modeling symbols/terminology used for information systems.
Standard set of model constructs and notations defined by the Object Management Group, a standards organization for system development. By using UML, analysts and end users are able to depict and understand a variety of specific diagrams used in a system development project.
Many graphical models used in system development are drawn according to the notation specified by UML.
Reasons for Modeling
Learning from the modeling process
Reducing complexity by abstraction
Remembering all the details
Communicating with other development team members
Communicating with a variety of users and stakeholders
Documenting what was done for future maintenance/enhancement
Stakeholders
Stakeholders are all the people who have an interest in the successful implementation of the system. Stakeholders are your primary source of information for system requirements. Depending on the nature and scope of the system, this can be a small or a large, diverse group. Each stakeholder group interacts with the system in different ways, and each has a unique perspective on system requirements. Before gathering detailed information, the analyst identifies every type of stakeholder who has an interest in the new system and ensures that critical people from each stakeholder category are available to serve as the business experts.
Internval vs. External stakeholders
Internal stakeholders are those within the organization who interact with the system or have a significant interest in its operation or success. You may be tempted to define internal stakeholders as employees of an
organization, but some organizations—such as nonprofits and educational institutions—have internal users (e.g., volunteers and students) who are not employees.
External stakeholders are those outside the organization’s control and influence, although this distinction can also be fuzzy, such as when an organization’s strategic partners (e.g., suppliers and shipping companies) interact directly with internal systems.
Operational vs. Executive Stakeholder
Operational stakeholders are those who regularly interact with a system in the course of their jobs or lives. Examples include bookkeepers interacting with an accounting or billing system, factory workers interacting with a production scheduling system, customers interacting with an Internet storefront, and patients
who interact with a health care Web site, Facebook page, or Twitter newsfeed. Operational users are a key source of requirements information, especially as it pertains to user interfaces and related functionality.
Executive stakeholders are those who do not interact directly with the system but who either use information produced by the system or have a significant financial or other interest in its operation and success. Examples include an organization’s senior managers and board of directors, regulatory agencies, and taxing authorities.
client
is the person or group that provides the funding for the project.