Title: Concept Maps
1Concept Maps
2Concept Maps
- Using Concept Maps for OOA
- Constructing Concept Maps
- Verifying Concept Maps
- Pitfalls
- Advantages of using Concept Maps
- The Products from the Concept Mapping Phase
3What are Concept Maps?
- Visual communication tool
- Originates from education and cognitive theory
- Can be used to communicate ideas and
relationships between them - Used by Datasim since 1991 for processing
requirements documents (OMT method)
4What are Concept Maps? (continued)
- They are very suitable for OORD and OOA
5(Meta) Concept map
6Using Concept Maps for OOA
- Object-oriented technology needs intuitive
techniques in the pre-OOA phase - Concept maps are built from concepts and links
- Concepts translate to objects and classes
- Links translate to generalisation, aggregation
and association relationships
7Using Concept Maps for OOA (continued)
- They show immediately what is going wrong with
thought processes
8Definitions
- A concept is a regularity in events or objects
designated by a label - Examples chair, wind, furnace, account
- Links are words used to connect concepts
- Links convey meaning
- Concepts and links form the ingredients for
concept maps
9Types of Concepts
10Types of Links in Concept Maps
- The (static) links between concepts suggest OO
relationships - Examples
- Abstraction links ISA, can be, ...
- Partitioning links part of, consists of, has
- Association links everything else
- These map to well-known relationships in UML
(later)
11Examples
- Abstraction links
- A modem is an I/O device
- A circle is a kind of shape
- An employee is a person
12Examples
- Partitioning links
- A furnace has a motor (and other components)
- A polyline consists of points
- A record is part of a file
13Examples
- Association links
- An issue is an appearance of a journal
- A transaction has to do with an account
- A call is assigned to a specialist
14Tips when creating Links
- Be consistent in your use of words
- Avoid actions (get, update, close, ...)
- Misnamed links
- Missing links
15Constructing Concept Maps
- Input is a requirements documents (documented per
domain) - Create initial concept map based on functional
domains - This is a recursive process
- Stop when functional domains lead to concepts
16Constructing Concept Maps
- The concepts per functional domain in the
requirements document should be assembled - Apply a filtering process to remove non-relevant
concepts - Arrange the remaining concepts in a hierarchy
- Make the links between the concepts
17Concept MapsThe Filtering Process
- The initial list of concepts will contain
information which is not relevant at this time - Remove
- Attributes (will be needed during OOA, however)
- Concepts which are outside the scope of current
problem
18Concept Maps (continued)
- Ambiguous and superfluous concepts
- Synonyms
- Homonyms
- Sources of Silence
- Forward References
- Overspecification
19Steps in creating a Concept Map
- 1. Determine the key (level 0) concept
- 2. List supporting concepts at next level of
generality - 3. Create links between key concept and
supporting concepts - 4. Apply steps 2 and 3 recursively until all
concepts have been exhausted
20Verifying Concept Maps
- Key concept should have one major function
- Check that we do not have messy maps
- Incorrectly formulated links
- Intersecting links
- Missing links and concepts
21Exercise
22DVM Topology and Structure
23Level 1 Concept Map (Functionality)
24Drink Dispensing Subsystem
25Transaction Centre Subsystem
26Interface Subsystem
27Exercise
28Advantages of using Concept Maps
- Powerful communication medium
- Misconceptions signalled at a very early stage
- Problems can be partitioned into concept domains
- Front-end to object modelling phase in OMT
29Advantages of using Concept Maps (continued)
- Datasim uses it as a costing guideline for
fixed-priced projects for customers
30The Products
- A number of correctly formulated concept maps
- One concept map per domain
- The concept maps will be used as input to object
modelling phase
31Summary of Steps in Part I
- Make concept maps for functional domain
recursively - When we arrive at concept level, apply standard
concept mapping techniques
32Exercise
33HHS Concept Map
34 Concept map for Control
35Concept map for Regulator
36Concept map for Delivery
37Packages and their Dependencies (HHS)
38Package and Dependencies (HDS)