Page 163 - DCAP405_SOFTWARE_ENGINEERING
P. 163
Software Engineering
Notes of streets being serviced by a taxi company). Informal sketches are often the best means of
representing these structural features. These are an important part of the presentation because
they provide a contextual elaboration that can both facilitate a more precise statement of the
project goals and as well, help to clarify the nature of the interaction among the entities. Because
of these contributions to understanding, such sketches are often a valuable component of the
project description.
Conceptual Model
The information provided by the project description is, for the most part, unstructured and
relatively informal. Because of this informality it is generally inadequate to support the high
degree of precision that is required in achieving the objective of a credible model embedded
within a computer program. A refinement phase must be carried out in order to add detail
where necessary, incorporate formalisms wherever helpful, and generally enhance the precision
and completeness of the accumulated information. Enhanced precision is achieved by moving
to a higher level of abstraction than that provided by the project description. The reformulation
of the information within the project description in terms of parameters and variables is an
initial step because these notions provide a fundamental means for removing ambiguity and
enhancing precision. They provide the basis for the development of the simulation model that
is required for the experimentation phase.
There is a variety of formalisms that can be effectively used in the refinement process. Included
here are mathematical equations and relationships (e.g., algebraic and/or differential equations),
symbolic/graphical formalisms (e.g., Petri nets, finite state machines), rule based formalisms,
structured pseudo code, and combinations of these. The choice depends on suitability for providing
clarification and/or precision. The result of this refinement process is called the conceptual
model for the modelling and simulation project. The conceptual model may, in reality, be a
collection of partial models each capturing some specific aspect of the SUI’s behaviour. The
representations used in these various partial models need not be uniform.
The conceptual model is a consolidation of all relevant structural and behavioural features of
the SUI in a format that is as concise and precise as possible. It provides the common focal point
for discussion among the various participants in the modelling and simulation project. In addition,
it serves as a bridge between the project description and the simulation model that is essential
for the experimentation activity (i.e., the simulation phase). As we point out below, the simulation
model is a software product and its development relies on considerable precision in the statement
of requirements. One of the important purposes of the conceptual model is to provide the
prerequisite guidance for the software development task.
In Figure 9.11, a verification activity is associated with the transition from the project description
to the conceptual model. As will transition under consideration because it involves a
reformulation of the key elements of the model from one form to another and the integrity of
this transformation needs to be confirmed.
In the modelling and simulation literature, the phrase ‘conceptual model’ is frequently reduced
simply to ‘model’. Our usage of the word ‘model’ without a modifier generally implies a
composite notion that program successors where the latter two notions are described in the
discussion that follows.
As a concluding observation in this discussion, it is worth pointing out that there is by no means
a common understanding in the modelling and simulation literature of the nature and role of a
conceptual model. The overview presented by Robinson gives considerable insight into the
various perspectives that prevail.
156 LOVELY PROFESSIONAL UNIVERSITY