Software Engineering – The Functional Model
March 14, 2010 Leave a comment
In this post we talk all about Functional Modelling. This post is a semi-continuation from the previous one on Class Modelling.
What is a Functional Model?
All functional models really do is describe the computational structure of the system. On the other hand, this system – even though it may have many Use Cases – should only have one functional model, yet this may be composed of many functional diagrams.
Furthermore, the activity of creating a functional model is commonly known as functional modelling.
How do we Represent them?
So, how do we represent functional models? Well, we represent them with functional diagrams. For example:
- Activity Diagrams
- Use Case Diagrams
To further express the point made above which was:
a system should only have one functional model, yet this may be composed of many functional diagrams.
Say we have a system – a library system, which has been a common example that i have frequently used. This system, for example, should only have one Use Case Diagram – like my post on Use case Diagrams and Descriptions. However, it may be possible for this system to have more than one Activity Diagram.
But in the end, they all describe, or relate to just one functional model of the system.
What do they Describe?
A functional model describes how the system is changing.
This can be best viewed with an Activity Diagram which shows how we change from one state to another depends on what actions are being performed – or the overall state of the system. This leads me to the key feature (subject) of a functional model – Functions and Flows.