- ABC
- Activity-Based
Costing
- ABM
- Activity-Based
Management
- abstract class
A class that provides common behavior across a
set of subclasses but is not itself designed to have instances. An abstract
class represents a concept; classes derived from it represent
implementations of the concept. See also base class.
Contrast: concrete class.
- abstraction
- The creation of a view
or model that suppresses unnecessary details to
focus on a specific set of details of interest
The essential
characteristics of an entity that distinguish it from all other kinds of
entities. An abstraction defines a boundary relative to the perspective of
the viewer.
- access modifier
- A keyword that
controls access to a class, method, or attribute. The access modifiers in
Java are public, private, protected, and package, which is the default.
- accessor methods
- Methods that an
object provides to define the interface to its instance variables. The
accessor method to return the value of an instance variable is called a get
method or getter method, and the mutator method to assign a value to an
instance variable is called a set method or setter method.
- acceptance
- An action by which the
customer accepts ownership of software products as a partial or complete
performance of a contract.
- ACL
- Access Control List
- action
The specification of an executable statement that forms an abstraction of a
computational procedure. An action typically results in a change in the
state of the system, and can be realized by sending a message to an object
or modifying a link or a value of an attribute.
- action sequence
An expression that resolves to a sequence of actions.
- action state
A state that represents the execution of an atomic action, typically the
invocation of an operation.
- activation
The execution of an action.
- active class
- A class
representing a thread of control in the system.
A class whose
instances are active objects. See active object.
- Active Server Pages (ASP)
- Active
Server Pages (Microsoft), a technology for providing dynamic behavior to web
applications.
- activity
- A unit of work a worker
may be asked to perform.
- activity-based costing (ABC)
- A
methodology that measures the cost and performance of activities, resources,
and cost objects. Resources are assigned to activities, then activities are
assigned to cost objects based on their use. Activity based costing
recognizes the causal relationships of cost drivers to activities.
- activity-based management (ABM)
- The
broad discipline that focuses on achieving customer value and company profit
by way of the management of activities. It draws on activity-based
costing as a major source of information.
- active object
An object that owns a thread
and can initiate control activity. An instance of active
class.
- activity
graph
A special case of a state machine that
is used to model processes involving one or more classifiers.
Contrast: statechart
diagram. Synonym: activity diagram.
- actor (instance)
- Someone or something,
outside the system that interacts with the system.
- actor class
- Defines a set of
actor instances, in which each actor instance plays the same role in
relation to the system.
A coherent set of
roles that users of use cases play when interacting with these use cases. An
actor has one role for each use case
with which it communicates.
- actor-generalization
- An
actor-generalization from an actor class (descendant) to another actor class
(ancestor) indicates that the descendant inherits the role the ancestor can
play in a use case.
- actual parameter
Synonym: argument.
- Advanced
Program-to-Program Communication (APPC)
- A
communication protocol used primarily in IBM environments.
- aggregate [class]
A class that represents the "whole" in an aggregation (whole-part)
relationship. See aggregation.
- aggregation
- An association that
models a whole-part relationship between an aggregate (the whole) and its
parts.
A special form of
association that specifies a whole-part relationship between the aggregate
(whole) and a component part. See composition.
- American
Standard Code for Information Interchange (ASCII)
- American Standard Code for
Information Interchange. The 8-bit character encoding scheme used by most
PCs and UNIX systems. It supersedes an earlier 7-bit ASCII standard.
- analysis
- The part of the software
development process whose primary purpose is to formulate a model of the
problem domain. Analysis focuses on what to do;
design focuses on how to do it. See design.
- analysis class
- An abstraction of
a role played by a design element in the system,
typically within the context of a use-case
realization. Analysis classes may provide an abstraction for several
role, representing the common behavior of those roles. Analysis classes
typically evolve into one or more design elements; for example, design classes
and/or capsules, or design subsystems.
- analysis & design
- A core
workflow in the Unified Process, whose purpose is to show how the
system's use cases will be realized
in implementation; (general) activities during which strategic and tactical
decisions are made to meet the required functional and quality requirements
of a system. For the result of analysis and design activities, see Design
Model.
- analysis mechanism
- An
architectural mechanism used early in the design
process, during the period of discovery when key classes
and subsystems are being identified.
Typically analysis mechanisms capture the key aspects of a solution in a way
that is implementation independent. Analysis mechanisms are usually
unrelated to the problem domain, but instead are "computer
science" concepts. They provide specific behaviors to a domain-related class
or component, or correspond to the
implementation of cooperation between classes and/or components. They may be
implemented as a framework. Examples include
mechanisms to handle persistence, inter-process communication, error or
fault handling, notification, and messaging, to name a few.
- analysis pattern
- [FOW97a]
speaks of analysis patterns as, ôà groups of concepts that represent a
common construction in business modeling. It may be relevant to only one
domain, or it may span many domains.ö Therefore, in this reference, the
vocabulary of the domain does intrude into the description of the pattern.
There is no reason why the definition in [FOW97a]
should not be extended to domains other than business modeling. Another
aspect of an analysis pattern is that it is an abstract, conceptual
template, intended (through binding as with any pattern) for instantiation
in an analysis model, which will then need further refinement through
design. The scale of an analysis pattern can vary widely, though those
presented in [FOW97a] are medium in scale,
and would compose to form analysis models for entire applications.
- analysis time
- Refers
to something that occurs during an analysis phase of the software
development process. See design time, modeling
time.
- analyst
- Member of the project
team who is responsible for eliciting and interpreting the stakeholder
needs, and communicating those needs to the entire team.
- API
- Application
Programming Interface
- APPC
- Advanced
Program-to-Program Communication
- applet
- A Java program designed to
run within a Web browser. Contrast: application.
- application
- In Java programming,
a self-contained, stand-alone Java program that includes main() method.
Contrast: applet.
- application
programming interface (API)
- A
software interface that enables applications to communicate with each other.
An API is the set of programming language constructs or statements that can
be coded in an application program to obtain the specific functions and
services provided by an underlying operating system or service program.
- architectural baseline
- The baseline
at the end of the Elaboration phase, at
which time the foundation structure and behavior of the system is
stabilized.
- architectural mechanism
- Architectural
mechanisms represent common concrete solutions to frequently encountered
problems. They may be patterns of structure, patterns of behavior, or both.
In the Rational Unified Process, architectural mechanism is used as an
umbrella term for analysis mechanism, design mechanism, and implementation
mechanism.
- architectural pattern
- [BUS96]
defines an architectural pattern so:
ôAn architectural pattern expresses a fundamental
structural organization schema for software systems. It provides a set of
predefined subsystems, specifies their responsibilities, and includes rules
and guidelines for organizing the relationships between them.ö
This is the interpretation we use in the Rational
Unified Process. To elaborate a little: an architectural pattern is a
pattern (that is, a solution template) at a particular scale, and is a
template for concrete software architectures. It deals in system-wide
properties and, typically, subsystem-scale (not class level) relationships.
Architectural patterns seem, by their nature, not to be application domain
dependentùthe vocabulary of a particular domain seems not to intrude into
the description of the patternùalthough there is no reason in principle
why architectural patterns cannot become specialized in this way. Compare
with analysis pattern. The Software
Architecture Document will present the architectural patterns used
in the system.
- architectural view
- A view of the
system architecture from a given
perspective; focuses primarily on structure, modularity, essential
components, and the main control flows.
- architecture
- The highest level
concept of a system in its environment [IEEE].
The architecture of a software system (at a given point in time) is its
organization or structure of significant components
interacting through interfaces, those
components being composed of successively smaller components and interfaces.
The
organizational structure of a system. An architecture can be recursively
decomposed into parts that interact through interfaces, relationships that
connect parts, and constraints for assembling parts. Parts that interact
through interfaces include classes, components
and subsystems.
- architecture, executable
- See executable
architecture.
- argument
A binding for a parameter that resolves to a run-time instance. Synonym: actual
parameter. Contrast: parameter.
- A data element, or value, included as a parameter in a method call.
Arguments provide additional information that the called method can use to
perform the requested operation.
- artifact
- (1) A piece of
information that (1) is produced, modified, or used by a process, (2)
defines an area of responsibility, and (3) is subject to version control. An
artifact can be a model, a model
element, or a document. A document
can enclose other documents.
A piece of
information that is used or produced by a software development process. An
artifact can be a model, a description, or software. Synonym: product.
- artifact guidelines
- A description
of how to work with a particular artifact,
including how to create and revise the artifact.
- artifact set
- A set of related
artifacts which presents one aspects of the system. Artifact sets cut across
core workflows, as several artifacts are
used in a number of core workflows; for example, the Risk
List, the Software Architecture
Document, and the Iteration Plan.
- ASCII
- American
Standard Code for Information Interchange
- ASP
- Active
Server Pages
- association
- A relationship that
models a bi-directional semantic connection among instances.
The semantic
relationship between two or more classifiers that specifies connections
among their instances.
- association class
A model element that has both association
and class properties. An association class can
be seen as an association that also has class properties, or as a class that
also has association properties.
- association end
The endpoint of an association, which connects the association to a classifier.
- asynchronous action
A request where the sending object does not pause to wait for results.
Contrast: synchronous action.
- attribute
- An attribute defined by
a class represents a named property of the class
or its objects. An attribute has a type that
defines the type of its instances.
A feature within
a classifier that describes a range of values that instances of the
classifier may hold.
- base class
- A class from which
other classes or beans are derived. A base class may itself be derived from
another base class. See abstract class.
- baseline
- A reviewed and approved
release of artifacts that constitutes an
agreed basis for further evolution or development and that can be changed
only through a formal procedure, such as change
management and configuration
control.
- Bean
- A small component that can
be used to build applications. See JavaBean.
- BeanInfo
- A companion class for a
bean that defines a set of methods that can be accessed to retrieve
information on the beanÆs properties, events, and methods.
- behavior
The observable effects of an operation or event, including its results.
- behavioral feature
A dynamic feature of a model element,
such as an operation or method.
- behavioral model aspect
A model aspect that emphasizes the
behavior of the instances in a system,
including their methods, collaborations,
and state histories.
- beta testing
- Pre-release testing
in which a sampling of the intended customer base tries out the product.
- binary association
An association between two classes. A special
case of an n-ary association.
- binding
The creation of a model element from a template
by supplying arguments for the parameters of the template.
- boolean
An enumeration whose values are true and false.
- boolean expression
An expression that evaluates to a boolean
value.
- boundary class
- A class used to
model communication between the system's environments and its inner
workings.
- break point
- A point in a computer
program where the execution will be halted.
- build
- An operational version of a
system or part of a system that demonstrates a subset of the capabilities to
be provided in the final product.
- business actor (instance)
- Someone or
something, outside the business that interacts with the business.
- business actor class
- Defines a
set of business-actor instances, in which each business-actor instance plays
the same role in relation to the business.
- business creation
- To perform business
engineering where the goal is to create a new business
process, a new line of business or a new organization.
- business engineering
- A set of
techniques a company uses to design its business according to specific
goals. Business engineering techniques can be used for both business
reengineering, business
improvement, and business creation.
- business entity
- A business entity
represents a "thing" handled or used by business
workers.
- business improvement
- To perform business
engineering where the work of change is local and does not span the
entire business. It involves trimming costs and lead times and monitoring
service and quality.
- business object model
- An object
model describing the realization of business
use cases.
- business modeling
- Encompasses all
modeling techniques you can use to visually model a business. These are a
subset of the techniques you may use to perform business
engineering.
- business process
- A group of
logically related activities that use the resources of the organization to
provide defined results in support of the organization's objectives. In the
Rational Unified Process, we define business processes using business
use cases, which show the expected behavior of the business, and business
use-case realizations, which show how that behavior is realized by business
workers and business entities.
See also process.
- business process engineering
- See business
engineering.
- business reengineering
- To perform
business engineering where the
work of change includes taking a comprehensive view of the entire existing
business and think through why you do what you do. You question all existing
business processes and try to find completely new ways of reconstructing
them to achieve radical improvements. Other names for this are business
process reengineering (BPR) and process innovation.
- business rule
- A declaration of
policy or condition that must be satisfied within the business.
- business use case (class)
- A
business use case defines a set of business
use-case instances, where each instance is a sequence of actions a
business performs that yields an observable result of value to a particular
business actor. A business use-case class contains all main, alternate
workflows related to producing the "observable result of
value".
- business use-case instance
- A
sequence of actions performed by a business that yields an observable result
of value to a particular business actor.
- business use-case model
- A model
of the business intended functions. The business use-case model is used as
an essential input to identify roles and deliverables in the organization.
- business use-case package
- A
business use-case package is a collection of business use cases, business
actors, relationships, diagrams, and other packages; it is used to structure
the business use-case model by dividing it into smaller parts.
- business use-case realization
- A
business use-case realization describes how the workflow of a particular
business use case is realized within the business
object model, in terms of collaborating business objects.
- business worker
- A business worker
represents a role or set of roles in the business. A business worker
interacts with other business workers and manipulates business
entities while participating in business
use-case realizations.
- call
An action state that invokes an operation
on a classifier.
- call level interface (CLI)
- A
callable API for database access, which is an alternative to an embedded SQL
application program interface. In contrast to embedded SQL, CLI does not
require precompiling or binding by the user, but instead provides a standard
set of functions to process SQL statements and related services at run time.
- capsule
- A specific design
pattern which represents an encapsulated thread
of control in the system. A capsule is a stereotyped
class with a specific set of required and
restricted associations and properties.
- cardinality
The number of elements in a set. Contrast: multiplicity.
- CBD
- Component-Based
Development
- CCB
- Change
Control Board
- CDR
- Critical
Design Review
- CGI
- Common
Gateway Interface
- change control board (CCB)
- The
role of the CCB is to provide a central control mechanism to ensure that
every change request is properly
considered, authorized and coordinated.
- child
In a generalization relationship, the
specialization of another element, the parent. See subclass,
subtype. Contrast: parent.
- change management
- The activity of
controlling and tracking changes to artifacts.
See also scope management.
- change request (CR)
- A general
term for any request from a stakeholder to
change an artifact or process.
Documented in the Change Request is information on the origin and impact of
the current problem, the proposed solution, and its cost. See also enhancement
request, defect.
- checkpoints
- A set of conditions
that well-formed artifacts of a particular
type should exhibit. May also be stated in the form of questions which
should be answered in the affirmative.
- CLI
- Call
Level Interface
- class
A description of a set of objects that share the same attributes,
operations, methods,
relationships, and semantics. A class may
use a set of interfaces to specify collections of operations it provides to
its environment. See interface.
- class diagram
A diagram that shows a collection of declarative (static) model
elements, such as classes, types,
and their contents and relationships.
- class hierarchy
- The relationships
among classes that share a single inheritance. All Java classes inherit from
the Object class.
- class library
- A collection of
classes.
- class method
- See method.
- classifier
A mechanism that describes behavioral and structural features. Classifiers
include interfaces, classes,
datatypes, and components.
- client
A classifier that requests a service from
another classifier. Contrast: supplier.
- client/server
- The model of
interaction in distributed data processing where a program at one location
sends a request to a program at another location and awaits a response. The
requesting program is called a client, and the answering program is called a
server.
- COBOL
- Common Business Oriented
Language
- collaboration
- (1) Is a
description of a collection of objects that interact to implement some
behavior within a context. It describes a society of cooperating objects
assembled to carry out some purpose. (2) It captures a more holistic view of
behavior in the exchange of messages within a network of objects. (3)
Collaborations show the unity of the three major structures underlying
computation: data structure, control flow, and data flow. (4) A
collaboration has a static and a dynamic part. The static part describes the
roles that objects and links play in an instantiation of the collaboration.
The dynamic part consists of one or more dynamic interactions that show
message flow over time in the collaboration to perform computations. A
collaboration may have a set of messages to
describe its dynamic behavior. (5) A collaboration with messages is an
interaction.
The specification
of how an operation or classifier,
such as a use case, is realized by a
set of classifiers and associations
playing specific roles used in a specific way. The collaboration defines an
interaction. See interaction.
- collaboration diagram
- (1) A
collaboration diagram describes a pattern of interaction among objects; it
shows the objects participating in the interaction by their links to each
other and the messages they send to each
other. (2) It is a class diagram that
contains classifier roles and association
roles rather than just classifiers and associations. (3) Collaboration
diagrams and sequence diagrams both show interactions, but they emphasize
different aspects. Sequence diagrams show time sequences clearly but do not
show object relationships explicitly. Collaboration diagrams show object
relationships clearly, but time sequences must be obtained from sequence
numbers.
A diagram that
shows interactions organized around the structure of a model,
using either classifiers and associations or instances and links. Unlike a
sequence diagram, a collaboration diagram shows the relationships among the
instances. Sequence diagrams and collaboration diagrams express similar
information, but show it in different ways. See sequence
diagram.
- COM
- Component Object Model
(Microsoft)
- comment
An annotation attached to an element or a collection of elements. A note has
no semantics. Contrast: constraint.
- commit
- The operation that ends a
unit of work to make permanent the changes it has made to resources
(transaction or data).
- Common Gateway Interface (CGI)
- A
standard protocol through which a Web server can execute programs running on
the server machine. CGI programs are executed in response to requests from
Web client browsers.
- Common
Object Request Broker Architecture (CORBA)
- A
middleware specification which defines a software busùthe Object Request
Broker (ORB)ùthat provides the infrastructure.
- communicate-association
- An
association between an actor class and a use
case class, indicating that their instances interact. The direction
of the association indicates the initiator of the communication (Unified
Process convention).
- communication association
In a deployment diagram an association between nodes that implies a
communication. See deployment diagram.
- compile time
Refers to something that occurs during the compilation of a software module.
See modeling time, run
time.
- component
- A non-trivial, nearly
independent, and replaceable part of a system that fulfills a clear function
in the context of a well-defined architecture.
A component conforms to and provides the physical realization of a set of interfaces.
A physical,
replaceable part of a system that packages implementation and conforms to
and provides the realization of a set of interfaces. A component represents
a physical piece of implementation of a system, including software code
(source, binary or executable) or equivalents such as scripts or command
files.
- component diagram
A diagram that shows the organizations and dependencies among components.
- component model
- An architecture
and an API that allows developers to define reusable segments of code that
can be combined to create a program. VisualAge for Java uses the JavaBeans
component model.
- component-based development
(CBD)
- The
creation and deployment of software-intensive systems assembled from components
as well as the development and harvesting of such components.
- composite aggregation
Synonym: composition.
- composite bean
- A bean that is
composed of other beans. A composite bean can contain visual beans,
nonvisual beans, or both. See also bean, nonvisual bean, and visual bean.
- composite [class]
A class that is related to one or more classes
by a composition relationship. See composition.
- composite state
A state that consists of either concurrent (orthogonal) substates or
sequential (disjoint) substates. See substate.
- composite substate
A substate that can be held simultaneously
with other substates contained in the same composite state. Synonym: region.
See composite state.
- composition
A form of aggregation association with
strong ownership and coincident lifetime as part of the whole. Parts with
non-fixed multiplicity may be created
after the composite itself, but once
created they live and die with it; that is, they share lifetimes. Such parts
can also be explicitly removed before the death of the composite.
Composition may be recursive. Synonym: composite
aggregation.
- concrete
- An entity in a
configuration that satisfies an end-use function and can be uniquely
identified at a given reference point. (ISO)
- concrete class
A class that can be directly instantiated.
Contrast: abstract class.
- concurrency
The occurrence of two or more activities during the same time interval.
Concurrency can be achieved by interleaving or simultaneously executing two
or more threads. See thread.
- concurrent substate
A substate that can be held simultaneously
with other substates contained in the same composite state. See composite
substate. Contrast: disjoint
substate.
- configuration
- (1) general: The
arrangement of a system or network as defined by the nature, number, and
chief characteristics of its functional units; applies to both hardware or
software configuration.
- (2) The requirements, design, and implementation that define a particular
version of a system or system component. See configuration
management.
- configuration item
- An entity in a
configuration that satisfies an end-use function and can be uniquely
identified at a given reference point. (ISO)
- configuration management
- A
supporting process whose purpose is to identify, define, and baseline items;
control modifications and releases of these items; report and record status
of the items and modification requests; ensure completeness, consistency and
correctness of the items; and control storage, handling and delivery of the
items. (ISO)
- constraint
A semantic condition or restriction. Certain constraints are predefined in
the UML, others may be user defined. Constraints are one of three
extensibility mechanisms in UML. See tagged
value, stereotype.
- construction
- The third
phase of the Unified Process, in which the software is brought from an
executable architectural baseline to the point at which it is ready to be
transitioned to the user community.
- constructor
- A special class
method that has the same name as the class and is used to construct and
possibly initialize objects of its class type.
- container
(1) An instance that exists to contain other
instances, and that provides operations to access or iterate over its
contents. (for example, arrays, lists, sets). (2) A component
that exists to contain other components.
- containment
hierarchy
A namespace hierarchy consisting of model
elements, and the containment relationships that exist between them.
A containment hierarchy forms an acyclic graph.
- context
A view of a set of related modeling elements
for a particular purpose, such as specifying an operation.
- control class
- A class
used to model behavior specific to one, or a several use
cases.
- conversational
- A communication
model where two distributed applications exchange information by way of a
conversation; typically one application starts (or allocates) the
conversation, sends some data, and allows the other application to send some
data. Both applications continue in turn until one decides to finish (or
de-allocate). The conversational model is a synchronous form of
communication.
- Cookies
- Small files that your Web
browser creates at the request of Web sites you visit; the browser sends the
contents of the file to the site upon subsequent visits.
- CORBA
- Common
Object Request Broker Architecture
- core workflow
- One of nine
core workflows in the Rational Unified Process: Business
Modeling, Requirements, Analysis
& Design, Implementation, Test,
Deployment, Configuration
& Change Management, Project
Management, Environment. An
abstract business use case of the Software-Engineering Business.
- CR
- Change
Request
- critical design review
(CDR)
- In
the waterfall life cycle, the major review held when the detailed design is
completed. See Guidelines:
Software Development Plan.
- customer
- A person or
organization, internal or external to the producing organization, who takes
financial responsibility for the system. In a large system this may not be
the end user. The customer is the ultimate recipient of the developed
product and its artifacts. See also stakeholder.
- cycle
- One complete pass through
the four phases: inception, elaboration,
construction and transition.
The span of time between the beginning of the inception phase and the end of
the transition phase.
- database
- (1) A collection of
related data stored together with controlled redundancy according to a
scheme to serve one or more applications. (2) All data files stored in the
system. (3) A set of data stored together and managed by a database
management system.
- database management system
(DBMS)
- A
computer program that manages data by providing the services of centralized
control, data independence, and complex physical structures for efficient
access, integrity, recovery, concurrency control, privacy, and security.
- datatype
A descriptor of a set of values that lack identity and whose operations do
not have side effects. Datatypes include primitive pre-defined types and
user-definable types. Pre-defined types include numbers, string and time.
User-definable types include enumerations.
- DBA
- Database Administrator
- DBCS
- Double-Byte
Character Set
- DBMS
- Database
Management System
- DCE
- Distributed
Computing Environment
- DCOM
- Distributed Object Model
(Microsoft)
- deadlock
- A condition in which two
independent threads of control are blocked, each waiting for the other to
take some action. Deadlock often arises from adding synchronization
mechanisms to avoid race conditions.
- defect
- An anomaly, or flaw, in a
delivered work product. Examples include such things as omissions and
imperfections found during early lifecycle phases and symptoms of faults
contained in software sufficiently mature for test or operation. A defect
can be any kind of issue you want tracked and resolved. See also change
request.
- defining
model [MOF]
The model on which a repository is based. Any number of repositories can
have the same defining model.
- delegation
The ability of an object to issue a message to
another object in response to a message. Delegation can be used as an
alternative to inheritance. Contrast: inheritance.
- deliverable
- An output from a
process that has a value, material or otherwise, to a customer
or other stakeholder.
- de-marshal
- To deconstruct an
object so that it can be written as a stream of bytes. Synonym for flatten
and serialize.
- demilitarized zone (DMZ)
- This term is
now commonly used in the industry to describe a sub-network, typically used
for web servers that are protected by firewalls from both the external
Internet and a companyÆs internal network.
- dependency
A relationship between two modeling elements,
in which a change to one modeling element (the independent element) will
affect the other modeling element (the dependent element).
- deployment
- A core
process workflow in the software-engineering process, whose purpose
is to ensure a successful transition of the developed system to its users.
Included are artifacts such as training
materials and installation procedures.
- deployment
diagram
A diagram that shows the configuration of run-time processing nodes and the components,
processes, and objects
that live on them. Components represent run-time manifestations of code
units. See component
diagram.
- deployment
unit
A set of objects or components
that are allocated to a process or a processor as a group. A distribution
unit can be represented by a run-time composite
or an aggregate.
- deployment view
- An architectural
view that describes one or several system configurations; the
mapping of software components (tasks,
modules) to the computing nodes in these configurations.
- derived
element
A model element that can be computed from another element, but that is shown
for clarity or that is included for design purposes even though it adds no
semantic information.
- deserialize
- To construct an
object from a de-marshaled state. Synonym for marshal
and resurrect.
- design
The part of the software development process whose primary purpose is to
decide how the system will be implemented. During design, strategic and
tactical decisions are made to meet the required functional and quality requirements
of a system. See analysis.
- design time
Refers to something that occurs during a design phase of the software
development process. See modeling time.
Contrast: analysis time.
- design mechanism
- An architectural
mechanism used during the design process, during the period in which
the details of the design are being worked-out. They are related to
associated analysis mechanisms, of
which they are additional refinements, and they may bind one or more
architectural and design patterns. There is not necessarily any difference
in scale between the analysis mechanism and the design mechanismùit is
thus possible to speak of a persistence mechanism at the analysis level and
the design level and mean the same thing, but at a different level of
refinement. A design mechanism assumes some details of the
implementation environment, but it is not tied to a specific implementation
(as is an implementation mechanism).
For example, the analysis mechanism for inter-process communication may be
refined by several design mechanisms for interprocess communication (IPC):
shared memory, function-call-like IPC, semaphore-based IPC, and so on. Each
design mechanism has certain strengths and weaknesses; the choice of a
particular design mechanism is determined by the characteristics of the
objects using the mechanism.
- design model
- An object
model describing the realization of use
cases; serves as an abstraction of the implementation
model and its source code.
- design package
- A collection of classes,
relationships, use-case
realizations, diagrams, and other packages,
it is used to structure the design model
by dividing it into smaller parts. It's the logical analogue of the implementation
subsystem.
- design pattern
- [GAM94]
defines a design pattern so:
ôA design pattern provides a scheme for refining the
subsystems or components of a software system, or the relationships between
them. It describes a commonly-recurring structure of communicating
components that solves a general design problem within a particular context.ö
Design patterns are medium to small-scale patterns,
smaller in scale than architectural patterns but typically independent of
programming language. When a design pattern is bound, it will form a portion
of a concrete design model (perhaps a portion of a design
mechanism). Design patterns tend, because of their level, to be
applicable across domains.
- design subsystem
- A
model element which has the semantics of
a package (it can contain other model
elements) and a class (it has behavior). The behavior
of the subsystem is provided by classes or other subsystems it contains. A
subsystem realizes one or more interfaces,
which define the behavior it can perform. Contrast: design
package.
- developer
- A person responsible
for developing the required functionality in accordance with project-adopted
standards and procedures. This can include performing activities in any of
the requirements, analysis
& design, implementation,
and test workflows.
- development case
- The
software-engineering process used by the performing organization. It is
developed as a configuration, or customization, of the Unified Process
product, and adapted to the project's needs.
- development
process
A set of partially ordered steps performed for a given purpose during
software development, such as constructing models or implementing models.
- device
- A type of node
which provides supporting capabilities to a processor.
Although it may be capable of running embedded programs (device drivers), it
cannot execute general-purpose applications, but instead exists only to
serve a processor running general-purpose applications.
- diagram
- A graphical depiction of
all or part of a model.
A graphical
presentation of a collection of model elements,
most often rendered as a connected graph of arcs (relationships) and
vertices (other model elements). UML supports the following diagrams: class
diagram, object diagram, use-case
diagram, sequence diagram, collaboration
diagram, statechart diagram,
activity diagram, component
diagram, and deployment diagram.
- disjoint
substate
A substate that cannot be held simultaneously
with other substates contained in the same composite state. See composite
state. Contrast: concurrent
substate.
- Distributed Computing
Environment (DCE)
- Distributed Computing
Environment. Adopted by the computer industry as a de facto standard for
distributed computing. DCE allows computers from a variety of vendors to
communicate transparently and share resources such as computing power,
files, printers, and other objects in the network.
- distributed processing
- Distributed
processing is an application or systems model in which function and data can
be distributed across multiple computing resources connected on a LAN or
WAN. See client/server computing.
- DLL
- Dynamic
Link Library
- DMZ
- De-Militarized
Zone
- DNS
- Domain Name
Services
- document
- A document is a
collection of information that is intended to be represented on paper, or in
a medium using a paper metaphor. The paper metaphor includes the concept of
pages, and it has either an implicit or explicit sequence of contents. The
information is in text or two-dimensional pictures. Examples of paper
metaphors are word processor documents, spreadsheets, schedules, Gantt
charts, web-pages, or overhead slide presentations.
- document description
- Describes
the contents of a particular document.
- document template
- A concrete tool
template, such as a Adobe« FrameMakerÖ
or Microsoft« WordÖ template.
- domain
- An area of knowledge or
activity characterized by a family of related systems.
An area of
knowledge or activity characterized by a set of concepts and terminology
understood by practitioners in that area.
- domain model
- A domain model
captures the most important types of objects in the context of the domain.
The domain objects represent the entities that exist or events that
transpire in the environment in which the system works. The domain model is
a subset of the business object model.
- domain name server
- A system for
translating domain names such as www.software.ibm.com into numeric Internet
protocol addresses such as 123.45.67.8.
- double-byte character set (DBCS)
- A set
of characters in which each character is represented by 2 bytes. Languages
such as Japanese, Chinese, and Korean, which contain more symbols than can
be represented by 256 code points, require double- byte character sets.
Compare with single-byte character set.
- dynamic
classification
A semantic variation of generalization
in which an object may change type
or role. Contrast: static
classification.
- dynamic information
- Information
that is created at the time the user requests it. Dynamic information
changes over time so that each time users view it, they see different
content.
- dynamic link library (DLL)
- A file
containing executable code and data bound to a program at run time rather
than at link time. The C++ Access Builder generates beans and C++ wrappers
that let your Java programs access C++ DLLs.
- e-Business
- Either (1) the
transaction of business over an electronic medium such as the Internet or
(2) a business that uses Internet technologies and network computing in
their internal business processes (via intranets), their business
relationships (via extranets), and the buying and selling of goods,
services, and information (via electronic commerce).
- EJB
- Enterprise
JavaBean
- elaboration
- The second phase
of the process where the product vision and its
architecture are defined.
- element
An atomic constituent of a model.
- encapsulation
- The hiding of a
software objectÆs internal representation. The object provides an
interface that queries and manipulates the data without exposing its
underlying structure.
- enclosed document
- A document
can be enclosed by another document to collect a set of documents into a
whole; the enclosing document as well as the individual enclosures are
regarded as separate artifacts.
- enhancement request
- A type of stakeholder
request that specifies a new feature
or functionality of the system. See also change
request.
- Enterprise JavaBean (EJB)
- An EJB is a
non-visual, remote object designed to run on a server and be invoked by
clients. An EJB can be built out of multiple, non-visual JavaBeans. EJBs are
intended to live on one machine and be invoked remotely from another
machine. They are platform-independent. Once a bean is written, it can be
used on any client or server platform that supports Java.
- entity class
- A class
used to model information that has been stored by the system, and the
associated behavior. A generic class, reused in many use
cases, often with persistent characteristics. An entity class
defines a set of entity objects, which participate in several use cases and
typically survive those use cases.
- entry
action
An action executed upon entering a state in a state
machine regardless of the transition taken to reach that state.
- enumeration
A list of named values used as the range of a particular attribute
type. For example, RGBColor = {red, green, blue}. Boolean is a predefined
enumeration with values from the set {false, true}.
- environment
- A core
supporting workflow in the software-engineering process, whose
purpose is to define and manage the environment in which the system is being
developed. Includes process descriptions, configuration
management, and development tools.
- ERP
- Enterprise Resource Planning
- event
The specification of a significant occurrence that has a location in time
and space. In the context of state diagrams,
an event is an occurrence that can trigger a transition.
- event-to-method connection
- A
connection from an event generated by a bean to a method of a bean. When the
connected event occurs, the method is executed.
- evolution
- The life of the
software after its initial development cycle; any subsequent cycle, during
which the product evolves.
- evolutionary
- An iterative
development strategy that acknowledges that user needs are not fully
understood and therefore requirements are refined in each succeeding
iteration (elaboration phase).
- executable architecture
- An
executable architecture is a partial
implementation of the system, built to demonstrate selected system functions
and properties, in particular those satisfying non-functional requirements.
It is built during the elaboration phase
to mitigate risks related to performance, throughput, capacity, reliability
and other 'ilities', so that the complete functional capability of the
system may be added in the construction phase
on a solid foundation, without fear of breakage. It is the intention of the
Rational Unified Process that the executable architecture be built as an
evolutionary prototype, with the intention of retaining what is found to
work (and satisfies requirements), and making it part of the deliverable
system.
- exit action
An action executed upon exiting a state in a state
machine regardless of the transition taken to exit that state.
- export
In the context of packages, to make an element
visible outside its enclosing namespace. See visibility.
Contrast: export
[OMA], import.
- expression
A string that evaluates to a value of a particular type. For example, the
expression "(7 + 5 * 3)" evaluates to a value of type number.
- extend
A relationship from an extension use case to a base use case, specifying how
the behavior defined for the extension use case can be inserted into the
behavior defined for the base use case.
- extend-relationship
- An
extend-relationship from a use-case class A to a use-case class B indicates
that an instance of B may include (subject to specific conditions specified
in the extension) the behavior specified by A. Behavior specified by several
extenders of a single target use case can occur within a single use-case
instance.
- facade
- A special package,
stereotyped ½facade╗, within a subsystem that organizes and exports all
information needed by the clients of the subsystem. Included in this package
are interfaces (where the interfaces are
unique to the subsystem), realization relationships to interfaces outside
the subsystem, and any documentation needed by clients of the subsystem to
use the subsystem.
- factory
- A nonvisual bean capable
of dynamically creating new instances of a specified bean.
- fault
- An accidental condition
that causes a component in the implementation model to fail to perform its
required behavior. A fault is the root cause of one or more defects.
- feature
- An externally observable
service provided by the system which directly fulfills a stakeholder
need.
A property, like
operation or attribute, which is encapsulated within a classifier, such as
an interface, a class or a datatype.
- field
- See attribute.
- file transfer protocol (FTP)
- The basic
Internet function that enables files to be transferred between computers.
You can use it to download files from a remote, host computer, as well as to
upload files from your computer to a remote, host computer.
- final state
A special kind of state signifying that the enclosing composite
state or the entire state machine
is completed.
- fire
To execute a state transition. See transition.
- Firewall
- A computer, or
programmable device, with associated software which can be used to restrict
traffic passing through it according to defined rules. Controls would
typically be applied based on the origin or destination address and the
TCP/IP port number.
- flatten
- Synonymous with de-marshal.
- focus
of control
A symbol on a sequence diagram that
shows the period of time during which an object is performing an action,
either directly or through a subordinate procedure.
- formal
parameter
Synonym: parameter.
- framework
A micro-architecture that provides an
extensible template for applications within a
specific domain.
- FTP
- File
Transfer Protocol
- FURPS
- Functionality, Usability,
Reliability, Performance, Supportability: this acronym represents categories
for assessing product quality:
- gateway
- A host computer that
connects networks that communicate in different languages; for example, a
gateway connects a companyÆs LAN to the Internet.
- generalizable
element
A model element that may participate in a generalization relationship. See generalization.
- generalization
A taxonomic relationship between a more general element and a more specific
element. The more specific element is fully consistent with the more general
element and contains additional information. An instance of the more
specific element may be used where the more general element is allowed. See inheritance.
- generation
- Final release at the
end of a cycle.
- graphical user interface (GUI)
- A type
of interface that enables users to communicate with a program by
manipulating graphical features, rather than by entering commands.
Typically, a GUI includes a combination of graphics, pointing devices, menu
bars and other menus, overlapping windows, and icons.
- green-field development
- Development
"starting from scratch", as opposed to "evolution of an
existing system" or "reengineering of a legacy piece".
Originated from the transformation that takes place when building a new
factory on an undeveloped siteùwith grass on it.
- guard condition
- A condition that
must be satisfied in order to enable an associated transition
to fire.
- GUI
- Graphical
User Interface
- home page
- See Start
page.
- HotJava
- A Java-enabled Web and
intranet browser developed by Sun Microsystems, Inc. HotJava is written in
Java.
- HTML
- HyperText
Markup Language
- HTML browser
- See web
browser.
- HTTP
- HyperText Transport Protocol
- HTTP request
- A transaction
initiated by a Web browser and adhering to HTTP. The server usually responds
with HTML data, but can send other kinds of objects as well.
- hyperlinks
- Areas on a Web page
that, when clicked, connect you to other areas on the page or other Web
pages.
- hypertext
- Text in a document that
contains a hidden link to other text. You can click a mouse on a hypertext
word and it will take you to the text designated in the link. Hypertext is
used in Windows help programs and CD encyclopedias to jump to related
references elsewhere within the same document. The wonderful thing about
hypertext, however, is its ability to linkùusing HTTP over the Webùto
any Web document in the world, yet still require only a single mouse click
to jump clear around the world.
- hypertext markup language
(HTML)
- The
basic language that is used to build hypertext documents on the World Wide
Web. It is used in basic, plain ASCII-text documents, but when those
documents are interpreted (called rendering) by a Web browser such as
Netscape, the document can display formatted text, color, a variety of
fonts, graphic images, special effects, hypertext jumps to other Internet
locations, and information forms.
- I/T
- Information Technology
- IDE
- Integrated
Development Environment
- idiom
- [BUS96]
defines idiom so:
ôAn idiom is a low-level pattern specific to a
programming language. An idiom describes how to implement particular aspects
of components or the relationships between them using the features of the
given language.ö Also called an implementation pattern. When taking a
concrete design expressed in UML, say, and implementing it in Java for
example, recurring implementation patterns for that language may be used.
Idioms thus span design and implementation.
- IE
- Internet Explorer (Microsoft)
- IEEE
- The Institute of Electrical
and Electronics Engineers, Inc.
- IIOP
- Internet
Inter-ORB Protocol
- IMAP4
- Internet Message Access
Protocol-Version 4
- implementation
- A core
process workflow in the software-engineering process, whose purpose
is to implement and unit test the classes.
A definition of
how something is constructed or computed. For example, a class is an
implementation of a type, a method is an implementation of an operation.
- implementation
inheritance
The inheritance of the implementation of a more specific element. Includes
inheritance of the interface. Contrast: interface
inheritance.
- implementation mechanism
- An architectural
mechanism used during the implementation process. They are
refinements of design mechanisms,
which specify the exact implementation of the mechanism, and which will also
very likely employ several implementation patterns (idioms) in their
construction. Again, there is not necessarily any difference in scale
between the design mechanism and the implementation mechanism.
-
- For example, one particular implementation of the inter-process
communication analysis mechanism is a shared memory design mechanism
utilizing a particular operating systemÆs shared memory function calls.
Concurrency conflicts (inappropriate simultaneous access to shared memory)
may be prevented using semaphores, or using a latching mechanism, which in
turn rest upon other implementation mechanisms.
- implementation model
- The
implementation model is a collection of components,
and the implementation subsystems
that contain them.
- implementation pattern
- See idiom.
- implementation subsystem
- A
collection of components and other
implementation subsystems used to structure the implementation
model by dividing it into smaller parts. Note that in the Rational
Unified Process, the implementation model and the implementation subsystems
are the target of the implementation view
and are, therefore, of primary importance at development time. It is the
physical analogue of the design package.
The name "implementation subsystem" reflects a common usage of the
term "subsystem" to indicate something of a larger scale than a
component. In UML terms, however, it's a stereotyped package,
not a subsystem.
- implementation view
- An architectural
view that describes the organization of the static software elements
(code, data, and other accompanying artifacts) in the development
environment in terms of both packaging, layering,
and configuration management
(ownership, release strategy, and so on). In the Unified Process, it's a
view on the implementation model.
- import
In the context of packages, a dependency that
shows the packages whose classes may be
referenced within a given package (including packages recursively embedded
within it). Contrast: export.
- import-dependency
- A stereotyped
dependency in the design whose source is a design
package, and whose target is a different design package. The import
dependency causes the public contents of the target package to be
referenceable in the source package.
- inception
- The first phase
of the Unified Process, in which the seed idea, request for proposal, for
the previous generation is brought to the point of being (at least
internally) funded to enter the elaboration
phase.
- include
A relationship from a base use case to an inclusion use case, specifying how
the behavior defined for the inclusion use case can be inserted into the
behavior defined for the base use case.
- include-relationship
- An
include-relationship is a relationship from a base use case to an inclusion
use case, specifying how the behavior defined for the inclusion use case is
explicitly inserted into the behavior defined for the base use case.
- increment
- The difference (delta)
between two releases at the end of subsequent iterations.
- incremental
- Qualifies an
iterative development strategy in which the system is built by adding more
and more functionality at each iteration.
- inheritance
- The mechanism that
makes generalization possible; a mechanism for creating full class
descriptions out of individual class segments.
The mechanism by
which more specific elements incorporate structure and behavior of more
general elements related by behavior. See generalization.
- input
- An artifact
used by a process. See static artifact.
- inspection
- A formal evaluation
technique in which some artifact (model,
document, software) is examined by a person or group other than the
originator, to detect faults, violations of development standards, and other
problems.
- instance
- An individual entity
satisfying the description of a class or type.
An entity to
which a set of operations can be applied and which has a state that stores
the effects of the operations. See object.
- integrated
development environment, IDE
- A
software program comprising an editor, a compiler, and a debugger.
- integration
- The software
development activity in which separate software components are combined into
an executable whole.
- integration build plan
- Defines
the order in which components are to be implemented and integrated in a
specific iteration. Enclosed in the Iteration
Plan.
- interaction
A specification of how stimuli are sent between instances
to perform a specific task. The interaction is defined in the context of a
collaboration. See collaboration.
- interaction
diagram
A generic term that applies to several types of diagrams that emphasize
object interactions. These include: collaboration
diagrams, sequence diagrams,
and activity diagrams.
- interface
- A collection of operations
that are used to specify a service of a class or
a component.
A named set of
operations that characterize the behavior of an element.
- interface
inheritance
The inheritance of the interface of a more specific element. Does not
include inheritance of the implementation. Contrast: implementation
inheritance.
- internal
transition
A transition signifying a response to an
event without changing the state of an object.
- Internet
- The vast collection of
interconnected networks that all use the TCP/IP protocols and that evolved
from the ARPANET of the late 1960s and early 1970s.
- Internet Inter-ORB
Protocol (IIOP)
- An
industry standard protocol that defines how General Inter-ORB Protocol (GIOP)
messages are exchanged over a TCP/IP network. The IIOP makes it possible to
use the Internet itself as a backbone ORB through which other ORBs can
bridge.
- Internet Protocol (IP)
- The protocol
that provides basic Internet functions.
- Internet protocol address
- A
numeric address that uniquely identifies every computer connected to a
network. For example, 123.45.67.8.
- intranet
- A private network
inside a company or organization that uses the same kinds of software that
you would find on the public Internet, but that is only for internal use. As
the Internet has become more popular, many of the tools used on the Internet
are being used in private networks. For example, many companies have Web
servers that are available only to employees.
- IP
- Internet
Protocol
- IP number
- An Internet address
that is a unique number consisting of four parts separated by dots,
sometimes called a dotted quad (for example, 198.204.112.1). Every Internet
computer has an IP number, and most computers also have one or more domain
names that are mappings for the dotted quad.
- IPSec
- IP
Security Protocol
- IP Security Protocol (IPSec)
- Provides
cryptographic security services at the network layer.
- ISAPI
- Internet Server API
- ISO
- The International
Organization for Standardization.
- ISP
- Internet Server Provider
- iteration
- A distinct sequence of
activities with a base-lined plan and valuation criteria resulting in a release
(internal or external).
- JAR
- Java
Archive
- Java
- Java is a new programming
language invented by Sun Microsystems that is specifically designed for
writing programs that can be safely downloaded to your computer through the
Internet and immediately run without fear of viruses or other harm to your
computer or files. Using small Java programs called applets, Web pages can
include functions such as animations, calculators, and other fancy tricks.
We can expect to see a huge variety of features added to the Web using Java,
since you can write a Java program to do almost anything a regular computer
program can do, and then include that Java program in a Web page.
- Java archive (JAR)
- A
platform-independent file format that groups many files into one. JAR files
are used for compression, reduced download time, and security. Because the
JAR format is written in Java, JAR files are fully extensible.
- Java Database Connectivity
(JDBC)
- In JDK
1.1, the specification that defines an API that enables programs to access
databases that comply with this standard.
- Java Development Kit (JDK)
- The Java
Development Kit 1.1 is the latest set of Java technologies made available to
licensed developers by Sun Microsystems. Each release of the JDK contains
the following: the Java Compiler, Java Virtual Machine, Java Class
Libraries, Java Applet Viewer, Java Debugger, and other tools.
- Java Foundation Classes (JFC)
- Developed
by Netscape, Sun, and IBM, JFCs are building blocks that are helpful in
developing interfaces to Java applications. They allow Java applications to
interact more completely with the existing operating systems.
- JavaBean
- A JavaBean is a
component that can be integrated into an application with other beans that
were developed separately. This single application can be used stand-alone,
within a browser and also as an ActiveX component. JavaBeans are intended to
be local to a single process and they are often visible at runtime. This
visual component may be, for example, a button, list box, graphic or chart.
- JDBC
- Java
DataBase Connectivity
- JDK
- Java
Development Kit
- JFC
- Java
Foundation Classes
- JIT
- Just In Time
- JVM
- Java Virtual Machine
-
- key mechanism
- A description of
how an architectural patterns is
realized in terms of patterns of interaction between elements in the system.
Presented in the Software Architecture
Document
- keyword
- A predefined word
reserved for Java, for example, return, that may not be used as an
identifier.
- LAN
- Local
Area Network
- layer
- A specific way of
grouping packages in a model at the same level
of abstraction.
The organization
of classifiers or packages at the same level of abstraction. A layer
represents a horizontal slice through an architecture, whereas a partition
represents a vertical slice. Contrast: partition.
- LDAP
- Lightweight Directory Access
Protocol
- link
A semantic connection among a tuple of objects. An instance of an
association. See association.
- link end
An instance of an association end. See association
end.
- listener
- In JDK 1.1, a class that
receives and handles events.
- Local Area Network (LAN)
- A computer
network located at a userÆs establishment within a limited geographical
area. A LAN typically consists of one or more server machines providing
services to a number of client workstations.
- logical view
- An architectural
view that describes the main classes in the design of the system:
major business-related classes, and the classes that define key behavioral
and structural mechanisms (persistency, communications, fault-tolerance,
user-interface). In the Unified Process, the logical view is a view
of the design model.
-
- management
- A core
supporting workflow in the software-engineering process, whose
purpose is to plan and manage the development project.
- marshal
- Synonymous with deserialize.
- mechanism
- A
mechanism is an instance of a pattern. It may
require some further refinement to become a collaboration in a particular
model. A mechanism is thus a specific solution (to a recurring problem) in a
single context.
A mechanism can be said to fit or conform to a pattern. Any
collaboration could be termed a mechanism, but the term is usually reserved
for collaborations which deliver a solution to a commonly recurring problem
in software applications, for example, to handle persistence, to which a
pattern is applicable. In analysis and design, the notion of a mechanism can
be used as a æplaceholderÆùhaving identified that persistence is
needed for example, the analyst and designer can say that a persistence
mechanism will be used, which will force that problem to be addressed
systematically and consistently.
- message
A specification of the conveyance of information from one instance to
another, with the expectation that activity will ensue. A message may
specify the raising of a signal or the call of an operation.
- messaging
- A communication model
whereby the distributed applications communicate by sending messages to each
other. A message is typically a short packet of information that does not
necessarily require a reply. Messaging implements asynchronous
communications method. A fragment of Java code within a class that can be
invoked and passed a set of parameters to perform a specific task.
- metaclass
A class whose instances are classes. Metaclasses are typically used to
construct metamodels.
- meta-metamodel
A model that defines the language for expressing a metamodel.
The relationship between a meta-metamodel and a metamodel is analogous to
the relationship between a metamodel and a model.
- metamodel
A model that defines the language for expressing a model.
- metaobject
A generic term for all metaentities in a metamodeling language. For example,
metatypes, metaclasses, metaattributes, and meta-associations.
- method
- (1) A regular and
systematic way of accomplishing something; the detailed, logically ordered
plans or procedures followed to accomplish a task or attain a goal. (2) UML
1.1: The implementation of an operation, the algorithm or procedure that
effects the results of an operation.
The
implementation of an operation. It specifies the algorithm or procedure
associated with an operation
- method call
- Synonymous with message.
- MIB
- Management Information Base
- milestone
- The point at which an
iteration formally ends; corresponds to a release
point.
- MIME
- Multipurpose
Internet Mail Extension
- model [MOF]
- A semantically closed
abstraction of a system. In the Unified Process, a complete description of a
system from a particular perspective ('complete' meaning you don't need any
additional information to understand the system from that perspective); a
set of model elements. Two models cannot overlap.
A semantically
closed abstraction of a subject system. See system.
- Usage note: In the context of the MOF specification, which describes a meta-metamodel,
for brevity the meta-metamodel is frequently referred to as simply the
model.
- model
aspect
A dimension of modeling that emphasizes particular qualities of the metamodel.
For example, the structural model aspect emphasizes the structural qualities
of the metamodel.
- model
elaboration
The process of generating a repository type
from a published model. Includes the generation of interfaces and
implementations which allows repositories to be instantiated and populated
based on, and in compliance with, the model elaborated.
- model element
[MOF]
An element that is an abstraction drawn from the system being modeled.
Contrast: view
element.
- In the MOF specification model elements
are considered to be metaobjects.
- Model View Controller (MVC)
- An
application architecture which separates the components of the application:
the model represents the business logic or data; the view represents the
user interface and the controller manages user input or, in some cases, the
application flow.
- modeling conventions
- How concepts
will be represented, restrictions on the modeling language that the project
team management has decided upon; that is, dictums such as "Do not use
inheritance between subsystems."; "Do not use extend or include
associations in the Use Case Model."; "Do not use the friend
construct in C++.". Presented in the Software
Architecture Document.
- modeling
time
Refers to something that occurs during a modeling phase of the software
development process. It includes analysis time and design time. Usage note:
When discussing object systems, it is often important to distinguish between
modeling-time and run-time concerns. See analysis
time, design time. Contrast: run
time.
- module
A software unit of storage and manipulation. Modules include source code
modules, binary code modules, and executable code modules. See component.
- MOM
- Message-Oriented Middleware
- multiple
classification
A semantic variation of generalization
in which an object may belong directly to more than one class. See dynamic
classification.
- multiple
inheritance
A semantic variation of generalization
in which a type may have more than one supertype.
Contrast: single
inheritance.
- multiplicity
A specification of the range of allowable cardinalities that a set may
assume. Multiplicity specifications may be given for roles within
associations, parts within composites, repetitions, and other purposes.
Essentially a multiplicity is a (possibly infinite) subset of the
non-negative integers. Contrast: cardinality.
- Multipurpose
Internet Mail Extension (MIME)
- The
Internet standard for mail that supports text, images, audio, and video.
- multi-valued
[MOF]
A model element with multiplicity defined
whose Multiplicity Type:: upper attribute is set to a number greater than
one. The term multi-valued does not pertain to the number of values held by
an attribute, parameter, and so on at any point in time. Contrast: single-valued.
- mutator methods
- Methods that an
object provides to define the interface to its instance variables. The
accessor method to return the value of an instance variable is called a get
method or getter method, and the mutator method to assign a value to an
instance variable is called a set method or setter method.
- MVC
- Model
View Controller
- MVS
- Multiple
Virtual Storage
- n-ary
association
An association among three or more classes. Each instance of the association
is an n-tuple of values from the respective classes. Contrast: binary
association.
- name
A string used to identify a model element.
- namespace
A part of the model in which the names may be defined and used. Within a
namespace, each name has a unique meaning. See name.
- NC
- Network Computer or Network
Computing
- NCF
- Network Computing Framework
- NNTP
- Network News Transfer
Protocol
- node
A node is classifier that represents a run-time computational resource,
which generally has at least a memory and often processing capability.
Run-time objects and components may reside on nodes.
- NSAPI
- Netscape Server API
- NT
- Windows NT (New Technology)
- object
An entity with a well-defined boundary and identity that encapsulates state
and behavior. State is represented by attributes
and relationships, behavior is
represented by operations, methods,
and state machines. An object is an
instance of a class. See class,
instance.
- object class
- A template for
defining the attributes and methods of an object. An object class can
contain other object classes. An individual representation of an object
class is called an object.
- object
diagram
A diagram that encompasses objects and their
relationships at a point in time. An object diagram may be considered a
special case of a class diagram or a collaboration diagram. See class
diagram, collaboration diagram.
- object
flow state
A state in an activity
graph that represents the passing of an object from the output of
actions in one state to the input of actions in another state.
- object
lifeline
A line in a sequence diagram that represents the existence of an object over
a period of time. See sequence
diagram.
- object model
- An abstraction of a
system's implementation.
- Object Request Broker (ORB)
- A CORBA
term designating the means by which objects transparently make requests and
receive responses from objects, whether they are local or remote.
- object-oriented programming
(OOP)
- A
programming approach based on the concepts of data abstraction and
inheritance. Unlike procedural programming techniques, object-oriented
programming concentrates on those data objects that constitute the problem
and how they are manipulated, not on how something is accomplished.
- ODBC
- Open
DataBase Connectivity
- ODBC Driver
- An ODBC driver is a
dynamically linked library (DLL) that implements ODBC function calls and
interacts with a data source.
- ODBC Driver Manager
- The ODBC
driver manager, provided by Microsoft, is a DLL with an import library. The
primary purpose of the Driver Manager is to load ODBC drivers. The Driver
Manager also provides entry points to ODBC functions for each driver and
parameter validation and sequence validation for ODBC calls.
- OLTP
- OnLine
Transaction Processing
- OMG
- Object Management Group
- online transaction
processing (OLTP)
- A
style of computing that supports interactive applications in which requests
submitted by terminal users are processed as soon as they are received.
Results are returned to the requester in a relatively short period of time.
An online transaction-processing system supervises the sharing of resources
to allow efficient processing of multiple transactions at the same time.
- OO
- Object Oriented
- OOP
- Object-Oriented
Programming
- Open DataBase Connectivity
(ODBC)
- A
Microsoft-developed C database application programming interface (API) that
allows access to database management systems calling callable SQL, which
does not require the use of a SQL preprocessor. In addition, ODBC provides
an architecture that allows users to add modules called database drivers
that link the application to their choice of database management systems at
run time. This means applications no longer need to be directly linked to
the modules of all the database management systems that are supported.
- operation
A service that can be requested from an object to effect behavior. An
operation has a signature, which may
restrict the actual parameters that are possible.
- operating system process
- An
unique address space and execution environment in which instances of classes
and subsystems reside and run. The execution environment may be divided into
one or more threads of control. See also process
and thread.
- ORB
- Object
Request Broker
- organization unit
- A collection of
business workers, business entities, relationships, business use-case
realizations, diagrams, and other organization units. It is used to
structure the business object model by dividing it into smaller parts.
- originator
- An originator is
anyone who submits a change request
(CR). The standard change request mechanism requires the originator to
provide information on the current problem, and a proposed solution in
accordance with the change request form.
- output
- Any artifact that is the
result of a process step. See deliverable.
- outside link
- In a Web site, a
link to a URL that is located outside the current Web site.
- package
A general purpose mechanism for organizing elements into groups. Packages
may be nested within other packages.
- palette
- See beans palette.
- parameter
The specification of a variable that can be changed, passed, or returned. A
parameter may include a name, type, and direction. Parameters are used for
operations, messages, and events. Synonyms: formal
parameter. Contrast: argument.
- parameter connection
- A connection
that satisfies a parameter of an action or method by supplying either a
propertyÆs value or the return value of an action, method, or script. The
parameter is always the source of the connection. See also connection.
- parameterized
element
The descriptor for a class with one or more unbound parameters. Synonym: template.
- parent
In a generalization relationship, the
generalization of another element, the child. See subclass,
subtype.
Contrast: child.
- parent class
- The class from which another bean or class inherits data, methods, or
both.
- participates
The connection of a model element to a relationship or to a reified
relationship. For example, a class participates in an association, an actor
participates in a use case.
- partition
(1) activity graphs: A portion of an
activity graphs that organizes the responsibilities for actions. See swimlane.
(2) architecture: A subset of classifiers
or packages at the same level of abstraction. A partition represents a
vertical slice through an architecture, whereas a layer represents a
horizontal slice. Contrast: layer.
- pattern
- In
software, a solution template (for structure, behavior) that has proven
useful in at least one practical context, or, more likely, in several
contexts, to be worthy of being called a pattern. In UML, a parameterized
collaboration is used to represent a pattern although UML does not directly
model other aspects of patterns such as lists of consequences of use,
examples of use, and so onùtext can be used for these. A pattern is
instantiated by binding values to its parameters. Patterns can exist at various scales and levels of
abstraction, for example, as Architectural
Patterns, Analysis Patterns, Design
Patterns and Idioms or Implementation
Patterns.
- PDR
- Preliminary
Design Review
- PERL
- Practical Extraction &
Reporting Language
- persistent
object
An object that exists after the process or thread that created it has ceased
to exist.
- PGP
- Pretty Good Privacy
- phase
- The time between two major
project milestones, during which a well-defined set of objectives is met,
artifacts are completed, and decisions are made to move or not move into the
next phase.
- PKI
- Public Key Infrastructure
- POP3
- Post Office Protocol 3
- Port
- A TCP/IP terminology, a port
is a separately addressable point to which an application can connect. For
example, by default HTTP uses port 80 and Secure HTTP (HTTPS) uses port 443.
- post-condition
- A textual
description defining a constraint on the system when a use case has
terminated.
A constraint that
must be true at the completion of an operation.
- PRA
- Project
Review Authority
- PRD
- Product
Requirements Document
- pre-condition
- A textual
description defining a constraint on the system when a use case may start.
A constraint that
must be true when an operation is invoked.
- preliminary design
review (PDR)
- In
the waterfall life cycle, the major review held when the architectural
design is completed. See Guidelines:
Software Development Plan#Aligning the Traditional Waterfall Review Sequence
with the Iterative Approach.
- primitive type
A pre-defined basic datatype without any substructure, such as an integer or
a string.
- private
- An access modifier
associated with a class member. It allows only the class itself to access
the member.
- process
- (1) A thread of control
that can logically execute concurrently with other processes, specifically
an operating system process. See also thread.
(2) A set of partially ordered steps intended to reach a goal; in software
engineering the goal is to build a software product or to enhance an
existing one; in process engineering, the goal is to develop or enhance a
process model; corresponds to a business use case in business engineering.
(1) A heavyweight
unit of concurrency and execution in an operating system. Contrast: thread,
which includes heavyweight and lightweight processes. If necessary, an
implementation distinction can be made using stereotypes. (2) A software
development processùthe steps and guidelines by which to develop a system.
(3) To execute an algorithm or otherwise handle something dynamically.
- process view
- An architectural
view that describes the concurrent aspect of the system: tasks
(processes) and their interactions.
- processor
- A type of node which
possesses the capability to run one or more processes. Generally this
requires a computational capability, memory, input-output devices, and so
on. See also node, process,
and device.
- product
- Software that is the
result of development, and some of the associated artifacts
(documentation, release medium, training).
- product champion
- A high-ranking
individual who owns the vision of the product
and acts as an advocate between development and the customer.
- product-line architecture
- Defines
element types, how they interact, and how the product functionality is
mapped to them. It may also go further by defining some of the instances of
the architecture elements. This term generally applies to a set of products
within an organization or company. [HOF98]
- product requirements document (PRD)
- A
high level description of the product (system), its intended use, and the
set of features it provides.
- project
- Projects are performed by
people, constrained by limited resources, and planned, executed, and
controlled. A project is a temporary endeavor undertaken to create a unique
product or service. Temporary means that every project has a definite
beginning and a definite ending. Unique means that the product or service is
different in some distinguishing way from all similar products and services.
Projects are often critical components of the performing organizations'
business strategy.
- project manager
- The worker with
overall responsibility for the project. The Project Manager needs to ensure
tasks are scheduled, allocated and completed in accordance with project
schedules, budgets and quality requirements.
- Project Review Authority
(PRA)
- The
organizational entity to which the Project Manager reports. The PRA is
responsible for ensuring that a software project complies with policies,
practices and standards. See Concepts:
Organizational Context for the Rational Unified Process.
- projection
A mapping from a set to a subset of it.
- promotion
- Within a JavaBean, to
make features of a contained bean available to be used for making
connections. For example, a bean consisting of three push buttons on a
panel. If this bean is placed in a frame, the features of the push buttons
would have to be promoted to make them available from within the frame.
- property
A named value denoting a characteristic of an element. A property has
semantic impact. Certain properties are predefined in the UML; others may be
user defined. See tagged value.
- property-to-property
connection
- A
connection from a property of one object to a property of another object.
See also connection.
- protected
- An access modifier
associated with a class member. It allows the class itself, sub-classes, and
all classes in the same package to access the member.
- protocol
- A specification of a
compatible set of messages used to communicate between capsules.
The protocol defines a set of incoming and outgoing messages types (for
example, operations, signals), and optionally a set of sequence diagrams
which define the required ordering of messages and a state machine which
specifies the abstract behavior that the participants in a protocol must
provide.
- Protocol (TCP/IP)
- The basic programming
foundation that carries computer messages around the globe via the Internet.
The suite of protocols that defines the Internet. Originally designed for
the UNIX operating system, TCP/IP software is now available for every major
kind of computer operating system. To be truly on the Internet, your
computer must have TCP/IP software.
- prototype
- A release that is not
necessarily subject to change management
and configuration control.
- proxy
- An application gateway from
one network to another for a specific network application such as Telnet of
FTP, for example, where a firewallÆs proxy Telnet server performs
authentication of the user and then lets the traffic flow through the proxy
as if it were not there. Function is performed in the firewall and not in
the client workstation, causing more load in the firewall. Compare with
socks.
- pseudo-state
A vertex in a state machine that has the form of a state, but doesnÆt
behave as a state. Pseudo-states include initial and history vertices.
- published
model [MOF]
A model which has been frozen, and becomes available for instantiating
repositories and for the support in defining other models. A frozen modelÆs
model elements cannot be changed.
- QA
- Quality
Assurance
- qualifier
An association attribute or tuple of attributes whose values partition the
set of objects related to an object across an association.
- quality assurance (QA)
- The
function of Quality Assurance is the responsibility of (reports to) the
Project Manager and is responsible for ensuring that project standards are
correctly and verifiably followed by all project staff.
- race condition
- A condition which
occurs when two or more independent tasks may simultaneously access and
modify the same state information. This condition can lead to inconsistent
behavior of the system and is a fundamental issue in concurrent system
design.
- rank
- An attribute of a use
case or scenario that describes its
impact on the architecture, or its
importance for a release.
- rationale
- A statement, or
explanation of the reasons for a choice.
- RDBMS
- Relational DataBase
Management System.
- receive [a
message]
The handling of a stimulus passed from a sender instance. See sender,
receiver.
- receiver
[object]
The object handling a stimulus passed from a sender object. Contrast: sender.
- reception
A declaration that a classifier is prepared to react to the receipt of a
signal.
- reference
(1) A denotation of a model element. (2) A named slot within a classifier
that facilitates navigation to other classifiers. Synonym: pointer.
- refinement
A relationship that represents a fuller specification of something that has
already been specified at a certain level of detail. For example, a design
class is a refinement of an analysis class.
- relationship
A semantic connection among model elements. Examples of relationships
include associations and generalizations.
- release
- A subset of the
end-product that is the object of evaluation at a major milestone. A release
is a stable, executable version of product, together with any artifacts
necessary to use this release, such as release notes or installation
instructions. A release can be internal or external. An internal release is
used only by the development organization, as part of a milestone, or for a
demonstration to users or customers. An external release (or delivery) is
delivered to end users. A release is not necessarily a complete product, but
can just be one step along the way, with its usefulness measured only from
an engineering perspective. Releases act as a forcing function that drives
the development team to get closure at regular intervals, avoiding the
"90% done, 90% remaining" syndrome. See also prototype,
baseline.
- release manager
- A release manager
is responsible for ensuring that all software assets are controlled and
configurable into internal and external releases
as required.
- Remote Method Invocation (RMI)
- In JDK
1.1, the API that allows you to write distributed Java programs, allowing
methods of remote Java objects to be accessed from other Java virtual
machines.
- Remote Procedure Call (RPC)
- A
communication model where requests are made by function calls to distributed
procedure elsewhere. The location of the procedures is transparent to the
calling application.
- report
- An automatically generated
description, describing one or several artifacts.
A report is not an artifact in itself. A report is in most cases a
transitory product of the development process, and a vehicle to communicate
certain aspects of the evolving system; it is a snapshot description of
artifacts that are not documents themselves.
- repository
A storage place for object models, interfaces, and implementations.
- requirement
- A requirement
describes a condition or capability to which a system must conform; either
derived directly from user needs, or stated in a contract, standard,
specification, or other formally imposed document. See Concept:
Requirements
A desired
feature, property, or behavior of a system.
- requirement attribute
- Information
associated with a particular requirement providing a link between the
requirement and other project elementsùfor example, priorities, schedules,
status, design elements, resources, costs, hazards.
- requirements
- A core
process workflow in the software-engineering process, whose purpose
is to define what the system should do. The most significant activities are
to develop a vision, a use-case
model, and software
requirements specifications.
- requirements management
- A systematic
approach to eliciting, organizing and documenting the requirements
of the system, and establishing and maintaining agreement between the
customer and the project team on the changing requirements of the system.
See Concept: Requirements
Management.
- requirements tracing
- The linking
of a requirement to other requirements and
to other associated project elements.
- requirement type
- A categorization
of requirementsùfor
example, stakeholder need, feature, use case, supplementary requirement,
test requirement, documentation requirement, hardware requirement, software
requirement, and so onùbased
on common characteristics and attributes. See Concept:
Types of Requirements.
- resource file
- A file that is
referred to from your Java program. Examples include graphics and audio
files.
- responsibility
A contract or obligation of a classifier.
- result
- Synonym of output. See
also deliverable.
- resurrect
- Synonymous with deserialize.
- review
- A review is a group
activity carried out to discover potential defects and to assess the quality
of a set of artifacts.
- reuse
- Further use or repeated use
of an artifact
The use of a
pre-existing artifact.
- RFC
- Request For
Comment. Internet Standards are defined in documents known as RFCs.
- RMI
- Remote
Method Invocation
- RMI compiler
- The compiler that
generates stub and skeleton files that facilitate RMI communication. This
compiler can be automatically invoked from the Tools menu item.
- RMI registry
- A server program
that allows remote clients to get a reference to a server bean.
- risk
- An ongoing or upcoming
concern that has a significant probability of adversely affecting the
success of major milestones.
- role
- The behavior of a design
element participating in a particular context; for example, use-case
realization. See also analysis class.
The named
specific behavior of an entity participating in a particular context. A role
may be static (for example, an association end) or dynamic (for example, a
collaboration role).
- RPC
- Remote
Procedure Call
- RSA
- Rivest-Shamir-Adleman
algorithm.
- run time
The period of time during which a computer program executes. Contrast: modeling
time.
- S/MIME
- Secure MIME
- sandbox
- A restricted
environment, provided by the Web browser, in which Java applets run. The
sandbox offers them services and prevents them from doing anything
naughty, such as doing file I/O or talking to strangers (servers other
than the one from which the applet was loaded). The analogy of applets to
children led to calling the environment in which they run the sandbox.
- SAP
- Originally
"Systemanalyse und Programmentwicklung" and now named Systems,
Applications, and Products in Data Processing
- scenario
- A described use-case
instance, a subset of a use case.
A specific
sequence of actions that illustrates behaviors. A scenario may be used to
illustrate an interaction or the execution of a use case instance. See interaction.
- schema [MOF]
In the context of the MOF, a schema is analogous to a package
which is a container of model elements.
Schema corresponds to an MOF package. Contrast: metamodel,
package corresponds to an MOF package.
- scope management
- The process of
prioritizing and determining the set of requirements that can be
implemented in a particular release cycle, based on the resources and time
available. This process continues throughout the lifecycle of the project
as changes occur. See also change
management.
- semantic variation point
A point of variation in the semantics of a metamodel.
It provides an intentional degree of freedom for the interpretation of the
metamodel semantics.
- send [a
message]
The passing of a stimulus from a sender instance to a receiver instance. See
sender, receiver.
- sender
[object]
The object passing a stimulus to a receiver object. Contrast: receiver.
- SEPA
- Software
Engineering Process Authority
- sequence diagram
A diagram that shows object interactions arranged in time sequence. In
particular, it shows the objects participating in the interaction and the
sequence of messages exchanged. Unlike a collaboration diagram, a sequence
diagram includes time sequences but does not include object relationships. A
sequence diagram can exist in a generic form (describes all possible scenarios)
and in an instance form (describes one actual scenario). Sequence diagrams
and collaboration diagrams express similar information, but show it in
different ways. See collaboration
diagram.
- serialize
- Synonymous with de-marshal.
- server
- A computer that provides
services to multiple users or workstations in a network; for example, a file
server, a print server, or a mail server.
- Servlets
- Servlets are Java
objects which execute on the server in response to a browser request. They
can either generate HTML or XML directly, or call a JSP to produce the
output.
- SET
- Secure Electronic Transaction
- SHTTP
- Secure Hypertext Transfer
Protocol
- signal
The specification of an asynchronous stimulus communicated between
instances. Signals may have parameters.
- signature
The name and parameters of a behavioral feature. A signature may include an
optional returned parameter.
- single
inheritance
A semantic variation of generalization
in which a type may have only one supertype.
Contrast: multiple
inheritance.
- single
valued [MOF]
A model element with multiplicity defined
is single valued when its Multiplicity Type:: upper attribute is set to one.
The term single-valued does not pertain to the number of values held by an
attribute, parameter, and so on, at any point in time, since a single-valued
attribute (for instance, with a multiplicity lower bound of zero) may have
no value. Contrast: multi-valued.
- single-byte character set
- A set
of characters in which each character is represented by a 1-byte code.
- SMTP
- Simple Mail Transport
Protocol
- SNMP
- Simple Network Management Protocol
- Socket Secure (SOCKS)
- The gateway that
allows compliant client code (client code made socket secure) to establish a
session with a remote host.
- SOCKS
- SOCKet
Secure
- software architecture
- Software
architecture encompasses:
- the significant decisions about the organization of a software system
- the selection of the structural elements and their interfaces by which
the system is composed together with their behavior as specified in the
collaboration among those elements
- the composition of the structural and behavioral elements into
progressively larger subsystems
- the architectural style that guides this organization, these elements
and their interfaces, their collaborations, and their composition
- Software architecture is not only concerned with structure and behavior,
but also with usage, functionality, performance, resilience, reuse,
comprehensibility, economic and technology constraints and tradeoffs, and
aesthetic concerns.
- Software
Engineering Process Authority (SEPA)
- The
organizational entity with responsibility for process definition, assessment
and improvement. See Concepts:
Organizational Context for the Rational Unified Process.
- software requirement
- A
specification of an externally observable behavior of the system; for
example, inputs to the system, outputs from the system, functions of the
system, attributes of the system, or attributes of the system environment.
- software requirements specifications (SRS)
- A
set of requirements which completely defines the external behavior of the
system to be builtùsometimes
called a functional specification.
- software
specification review (SSR)
- In
the waterfall life cycle, the major review held when the software
requirements specification is complete. See Guidelines:
Software Development Plan#Aligning the Traditional Waterfall Review Sequence
with the Iterative Approach.
- specification
A declarative description of what something is or does. Contrast: implementation.
- SQL
- Structured Query Language
- SRR
- System
Requirements Review
- SRS
- Software
Requirements Specifications
- SSL
- Secure Sockets Layer
- SSR
- Software
Specification Review
- stakeholder
- An individual who is
materially affected by the outcome of the system.
- stakeholder need
- The business or
operational problem (opportunity) that must be fulfilled in order to justify
purchase or use.
- stakeholder request
- A request of
any typeùfor
example, Change Request, enhancement
request, request for a requirement change, defectùfrom
a stakeholder.
- Start page
- The first page a user
sees when browsing a Web site, also known as the home
page.
- state
A condition or situation during the life of an object during which it
satisfies some condition, performs some activity, or waits for some event.
- statechart
diagram
A diagram that shows a state machine. See state
machine.
- state machine
- A state machine
specifies the behavior of a model element,
defining its response to events and the life cycle of the object.
A behavior that
specifies the sequences of states that an object
or an interaction goes through during its life in response to events,
together with its responses and actions.
- static artifact
- An artifact that
is used, but not changed, by a process.
- static
classification
A semantic variation of generalization
in which an object may not change type or may not change role. Contrast: dynamic
classification.
- static information
- Web files that
do not change on every access.
- stereotype
- A meta-classification
of an element. Stereotypes have semantic implications which can be specified
for every specific stereotype value. See Stereotypes
Reference for information on the pre-defined stereotypes in use in
the Rational Unified Process.
A new type of
modeling element that extends the semantics of the metamodel. Stereotypes
must be based on certain existing types or classes in the metamodel.
Stereotypes may extend the semantics, but not the structure of pre-existing
types and classes. Certain stereotypes are predefined in the UML, others may
be user defined.
- stimulus
The passing of information from one instance to another, such as raising a signal
or invoking an operation. The receipt of a
signal is normally considered an event. See message.
- string
A sequence of text characters. The details of string representation depend
on implementation, and may include character sets that support international
characters and graphics.
- structural
feature
A static feature of a model element,
such as an attribute.
- structural
model aspect
A model aspect that emphasizes the structure of the objects in a system,
including their types, classes,
relationships, attributes,
and operations.
- stub
- A component containing
functionality for testing purposes. A stub is either a pure
"dummy", just returning some predefined values, or it is
"simulating" a more complex behavior.
- subactivity
state
A state in an activity
graph that represents the execution of a non-atomic sequence of
steps that has some duration.
- subclass
In a generalization relationship, the specialization of another class; the
superclass. See generalization.
Contrast: superclass.
- submachine
state
A state in a state
machine which is equivalent to a composite
state but its contents are described by another state machine.
- substate
A state that is part of a composite state.
See concurrent
substate, disjoint substate.
- subsystem
- A model
element which has the semantics of a package,
such that it can contain other model elements, and a class,
such that it has behavior. The behavior of the subsystem is provided by
classes or other subsystems it contains. A subsystem realizes one or more
interfaces, which define the behavior it can perform.
A subsystem is a
grouping of model elements, of which some constitute a specification of the
behavior offered by the other contained model elements. See package.
See also system.
- subtype
In a generalization relationship, the specialization of another type; the
supertype. See generalization.
Contrast: supertype.
- superclass
In a generalization relationship, the generalization of another class; the
subclass. See generalization.
Contrast: subclass.
- supertype
In a generalization relationship, the generalization of another type; the
subtype. See generalization.
Contrast: subtype.
- supplier
A classifier that provides services that can be invoked by others. Contrast:
client.
- swimlane
A partition on a activity diagram for
organizing the responsibilities for actions. Swimlanes typically correspond
to organizational units in a business model. See partition.
- synch state
A vertex in a state machine used for
synchronizing the concurrent regions of a state machine.
- synchronous
action
A request where the sending object pauses to wait for results. Contrast: asynchronous
action.
- system
(1) A collection of connected units that are organized to accomplish a
specific purpose. A system can be described by one or more models, possibly
from different viewpoints. Synonym: physical system. (2) A top-level
subsystem.
- system requirements
review (SRR)
- In
the waterfall life cycle, the name of the major review held when the system
specification is completed. See Guidelines:
Software Development Plan.
- Systems, Applications,
and Products (SAP)
- Originally
"Systemanalyse und Programmentwicklung" and now named Systems,
Applications, and Products in Data Processing, SAP supplies widely-used
software for integrated business solutions.
- tagged
value
The explicit definition of a property as a name-value pair. In a tagged
value, the name is referred as the tag. Certain tags are predefined in the
UML; others may be user defined. Tagged values are one of three
extensibility mechanisms in UML. See constraint,
stereotype.
- target (for test)
- A build that is
an object for testing. See build.
- task
- See operating
system process, process and thread.
- TCP
- Transmission
Control Protocol
- TCP/IP
- Transmission
Control Protocol/Internet Protocol
- team leader
- The team leader is
the interface between project management and developers. The team leader is
responsible for ensuring that a task is allocated and monitored to
completion. The team leader is responsible for ensuring that development
staff follow project standards, and adhere to project schedules.
- technical authority
- The project's
technical authority has the authority and technical expertise to arbitrate
on if, and how, a change request is to be implemented. The technical
authority defines change tasks, and estimates the effort of engineering the
work tasks, corresponding to a change
request.
- Telnet
- U.S. Deptartment of
Defense virtual terminal protocol.
- template
- A pre-defined structure
for an artifact.
Synonym: parameterized
element.
- test
- A core
process workflow in the software-engineering process whose purpose
is to integrate and test the system.
- test case
- A set of test inputs,
execution conditions, and expected results developed for a particular
objective, such as to exercise a particular program path or to verify
compliance with a specific requirement.
- test coverage
- The degree to which
a given test or set of tests addresses all specified test cases for a given system
or component.
- test driver
- A software module or
application used to invoke a test item and, often, provide test inputs
(data), control and monitor execution, and report test results. A test
driver automates the execution of test procedures.
- test item
- A build which is an
object of testing. See build.
- test procedure
- A test procedure
is a set of detailed instructions for the set-up, execution, and evaluation
of results for a given test case.
- thin client
- Thin client usually
refers to a system that runs on a resource-constrained machine or that runs
a small operating system. Thin clients don't require local system
administration, and they execute Java applications delivered over the
network
- thread
- An independent computation
executing within an the execution environment and address space defined by
an enclosing operating system process. Also
sometimes called a "lightweight process".
- thread [of
control]
A single path of execution through a program, a dynamic model, or some other
representation of control flow. Also, a stereotype for the implementation of
an active object as lightweight process. See process.
- time
A value representing an absolute or relative moment in time.
- time event
An event that denotes the time elapsed since the current state was entered.
See event.
- time
expression
An expression that resolves to an absolute or relative value of time.
- timing mark
A denotation for the time at which an event or message occurs. Timing marks
may be used in constraints.
- tool mentor
- A description which
provides practical guidance on how to perform specific process activities or
steps using a specific software tool.
- traceability
- The ability to trace
a project element to other related project elements, especially those
related to requirements.
- trace
A dependency that indicates a historical or process relationship between two
elements that represent the same concept without specific rules for deriving
one from the other.
- transaction
- A unit of processing
consisting of one or more application programs initiated by a single
request. A transaction can require the initiation of one or more tasks for
its execution.
- transaction processing
- A style of
computing that supports interactive applications in which requests submitted
by users are processed as soon as they are received. Results are returned to
the requester in a relatively short period of time. A transaction processing
system supervises the sharing of resources for processing multiple
transactions at the same time.
- transient
object
An object that exists only during the execution of the process or thread
that created it.
- transition
- The fourth phase
of the process in which the software is turned over to the user community.
A relationship
between two states indicating that an object in
the first state will perform certain specified actions and enter the second
state when a specified event occurs and specified conditions are satisfied.
On such a change of state, the transition is said to fire.
- type
- Description of a set of
entities which share common characteristics, relations, attributes, and
semantics.
A stereotype of
class that is used to specify a domain of instances (objects) together with
the operations applicable to the objects. A type may not contain any
methods. See class,
instance.
Contrast: interface.
- type
expression
An expression that evaluates to a reference to one or more types.
- UI
- User
Interface
- UML
- Unified
Modeling Language
- Unicode
- A character coding system
designed to support the interchange, processing, and display of the written
texts of the diverse languages of the modern world. Unicode characters are
typically encoded using 16-bit integral unsigned numbers.
- Unified Modeling Language
(UML)
- Unified Modeling Language [UML99].
In the Rational Unified Process Glossary, definitions from the Unified
Modeling Language are indicated by the symbol:

- uniform resource locator (URL)
- A
standard identifier for a resource on the World Wide Web, used by Web
browsers to initiate a connection. The URL includes the communications
protocol to use, the name of the server, and path information identifying
the objects to be retrieved on the server.
- uninterpreted
A placeholder for a type or types whose implementation is not specified by
the UML. Every unnterpreted value has a corresponding string representation.
See any
[CORBA].
- URL
- Uniform
Resource Locator
- usage
A dependency in which one element (the client)
requires the presence of another element (the supplier)
for its correct functioning or implementation.
- use case (class)
- A
use case defines a set of use-case instances,
where each instance is a sequence of actions a system performs that yields
an observable result of value to a particular actor. A use-case class
contains all main, alternate flows of events related to producing the
"observable result of value". Technically, a use-case is a class
whose instances are scenarios.
The specification
of a sequence of actions, including variants, that a system (or other
entity) can perform, interacting with actors
of the system. See use-case
instances.
- use-case diagram
A diagram that shows the relationships among actors
and use cases within a system.
- use-case instance
- A sequence of
actions performed by a system that yields an observable result of value to a
particular actor.
The performance
of a sequence of actions being specified in a use
case. An instance of a use case.
- use-case model
A model that describes a systemÆs functional requirements
in terms of use cases.
- use-case package
- A use-case
package is a collection of use cases, actors, relationships, diagrams, and
other packages; it is used to structure the use-case model by dividing it
into smaller parts.
- use-case realization
- A use-case
realization describes how a particular use case is realized within the design
model, in terms of collaborating objects.
- use-case view
- An architectural
view that describes how critical use cases are performed in the
system, focusing mostly on architecturally significant components (objects,
tasks, nodes). In the Unified Process, it is a view of the use-case
model.
- user interface (UI)
- (1) The hardware,
or software, or both that enables a user to interact with a computer. (2)
The term user interface typically refers to the visual presentation and its
underlying software with which a user interacts.
- utility
A stereotype that groups global variables and procedures in the form of a
class declaration. The utility attributes and operations become global
variables and global procedures, respectively. A utility is not a
fundamental modeling construct, but a programming convenience.
- value
An element of a type domain.
- variable
- (1) A storage place
within an object for a data feature. The data feature is an object, such as
number or date, stored as an attribute of the containing object. (2) A bean
that receives an identity at run time. A variable by itself contains no data
or program logic; it must be connected such that it receives run-time
identity from a bean elsewhere in the application.
- VB
- Visual Basic
- version
- A variant of some
artifact; later versions of an artifact typically expand on earlier
versions.
- vertex
A source or a target for a transition in a state machine. A vertex can be
either a state or a pseudo-state. See state,
pseudo-state.
- view
- A simplified description (an
abstraction) of a model, which is seen from a given perspective or vantage
point and omits entities that are not relevant to this perspective. See also
architectural view.
A projection of a
model, which is seen from a given perspective or vantage point and omits
entities that are not relevant to this perspective.
- view
element
A view element is a textual and/or graphical projection of a collection of model
elements.
- view
projection
A projection of model elements onto view
elements. A view projection provides a location and a style for each
view element.
- virtual machine (VM)
- A software
program that executes other computer programs. It allows a physical machine,
a computer, to behave as if it were another physical machine.
- visibility
An enumeration whose value (public, protected, or private) denotes how the model
element to which it refers may be seen outside its enclosing namespace.
- vision
- The user's or customer's
view of the product to be developed, specified at the level of key stakeholder
needs and features of the system.
- visual programming tool
- A tool
that provides a means for specifying programs graphically. Application
programmers write applications by manipulating graphical representations of
components.
- VM
- Virtual
Machine
- VPN
- Virtual Private Network
- web application
- A system that
uses the internet as the primary means of communication between the system
users and the system. See also web system.
- web browser
- A piece of software
that runs on a client which allows a user to request and render HTML
pages.
- web server
- The server component
of the World Wide Web. It is responsible for servicing requests for
information from Web browsers. The information can be a file retrieved from
the server's local disk or generated by a program called by the server to
perform a specific application function.
- web site
- A web
system that is all on one server. Users navigate the web site with a
browser.
- web system
- A hyper media system
that contains pages of information that are linked to each other in the form
of a graph, as opposed to being hierarchical or linear. A web system can
manifest itself as a web server that can be accessed through a browser.
- Widget
- In this context, a generic
term for something that can be put on a window such as a button, scrollbar,
label, listbox, menu or checkbox.
- work breakdown structure
- The
planning framework; a project decomposition into units of work from which
cost, artifacts, and activities can be allocated and tracked.
- work guideline
- A description
which provides practical guidance on how to perform an activity or set of
activities. It usually considers techniques which are useful during the
activity.
- worker
- A definition of the
behavior and responsibilities of an individual, or a set of individuals
working together as a team, within the context of a software engineering
organization. The worker represents a role played
by individuals on a project, and defines how they carry out work.
- workflow
- The sequence of
activities performed in a business that produces a result of observable
value to an individual actor of the business.
- workflow detail
- A grouping of
activities which are performed in close collaboration to accomplish some
result. The activities are typically performed either in parallel or
iteratively, with the output from one activity serving as the input to
another activity. Workflow details are used to group activities to provide a
higher level of abstraction and to improve the comprehensibility of
workflows.
- workspace
- The work area that
contains all the code you are currently working on; that is, current
editions. The workspace also contains the standard Java class libraries and
other class libraries.
- workstation
- A configuration of
input/output equipment at which an operator works. A terminal or
microcomputer, usually one that is connected to a mainframe or a network, at
which a user can perform applications.
- World Wide Web (WWW or web)
- A graphic
hypertextual multimedia Internet service.
- WYSIWYG
- What You See Is What You
Get
- XML
- eXtensible Markup Language
-
Copyright
⌐ 1987 - 2000 Rational Software Corporation
|