1 Models and modelling
1.1 Types of model
When the word model is used, you are most likely to bring to mind physical models such as those that are constructed to depict new buildings, cars or other artefacts. Such models are a precursor to actually building the artefact ‘for real’. However, our use of the word goes beyond physical models. For example, when a new house is built there will be a variety of plans produced to show different aspects of the house: its floor plan, a diagram of its location, a drawing of the front elevation and so on. These are also models because they show different aspects of the house (just as a physical model would do). Some of these plans are useful to prospective purchasers, some are useful to the builders, while others are required by local authorities. The point is, each model is useful to different people and helps to communicate the ideas of the developers to prospective builders, buyers and authorities, all of whom have different needs in relation to the house. Models are mechanisms for communication. But each model shows only a small amount of the totality of information about the artefact; too much information in a model makes it difficult to comprehend.
In this course, we shall describe a number of different modelling techniques. But they all have one thing in common: they are all diagramming techniques that are commonly used in describing ‘systems’ such as business processes, manufacturing processes and software development. In such a system, particularly when it is large, a major activity is the determination of the requirements for the system (what it should do), a role undertaken by a requirements analyst who uses diagramming modelling techniques to specify the system.
The reason that you need to look at a variety of diagramming techniques is that each one provides a different view of a system and a complete understanding of a system cannot be obtained without a number of different views. This does not mean that every diagramming technique that we shall describe is required to describe every system. Rather, the techniques that are appropriate to a given system will depend upon the type of system and what you want the description for.
There are many diagramming techniques in existence and we cannot cover them all in this course. Therefore, we shall concentrate on five of the most commonly used techniques. Our selection is sufficiently varied to provide you with a good overview of the different kinds of views that one needs for different kinds of system.
We shall begin our discussion by looking more deeply at what a model is and what the process of modelling is about. We shall take a brief diversion to discuss modelling languages to see why it is necessary to rigorously define a modelling technique. We then move on to the five diagramming techniques:
Data flow diagrams
Use case modelling
The material in this course has been extracted from the Open University Masters-level course M883, Software Requirements for Business Systems. While that course is primarily about software development, the modelling techniques discussed in this course are applicable to a wide range of systems. Indeed, the main purpose of a model is to act as a mechanism for describing the requirements of an artefact (of any kind, including software).
Occasionally, you will see reference to ‘MRP’. This is a shorthand for the book, Mastering the Requirements Process by Suzanne Robertson and James Robertson published by Addison Wesley, 1999, which is the set book for the course M883. It is not required in order to understand the materials in this course, but can be referred to if you want to learn more about an individual topic.