Week 3- Modelling Flashcards
What is a model?
A model a simplified representation of something. It simplifies, it allows some details to be studied and explored at the expense of other details. A MODEL IS A TOOL.
Why are models used as a part of many design and development processes?
Every model is expressed in a medium that is convenient for use, and in a ‘language’ - written or visual or both - that is easy to understand.
What is meant by the semantic aspect of a model? (Information aspect)
The semantic aspect communicates meaning. A model should mean something to the person or system using the model.
What is meant by the syntactic aspect of a model? (notational aspect)
The semantic aspect communicates meaning. A model should mean something to the person or system using the model.
What is meant by the concept of abstraction?
The level of abstraction of model is an indication of the amount of detail described by the model.
High level- low detail
Low level- lots of detail
Why are models used as a part of many design and development processes?
By building models, developers learn about the system or software they are modelling, they increase their understanding. Another important benefit of having models is that they are an effective way to present information about the subject of the model – they provide a useful communication tool.
What are the three general types or categories of modelling used with modern systems and software development?
Functional modelling
Structural modelling
Behavioural modelling
When speaking about development activities what is meant by requirements?
To develop a complete and clear understanding of what the product – system or software - is supposed to do for its users.
When speaking about development activities what is meant by analysis?
To develop a complete and clear understanding of how the product – system or software – can be constructed.
When speaking about development activities what is meant by design?
To develop a complete and clear design for the final product.
When speaking about development activities what is meant by implementation?
To build an example of the system or software that meets the original requirements.
What do all development activities have in common?
They all produce a product.
What is the purpose of functional modelling?
To explore, understand and document the EXTERNAL behaviour of the system or software. It is about the system and how it interacts with the system users.
What is the purpose of structural modelling?
The internal aspects of a system or software that are unchanged while it is used.
What is the purpose of behavioural modelling?
They describe the internal logic of activities and processes without specifying how the processes are to be implemented.
What are four UML modelling tools used commonly for dynamic modelling?
Activity diagrams
Sequence diagrams,
Collaboration diagrams
Statechart diagrams
What are the nine types of modelling diagrams used by UML?
* Use case diagrams • Class diagrams • Object diagrams • Sequence diagrams • Collaboration diagrams • Statechart diagrams • Activity diagrams • Component diagrams, and • Deployment diagrams
What is a use-case?
A use-case is a sequence of actions that the system will perform to achieve an outcome for the user.
What are the common symbols used in a use-case diagram?
Actor- Stick person
Use-case- oval
Relationship- straight line
What is a ‘use-case behaviour description’?
The purpose of each use-case description is to describe the sequence of actions that will take place between the actor and the system in order to perform and complete the use-case. Note that a use-case description does not attempt to describe any of the detailed activities that must take place inside the system (or inside the actor).
What are the two common methods for writing a ‘use-case behaviour description’?
Narrative and column description
What is another name used for structural modelling?
Static or conceptual
What is a class diagram?
Class diagrams are visual ways to document the definition of a class by describing its name, its property members and its method members.
How are classes and objects related to each other?
An object is a specific instance of a class. A class defines what properties will be used to describe every object based on this class. Two objects of the same class will have the same collection of properties, but they will have at least one property that has a different value in each of the objects – if all the properties have the same values in both of the two objects then they are the same object.
What is meant by a relationship between classes?
Object-orientation recognises that different objects of different classes work together to create the structure and functionality of larger systems. This means that in any particular system, classes have relationships with each other.
What are the common types of relationships between classes?
An association relationship takes place when one object uses or collaborates with another independent object.
An aggregation occurs if one class is a
member of another class and where the ‘inside’ class is one that can also exist as a separate entity
A composition occurs if one class is a member of
another class and where the ‘inside’ class is one that cannot exist as a separate entity.
Generalisation or inheritance.
What is the multiplicity of a class relationship?
The multiplicity of an association is a deeper concept. It is needed because in many systems, an association between two classes, like students and dogs, can involve multiple instances of each class.
What is the naming convention for objects?
ObjectName:ClassName.
Eg lost:cat
best:student
What are the four basic multiplicities?
one to one
one to many
many to one
many to many
What is another name used for behavioural modelling?
Dynamic modelling
What are some common behavioural modelling tools?
Activity modelling (work flow)
What is an activity diagram?
An activity diagram considers that almost any workflow is made up of combinations of activities, states and transitions. An activity is an identifiable unit of work that must be carried out – it is a step, task or process, it does something.
What is pseudo-code?
Pseudo-code is a traditional way of describing a process that uses a mixture of English text and programming-like statements.
What are the main symbols in an activity diagrams?
Activity- Rectangle with rounded ends State- Rectangle with rounded corners Transition- A line with an arrow on it Start state- solid circle End state- solid circle in another circle Decision Point- a diamond Forks and Joins Swim lanes