Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 25

Chapter Four: System Design Using Object-Oriented Paradigm

4.1 Introduction
In the second phase of the project entitled “Ambo University Online students clearance
System”, it is proposed to verify in brief the aspect of phase one, and it describe the phase
two parts; detail description of chapter four which focused on Object-Oriented design and
system containing class diagram, deployment diagram, state diagram, and relational
persistence modeling diagrams, and chapter five which focuses on System implementation. In
general, we will describe detail of our system design and implementation.

4.2 Review of Phase One


In the last phase, we have tried to describe the following:
 Chapter one: Introduction
In this chapter we have discussed the background of the organization, statement of the
problem, and objectives of the problem, scope and limitations of the, and feasibility of the
project.
 Chapter two: description of the existing system.
In this chapter we have described about current system including its practices, players of the
system, business rules, alternative solutions to the existing system, functional and
nonfunctional requirements user interface hardware/software requirements, and security.
 Chapter three: system analysis
In this chapter we have discussed use case diagram and dynamic model which contain
sequence and activity diagrams of the system.
In phase two (II) of the Ambo University Online students clearance System, the following
points will be discussed.
 Chapter four: system design.
 Chapter five: System implementation.
4.3 Class type Architecture
4.3.1 User Interface Layer: - This layer provides the user to access the system. There are two
categories of interface class-user interface (UI) classes that provide people access to external
system to tour system.

4.3.2 Domain Layer :- This Layer implements the concepts relevant to your business domain
such as student focusing on the data aspects of the business objects, plus behaviours specific
to individual objects.

1
4.3.3 Process Layer: - This process layer implements business logic that involves
collaborating with several domain classes or even other process classes.

4.3.4 Persistence Layer: - This layer encapsulates the capability to store, retrieve, and delete
objects without revealing details of the underlying storage technology.

4.3.5 System Layer: - System classes provide operating system specific functionality for
your application, isolating your software from the operating system (OS) by wrapping OS
specific feature, increasing the portability of your application.

User interfaces Layer

Process Layer

System
(infrastru
cture
Domain Layer/Business plate
forms)

Persistence Layer

Database

Figure 4-1 Class type architecture

2
4.4 Class Modelling
This design level introduces changes to analysis class model based on implementation
technologies. It focuses on the solution domain instead of the problem domain.

The class diagram is the main building block in our project modeling.
It is used both for general conceptual modeling of the systematic of the application
and for detailed modeling translating the models into programming code.

Classes are represented by rectangles with three sections.

These are:-

 The top section is the name of the class.

 The middle section contains the attributes which store information about an item

 The bottom section contains the methods/operation that show what are done on object
or class.

The class Diagram below shows the class of our system, their inter relationship (including
inheritance and association) and the operations and attributes of each classes.

3
Student Registrar Adminstrator
-Stu IDNo : Char -IDNo : char
* take
-FName : string 1 give clearance
-FName : String
-MName : string -MName : string
-LName : string -LName : String
-Age : int -Age : int
-Gender : char -Gender : char
-Department : string -OfficeNo : int
-Faculity : string +Delete()
-ClassYear : int +Approve()
+Register() +Search()
+View Profile() +Update()
+Request() +GenerateReport()

*request 1 check

Offices
-UserIDNo : char
* approved *
-FName : string
-MName : string
-LName : string
-Age : int
-Gender : char
-OfficeName : int
-ContactAddress : int
+Delete()
+Search()
+Update()
+Approve()
Figure Class modelling 4.2

4
4.5 State chart modelling
A state chart diagram shows the behaviour of classes in response to external stimuli. This
diagram models the dynamic flow of control from state to state within a system.

Enter User name


and password Incorrect

Check correct
UnameAnd Displays user Check
Admin
Incorrect password main form clearance

Sub problem occure


correct

Check
User info
Already cleared
No problem
Approved

finshed

finshed

Figure 4-3: State chart modelling

5
4.6 Collaboration Modelling
A collaboration diagram describes interactions among objects of our system in terms of
sequenced messages. Collaboration diagrams represent a combination of information
taken from class, sequence, and use case diagrams describing both the static structure and
dynamic behaviour of a system.

4.6.1 Collaboration Diagram for Log in

Get data()
Appropriate()
Authentication

Changepassword() Send data()


User Login Changepassword Database
Verify()
forgetU&Psword()

Errormessage
Get errormessage()

Figure 4-4: Collaboration Diagram for Log in


4.6.2 Collaboration Diagram for Register in

Get data()
Appropriate data()
Verification

Create() Send data()


User Register Account Database
Verify()
inappropriate data()

Errormessage
Get errormessage()

Figure 4-5: Collaboration Diagram for Register


4.6.3 Collaboration Diagram for View in

6
view the profile() get data()
User View Account Database
Display profile data()

Figure 4-6: Collaboration Diagram for View Profile

4.7 Component Modelling

In this modelling the diagram describes the organization of the physical components in a
system.

Student
Security

Clearance Processing
System Perisitence
/Application Actors

Clearance DB
Administrator

Figure 4.7 Component modelling diagram

4.8 Deployment modelling


UML deployment diagram show physical view of system, taking software into real world by
showing how software gets assigned to hardware and how communicates. The deployment

7
diagram shows how the software components, processes, and objects are deployed into the
physical architecture of the system. It shows the configuration of the hardware units (e.g.
Computers, communication devices, etc.) and how the software components are distributed
across the units.

Ambo University Online clearance System is server client structure architecture, where
clients access services offered by server. The deployment diagram is shown as follows.

8
Client Machine

:Chrome TCP/IP
Web Server Admin

:Opera :XAMPP

:Mozilla

:Torch
PHP

Central Data Base

:MYSQL

Figure 4.8 deployment modelling diagram


Description of the architecture of the system is described as follows.
Clients are responsible for:-

 Provide user interface to the user enabling to get services


 Receiving inputs from user
 Checking range of performance
 Initiating database transactions once all necessary data are collected.

9
Server responsible for:-
 Transaction performance
 Guaranteeing the integrity of data.
 Putting backup of the database

4.9 Persistence modelling


Persistence of our object can be achieved by relational database since it used as machine to
make object persistent. It describes the persistent data aspect of software system. Our system
includes the basic table that handles the data of system implemented using MySQL server.
Mapping class and relational table
Mapping refers how objects and their relationship are stored in relational database.
The mapping of the data to be persisted in our system is given as follows:

Figure 4.9 Relational Database modeling for the system

10
4.10 User interface design
User interface design is the specification of the interaction between the system users and
a system. The process involves input mechanism design, output mechanism design, and
navigation mechanism.

 Navigation mechanism is part of user interface that takes the user form one part
of the system to the other user system. That includes menus or links, buttons, icons,
dialog boxes etc.
 Input design is about designing a form and its controls for GUI system.

 Output design is about designing reports like detailed, summarized, exceptional,


graph, chart, text document report and extra.

In our system the menus that are functioning on the home page are the following:

11
Figure 4-10: User interface design Home page

12
Figure 4-11 User interface design for Admin Login page

13
Figure 4-12 User interface design for Student Login page

14
CHAPTER FIVE: IMPLMENTATION AND CODING
5.1 Introduction
Implementation is one of parts of the project development phase where project inputs are
converted to project outputs. In implementation phase, main task is coding. In
implementation; we tried to put into practice what was proposed in the project
document i.e. transforming the project proposal into the actual project. Then the
developed system is implemented or hosted on the server for the users to get the purpose
or benefit of the system.

5.2 coding
Homepage code

<html>

<head><title>Ambo university student online clearance system</title></head>

<body>

<div id="content">

<div id="container">

<div class="navigation">

<a class="active buttonnav" href="rule/ambourule.pdf" target="_new"><b>AMBO


UNIVERSITY RULE &amp; REGULATION</b></a>||

&nbsp;&nbsp;<font color="white"><b>YOU ARE HERE:</b></font><a class="active


buttonnav" href=""><b>Home</b></a>

<div class="searchindex">

<form action="searchview.php" class="navbar-search form-inline" method="POST">

<input name="searchword" id="mod-search-searchword" maxlength="20" alt="Go"


class="inputbox" type="text" size="40" placeholder="search Keyword...(like
clearance,student,and so on.. )" onblur="if(this.value=='') this.value='search...';"
onfocus="if(this.value=='search...') this.value='';" />

<button type="submit" name="sa" value=""><i class="glyphicon glyphicon-


search"></i>&nbsp;Search</button>

15
</form> </div></div><div class="container"><div class="col-md-2">

<h4><a href="#"> About Clearance </a></h4>

<p>Clearance System is the system which clears the Ambo University students by
ensuring that they return the properties pertaining to the University. </p>

<div class="accordion" id="accordion2">

<div class="accordion-group">

<div id="collapseOne1" class="accordion-body collapse" style="height: 0px;">

<div class="accordion-inner">

<div class="accordion-heading">

<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2"


href="#collapseOne1"><button type="button" class="btn btn-default">Roll Back</button>
</a> <br /> <br /> <br />

</div></div></div>

<div class="accordion-heading">

<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2"


href="#collapseOne1"><button type="button" class="btn btn-default">Read More </button>
</a>

</div></div></div><div class="col-md-s2"><div class="module">

<div class="inner"><div class="h3c"><div class="h3r">

<div class="h3l"><h3 class="module-title"><center><u><h4 id="a"><span


style="background-color:#3B5998;">Upcoming Events</h4></span></u></center></h3>

</div> </div> </div>

</body> </html>

Registrar Admin login page code

<html><body>

16
<div style="margin-left:20.2%; margin-right:10px;width:63%;height:268px;border:1px
solid;padding:0px;border-top-left-radius: 7px;border-top-right-radius: 7px;border-bottom-
left-radius:5px;border-bottom-right-radius:5px;">

<form class="contact_form" action="logincode4.php" method="POST" onSubmit = "return


validate()">

<center>

<table id="table3" class="tborder" background='image/logzin.jpg'>

<tbody><tr class="trow2">

<td class="thead" colspan="2">

<div class="navigation"><div class="left"><strong><center><font


color="white"><h2>Welcome To Ambo University Offices and Admin Login
Page</h2></font></center></strong>

<br /> </div></div></td></tr><tr class="trow2"><td></td><td></td></tr><tr>

<td class="trow2"><b><font color="purble">Username:</font></b>

<font color='red'>:</font></td>

<td class="trow2">

<label>

<input type="text" name="username" placeholder="GETACHEW TEMI" required


""/><span id="username" class="form_hint" >Insert User Name</span></label></td>

</tr>

<tr class="trow2"><td></td><td class="trow2"></td></tr>

<tr>

<td class="trow2"><b><font color="purble">Password:</font></b>

<font color='red'>:</font></td>

<td class="trow2">

17
<label>

<input type="password" name="password" placeholder="*******" required =""/><span


id="password" class="form hint" >Insert Password</span></label></td>

</tr>

<tr><td class="trow2"></td><td class="trow2" id="submit"><a href="forgot


password/Forgot_Password.php" id="submit">Lost your password?</a></td>

</tr><tr class="trow2">

<td class="trow2"></td><td></td></tr>

<tr><td class="trow2"></td><td class="trow2">

<button class="submit" name="login" type="submit"><i class="glyphicon glyphicon-log-in"


></i>&nbsp;LogIn</button>&nbsp;&nbsp;&nbsp;

<button class="submit" type="reset"><i class="glyphicon glyphicon-remove"


></i>&nbsp;Reset</button></td></tr>

</tbody></table></center></form>

</div> </div> </div> </div>

<?php include_once("footer.php"); ?>

</body> </html>

5.3 Final Testing of the system

We will perform following testing techniques for checking functionality of our proposed
system.
5.3.1 Unit testing: - First we will tests each unit at each system. Each modules of
the System can be tested check the working of each classes, methods and attributes of the
System. For immediately maintain at which the problem is occurred.

18
5.3.2 Test Case1-User authentication

Test Case ID=TestCase1

Unit to Test=Authentication of the Login users

Assumptions=Redirects to Required Login.php

Test Data=User name(valid user name, invalid user name, empty)


Password(valid password, invalid password, empty)

Steps to be Executed Data Expected Results

Empty User name and all others Any valid data for the “Enter your user
filled and click login button others filed name”

Enter invalid user name and all User name=Get net “invalid user name”
others and click login button Doesn’t exist in the login
table

Enter valid user name, empty Username=GETACHEW “please enter


password and click login button any valid data for the password”
others fields

Enter user name, invalid password User name=GETACHEW “invalid password”


and click login button password=comp123

Enter user name, password, and User name=GETACHEW Redirected to the user
click login button password=gt123 php
Table 5.1Test Case1 - User Login

19
5.3.3 TestCase2-User registration

Test Case ID=TestCase2

Unit to Test=Registration of the users

Assumption=User Data Successful saved

Test Data=User name(valid user name, invalid user name, empty)


Full name (valid full name, invalid full name, empty)
ID number(valid id number, invalid number, empty)
Class Year(valid class year, invalid class year, empty)
Email(valid email, invalid email, empty)
Department(valid department, invalid department, empty)
Facality(valid facality, invalid facality, empty)

Steps to be Executed Data Expected Results

Empty user name and Any valid data for the others “please enter user name”
all others filled and fields
click register button

Invalid user name and User name=@getnet “please valid data”


click register button

Enter valid user name, User name=getnet “please enter valid data
empty full name, and full name=@melese for full name”
click register button

20
Enter user name, invalid First name=getnet “please enter full name”
full name and click full name=melese
register button any valid data for the others fields

Enter valid user name, First name=getnet “please select valid


full name, empty gender full name=melese gender”
and click register button Email=getnetmelese@gmail

Enter valid user name, First name=getnet “please enter valid


full name, invalid email full name=melese email”
and click register button gender=male
any valid data for the others fields

Enter valid user name, First name=getnet “please enter valid id”
full name, gender, full name=melese
empty id number and gender=male
click register button Card number=123

Enter valid user name, First name=getnet “please select


full name, gender, id full name=melese department”
number, empty gender=male
department and click ID number=R/3379/04
register button Department=1234

Enter valid user name, First name=getnet “please select class


full name, gender, id full name=melese year”
number, empty class gender=male
year and click register ID number=R/3379/04
button Email=getnetmelese90@gmeil.com
any valid data for the others fields
Table 5.2 Test Case2 - User registration

21
5.3.2 Integration Testing: - After we test each unit of the proposed system we will
perform an integration test to check whether the system meets all the functional
requirements. When a number of components are complete; it will test to ensure that
they integrate well with each other, the operating system, and other components.
System testing:-After all of the above testing are checked we will test our system by
other peoples and we will conduct some comments how they get our system.

5.4 Hardware software acquisitions


For the implementation of the system the following hardware devices are used: -
1. Server:-used for hosting the system.
2. Printer:-for printing the documents like generated report, approval letters etc.
3. Cables: - For network connection purpose.
4. Computer: - for running the system which is hosted on the server.
For the implementation the system the following software are used:-
1. Microsoft Windows 8
2. Microsoft SQL Server 2008
3. HTML
4. Text Editor/Notepad++
5. PHP
6. Apache server 2.5
7. Browsers
5.5 User manual preparation
As the system is hosted on the single machine that is server, there is no need of preparing full
manual user manual. Some useful information’s are given to the user when deploying the
system and also little guiding information on the site of the system which guides the user how
to use the system.

5.6 Training
No long term and continues training will be given regarding the system. The team will
provide short training term for the administrator how he/she manage and operate the system.
The teams can explain information regarding the operation of the system for the administrator

22
during deploying the system on server. As the system is user friendly, it is not
complicated for the administrator to manage the system.

5.7 Installation Process


Since we are developing web based project which can be hosted on the server, our system
does not need installing it on a particular machine. So system cannot need installation
process. It can be accessed using the URL (universal resource locator) given to it and
browsing the URL to get the access to the system.

5.8 Start-up strategy


Our system will start after providing the following information. It requires username and
password for administrator to operate or manage the system and other users to access their
own profile and requesting for clearance who is already the members of the system. For
those who are not member of the system, they can view only the home page and they
cannot do anything or they cannot access clearance form. If they want they can register
in the registration page by providing the proper information.

23
Chapter Six: Conclusions and Recommendations
6.1 Conclusions
Ambo University Students Clearance processing system is one of the activities which
are done manually. By considering the problems of the manual system, our team found
solution which reduces the problems of the existing system. With the contribution of
each member of the team, advisor and co-advisor in developing the new system from
starting of data (requirement) analysis to the implementation, we reached to the final
result. During the developing this project, team face some challenges, but by the
cooperation’s of all team members reach to their goal and come with this new project.

Generally, based on the existing system problems the team will find a proposed
solution which solves some problems of the existing system. Like it decreases time
consumption, energy consumption, resource loses during processing the clearance system
in manual system.

6.2 Recommendations
Based on shortage of time and some other condition like resources we do not include
some features to our project. The team wants to recommend those who wants further work on
our project like adding chat room, which facilitates communication between
administrator and the different offices listed in this project and student to ask the
administrator why he/she can’t approved their clearance request and if the students lost
the university property he/she cannot physical contact with the casher person in order to
payment. The other features we recommend to be added to in this project are
clearance processing for administration of students and other worker like cafeteria
workers, and library workers and all employees of the Ambo University.

24
•References
System Analysis and Design for Software Engineers NIIT 2005

Object Oriented Analysis& Design, Understanding System Development with UML 2.0 and
Mike O Docherty 2005

Anigbogu G. (2000). Systematic planning for educational change. California:

Mayfield publishing company.

http://books.google.com.et/books?
id=bLzOaXQJG8oC&printsec=frontcover&dq=software+project+development+references&
hl=en&sa=X&ei=JQjaUJqVGM3GswaO9IGYCg&ved=0CEQQ6AEwAg#v=onepage&q=s
oftware%20project%20development %20references&f=false

25

You might also like