Design Methods
Design Methods
chapter 03 : detailed
study
chapter 03 : detailed study
I. Introduction:
In this chapter, we present two main design methods used in the development of information
systems: MERISE and UML. These two methods allow to model the data, processes, and
interactions of a system in order to guarantee a structured and coherent design.
1. MERISE METHOD
1.2Definition:
MERISE, acronym for Method of Study and Realization of Computer Science for Enterprise
Systems, is a method for modeling an information system using formal models to ensure
good understanding and effective implementation.
It is based on two fundamental principles:
The separation of data and processing.
A hierarchy of design steps, divided into conceptual, logical, and physical levels.
1.3Objectives of the MERISE method:
Model business needs and functional specificities.
Develop a structured, scalable, and reliable system.
Distinguish business aspects from technical constraints.
Facilitate communication between stakeholders (users, analysts, developers)
2. Fundamental Principles of MERISE :
2.1 The three levels of abstraction
1. Conceptual level :
Represents the essence of business requirements without taking technical constraints into
account.
2.Includes :
Conceptual Data Model (CDM): data structure.
The Conceptual Processing Model (CPM): business processes.
2. Logical level :
Translates the conceptual model taking into account organizational and logical rules,
but without going into technical details.
Example: Transformation of entities and relationships into tables and keys.
3. Physical level :
Concerns the practical implementation of logical models on specific technologies (databases,
programming languages, operating systems).
chapter 03 : detailed study
7.UML METHOD
7.1Definition:
UML (Unified Modeling Language) is a standardized method for modelling object-oriented
systems. It is used to graphically represent the different aspects of a system using diagrams.
Main characteristics:
UML is object-cent red (object-oriented).
It offers a global view of the system via several types of diagram.
Advantages:
Ease of communication between teams.
Compatibility with modern technologies.
Allows both static structure and dynamic behavior to be modelled.
7.2DIAGRAMS:
Diagrams are essential tools for graphically representing a system. Here are the main
diagrams used in design methods.
7.2.1 STATIC CONTEXT DIAGRAM:
Definition:
This diagram shows an overview of the system and its environment. It illustrates the main
interactions between the system and external players.
chapter 03 : detailed study
(1,1)
SYSTE
(n)
ADMIN Client
actor
An Actor: This is the idealization of a role played by an external person, a process or a thing
that interacts with a system. It is represented by a little man with his name written
underneath.
Use cases
chapter 03 : detailed study
A use case:
it is a coherent unit representing a functionality visible from the outside. It performs an end-
to-end service, with a trigger, a progress and an end, for the actor who initiates it. A use case
therefore models a service provided by the system, without imposing the mode of realization
of this service. It represents by an ellipse containing the name of the case (a verb in the
infinitive), and optionally, above the name, a stereotype.
Relationships: Three types of relationships are supported by the UML standard and are
graphically represented by particular types of these relationships. Relationships indicate that
the source use case has the same execution conditions as the resulting case. A simple
relationship between an actor and a use is a simple trait
The actors of our project:
Clients
Register on the platform to search for artisans.
Browse artisan profiles, view services, and compare prices.
Contact artisans via the messaging system.
Request services and provide job details.
Rate and review artisans based on service quality.
Artisans
Create and manage professional profiles.
List services offered along with pricing and expertise.
Receive and respond to client inquiries.
Manage service requests and complete tasks.
View and respond to customer reviews.
Administrators
Oversee the platform’s operations and user activities.
Approve or reject artisan registrations to ensure quality.
Monitor and manage user complaints and reports.
Moderate reviews and prevent misuse of the system.
Ensure data security and maintain system performance.
Visitors
Browse the platform without an account.
View basic artisan profiles and services.
Register as a client or artisan to access full functionality.
registration
delete profile
#includ
#includ
Edit service
#include
Identification
Sharing profile
#includ
#includ
View comment
Artisan
contacts client
Contact admin
Contact
admin
registration
Client
delete profile
#includ
#includ
Message for
Artisan
#includ
Browse detail
service #includ
add comment
Customers have the ability to request services, specify job requirements and expectations to
ensure clarity before hiring a craftsman. After completing a service, they can rate and review
chapter 03 : detailed study
craftsmen, providing feedback based on service quality, professionalism, and overall
experience.
By engaging with the platform, customers benefit from a transparent and efficient process to
find trusted professionals, ensuring a satisfying and hassle-free service experience.
visitor Use Case:
Browse homme
page
browse general
service
VISITOR
Contact admin
registration
Before becoming a customer, an internet user has limited access to the platform, allowing
them to browse the home page and explore general services. They can view basic
information about artisans and their services but cannot interact with them, request services,
or leave reviews. To access full functionality, the visitor must register on the platform as a
client.
chapter 03 : detailed study
admin Use Case:
see statistic
#includ
e
admin
management #includ
e
Client #includ
management e
Artisan #includ
management e
management #includ
area e
Identification
#includ
ADMIN e
comment
delete
#include
Administrators play a crucial role in managing the platform and ensuring a smooth and safe
experience for all users. They are responsible for overseeing the platform’s operations,
managing user activities, and ensuring compliance with platform policies.
One of their main responsibilities is approving or rejecting artisan registrations, and
verifying the accuracy of information provided to maintain quality of service and
professionalism. They also monitor and handle user complaints, and ensure that disputes
between customers and artisans are handled fairly.
Administrators actively moderate reviews, prevent fraudulent comments or system abuse,
and ensure that reviews reflect real user experiences. Additionally, they are responsible for
data security and platform maintenance, protecting user information, and improving system
performance for a smooth experience.
By managing these responsibilities efficiently, administrators maintain trust, security, and
functionality within the platform, ensuring a reliable and professional environment for both
customers and artisans.
chapter 03 : detailed study
Sequence diagrams:
Definition:
A sequence diagram is an interaction diagram that details how operations are performed:
what messages are sent and when they are sent. Sequence diagrams are organized according
to the time that passes as we move through the page.
The objects involved in the operation are listed from left to right according to when they take
part in the sequence
activity
Activity1 Activity2
Automatic transition
no
Yes
Activity1 Activity2
Conditional transition
A transition that represents the passage from one activity to another. This transition can be
automatic, which is triggered by the end of an activity, causing the immediate start of
another or conditional, which is triggered only after the satisfaction of the condition also
called guard.
Passage condition
chapter 03 : detailed study
The guards that represent the condition of passage from one activity to another in the
conditional transitions are symbolized by diamonds as in the following figure:
Activity1 Activity2
Sync Bar
Activity3
Synchronization bars are bars represented by a thick line, the role of this bar is to
synchronize the start of several transitions that arrive from different activities, all leading to a
common activity.
Authentication diagram:
Authentication is the procedure which consists, for a computer system, in verifying the
identity of an entity (person, computer, etc.), in order to authorize its access to systems,
networks,
applications, etc. It therefore makes it possible to validate the authenticity of the entity in
question.
Customer and Craftsman Authentication Process:
Authentication is an essential step allowing customers and craftsmen to access their personal
spaces and interact on the platform securely.
Access to the login page
The user (customer or craftsman) clicks on the Login button located on the home page.
Display of the authentication form
The system displays a form asking for a phone number and password Entering
identifiers
The user enters their registered phone number and password.
Verifying information
The system checks the identifiers in the database.
Authentication result
If the information is correct:
The user is redirected to their dashboard:
Customers: Access to craftsmen profiles, messaging, order history, reviews.
Craftsmen: Service management, messaging with customers, monitoring reviews and
evaluations.
If the information is incorrect:
An error message is displayed, asking to try again or reset the password.
chapter 03 : detailed study
Conclusion:
In this chapter, we explored two fundamental design methodologies used in the development
of information systems: MERISE and UML. Both methods provide structured approaches to
modeling systems, but they differ in their focus and application.
Both methodologies have their strengths and are applicable in different contexts. The choice
between MERISE and UML depends on the nature of the system being developed, the
project requirements, and the development environment.
In the next chapter, we will shift our focus to the practical aspects of system development by
introducing key techniques such as the development environment, programming languages,
and database management systems (DBMS). This will provide a foundation for applying the
theoretical concepts discussed in this chapter to real-world scenarios.