IS - CHAPTER 5 - System Design Methodologies
IS - CHAPTER 5 - System Design Methodologies
Ministry Design
of Higher Methodologies
Education By: Mr. Nyambi
Republic Blaise
of Cameroon
IUGET, Bonamoussadi – Douala Peace – Work – Fatherland
Department of Computer Engineering Academic Year 2019/2020
&
INFORMATION SYSTEMS
Level: HND1 Lecturer: Mr. Nyambi Blaise
Options: Software Engineering & Network
Lesson objectives
It is expected that after going through this lesson, you would be able to
Table Of Contents
CHAPTER FIVE – SYSTEM DESIGN METHODOLOGIES .............................................................. 3
1.1 INTRODUCTION ................................................................................................................................. 3
1.2 MERISE METHOD .............................................................................................................................. 3
1.2.1 DATA DICTIONARY ..................................................................................................................... 3
1.2.2 Data Dictionary Typical Attributes ............................................................................................. 3
1.2.3 Examples of Data Dictionaries ............................................................................................... 4
1.2.4 ADVANTAGES OF MERISE................................................................................................... 5
1.2.5 DISADVANTAGES OF THE MERISE METHOD ................................................................. 5
1.2.6 MERISE LEVELS ..................................................................................................................... 6
1.2.6.1 Conceptual Level ................................................................................................................. 6
1.2.6.2 Organizational Level ............................................................................................................ 6
1.2.6.3 Logical Level ........................................................................................................................ 6
1.2.6.4 Physical Level ...................................................................................................................... 6
1.2.7 MERISE – The Data Conceptual Model (DCM) ....................................................................... 6
1.2.7.1 Entities ................................................................................................................................ 7
1.2.7.2 Properties............................................................................................................................ 7
1.2.7.4 Identifier.............................................................................................................................. 8
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 1 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 2 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
Entity or form name or ID. The group this field belongs to.
Field name, such as RDBMS field name
Displayed field title. May default to field name if blank.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 3 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 4 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 5 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
Who?
Where?
When?
The MERISE methodology used is:
The Data Organizational Model (DOM).
The Treatment Organizational Model of Treatment (TOM).
development. The basic elements of a conceptual data model are: Properties, Entities and
Relationships. Let’s take an example of a system that has to do with an online web portal.
1.2.7.1 Entities
The entity is defined as a management object considered of interest to represent the
activity model (e.g user entity) and each entity carries one or more simple properties.
1.2.7.2 Properties
The properties describe the entities.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 7 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
1.2.7.4 Identifier
One of these properties has a specific role, it is also known as the key identifier. The
identifier is used to find a unique way all the properties involved in the entity. Identifiers are
also called keys and most used are primary and foreign keys.
The association is enriched by the notion of cardinality, cardinality also sometimes refers to
the relationships between tables. Cardinality between tables can be one-to-one, many-to-
one or many-to-many. it indicates the minimum and maximum number of times any
occurrence of an entity can participate in an association, and we can have:
a) Minimum Cardinality
- 0 if an occurrence of the entity may exist while not interfering in any occurrence of the
association
- 1 an occurrence of the entity can exist only if it occurs in at least one occurrence of the
association
- N: Rare cases to avoid
b) Maximum cardinality
- 1 if an occurrence of the entity cannot be involved in more than one occurrence of the
association.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 8 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
- N whether an instance of the entity cannot be involved in more than one occurrence of the
association
Examples:
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 9 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 10 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
The diagram below demonstrates the ER-Diagram of IUGET whereby all the entities are being
displayed alongside their cardinalities.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 11 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
The LDM provides technical vocabulary again that it is important to understand well.
A table has only one primary key, but can have multiple foreign keys;
The foreign key can be made;
The column of the primary key cannot be empty;
The foreign key can also be primary key in the table.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 12 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 13 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
1.3 UML
UML is a general purpose modeling language in the field of software engineering. The
basic level provides a set of graphic notation techniques to create visual model of object
oriented software- intensive system. Higher level represents cover processing design oriented
view of a system. It was developed by Grady BOOCH, Ivar JACOBSON and James
RUMBAUCH at rational software in 1990s. It was adopted by the Object Management Group
(OMG) in 1997, and has been managed by this organization ever since. It is an Object-Oriented
design methodology.
UML is graphic language; it is therefore based on the utilization of diagrams
(13 in total). These diagrams are organized in view. A view being a means to describe a system
following data angle, at each view corresponds the diagram UML. UML modelises a system
according to three axes or view which are: the functional view, the dynamic view and the
static view. We can observe on the diagram below the modeling of those three axes (the
diagrams in bracket are those who will keep our attention in each view)
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 14 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
Today UML is the standard of the widely used object oriented modeling in computer
engineering. There are 14 diagram types which can be divided into two main categories:
structural diagram and behavioral diagram as show on the figure below
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 15 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
UML can be described as the successor of object-oriented (OO) analysis and design.
An object contains both data and methods that control the data. The data represents the state
of the object. A class describes an object and they also form a hierarchy to model the real-
world system. The hierarchy is represented as inheritance and the classes can also be
associated in different ways as per the requirement.
Objects are the real-world entities that exist around us and the basic concepts such as
abstraction, encapsulation, inheritance, and polymorphism all can be represented using UML.
UML is powerful enough to represent all the concepts that exist in object-oriented analysis
and design. UML diagrams are representation of object-oriented concepts only. Thus, before
learning UML, it becomes important to understand OO concept in detail.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 16 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 17 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 18 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
Include = reuse of functionality (i.e. the included functionality is used or could be used
elsewhere in the system). Include therefore denotes a dependency on another use case.
Extends = adding (not reusing) functionality and also any optional functionality. Extends
therefore can denote one of two things:
1. adding new features/capabilities to a use case (optional or not)
2. any optional use cases (existing or not).
Summary:
Include = reuse of functionality
Extends = new and/or optional functionality
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 19 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
From the above use case, view items extends add items to cart, but “viewing an item is
optional after adding it to cart, hence we extend”.
Checkout includes Make purchase, this is because in order to make a purchase, you MUST
checkout, hence include is compulsory and make purchase is dependent on checkout.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 20 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
As the name suggests, sequence diagrams describe the sequence of messages and interactions
that happen between actors and objects. Actors or objects can be active only when needed or
when another object wants to communicate with them. All communication is represented in a
chronological manner. To get a better idea, check the example of a UML sequence diagram
below.
In a nutshell, class diagrams contain classes, alongside with their attributes (also referred to
as data fields) and their behaviors (also referred to as member functions). More specifically,
each class has 3 fields: the class name at the top, the class attributes right below the name, the
class operations/behaviors at the bottom. The relation between different classes (represented
by a connecting line), makes up a class diagram.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 21 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
The example above shows a basic class diagram. The ‘Checkings Account’ class and the
‘Savings Account’ class both inherit from the more general class, ‘Account’. The inheritance
is shown using the blank-headed arrow. The other class in the diagram is the ‘Client’ class.
The diagram is quite self-explanatory and it clearly shows the different classes and how they
are interrelated.
Object UML diagrams help software developers check whether the generic abstract structure
that they have created (class diagram), represents a viable structure when put into practice,
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 22 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
i.e: when the objects of a class are instantiated. Some developers see it as a secondary level of
accuracy checking.
The object UML diagram above is based on the class diagram we showed earlier. It depicts
instances (objects) of the classes we created earlier. To be more precise, the general class
‘Client’, now has an actual client called “James”. James is an instance of the more generic
class and it has the same attributes, however with given values. The same thing has been done
with the Checkings and Savings account. They are both objects of their respective classes.
Do you notice any mistake? Take a look at the class diagram example. You can notice that
the attributes ‘account_number’ and ‘routing_number’ are different for the Checkings and
Savings account. As a result, it makes more sense to put those attributes in their respective
classes, rather than in the more generic class ‘Account’.
Additionally, we notice that we do not use the attributes ‘wire_routing_number’ and ‘bic’.
This is an indicator that something could be wrong in the design of our system. Perhaps we
don’t require them in this specific example, thus allowing us to keep the old structure.
However, there is a good chance that there is a design flaw which must be resolved
immediately.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 23 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 24 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
The nodes host the artifacts. The database schema runs on the database server and the
application client runs on the application server.
As the name suggests, the deployment diagram shows exactly where each software
component is deployed.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 25 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
SADT has been developed and field-tested during the period of 1969 to 1973 by Douglas T.
Ross and SofTech, Inc. The methodology was used in the MIT Automatic Programming Tool
(APT) project. It received extensive use starting in 1973 by the US Air Force Integrated
Computer Aided Manufacturing program.
According to Levitt (2000) SADT is "part of a series of structured methods, that represent a
collection of analysis, design, and programming techniques that were developed in response to
the problems facing the software world from the 1960s to the 1980s. In this timeframe most
commercial programming was done in COBOL and Fortran, then C and BASIC. There was
little guidance on “good” design and programming techniques, and there were no standard
techniques for documenting requirements and designs. Systems were getting larger and more
complex, and the information system development became harder and harder to do so. As a
way to help manage large and complex software.
SADT was among a series of similar structured methods, which had emerged since the 1960
such as:
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 26 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
As a method of functional analysis and the most known management of the projects, SADT
presents strong points and weak points.
OMT is a fast and intuitive approach for OMT’s primary weakness is its lack of
identifying and modeling all objects that make an explicit mechanism to capture timing
up the system. constraints and real-time issues.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 27 | 30
Chapter 5: System Design Methodologies By: Mr. Nyambi Blaise
The systems designed using OMT are closer to OMT lacks a comprehensive
real world as the real world functioning is architecture as it doesn’t take into
directly mapped into the system. Thus making consideration the testing phase of the
it easier to produce and understand design. software development cycle.
The dynamic behavior of objects within a The syntax of the models is not well
system can be described using OMT dynamic defined. Sharing of model components
Model. among different models or versions of a
model is not clear.
Hint: Master all the 14 UML Diagrams and when and how to use them. Also master how to draw
them.
C H A P T E R 5 – S y s t e m M e t h o d o l o g i e s P a g e 30 | 30