1 / 16100%
UML (UNIFIED MODELING LANGUAGE) BASED
MODELING WITH USER CENTERED DESIGN (UCD)
OBJECT ORIENTED TECHNIQUE STRATEGY
ARIZONA STATE UNIVERSITY
CSE 205 - OBJECT-ORIENTED PROGRAMMING AND DATA
STRUCTURES
SPRING 2024
Abstract:
The implementation of educational administration in schools that still use a manual
system or the use of file elements takes a relatively long time as the administration is not
organized. Meanwhile, educational administration activities are routine activities that aim to
expedite the education process in schools. For this reason, a solution is needed in solving this
problem, namely by designing an educational administration system modeling using UML
(Unified Modeling Language) with a User Center Design (UCD) orientation technique
strategy, namely modeling oriented to system objects, including the design of the system work
description level with use case diagrams, separating objects and their relationships with each
other using class diagrams. The division of activities in each use case designed with activity
diagrams, connecting each work in use cases using sequence diagrams, how the system
works in its flow using state diagrams, and the form of description of system implementation
needs and devices that will be applied with deployment diagrams. The test will directly use
the prototype of the system built and integrated with the actual data provided, such as data
on students, teachers, subjects, schedules, and grades.
Keywords: Education administration information system, UML, Modeling, Diagram. User
Center Design (UCD)
1. Background of the Problem
The development of knowledge and technology today has affected various aspects of
human life, both in companies, government offices, private and educational institutions. With
this developing Information Technology, it shows an opportunity as well as a challenge in
meeting the needs, desires and demands of information users, especially in organizations,
companies and educational institutions.
In order for a company or organization or educational institution to survive and
compete at the present time, it is required to follow the development of Information
Technology and at the same time utilize the Information Technology, for example for data
processing functions that will become a source of information for organizations or companies
and educational institutions. Information systems that are often used by organizations or
agencies today are network-based information systems. The Local Area Network (LAN)
concept is an option that is often utilized by agencies or companies, because it allows
unifying physically separated systems.
In a school, of course, it cannot be separated from the Information System that exists
in the school, one of which is the Education Administration Information System. The
Education Administration Information System at the present time is still conventional in
nature where the management and services of education administration are still carried out
manually. Along with the increasing number of students, services in the administrative field
will also increase. If this is not prepared and carried out with a good system, then the
management and quality of services will not be able to keep up with developments in the
years to come.
To design and analyze a software before coding, a method is needed to do so. The
Unified Modeling Language (UML) has now become a standard in object modeling and is
widely used. This is because UML focuses on defining static structures and dynamic
information system models, besides that in the design and analysis using UML, users
participate in designing the system with the User Centered Design (UCD) object-oriented
technique strategy.
Using UML we can model all kinds of software applications, which can run on any
hardware, operating system and network. Because UML is designed based on object-oriented
concepts, object-oriented programming languages such as C++, Java, C# or Visual Basic.net
need to be used. To overcome the existing limitations, it is necessary to build a system that
can help manage and service education administration, so that the speed and ease of
information can be fulfilled.
2. Literature Review
2.1 Definition of Information System
It is known that information is very important for management in making decisions.
The question is where the information can be obtained? Information can be obtained from the
Information System (Information System).Information system is a set of organizational
procedures that exist when implemented to provide information for decision making and to
control the organization. (Abdul Kadir, Analysis and Design of Information Systems, 1989)
2.2 Definition of Software Engineering
Software Engineering is an engineering discipline that concentrates on all aspects of
software production and also adopts a systematic and organized approach to its work and
uses appropriate tools and techniques that are determined based on the problem to be solved,
development constraints and available resources.(www.petra.ac.id, software introduction,
2002).
2.2.1 Software Engineering Process
The process in software design is a set of activities that have the purpose of
developing or evolving the software. Generic activities in all software processes are:
1. Specifications
That is what the software should do and its development overhead/constraints
2. Development
It is the process of producing a software system
3. Validation
That is testing the software against the wishes of its users.
4. Evolution
That is, software changes based on changes in wishes.
2.2.2 Software Engineering Methods
It is a structured approach to Software (OT) development including system models,
notations, design and processing instructions,
a. Description Model, i.e. description of modeling with graphs.
b. Rules, which are the constraints used in the system model.
c. Recommendation, i.e. advice a good form of design.
d. Process instructions, i.e. Activities to be followed.
2.3 Modeling (Model)
The definition of model itself has various meanings according to its world, ranging
from everyday sense to technical sense. An example of everyday sense, is an artist is a
(photo) model who gets a role to showcase clothing models by famous designers. A
mathematical model is only one type of model in the technical sense. In many engineering
applications, a model is defined as a simplified representation of a system. This
representation also varies from physical, pictorial, verbal, schematic and symbolic where:
1. Physical, by creating a scaleddown version of the system being studied (airplane model,
train model),
2. Pictorial, which is a representation with images to depict the contours of the earth's
surface such as topographic maps and globes.
3. Verbal, which is the representation of a system into verbal sentences that describe size,
shape and characteristics.
4. Schematic, which is a representation in the form of a figurative scheme, for example an
electrical circuit model, a Bohr Atomic model and others.
5. Symbolic, namely representation into mathematical symbols where the variable results of
process or system characterization into formulation variables using mathematical
symbols.
So Modeling is a process in the abstract representation of a model. The modeling
process displays a description of a process from several specific perspectives. The software
modeling process is an interrelated (coherent) activity to specify, design, implement and test
a system. System software software system.
The modeling cycle or relationship with modeling steps in developing a system is as
follows:
1. System modeling engineering
It involves requirement gathering at the system level with some analysis and top design.
2. Analysis
That is, the Software requirements, the requirements gathering process is focused,
specifically on the Software. To understand the nature of the program being built, the analyst
must understand the required information domain, behavior, performance, and interfaces.
System and Software requirements are documented and reviewed with users.
3. Design
Have a focus on 4 things, namely:
a. Database design.
b. Software Architecture.
c. Interface architecture.
d. Procedural algorithm.
The design process translates requirements into a Software representation before coding
begins.
4. Coding
It is translating the design into programming languages that the machine will understand.
5. Testing
Focus on the following:
a. Internal logic that ensures that all statements have been tested.
b. External logic and functionality, which directs the test to find errors and ensure that the
inputs provided will produce the output as desired and required by the user.
2.4 Introduction to Object Oriented
Object Oriented focuses on objects where the system will be built will be divided into
several objects in it. (Rina Noviana, Object-oriented software requirements and
specifications, 2003).
Within Object Oriented Design (OOD) and Object Oriented Analysis (OOA) there
will be functions:
1. Object
Objects are "things", physical or conceptual, that we can encounter around us.
Hardware, software, documents, people, and even concepts are all examples of objects. For
the sake of modeling his company, a chief executive will see employees, buildings, divisions,
documents, and profits as objects. A mechanical engineer would see tires, doors, engines, top
speed, and amount of fuel as objects. And, a software engineer would see stacks, queues,
windows, and check boxes as objects.
An object has a state and a behavior. The state of an object is the condition of th e
o b j e c t or the set of states that describe the object. For example, a light bulb is an object,
and one of the states of being on or off is the state of the light bulb object. One of the states of
a clock object is the current time.
State is expressed by the value of the object's attribute. Attributes are internal values
of an object that reflect, among other things, the object's characteristics, current state,
connections with other objects, and identity. State changes are reflected by the object's
behavior.
An object's behavior defines how an object acts and reacts. Behavior is defined by the
set of all or some operations that can be performed on the object itself. The behavior of an
object is reflected by its interfaces, services, and methods. Interface is the door to access the
object's service. A service is a function that an object can perform. Method is the internal
mechanism of the object that reflects the behavior of the object. For example, if a printer is a
behavior or service, it prints whatever the printer prints that he receives.
2. Class
A class is a general definition (pattern, template or blueprint) for a set of similar
objects. Classes specify the behaviors and attributes of those objects. Classes are an
abstraction of real-world entities. Objects are "instances" of a class. For example, the
attributes for an animal class are four-legged and has a tail. Its behaviors are sleeping and
eating. Possible instances of this animal class are cats, elephants, and horses.
3. Association and Aggregation
Association is a relationship between objects that need each other. Meanwhile,
aggregation is a special form of association that describes all parts of an object as part of
another object. For example, a date object can be composed of a day object, a month object,
and a year object.
One reason why object-oriented is beneficial for programmers is because
programmers can design programs in the form of objects and relationships between these
objects to be modeled in real systems. Another advantage is that the software development
process can be done faster because the software is built from standard objects, can use
existing models, and can create models quickly through methodology. High quality of
software can be achieved due to tested components. Easier maintenance because code fixes
are only needed in one place (instead of being sorted from scratch). It is easy to build large
systems because subsystems can be created and tested separately. Changing an existing
system does not require rebuilding the entire system.
So there are 3 basic concepts in Object Oeriented Design (OOD) and Object Oriented
Analysis (OOA), namely:
1. Encapsulation
In the private form, attributes and methods are encapsulated in the class so that they can
be accessed by the access client or can only be accessed by members of the class.
In its Public form, the method defines an interface as a means of accessing the class
from its client. It can be accessed by any object.
Its Protected counterpart can only be accessed by its derived object-class.
2. Inheritance
Object classes can inherit attributes and services from other object classes,
Inheritance states the generalization of a class.
Advantages of Inheritance:
a. It is an abstraction mechanism that can be used to classify entities.
b. It is a re-use mechanism at the design and programming stages.
c. The Inheritance Graph is a form of description of the organization of a domain and
system.
3. Polymorphism
The ability of different objects to execute appropriate methods to respond to the same
message. The selection of the appropriate method depends on the class used to create the
object.
2.5 Unified Modeling Language (UML)
UML (Unified Modeling Language) is a language based on graphs / images to
visualize, specify, build, and documentation of an OO
(Object- Oriented) based software development system. (Sri Dharwiyanti, Introduction to
Unified Modeling Language, 2003). UML itself also provides a standard for writing a system
blue print, which includes the concept of business processes, writing classes in a specific
program language, database schema, and the components needed in the software system.
2.5.1 UML Basic Building
To understand UML, we need a conceptual model of this "language". The UML
methodology uses 3 basic building blocks to describe the system/software being developed,
namely:
1. Things
2. Relationship
3. Diagrams
Each basic building can be applied throughout the system development stage. The
three building types can be used in a complementary manner to each other (More in-depth
examples will be explained in the following sections).
In general, UML is applied in the development of object-oriented systems/software
because the UML methodology generally has the following advantages advantages as:
1. Uniformity
With the UML methodology, developers only need to use one methodology from
analysis to design. This cannot be done in a structured development methodology. With the
recent development towards GUI (Graphical User Interface) applications, UML also allows
us to design the user interface component in an integrated manner along with the software
design as well as t h e database design.
2. Understandability
With this methodology, the code generated can be organized into classes that relate to
the real problem so that it is easier for anyone to understand.
3. Stability
The resulting program code is relatively stable over time because it is very close to
the real problems in the field.
4. Reusability
With object-oriented methodology, code reuse is possible, which in turn greatly
speeds up software development time.
2.5.2 Diagram Concepts in Modeling Systems
Every complex system should be viewed from different angles so that we can get a
comprehensive understanding. For this effort, UML provides 8 types of diagrams that can be
grouped based on their properties (static and dynamic). The 8 types of diagrams in UML are:
1. Use Case Diagram
Use case diagrams describe the expected functionality of a system. It emphasizes "what" the
system does, and not "how". A use case represents an interaction between an actor and the
system.
2. Class Diagram
A class diagram is a specification that if instantiated will produce an object and is the core of
object-oriented development and design. Class describe state
(attributes/properties) of a system, while offering services to manipulate that state
(methods/functions).
Class diagrams describe the structure and description of classes, packages and
objects along with their relationships with each other such as containment, inheritance,
association, and others.
3. Statechart Diagram
Statechart diagrams describe the transitions and state changes (from one state to
another) of an object in the system as a result of stimuli received. In general, statechart
diagrams
describes a particular class (one class can have more than one statechart diagram).
4. Activity Diagram
Activity diagrams are dynamic. They are a special type of state diagram that shows the flow
from one activity to another in a system.
Activity diagrams are specialized state diagrams, where most states are actions and
most transitions are triggered by the completion of the previous state (internal processing).
Therefore, activity diagrams do not describe the internal behavior of a system (and the
interactions between subsystems) in an exact way, but rather describe the processes and paths
of activity from the top level in general.
5. Sequence Diagram
Sequence diagrams are dynamic in nature. This sequence diagram is an interaction diagram
that emphasizes the delivery of messages at a certain time.
Sequence diagrams are commonly used to describe scenarios or series of steps
performed in response to an event to produce a certain output. It starts with what triggers the
activity, what processes and changes occur internally and what output is produced.
6. Collaboration Diagram Collaboration
Diagram is dynamic in nature. Collaboration diagrams are interaction diagrams that
emphasize the structural organization of objects that receive and send messages.
7. Component Diagram
Component diagrams are static. It shows the organization and dependencies of pre-existing
components. Diagram It is related to the class diagram where components are typically
mapped into one or more classes, interfaces, and collaborations.
8. Deployment Diagram
Deployment Diagrams are static. It shows the configuration when the application is running.
This diagram contains the nodes and the components in it. This diagram is very useful when
our application apply as applications that run on machines (distributed computing).
Various types of diagrams are made above because :
1) Any complex system is always best approached through a set of small viewpoints that are
almost independent of each other. A single viewpoint is always insufficient to see the
contents of a large and complex item.
2) These different diagrams can represent different levels in the engineering process.
3) These diagrams we r e created to make the model closer to reality.
These diagrams coupled with documentation capabilities are the main artifacts of UML.
Data-flow diagrams and other types of diagrams that are not included in UML do not belong
to the object-oriented paradigm, Activity diagrams and collaboration diagrams contained in
UML replace data-flow diagrams. Activity diagrams are also very useful for creating
workflows.
2.5.3 Purpose of Unified Modeling Language (UML)
The objectives of UML include:
1) Provides a ready-to-use, expressive visual modeling language for developing and
exchanging models with ease and common understanding.
2) Provides a modeling language that is independent of various programming languages and
engineering processes.
3) Bringing together the best practices found in modeling.
2.5.4 Tools that support the Unified Modeling Language (UML)
Currently, there are many design tools that support UML, both commercial and
opensource tools. Some of them are:
1) Rational Rose
2) Together
3) Object Domain
4) Jvision
5) Objecteering
6) MagicDraw
7) Visual Object Modeller
8) Visual Paradigm For UML
2.6 Object Oriented Strategy (User Centered Design)
UCD (User Centered Design) is a design philosophy that puts users at the center of
the system development process.
Currently, the UCD approach is supported by various techniques, methods, tools,
procedures and processes that help design more interactive systems user-centered. (Hartanto
Rudi, User-centered design principles, 2007).
User Centered Design Life Cycle:
1. Focus on users (User requirements).
2. Design(Prototyping).
3. From the beginning it goes on to user testing (Usability Measurement).
4. Iterative design (Model). Rules in User Centered Design (UCD):
1. Perspective
The user is always right. If there is a problem in using the system, then the problem is
with the system and not the user.
2. Installation
Users have the right to be able to install or uninstall system software and hardware
easily without any negative consequences.
3. Fulfillment
Users have the right to have the system work exactly as promised.
4. Instructions
Users have the right to be able to use easy instructions (user manuals, on-line or
contextual help, error messages) to understand and use the system to achieve the desired
goals efficiently and avoid problems.
5. Control
Users have the right to be able to control the system and be able to make the system
respond correctly to the requests given.
6. Feedback
Users have a right to the system to provide clear, understandable, and accurate
information about the tasks performed and the progress made.
7. Related
Users have the right to clear information about all the prerequisites the system needs
to achieve the best results.
8. Scope
Users have the right to know the limitations of the system's capabilities.
9. Assistance
Users have the right to be able to communicate with the technology provider and
receive helpful thoughts and responses if needed.
10. Usability
Users should be able to become masters of software and hardware technology and not
the other way around. The product should be naturally usable and intuitive.
2.6.1 Prototyping
Prototypes give both the creator and potential users an idea of how the system
functions in its complete form. The process of producing a prototype is called Prototyping.
The types of prototypes are as follows
a. Prototype type I, steps:
1. Identifying user needs
2. Developing a prototype
3. Determine whether the prototype is acceptable
4. Using prototypes.
b. Prototype type II, steps:
1. Identifying user needs
2. Developing a prototype
3. Determine whether the prototype is acceptable
4. Coding the operational system
5. Testing the operational system
6. Determine if the operational system is acceptable
7. Using an operational system.
3. Analysis and Design
3.1 System Analysis
Before designing and developing a new system, first analyze the current system. The
analysis stage is a very important stage because errors at the analysis stage will result in
errors at the next stage.
The first thing to do in this initial step is to find the weaknesses and shortcomings of
the system that was running before. This is very important to do to measure a system has
achieved its real goals or not. That's why this analysis stage is very important to overcome
these problems and shortcomings.
3.1.1 Ongoing System Analysis
After observing and analyzing the current system, various problems and obstacles
were found. Some of these problems include the not yet optimal application of information
technology systems in the process of processing educational administration data at Taman
Siswa Private High School, Kisaran. Some of the problems faced include:
1. Searching for student data was slow due to the need to browse through the files.
2. Slow processing of grades in making student report cards
3. Time-consuming lesson schedule preparation.
4. Lack of data integrity and data security.
5. Frequent errors in recording data.
To overcome the above problems, it is necessary to follow up by improving the
current education administration data processing system. In this new system, it is hoped that
all the problems faced can be resolved. Some of the benefits that will be achieved are mainly
in terms of:
1. Efficiency in the use of time on student data collection.
2. Speed and accuracy in processing student grades
3. A standardized format created for easy preparation of student lesson schedules.
4. Ease of searching and accessing data.
5. Can be accessed on multiple computer units simultaneously.
6. Security in data storage and documents.
3.1.2 System Modeling Process
Based on the limitations and constraints that occur in the old system, the author will
propose a system that can provide convenience in the process of processing this education
administration data so that it can present and provide the information and reports needed so
as to save time, costs and energy.
This new system makes it easier for schools to process administrative data that occurs
every day, where every data entered will be entered through a computer and will be stored in
a database file, so that all data can be used and accessed at any time if needed, especially in
making reports. Thus, there is no need to keep the administrative archive and no need to
check or search for the archive when needed such as making reports and for various other
purposes.
All the information that will be provided as listed above, comes from several
processes that are integrated with the concept of modeling with the Unified Modeling
Language (UML). Each process carried out to obtain data that will be processed into
information will be modeled in the use case diagram. Each activity in each process is
described in a sequence diagram, activity diagram, state diagram, class diagram and
deployment diagram.
The interface will be divided into 2 parts, where the first part will be used by the
school to carry out the administrative process. The second interface is used by users who are
given the rights and authority to interact in the system, here will be appointed teachers or staff
who can be trusted to run the system.
3.1.3 Needs Analysis
The modeling of this education administration information system is divided into 3
parts, namely:
1. Layer Administration
In the form of a page that can only be accessed by school-appointed administrators in
controlling the system.
2. Information Layer
In the form of a page that can be used by ordinary users, on this side are students who
can see the information they need.
3. Database Storage
In the form of a database that contains data storage files.
In this education administration system, each user (Administrator, teacher/staff and
teacher) will have a user name and password, so that each student user can only see the
information presented, including teachers and staff who are ordinary users. User names and
passwords for ordinary users (students, teachers and staff) are only valid if used in this
system and designated school administrators can have the authority to make changes or
management to the data of this education administration information system.
Conclusion:
2.1.9 Deployment Diagram Design
In this deployment diagram we can see supporting physical devices that will affect the
actual work of the system. In the education administration information system, it will be built
with a multiuser system, with the concept of a client server network.
4. Implementation
To be able to use this education administration information system, an interface is needed
that will connect the user (User) with the system. The interface consists of forms.
1. Types of forms
There are several types of forms contained in the Education Administration
Information System at Taman Siswa Private High School in Kisaran, namely:
1. Main Form / Login Form
2. System Access Form
3. Data Input Form
4. Report Form
2. Form Layout
There are several layouts displayed and generated from this system prototype, among others:
1. Main Form Display (Login)
2. System Access Form (Menu)
3. Student Data Input Form
4. Teacher Data Input Form
5. Subject Data Input Form
6. Student Value Data Input Form
7. Class Data Input Form
8. Lesson Schedule Input Form
9. All Student Data Report Form
10. Teacher Data Report Form
11. Lesson Schedule Report Form
12. Student Grade Data Report Form
From the results of the research that the authors conducted, it can be concluded that:
1. Modeling using UML (Unified Modeling Language) with a User Centered Design
strategy is modeling that can see an object from various points of view and modeling that
still pays attention to users as a system development process. The modeling point of view
is described using diagrams.
2. The Education Administration Information System at this school is a system that will
provide information to the school's internal administration, curriculum, teachers in
providing educational services to their students.
3. The data processed and generated by the system can then be used to improve the service
and quality of education in the future as it utilizes the information technology that is very
developed today.
4. With this system, it is hoped that the enthusiasm of every individual in the school area
will grow so that what they use can continue to develop for the progress and quality of
the resources in the school in managing the performance of the education system.
Students also viewed