| |
Time: 14 hours Level: Advanced
| |
| |
Introduction Resource
- Models are mechanisms for communication. This unit looks at what a model is and what the process of modelling is about. The techniques discussed here are applicable to a wide range of systems and have...
| |
| |
1.1 Types of model Resource
- 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...
| |
| |
2.1 What is modelling? Resource
- Modelling is about building representations of things in the ‘real world’ and allowing ideas to be investigated; it is central to all activities in the process for building or creating an artefact of some...
| |
| |
3.1 Making consistent models Resource
- It would be preferable to have a consistent way of representing the different models that one might want to construct. The notion of a modelling language allows the developer to make useful connections...
| |
| |
4.1 What is a data flow diagram? Resource
- A data flow diagram (DFD) is a graphical description of the ebb and flow of data in a given context. A DFD allows you to identify the transformations that take place on data as it moves from input to output...
| |
| | 5 Four other diagramming techniques
5.1 More information about modelling techniques Resource
- The four remaining diagramming techniques are described in separate sections below, which you should now study:
| |
| | 6 Use cases and actvity diagrams
6.1 Use case modelling Resource
- In this section, we take a closer look at use case modelling, and show you how it can be used to model the requirements for a product that includes the development of a software application or, simply,...
6.2 Actors Resource
- Iteration is a natural part of the modelling process. It does not matter whether you start by looking for the actors or the use cases. We have chosen to begin with the actors, since it is a way of expressing...
6.3 Describing use cases Resource
- To understand the work, you need a good idea of what each use case means. To get a feel for what this might entail, look again at Figure 3 (reproduced below) which shows a simple use case model for a hotel...
6.4 Scenarios Resource
- The purpose of a use case is to meet the goal of its associated actor(s), such as a guest making a reservation with a hotel. This implies that a use case should include everything that must be done to...
6.5 More about actors Resource
- In the hotel example, you saw two actors in the use case diagram shown in Figure 3 (reproduced below). Why is the actor Guest associated with the use case for making a reservation but not associated with...
6.6 Modelling the relationships between use cases Resource
- There are two situations when you would consider adding details to a use case diagram:
6.7 Stereotypes Resource
- In the UML, a stereotype is a way of adding detail to any part (element) of a model. It is a way of expressing variation or a usage distinction that tells you more about the original element. For example,...
6.8 Sharing behaviour between use cases Resource
- For each use case there may be more than one scenario. In the process of requirements elicitation and specification, you may find a certain amount of common behaviour in two or more of your use cases....
6.9 Alternatives to the main success scenario Resource
- If a use case incorporates a scenario that is significantly different from the main success scenario, you may decide to create a new subsidiary use case. There may even be a need to create more than one...
6.10 To extend or include? Resource
- Whatever kind of system you intend to develop, you will need to consider its security. Usually, we allow only trustworthy people to use a new system. Therefore, in a software solution we can envisage a...
6.11 Issues with use cases Resource
- There can be a tendency to make diagrams too complex. You can reduce the complexity of your use case diagram by:
6.12 Self-assessment questions Resource
- (a) Explain why the actors in a use case diagram do not represent actual individuals.
6.13 Exercises Resource
- Write down a textual description (using the format of Table 2, reproduced below) of the use case check in guest, shown in Figure 3, also below. As part of your deliberations, identify any exceptions to...
| |
| | 7 Modelling users' routines
7.1 Activity diagrams Resource
- Each use case in a requirements model represents a unit of functionality or, more simply, a task initiated by an actor. Within each task there may be a number of identifiable actions that the software...
7.2 Exercises Resource
- Draw an activity diagram for the main success scenario for the check out guest use case.
| |
| | 8 Entity–relationship data modelling
8.1 Introduction Resource
- One type of data model is an entity–relationship data model.
8.2 Example of a university registration data model Resource
- Here is a statement of the data requirements for a product to support the registration of and provide help to students of a fictitious e-learning university.
8.3 Entities Resource
- Here is the definition of an entity.
8.3 Relationships Resource
- A relationship is an association between entities that has a meaning in a given context, which needs to be recorded.
| |
| | 9 An introduction to state machines
9.1 What is a state machine? Resource
- An event is an occurrence of a phenomenon at a certain moment in time. The occurrence of the event itself is assumed to have no duration. Typically, when an event occurs, it affects the state of an object....
| |
| | References and Acknowledgements
| |