OPF Glossary - I
-
identification
- (1) a user-oriented security
quality
requirement specifying the extent to which an application
or component shall identify clients (e.g.,
users and client
applications) before allowing them to use it.
- (2) a quality factor measuring the extent to which an
application or component actually identifies clients (e.g.,
users and client applications) before allowing them to use
it.
Contrast with authentication and
authorization.
-
immunity
- (1) a user-oriented
security
quality
requirement specifying the degree to which an
application or
component shall protect
itself from infection by unauthorized undesirable programs
(e.g., computer viruses, worms, and Trojan horses).
- (2) a
quality
factor measuring the degree to which an application or
component actually prevents its infection by unauthorized
introduction of undesirable programs.
- (3) a
security
mechanism for protecting an application or component from
infection by unauthorized introduction of undesirable
programs (e.g., virus detection, analysis, and removal).
-
implementation
- the
activity consisting of
the cohesive collection of all
tasks that are primarily
performed to build or acquire the application's individual
components based on the application's architecture and
design.
-
implementation
languages
- a
language use to
implement a software work product.
-
implementation work product
- the set of all
work products that
are produced during the
implementation activity.
Contrast with architecture
set,
configuration management set,
deployment set,
design set,
implementation
set,
management set,
process set,
requirements
set, and
test set.
-
incremental
- a property of a development process whereby units of work
are repeated to produce additional new work products or
capabilities of work products. Development cycles are
typically incremental because applications are too large and
complex to be built all at once in a big bang fashion.
Contrast with iterative.
-
independent test team
- the
team that performs most of
system and launch testing independently from the teams that
developed the application.
-
informational
constraint
- an architectural or design decision regarding a data
component (content) that is to be treated as a requirement
and therefore will constrain the architecture and
design.
-
informational
requirement
- a requirement primarily concerning visible data
components (e.g., a website’s content).
Examples include requirements concerning:
- The specification of the syntax and semantics of input
or output data types.
- Invariants concerning on or more input or output data
objects.
- The structure of composite input and output data
objects.
- State models of input or output data objects.
- The source or destination location (e.g., a file,
database) of data.
Contrast with design
constraint,
external
API requirement,
operational
requirement,
quality
requirement.
-
information architect
- the
role that is played by a
person who produces the information architecture of an
application’s data components.
Contrast with
business architect,
database architect,
hardware architect,
security architect,
software architect, and
system architect.
-
information architecting
- the architecting
activity during which
the application's information architecture is produced
-
information
architecture
- the
architecture of an
application’s data components (content).
-
information architecture document
- the architecture work product produced during application
development that documents the architecture of the
application's major data components.
-
inheritance
- the incremental construction of a new definition (e.g.,
class, type) in terms of existing definitions without
disturbing the original defintions and their clients.
Inheritance is most often used to implement "a kind of"
relationships and polymorphism.
-
initiation phase
- the first phase, during which the application's initial
vision, partial requirements, and partial architecture are
captured so that the application scope and cost can be
estimated.
Contrast with construction
phase,
delivery phase,
retirement
phase, and
usage phase.
-
input device
- a device for inputing information and commands into a
computer system.
-
inspection
- a relatively formal verification and validation
technique whereby one
or more inspectors use an inspection checklist to identify
defects in one or more related work products.
Contrast with audit,
review, and
walkthrough.
-
inspection checklist
- a checklist of questions specific to a single kind of
work product and that is used during an inspection to ensure
that the inspectors have considered all significant potential
defects.
-
inspection report
- the quality engineering work product that is produced by
an individual inspector during an inspection.
-
inspection summary report
- the quality engineering work product that summarizes the
most important findings of an inspection.
-
inspector
- the
role played by a person who
evaluates a work product during an inspection.
-
installability
- (1) a developer-oriented
quality
requirement specifying the ease with which an application
or component shall be able to be successfully installed.
- (2) a quality factor measuring the ease with which an
application or component can be successfully installed,
typically measured in terms of the average amount of
person-hours required for a trained operator or hardware
engineer to perform the installation.
-
installation manual
- the deployment work product that provides procedures for
installing and configuring the application in such production
environments as data centers and hosting services.
-
instantiation
guideline
- a process framework guideline for selecting process
components from an existing class library of such components
to meet the needs of a specific project.
-
integrated
development environment
- a development environment in which the tools have been
integrated to collaborate with each other (e.g., the output
of one tool can be used as the input to another tool).
-
integration
- the
activity consisting of
the cohesive collection of all tasks that are primarily
performed to connect the application's components into an
executing version of the application.
Note that software integration typically consists of
coupling together multiple interfacing software components
using inheritance, aggregation, and message passing.
Note that system integration typically consists of
connecting hardware components and deploying software
components to hardware components.
-
integration engineer (a.k.a., build master)
- the
role that is played when a
person integrates the data, hardware, and software components
of one or more applications.
-
integration environment
- the complete integrated set of hardware and associated
software tools that is used by the integration team to
incrementally and iteratively integrate the components of an
application.
Contrast with development
environment,
production
environment,
reuse
environment, and
test
environment.
-
integration plan
- the integration work product that documents the project's
plans for integrating the components of the application.
-
integration server
- a
server
computer used to support enterprise application
integration (EAI), typically by acting as a go-between
between
application
servers and legacy applications and databases.
-
integration team
- the
team that integrates the
components of the application.
-
integration testing
- the testing of a partially integrated application to
cause failures resulting from defects involving the
interaction of tested components.
-
integration work product
- the cohesive set containing the work products that may be
produced during the integration activity.
-
integrity
- (1) a user-oriented
security
quality
requirement specifying the degree to which an
application or
component shall ensure
that its data and communications are not intentionally
corrupted via unauthorized creation, modification, or
deletion.
- (2) a quality factor measuring the degree to which an
application or component actually prevents the intentional
unauthorized corruption of its data and communications.
-
interaction
- a part of a use case path consisting of a single
communication between an external and an application.
-
interface
- any named boundary across which two or more separate
elements (e.g., classes, components, hardware devices,
subsystems, systems) interact (e.g., service requests with
potential exceptions raised, physical connections) with each
other.
-
interface architecture
- any architecture TBD.
-
interface specification
- any documentation of the public information about an
interface that the developer of an element that uses the
interface needs to know in order to ensure that the element
correctly and effectively uses the interface.
-
interface languages
- a
language use to software
interfaces.
-
internationalization
- (1) a user-oriented
configurability
quality
requirement specifying the degree to which an application
or component shall be configurable to function appropriately
in a global environment including support for national
differences in:
- Native languages, language idioms, spelling, and
character sets.
- Formats of contact information such as name, address,
and phone number.
- Currencies including real-time currency
conversion.
- Legal issues such as import/export laws, tariff and
sales tax calculations, customs documentation, trademarks,
and privacy laws.
- Culture (e.g., use of inappropriate colors, symbols, or
product names).
- (2) a quality factor measuring the degree to which an
application or component is actually configured to function
appropriately in a global environment.
Contrast with functional
variants and
personalization.
-
internationalization engineer
- the
role that is played when a
person engineers an application or component to meet its
internationalization requirements and thereby work properly
in the associated countries.
-
internal build
- a build that does not result in a version of the
application being delivered by the development organization
to the customer organization. Internal builds are used
internally by the development organization to help manage
iterative and incremental development.
Contrast with release.
-
Internet
- the world's largest public
network of networks on
which the
World Wide Web is
based.
Contrast with intranet.
-
interoperability
- (1) a user-oriented
quality
requirement specifying the degree to which an application
or component shall be able to be successfully integrate with
other specified applications or components (e.g., browsers,
legacy databases, legacy applications, external systems, and
required COTS components).
- (2) a quality factor measuring the degree to which an
application or component actually was able to be successfully
integrated with other specified applications or components.
Note that:
- Successful integration means that the applications or
components can successfully communicate to exchange data,
make requests, and raise exceptions.
- Interoperability is often specified in terms of the
ease with which integration can be accomplished and is
often measured in terms of required effort.
Contrast with portability.
-
intranet
- a self-contained corporate or organizational
network that is based on
Internet technology and
protocols, but is not connected to the Internet.
-
intrusion detection
- a
security
requirement specifying the degree to which an application
must ensure attempted access or modification by unauthorized
individuals is detected and properly handled.
-
invariant
- an
assertion that must be
true both before and after the execution of each operation
(e.g., application use case, class method).
See also postcondition and
precondition.
-
iteration
- the repetition of a work unit on an existing work product
to improve it (e.g., to fix defects and adapt it to changes
in requirements).
-
iterative
- a property of a development process whereby work units
are repeated on existing work products to improve them (e.g.,
to fix defects and adapt it to changes in requirements).
Contrast with incremental.