Block 1 Glossary Flashcards
These cards are a copy of the glossary provided by TM354. Except where definitions are 'see x', these cards have been omitted. (201 cards)
Abstraction
The process of describing the essential features of a problem and ignoring other details. It permits you to concentrate on a problem at some level of generalisation, without regard to irrelevant detail. It also permits you to work with concepts, terms and models that are familiar in the problem environment (or domain).
Activity
In UML, an activity is an ongoing non-atomic execution (contrast with action) within a state machineor within an activity diagram; in a given context, activities result in one or more actions.
In a software development process, it is a unit of work comprising one or more tasks that someone may be asked to perform.
Activity Diagram
A representation of a workflow through activity states or action states and in which most or all of the transitions are triggered by completion of an activity in the source states; an activity diagram can be used to represent the workflows within the business domain.
Actor
A representation of users of a software system in a particular role, when interacting with use cases. An actor can also represent the role of an external system that interacts with a software system.
Aglie
Agile UP
A version of UP where the initial disciplines (business/domain model, requirements, analysis and design) are collapsed into a single ‘model’ discipline and where iterations are short (weeks rather than months) and frequent; product is delivered incrementally if at all possible; design and implementation do not wait until all the requirements are found.
Ambiguity
Open to several interpretations.
Analysis
The term analysis is often used as a generic term for the activities that precede design, the process of eliciting the requirements of a system from the user (requirements elicitation), and then generating the requirements specification document that identifies (among other things) what the software should do (its functional requirements) and the environment in which it must work. In this module we use the term analysis to refer specifically to a set of activities that follow an initial requirementsphase: modelling how the structure and behaviour of the system will meet its specification from a user’s perspective. (See also requirements, design, implementation and testing).
Analysis Model
An initial representation of the structure of a software solution by a class diagram; it represents analysis classes, their associations and constraints.
Association
Business Event
Business Process
Definition of what gets done in the business: by whom, in what order, needing what and with what consequences.
Business Rule
A constraint on how the business is run; that is, a constraint on the business processes.
Caller
Component that makes a procedure call in a call-return architecture.
Circular Dependency
A series of two or more dependencies between different things (typically modules within a software system) that form a closed loop. If module A depends on module B which depends on module C, then a circular dependency arises if module C depends on module A.
Client
In software development, the term refers to the person (or company) who commissions and pays for a piece of software to be developed or to be purchased as a package (in this context the term client is synonymous with the term customer).
In programming, the term often refers to the method/class/object that uses the methods of another class/object (the supplier or server).
In network programming, the term refers to a program/process running on one computer that can obtain services from a server program running (usually) on another computer.
Cohesion
A way of describing how closely the activities within a single module are related to each other. A cohesive module should, ideally, do just one thing. In software development, high cohesion is preferred to low cohesion as it results in a more flexible software system because each module performs clearly defined operations/tasks.
Commitment
A move of the planning game that decides what to do next.
Communication Diagram
A UML interaction diagram that focuses on the structural aspect (instances and links) of an interaction. In previous versions of UML a communication diagram was known as a collaboration diagram.
Complexity
A complex system consists of a number of parts with a large number of relationships between them. A complex program is one that is difficult to understand.
Component
In general, this refers to an identifiable part of a system. For its use in connection with software systems, see software component.
CASE
Computer-aided Software Engineering
The use of specialised application programs (tools) that provide some form of automated support during the development of a software system for the benefit of its eventual implementation. Consequently, it includes one or more methods, as well as their accompanying techniques and notations, used for activities such as analysis and design.
Concept(ual) Model
The structural model that represents the static part of the domain: the concepts and their relationships.
Configuration
All the modules (components) which together make up an executable software system. It is also a term for the collection of configuration items.