You are on page 1of 4

NON FUNCTIONAL REQUIREMENTS

SCALABILITY

Scalability is the property of a system to handle a growing amount of work by adding resources
to the system. In computing, scalability is a characteristic of computers,
networks, algorithms, networking protocols, programs and applications. An example is a search
engine, which must support increasing numbers of users, and the number of topics it indexes.
Webscale is a computer architectural approach that brings the capabilities of large scale cloud
computing companies into enterprise data centers.

EXAMPLE

The Incident Command System (ICS) is the emergency management system used across


emergency response agencies in the United States. ICS can scale resource coordination from a
single-engine roadside brushfire to an interstate wildfire. The first resource on scene establishes
command, with authority to order resources and delegate responsibility (managing five to seven
officers, who will again delegate to up to seven, and on as the incident grows). As an incident
expands, more senior officers assume command.

AVAILABILITY

Availability of a system is typically measured as a factor of its reliability – as reliability


increases, so does availability.
Availability of a system may also be increased by the strategy of focusing on increasing
testability, diagnostics and maintainability and not on reliability. Improving maintainability
during the early design phase is generally easier than reliability (and Testability & diagnostics).

EXAMPLE
If we are using equipment which has a mean time to failure (MTTF) of 81.5 years and mean time
to repair (MTTR) of 1 hour:
MTTF in hours = 81.5 × 365 × 24 = 713940 (This is a reliability parameter and often has
a high level of uncertainty!)
Inherent availability (Ai) = 713940 / (713940+1) = 713940 / 713941 = 99.999860%
Inherent unavailability = 1 / 713940 = 0.000140%
Outage due to equipment in hours per year = 1/rate = 1/MTTF = 0.01235 hours per
year.

RELIABILITY

Reliability engineering is a sub-discipline of systems engineering that


emphasizes dependability in the lifecycle management of a product. Reliability describes the
ability of a system or component to function under stated conditions for a specified period of
time.

EXAMPLE
One of the most important design techniques is redundancy. This means that if one part of the
system fails, there is an alternate success path, such as a backup system. The reason why this is
the ultimate design choice is related to the fact that high-confidence reliability evidence for new
parts or systems is often not available, or is extremely expensive to obtain.

RECOVERABILITY

In engineering, maintainability is the ease with which a product can be maintained in order to:

 Correct defects or their cause,


 Repair or replace faulty or worn-out components without having to replace still working
parts,
 Prevent unexpected working conditions,
 Maximize a product's useful life,
 Maximize efficiency, reliability, and safety,
 Meet new requirements
 Make future maintenance easier, or
 Cope with a changed environment.

SECURITY

Security is freedom from, or resilience against, potential harm (or other


unwanted coercive change) caused by others. Beneficiaries of security may be of persons and
social groups, objects and institutions, ecosystems or any other entity or phenomenon vulnerable
to unwanted change.
EXAMPLE
Home security
Home security normally refers to the security systems used on a property used as a dwelling
(commonly including doors, locks, alarm systems, lighting, fencing); and personal security
practices (such as ensuring doors are locked, alarms activated, windows closed etc.)

SAFTEY

Safety is the state of being "safe" (from French sauf), the condition of being protected
from harm or other non-desirable outcomes. Safety can also refer to the control of recognized
hazards in order to achieve an acceptable level of risk.

TYPES
Normative
Normative safety is achieved when a product or design meets applicable standards and practices
for design and construction or manufacture, regardless of the product's actual safety history.
Substantive
Substantive or objective safety occurs when the real-world safety history is favorable, whether or
not standards are met.
Perceived
Perceived or subjective safety refers to the users' level of comfort and perception of risk, without consideration
of standards or safety history.

DATA INTEGRITY

Data integrity is the maintenance of, and the assurance of the accuracy and consistency
of data over its entire life-cycle, and is a critical aspect to the design, implementation and usage
of any system which stores, processes, or retrieves data. The term is broad in scope and may
have widely different meanings depending on the specific context – even under the same general
umbrella of computing. It is at times used as a proxy term for data quality, while data
validation is a pre-requisite for data integrity.[3] Data integrity is the opposite of data
corruption. The overall intent of any data integrity technique is the same: ensure data is recorded
exactly as intended (such as a database correctly rejecting mutually exclusive possibilities,) and
upon later retrieval, ensure the data is the same as it was when it was originally recorded. In
short, data integrity aims to prevent unintentional changes to information. Data integrity is not to
be confused with data security, the discipline of protecting data from unauthorized parties.

EXAMPLES

An example of a data-integrity mechanism is the parent-and-child relationship of related records.


If a parent record owns one or more related child records all of the referential integrity processes
are handled by the database itself, which automatically ensures the accuracy and integrity of the
data so that no child record can exist without a parent (also called being orphaned) and that no
parent loses their child records. It also ensures that no parent record can be deleted while the
parent record owns any child records. All of this is handled at the database level and does not
require coding integrity checks into each application.

USABILITY

Usability is the ease of use and learnability of a human-made object such as a tool or device. In software
engineering, usability is the degree to which a software can be used by specified consumers to achieve
quantified objectives with effectiveness, efficiency, and satisfaction in a quantified context of use.

…………………………………………………………………

THE END

You might also like