Wcu Online Condominium House MGMT System
Wcu Online Condominium House MGMT System
2. ANDUALEM LEGESA………………………004687
3. NURADIN HUSEN……………………………00899
Approved by
Fikirab Lopiso: _____________ __________
(Advisor) Signature Date
i|Page
Declaration
This is to confirm that the project report entitled WCU Condominium House Management
System submitted to Wachemo University, college of computing and informatics department of
Software Engineering in partial fulfillment of the requirement for the award of the degree of
Bachelor of Science in Software Engineering is an original work carried out by Senbato
Megersa, Andualem Legesa, and Nuradin Husen. The matter embodied in this project is reliable
and is genuine work done by the group and has not been submitted whether to this University or
any other University/Institute for the fulfillment of the requirement of any study.
Declared by:
Confirmed by advisor:
Name: ___________________
Signature: ___________________
Date: ___________________
ii | P a g e
Acknowledgement
First of all, we would like to thank our God, who gives us love, patience, healthy, wisdom
and ability to walk through all the problems and obstacles during the period of our study. Then
we would like to thank our advisor, instructor Fikerab Lopiso for her constructive opinion and
willingness to participate in each part of our project and her effective direction, assistance and
guidance for the accomplishing of this project. who gave us the required information about the
office. Finally we would like to express love, thanks, appreciation, and respect to our families
and friend. Also we would like to thank the teaching staffs of Software Engineering who have
contributed wholly to the success of this project.
iii | P a g e
Contents Page
Approval of advisors and examiners ...........................................................................................................i
Declaration...................................................................................................................................................ii
Acknowledgement......................................................................................................................................iii
List of Tables..............................................................................................................................................vii
List of Figures...........................................................................................................................................viii
CHAPTER ONE.......................................................................................................................................xiv
1. INTRODUCTION.................................................................................................................................xiv
1.1. BACKGROUND.............................................................................................................................xv
1.2 STATEMENT OF THE PROBLEM...............................................................................................xvi
1.3 Purpose of the project......................................................................................................................xvi
1.4. Team composition..........................................................................................................................xvi
1.5 OBJECTIVES OF THE PROJECT................................................................................................xvii
1.5.1. General Objective.......................................................................................................xvii
1.5.2 Specific objectives.......................................................................................................xvii
1.5 Feasibility Study.............................................................................................................................xvii
1.5.1 Economic Feasibility..................................................................................................................xviii
1.5.2 Technical Feasibility.....................................................................................................................xix
1.5.3 Operational feasibility..................................................................................................................xix
1.6. Scope and Limitation of the project.....................................................................................................xx
1.6.1 Scope of the project.......................................................................................................................xx
1.6.2 Limitation of the project................................................................................................................xx
1.7 Significance of the project...............................................................................................................xxi
1.9. Methodology..................................................................................................................................xxi
1.9.1 Requirements gathering techniques.............................................................................xxii
1.9.2 Development tools.......................................................................................................................xxii
1.9.2.1 Hardware Tools........................................................................................................xxii
1.9.2.2 Software Tools.........................................................................................................xxii
1.9.3Testing Procedure........................................................................................................................xxiii
1.9.3.1 Unit testing..............................................................................................................xxiii
iv | P a g e
1.9.3.2 Integration testing....................................................................................................xxiii
1.10 Overview of Project Phases.........................................................................................................xxiv
1.11 Task and schedule.........................................................................................................................xxv
1.11.1 Time Plan...................................................................................................................xxv
1.11.2 Budget plan...............................................................................................................................xxvi
Chapter two............................................................................................................................................xxvii
2. Description of the existing system......................................................................................................xxvii
2.1. Major function of the current system..........................................................................................xxviii
2.2. Users of the current system.........................................................................................................xxviii
2.3. Drawback of the current system....................................................................................................xxix
2.4. Business rule of the current system...............................................................................................xxix
2.5. Alternative solutions......................................................................................................................xxx
Chapter three............................................................................................................................................xxx
Proposed system.......................................................................................................................................xxx
3.1. Functional requirement..................................................................................................................xxx
3.2. Non-functional requirement.........................................................................................................xxxii
3.3. System model..............................................................................................................................xxxii
3.3.1. Scenario...................................................................................................................................xxxiii
3.3.2. Use case model.........................................................................................................................xxxv
3.3.3. Use case description...............................................................................................................xxxviii
3.4. Object Model...................................................................................................................................liv
3.4.1. Data dictionary.............................................................................................................................liv
3.4.2. Class diagram................................................................................................................................lv
3.5. Dynamic model..............................................................................................................lvii
3.5.1. Sequence diagram........................................................................................................................lvii
3.5.2. Activity diagram.........................................................................................................................lxiii
3.5.3. State diagram............................................................................................................................lxxiv
\...............................................................................................................................................................lxxvi
CHAPTER FOUR.................................................................................................................................lxxvii
SYSTEM DESIGN................................................................................................................................lxxvii
4.1. Purpose.......................................................................................................................................lxxvii
v|Page
4.2. Design goal.................................................................................................................................lxxvii
4.2.1 Performance Criteria:...............................................................................................lxxvii
4.2.2. Dependability Criteria............................................................................................lxxviii
4.2.3. Maintenance Criteria..............................................................................................lxxviii
4.2.4. End-user criteria.....................................................................................................lxxviii
4.2.5. Priorities of Design goal...........................................................................................lxxix
CHAPTER FIVE....................................................................................................................................lxxxi
PROPOSED SYSTEM (ARCHITECTURE)..........................................................................................lxxxi
5.1. High-level design: describe the system architecture.....................................................................lxxxi
5.2. Scenario view:.............................................................................................................................lxxxii
5.3. Process view ..............................................................................................................................lxxxiii
5.4. Development view.....................................................................................................................lxxxiv
5.4.1. Subsystem Decomposition......................................................................................................lxxxiv
5.4.2. Subsystem description..............................................................................................................lxxxv
5.5.1 Physical view (Hardware /software Mapping)..........................................................................lxxxv
5.6. Persistent data management.......................................................................................................lxxxvi
5.6.1. Data schema view...................................................................................................lxxxvi
5.6.2. Mapping class to table. (In case of using relational DBMS)...............................lxxxviii
Mapping with Normalization...........................................................................................................lxxxviii
5.7. Access control:............................................................................................................................xcviii
5.8.User interface model:........................................................................................................................xcix
vi | P a g e
List of Tables
Table 1 . Team composition........................................................................................................xvii
Table 2 . PERT Table..................................................................................................................xxv
Table 3 . Use Case Description for Login.............................................................................xxxviii
Table 4 . Use Case Description for Create Account...............................................................xxxix
Table 5 . Use Case Description for View Account........................................................................xl
Table 6 .Use Case Description for Update an Account..............................................................xlii
Table 7 . Use Case Description Register Applicant online.....................................................xliii
Table 8 . Use Case Description for Manage Applicant.............................................................xliv
Table 9 . Use Case description to send notification................................................................xlvi
Table 10 . Use case description to manage information.........................................................xlvi
Table 11 .Use case description for view information..............................................................xlix
Table 12 . Use case description for View notification..................................................................l
Table 13 .Use case description for giving comment....................................................................li
Table 14 . Use case description to create account......................................................................lii
Table 15 . Use Case Description for Register finished house..................................................liii
Table 16 .Condominium House Admin Data Dictionary............................................................liv
Table 17 .Distribute Committee Data Dictionary........................................................................liv
Table 18 .WCU Finance Office Data Dictionary........................................................................liv
Table 19 .Applicant Data Dictionary.............................................................................................lv
Table 20 . access control...........................................................................................................xcix
vii | P a g e
List of Figures
Figure 1 .Time plan....................................................................................................................xxv
Figure 2 . Use Case Diagram.................................................................................................xxxvii
Figure 3 . Class Diagram.............................................................................................................lvi
Figure 4 . Sequence Diagram for Login...................................................................................lviii
Figure 5 . Sequence Diagram for Register Finished House.....................................................lix
viii | P a g e
Figure 6 .Sequence diagram for sending notification........................................................lx
ix | P a g e
Figure 8 .Sequence diagram for search applicant information........................................lxi
Figure 9 . Sequence diagram for registering applicant...........................................................lxii
Figure 10 .Sequence diagram for payment.............................................................................lxiii
Figure 11 .Activity Diagrams for Login.....................................................................................lxiv
Figure 12 .Activity Diagram for a registered applicant. .lxvi
Figure 13 .Activity diagram for updating applicant information .......................................lxvii
Figure 14 . Activity diagram for Delete applicant information...........................................lxviii
Figure 15 . Activity diagram for sending Notification............................................................lxix
x|Page
Figure 16 .Activity diagram for View comment.....................................................................lxix
Figure 17 .Activity diagram for creating an account..............................................................lxx
Figure 18 .Activity diagram for payment................................................................................lxxi
Figure 19 .Activity diagram for post information lxxii
Figure 20 .Activity diagram for logout..................................................................................lxxiii
Figure 21 .State Diagrams for Login.............................................................lxxiv
Figure 22 .State Diagrams for Registration..............................................................................lxxv
Figure 23 . State Diagram for Create Account.........................................................................lxxv
Figure 24 .State Diagrams for House Registrations...............................................................lxxvi
Figure 25 . Scenario View of the system..............................................................................lxxxiii
Figure 26 .sub system decomposition....................................................................................lxxxv
Figure 27 .Hardware and software architecture mapping................................................lxxxvi
Figure 28 .Data schema view of the system..........................................................................lxxxvii
Figure 29 .Mapping class....................................................................................................lxxxviii
Figure 30 . mapping for normalization..................................................................................xcvii
Figure 31 .Relationship mapping..........................................................................................xcviii
DB: ----------------------------------------------------Database
ID------------------------------------------------------Identification number
xi | P a g e
PC------------------------------------------------------Personal Computer
Fig------------------------------------------------------ Figure
xii | P a g e
Abstract
This project document deals with online condominium house management system
development specifically project proposal system analysis, design, and implementation
methodology and partial conclusion and recommendation of full online condominium house
management system. Our propose system maintain necessary information of the Wachemo
University housing development agency. Online condominium house management system
mainly provides effective and fast data processing, registration, notification, and placement. This
web-based system of managing applicant house information in house development agency
setting is expected to help various services keep an updated data on the status of their
information. In designing and analyzing such a system, object-oriented designing and analysis
tool and technique has been employed. Generally, the main goal of online condominium house
management system is to shorten data-processing time, to reduce errors, to improve the accuracy
of input and to provide data reliability of the information and to change the manual data handling
system into automated system.
xiii | P a g e
Chapter one
1. Introduction
Now a day, most people are having familiarity with computer and computer based
applications. Many organizations and individuals have their computer based applications for the
purpose of running their business, to perform different activity.Currently, the condominium
management office process data manually, and this manual processing system has many
drawbacks. After completion the project is expected to solve the problems that are affecting the
WCU condominium housing development offices. Since it is an online system it will reduces
costs, time to travel to the offices, work overload and it also minimizes the space used to store
the data. Besides, it enables applicants online registration, search, update applicants’ data,
placement and register finished houses.
1.1. Background
Hossana Town is located in Southern part of Ethiopia, in SNNP Regional State, hadiya Zon
e, at a distance 230 km from Addis Ababa. In Hossana Town the population growth is increasing
day to day that means different branch offices are opened like Wachemo University, this universi
ty other company’s needs employees and teachers to work in their company and these employees
need house to serve their life. .The Ethiopian government is trying to solve shortage of house for
the low-income community living in the urban area. One solution for this shortage program is
condominium housing development project. Condominium housing is the name given to the
forms of housing contract when each applicant can get house by applying and registering to the
office.
1|Page
The problem in management:-since there is a lot of documents in the office it’s hard to
manage such huge data manually.
Data Redundancy:-Since there is no organized database there is a problem of giving
more than one house for a single person.
Lack of accuracy and loss of document:-Since registration is handled manually there is
the chance of getting two houses for a single family like husband and wife and also loss
of applicant and contractor data.
Lack of security:-Since the office uses a manual system, the mechanism of data
handling is unsecured.
They need a large number of human resources to process office jobs.
The manual lottery system is error-prone, vulnerable to corruption.
2|Page
Table 1.Team composition
To propose alternative solutions and select the best among the alternatives to the
identified problem.
3|Page
1.6. Feasibility study
Most Software Engineering projects have budgets and deadlines, and analysis of factors
for the feasibility forms the business case (analysis of assumptions like resource availability and
potential problem and system costs and benefits) that justifies the expenditure on the project.
Our system feasibility will be seen according to the following literal:
By conducting a cost-benefit analysis, we will find that our proposed system is economically
feasible due to the factor of cost and benefit and their relationship. Our team will analyze by
identifying tangible and intangible costs needed for system development.
Tangible Benefits:
We will calculate the corresponding tangible benefits with sample monetary.
Cost reduction:-To calculate the following things must be considered.
Total Number of an employee of the project office in existing system=6
The average salary of each employee per month=4500.00birr
Total money required for payment per year=6*4500*12=324,000.00birr
The average number of employees needed when the new system will be deployed=1
Salary per month=5000birr
Total money required for payment per year=1*5000*12=60,000.00birr.
Difference between before and after deployment money required for payment
4|Page
Cost Reduction and Avoidance=324,000-60,000=264,000.00birr
As a result, our project is economically feasible because it can decrease an amount of
264,000birr.
Intangible Costs
Those are uncountable costs. The intangible costs to will be acquired in developing the
system are:-
Human Knowledge: Our knowledge that we will spend to develop the system may not
be measurable in terms of money.
5|Page
1.7. Scope and Limitation of the project
1.7.1 Scope of the project
Scope of the system identifies the problem to be studied, analyzed, designed, constructed
and ultimately improved. It is specifically concerned with what problem the proposed system
addresses. The system focuses on condominium house management system for the Wachemo
University community and will perform the following activities:
Online Registration of applicants:- The proposed system will register all the
applicant information that is used to get the condominium house.
Register Finished Condominium houses:-Will register the finished condominium
houses that are found on different sites. Besides, it will help to know the number of the
applicant relative to the number of finished condominium houses.
Update Applicant’s Data: It will update the applicant information when needed.
Search Applicant’s Data: It will search applicant data within a short period.
Notification: The system will give notifications to the users.
Clearance: The users must clear when they will go out of the house.
Maintenance: The users can request maintenance and necessary services will be given
to them.
This project aims to give a brief description of the condominium house management
systems. Accurate, timeliness, reliable, secured, relevant, and valuable data are needed for
condominium house management systems in all dimensions.
6|Page
• This project will reduce the work overload of Condominium house coordinator office
workers.
• Will make the work environment favorable, information dissemination from agency to
applicant easily.
• The system will help the Wachemo university Condominium house coordinator office
workers to handle the applicant effectively and supports the smooth functioning of the
business.
• The system will increase document preservation without the need for a large area.
• Fast accessibility of stored data and saving of resource
1.9 .Methodology
To develop this project all the relevant techniques, tools, models which are used in an
object-oriented development environment are applied.
The particular methodology and tools are listed below:
For the development of this system, several fact-finding techniques were employed and
several data sources were considered here to get a precise understanding of the subject matter.
The project team uses the following fact-finding methods which are considered suitable for this
project;
7|Page
Document Analysis: - Document analysis is used to understand how the system
is working. We used this method to know all about the staff's mission, vision,
function, and overall their work in short and brief.
To develop the system different software, hardware tools, and programming language are very
important.
Computer
Network cable
Printer
and others
Power-point
E-Draw max
Bracket
XAMPP
Visual paradigm
Microsoft Visio
and others
8|Page
1.9.3. Testing Procedure
Before directly deploying this system the team will perform different testing for its
Unit testing is a software development process in which the smallest testable parts of an
application, called units, are individually and independently tested for proper operation.
Unit testing involves only those characteristics that are vital to the performance of the
unit under test. This encourages developers to modify the source code without
immediate concerns about how such changes might affect the functioning of other units
or the program as a whole. Once all of the units in a program are working in the most
efficient and error-free manner possible, larger components of the program can be
Unit testing can be time-consuming and tedious. It demands patience and thoroughness
It requires detailed knowledge of the internal program design and code, so non-
development process in which program units are combined and tested as groups
in multiple ways.
9|Page
Integration testing can expose problems with the interfaces among program
In top-down integration testing: the highest-level modules are tested first and
followed by top-down testing. The process concludes with multiple tests of the complete
Alpha testing
In this testing method, the system will be tested by giving the correct input. It is tested by
Beta testing
In this testing method, the team will force the system to be tested for incorrect data input.
If any failures occurred while testing the system in all the above testing methods, the
team will take immediate correction beginning where this fault occurred before jumping
to the next workshop so that it will meet the goal. If all the above testing methods are
carried out and found to be valid the system will be directly deployed.
System testing
10 | P a g e
1.10. Overview of Project Phases
There are six stages to the software development lifecycle and there follow a
specific order except in certain circumstances .these stages are planning, analysis,
design, implementation/development, testing/integration, and maintenances.
Planning:- All software development projects are at the planning stage. This is
where the initial idea for the software is formed. The planning phase focuses on
identifying the problem, gathering the information needed to plan a solution and a
review of all of the available data. This is the most important part of the project
since effective planning can eliminate the majority of the problem.
System Design:- the system design stage is where you create the fully developed
design of your software. This is where all of the design work happens so that the
development team can work on the project. in many cases, both teams are working
at this point since the development team can begin setting up a system for further
development and coordinate resources
Testing: - when the bulk of the work is completed, it may be sent for system
testing. All software is rigorously tested before being released to the public the
QA team uses tools like automated testers, to rapidly try scenarios so that they can
find the problem in the software.
11 | P a g e
Maintenance:- At this phase, the development cycle is almost finished. The application is
done and being used in the field. The Maintenance phase is still important, though. In this
phase, users discover bugs that weren’t found during testing. These errors need to be
resolved, which can spawn new development cycles.
12 | P a g e
1.11.2 Budget plan
For estimating of Effort and development of this project we assume the semi-detached mode of
the basic COCOMO model.
For Effort: (semi-detached)
Effort = a1*(KLOC)a2 PM
a1= 3.0
a2=1.12
let assuming Source line of code is 20,000
Effort= 3.0*(20)1.12 PM
Effort = 86 PM
b1 = 2.5
b2 = 0.35
TDev = 2.5 * (86)0.35 M
TDev = 11.88 Month
13 | P a g e
Chapter two
2. Description of the existing system
Higher education institutions to make the learning and teaching, studying and exercising
and also society service works successful for their workers specially for the academic staffs
creating comfortable leaving environment is known that is key issue. Similarly to make the
workers work initiations increase and control the workers working condition one of the methods
higher educations institutions use for motivation package is giving leaving house access.
In this chapter we will study the existing system deeply, since it is necessary to know the existing
working system of office so as to develop a better system. When we study the existing
system we gave emphasis for here under listed questions:
After studying the existing system, we also determined the requirement or the feature that
must be included in the proposed system. Furthermore by analyzing the current system,
we could also estimate how the propose system solve the setbacks of the existing
system.According to this the university in 2004 sold 12 buildings holding 180 houses from
hosanna city house project agency. Wachemo University works for academic staffs in managing
and assigining house in the ownership of the university so they try to make the distribution and
competition transparent and fair. The management system works by doing different actions. First
of all it checks whether there is a free home or not and then if a home is free and available, it
posts advertisement or notice to the lecturers that there is free home and they can to apply and
compete to get home. The criterias used to get in to competition are academic position,
experience, work responsibility, marriage status, and special cases.so by seeing this criterias and
giving point according to their status the management system functions properly.
14 | P a g e
2.1. Major function of the current system
Hereunder we have listed several functions of the current system that are operated manually:
Registering applicant
Storing applicants’ data.
Announcement
Registering result of the lottery
Manual notification by using notice board.
Gives a payment form for the applicant to pay in the Ethiopian national bank.
Control the status of condominium houses.
Representative member
- participating in selecting users.
-making contact with committees.
Lecture affairs Director Directorate
15 | P a g e
- Manage the system.
-organize the system.
Business rules are principles and polices that must be fulfilled and obligated in order to well
function, to be properly and effectively. Identifying the business rule of the proposed system will
help us to specify and describe each use case in effective way. The business rules of the
wachemo university house management system are listed as following:-
16 | P a g e
4. When people who are disabled have the chance to get the house ground floor is assigned
to them.
5. The lecturers registered for competition the experience they get from wachemo university
will be take in to account
6. The president of wachemo university have the authority to give home in special
cases(economy, disabled persons)
7. The cafeteria's taken in to account are academic position, experience, work responsibility,
marriage status, and special cases.
8. The payment is not done by the competitors rather the house allowance payment is
transferred to this house management bank account.
17 | P a g e
Chapter three
3.Proposed system
18 | P a g e
FR19: The system shall allow the condominium administrator to view house information.
FR20: The system shall allow the condominium administrator to view applicant
information.
FR21: The system shall allow the condominium administrator to view the comment.
FR22: The system shall allow you to log out.
Actors: are persons, organizations, or an external system that is used by our system to reach its
goals.
19 | P a g e
Applicant: it is the employee that works at the Wachemo university who needs a
condominium house from the university if they fulfill the criteria that are entitled in the
agency. Applicants can apply for a house in the online condominium house management
system by creating their account or signup for accessing the application form.
Condominium house management administrator: performs different activities on this
system. Administrators have a user name and password to log in to their administration page.
Moreover, on this system, the condominium administrator enables to register houses that are
finished.
Distribution committee: they collected and selected people to distribute houses by seeing so
many criteria and generating a report to the administrators.
Finance Office: it manages payment
3.3.1. Scenario
Scenario 1
Use case name: login
Goal: System administrator creates his/her account and account to housing manager.
Flow event:
I. The member the admin open the system
II. The login form is displayed on the index page.
III. The manager or the CHMadmin fill in the correct username and password.
IV. Click login button
V. Logged successfully message is displayed.
Exceptional flow:
a. If the user does not fill in the correct username and password the system displays, please fill
in the correct username and password message.
Scenario 2
Use case name: Notification
20 | P a g e
V. Click send button
VI. Display sent the successful message
VII. Finish notification and the use case ends
Scenario 3
Use case name: payment
Goal: - to payment
Flow Event
Exceptional flow:
If the applicant does not have a bank account number the system display an error
message.
if the applicant has insufficient balance in his/her bank account insufficient
balance message will be displayed
Scenario 4
Use case name: Manage applicant
Flow Event
The system does not display an update form to update the applicant information with the
entered id.
21 | P a g e
The system displays an error message if the applicant information doesn’t fill
accurately.
Scenario 5
Use case name: searching applicant
Flow Event
The system displays a fill again message to the Administrator if the entered id is
incorrect.
Scenario 6
Use case name: delete applicant
Flow Event
The system displays a fill again message to the Administrator if the entered id is
incorrect.
The system display deletion failed if the entered data are not available.
22 | P a g e
3.3.2. Use case model
23 | P a g e
Manage information
Generate report
24 | P a g e
3.3.3. Use case description
Entry condition The system administrator creates his/her account and account to the
housing manager.
25 | P a g e
Postcondition Go to the page they are allowed to see
Scenario The Condominium house administrator is responsible to give the user name and
password to the manager
26 | P a g e
error message.
5.2: go to step
27 | P a g e
2.1: The system provides error
Exit condition The condominium house Administrator log out from the system
Exit condition Condominium House Administrator log out from the system
28 | P a g e
Table 7. Use Case Description Register Applicant online
Use case name Register Applicant online
UC_ID: UC_05
Actor: Applicant
Description: This use case is well performed by the applicant to be registered as a new applicant
for getting a condominium house.
Precondition: 1. He/she must get an internet connection and his or her full information is must
available in WCU.
2. The user must sign up first to register
Post-condition: The applicant must be registered successfully.
29 | P a g e
Alternative Course A8: The system display register failed message if there is unfilled information in the
of Action form.
UC_ID: UC_06
Description: This use case is done by the CHM Administrator when they need to
update, search and delete applicant information
Stake Holders
Step 5: the
administrator fills in
the new updated
information of the
30 | P a g e
applicant.
31 | P a g e
Table 9.Use Case description to send notification
UC_ID: UC_08
Description: The condominium house administrator after distribution notifies the result for the
winner applicant by rank.
Stakeholders: Applicant
Precondition: The Condominium administrator must log in to view the winner of the house.
And the applicant must have a phone number.
32 | P a g e
The alternative course of A.6: if the administrator does not fill correct phone number system display an
action: error message.
UC_ID: UC_09
The alternative course of An A.4: The system does not display an update form to update if the app
33 | P a g e
action for update: applicant id and the house number is not entered.
A.7: the system displays an error message if the applicant information doe
doesn't fill accurately.
Basic course of action for Actor action System response
search:
Step1: the Condominium Step2: Display the manage applicant
administrator click the manage and house page.
information link.
Step4: the system display applicants
Step3: Condominium administrator and block information.
enters id number of applicant and
Step5: finish searching and end-use
block number to search and click
case.
the search button.
An alternative course of A.4: the system displays an error message if the entered id and block
action for search : number are incorrect.
An alternative course of
action for delete : A. A.4: the system displays an error message to the Administrator if the entered
id and house number are invalid.
A.A.6: the system display deletion failed if the entered data are not available.
34 | P a g e
Table 11.Use case description for view information
35 | P a g e
applicant on the view applicant information link. page.
information: Step3: enter applicant id to view the required Step5: the system display
applicant. applicant information.
Step4: The condominium administrators click Step7:the system finished its
the view button. work.
Step6: the condominium administrator views
applicant information.
An alternative A.5: if the condominium administrator enters an incorrect id the system will not
course of action: display applicant information.
Actors: Applicants
Step3: the applicant view Step4: the system finished its work.
notification.
36 | P a g e
Use case name Give comment
UC-ID: UC-12
Actor : Applicant
Description: When the applicant has any suggestion, opinion, feeling he/she can write a
comment
Pre-condition: The applicant must log in to give a comment and write a comment
Postcondition: Send comment to the CH admin.
Basic course of Actor action System response
action: Step1:the applicant Step2: the system displays the
Click comment link comment page.
Step3: applicant write a comment Step5:you are successfully sent an
Step4:click send button end-use case
37 | P a g e
Postcondition The account created
An alternative course of 1. If the Applicant enters invalid information the system displays error
action message.
Table 15.Use Case Description for Register finished house
UC_ID: UC_14
Description : Condominium house administrator Register houses that are finished or ready with
their full description
Precondition: The condominium administrator must log in to register the house information
(UC_01), the newly finished house must exist
Postcondition: The entire new houses that are finished must be registered or recorded with their
full information successfully.
Step4: click the register button Step6:finish recording and use case end.
38 | P a g e
An alternative course A.1: if there is no new finished condominium house, the condominium house
of action administrator stops or pauses the use case.
39 | P a g e
Table 19.Applicant Data Dictionary
The class diagram is static. It represents the static view of an application. The class diagram
is not only used for visualizing, describing, and documenting different aspects of a system but
also for constructing executable code of the software application.
The class diagram describes the attributes and operations of a class and also the constraints
imposed on the system. The class diagrams are widely used in the modeling of object-oriented
systems because they are the only UML diagrams, which can be mapped directly with object-
oriented languages. The class diagram shows a collection of classes, interfaces, associations,
collaborations, and constraints. It is also known as a structural diagram.
The purpose of the class diagram can be summarized as
Analysis and design of the static view of an application.
Describe the responsibilities of a system.
The base for component and deployment diagrams.
Forward and reverse engineering.
In the following diagram, we are trying to show the basic classes of our system and their
relationship. The class represents those objects that need permanent storage in a database. The
cases of our system are users which are the aggregation of the applicant, system administrator,
housing manager and applicant, house, house distribution, and payment table.
40 | P a g e
Figure 3.Class Diagram
41 | P a g e
3.5.1. Sequence diagram
A sequence diagram is an interaction diagram that shows how objects operate with one another
and in what order. It is a construct of a message sequence chart.
A sequence diagram shows object interactions arranged in a time sequence. It depicts the objects
and classes involved in the scenario and the sequence of messages exchanged between the
objects needed to carry out the functionality of the scenario. Sequence diagrams are typically
associated with use case realizations in the Logical View of the system under development.
Sequence diagrams are sometimes called event diagrams or event scenarios.
A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects that
live simultaneously, and, as horizontal arrows, the messages exchanged between them, in the
order in which they occur.
Key parts of a sequence diagram
Participant
Message
42 | P a g e
Figure 4.Sequence Diagram for Login
43 | P a g e
Figure 5.Sequence Diagram for Register Finished House
44 | P a g e
Condominium Home Notification
Controller Database
admin page Page
<<Controller>> <<DB>>
<<Actor>> <<UI>> <<UI>>
1:open home page
2:click notification
link
3:display registered winner list and
send link
8:save notification
45 | P a g e
Figure 7.Sequence diagram for search applicant information
46 | P a g e
Figure 8.Sequence diagram for registering applicant
47 | P a g e
3.5.2. Activity diagram
An Activity diagram is similar to a flowchart to represent the flow from one activity to another
activity. Activity diagrams and State chart diagrams are related. While a Statechart diagram
focuses attention on an object undergoing a process (or on a process as an object), an Activity
diagram focuses on the flow of activities involved in a single process. The Activity diagram
shows how these single-process activities depend on one another.
48 | P a g e
Figure 9.Activity Diagrams for Login
49 | P a g e
Figure9.Activity Diagram for Register finished CH
50 | P a g e
Figure 10.Activity Diagram for a registered applicant
51 | P a g e
Figure 11.Activity diagram for updating applicant information
52 | P a g e
Figure 12. Activity diagram for Delete applicant information
53 | P a g e
Figure 13. Activity diagram for sending Notification
54 | P a g e
Figure 15.Activity diagram for creating an account
55 | P a g e
Figure 16.Activity diagram for payment
56 | P a g e
Figure 17.Activity diagram for post information
57 | P a g e
Figure 18.Activity diagram for logout
58 | P a g e
3.5.3. State diagram
The state chart diagram shows the change of an object through time from one state to the
other state. State chart modeling is used to show the sequence of states that an object goes
through, the events that cause the transition from one state to the other, and the actions that result
from a state change.
59 | P a g e
Figure 20.State Diagrams for Registration
60 | P a g e
Figure 21. State Diagram for Create Account
61 | P a g e
Figure 22.State Diagrams for House Registrations
62 | P a g e
CHAPTER FOUR
SYSTEM DESIGN
4.1. Purpose
Design is the process of describing, organizing, and structuring system components at the
architectural design level and detailed design level. The design converts functional models from
analysis into models that represent the solution. The design may use structured or object-oriented
approaches. In the case of system design, developers fill the gap between the system
specification produced during requirement elicitation and analysis which is concentrated on the
purpose and the functionality of the system. In the design phase of the system, we will show the
decomposition, hardware-software mapping, and the exact architecture of the proposed system in
detail.
Design goals identify the qualities that our system should focus on. Many designing goals can
be inferred from the requirements of the system. Additionally designing goals are elicited from
the users. It is, however, necessary to state them explicitly such that every important design
decision can be made consistently following the same set criteria. The system should satisfy the
requirements of the user at a technically acceptable level.
The objectives of the design are to model the system with high quality. Implementing a high-
quality system depend on the nature of the design created by the designer. If the system needs
repair or rebuilding then the whole process will be dependent on system design, so if the whole
system is designed effectively and precisely then it is easy to make a change in the system.
The design goals include:-
63 | P a g e
4.2.2. Dependability Criteria
These criteria determine how much effort should be expanded in minimizing system crashes and
their consequence, and how available the system should be.
Reliability: The system is expected to accept inputs and requests from the user and make the
necessary execution. The systems accept all valid user data and produce the expected output.
Fault tolerance: Fault may originate at a system level, in the system environment, or the
interaction between the user and the system. Some of the faults that may occur include computer
failure, system failure due to the virus, unauthorized users. The system tolerates the error that
occurs due to user-system interaction using proper execution handling methods.
64 | P a g e
4.2.5. Priorities of Design goal
To achieve the desired goals of a good design we use design patterns as a solution for common
design problems that use design principles. It has two main usages in our system
To show architectural styles and patterns we choose MVC (Model-View-Controller) Style. MVC
(Model-View-Controller) is one of many design patterns which we select to design our system.
MVC proposes three types of objects in an application, the Model, Views, and Controllers.
1. Model objects: hold data and define the logic for manipulating that data. It holds data
describing facts about the object like the username and password and any other
information about the user of the system or the system.
2. View objects: represent something visible in the user interface, for example, a
Dashboard, button, and it displays any output from the model for which we generate
input.
3. Controller object: acts as Observer between the Model and View objects. A Controller
object communicates data back and forth between the Model objects and the View
objects.
It reacts to user events and responds by invoking actions on the model. The following figure
shows how our system MVC works.
65 | P a g e
Figure.Design Pattern for the System
66 | P a g e
CHAPTER FIVE
Process: The process layer implements a logical system that involves collaborating with domain
(system) classes or even other process classes in the system.
Persistence (data): Persistence layers encapsulate the capability to store, receive and delete
Objects/data permanently without revealing details of the system.
67 | P a g e
5.2. Scenario view:
Scenario View is a view model used for "describing the architecture of software-intensive
systems, based on the use of multiple, concurrent views”. The views are used to describe the
system from the viewpoint of different stakeholders, such as end-users, developers, system
engineers, and project managers. The four views of the model are logical, development, process,
and physical view. In addition, selected use cases or scenarios are used to illustrate the
architecture serving as the 'plus one view. Hence, the model contains 4+1 views.
Logical view: The logical view is concerned with the functionality that the system
provides to end-users.
Process view: The process view deals with the dynamic aspects of the system, explains
the system processes and how they communicate and focuses on the run time behavior of
the system. The process view addresses concurrency, distribution, integrator,
performance, scalability, etc.
68 | P a g e
Development view: The development view illustrates a system from a programmer's
perspective and is concerned with software management. This view is also known as the
implementation view.
Physical view: The physical view (aka the deployment view) depicts the system from a
system engineer's point of view. It is concerned with the topology of software
components on the physical layer as well as the physical connections between these
components.
Process view of work is defined as the understanding that work can be viewed as a "process" that
has inputs, steps, and output(s) and that interfaces with other processes within an organization. It
is the overall awareness of the tactics and methodologies used "by an organized group of related
activities that work together to transform one or more kinds of input into outputs that are of value
to the User."
69 | P a g e
The Process view of Applicant Registration
Applicant browser website the system display home page select apply for
house.
display confirmation page display applicant registration form fill registration form and
click register button
CHAdmin click notification link display notification page fill notification request
repeat notification until process end click send button display sent successfully
message
70 | P a g e
Figure 24.sub system decomposition
5.4.2. Subsystem description
Condominium housing management system has the following major subsystems and these
subsystems can be further decomposed.
71 | P a g e
The diagram below shows the hardware/software mapping of CDMS.
72 | P a g e
Figure 26.Data schema view of the system
A database schema can be divided broadly into two categories:
Physical Database Schema − this schema pertains to the actual storage of data
and its form of storage like files, indices, etc. It defines how the data will be
stored in a secondary storage.
Logical Database Schema − this schema defines all the logical constraints that
need to be applied on the data stored. It defines tables, views, and integrity
constraints.
73 | P a g e
5.6.2. Mapping class to table. (In case of using relational DBMS)
First normal form (1NF): An entity type is in 1NF when it contains no repeating groups
of data.
74 | P a g e
Second normal form (2NF): An entity type is in 2NF when it is in 1NF and when all of
its non-key attributes are fully dependent on its primary key.
Third normal form (3NF): An entity type is in 3NF when it is in 2NF and when all of
its attributes are directly dependent on the primary key.
Table name
Account
Condominium admin
Finance Office
Bank account
Applicant
Winner
Payment
Site
Block
House
No. Table name Attributes Data types Primary key Foreign key
1 Account User_Id Varchar(30) User_Id
Username Varchar(30)
Password String(30)
2 Condominium CA_Id Varchar(30) CA_Id
administrator Fname Char(30)
Mname Char(15)
Lname Char(30)
Email String(30)
Phone_No Int(13)
3 Finance FO_Id Varchar(30) FO_Id
Office Fname Char(15)
Mname Char(15)
Lname Char(15)
Email String(30)
5 Applicant Applicant_Id Varchar(30) Applicant_Id Site_Id
Site_Id Varchar(30)
Fname Varchar(30)
Mname Char(15)
Lname Char(15)
Age Cha(15)
Gender Int(15)
House_type Varchar(10)
Phone_no Varchar(30)
Email Int(13)
75 | P a g e
Site_name String(30)
Nationality Varchar(30)
city Varchar(30)
Woreda Varchar(30)
kebele Varchar(30)
Varchar(30)
6 Winner Winner_Id Varchar(30) Winner_Id
Fname Char(15)
Mname Char(15)
Lname Char(15)
Email String(30)
Phone_no Int(13)
7 Payment tt_No Varchar(30) tt_No Winner_Id
Winner_Id Varchar(30)
Payment_type Varchar(30)
Amount Int(15)
8 Bank account Account_No Int(13) Account_No tt_No
tt_No Varchar(15)
Fname Char(15)
Mname Char(15)
Lname Char(15)
Phone_no Int(13)
Balance Varchar(30)
Photo Blob
Payment_type Varchar(30)
9 Site Site_Id Varchar(30) Site_Id Block_No
Block_No Varchar(30)
Site_name Varchar(30)
City Varchar(30)
Woreda Varchar(30)
Kebele Varchar(30)
Block_type Varchar(30)
10 block Block_No Varchar(30) Block_No Site_Id
Site_Id Varchar(30)
Block_type Varchar(30)
Site_name Varchar(30)
11 House House_No Varchar(30) House_No Block_No
Block_No Varchar(30) Site_Id
Site_Id Varchar(30)
House_type Varchar(30)
Block_type Varchar(30)
Floor_No Varchar(30)
Site_name Varchar(30)
76 | P a g e
First normal form
Account
User_Id Username password
Condominium admin
Admin_Id Fname Mname Lname Email Phone_No
The above table is not in 1NF, because a person may be having more than one email address and
phone number.
Condominium administrator
[email protected] 0923806448
Condominium administrator
Finance Office
The above table is not in 1NF, because a person may be having more than one email address and
phone number.
77 | P a g e
We can take example:
Finance Office
[email protected] 0923806448
Finance Officer
Applicant
Applicant_ Site Fna Mna Lna age gen House email Phon Site_ nationality Woreda
Id _Id me me me der _type e_no name
The above table is not in 1NF, because a person may be having more than one phone number and
email address.
Applicant
094356782 [email protected]
3 m
78 | P a g e
Applicant
Winner
The above table is not in 1NF, because a person may be having more than one phone number and
email address.
Winner
0934567823 [email protected]
Winner
Payment
Bank account
79 | P a g e
Site
Block
House
Applican
t
Applican Site Fna Mna Lna age gen House_ emai Phone Site_ nationality
t_Id _Id me me me der type l _no name Woreda
Applicant
Site
Site_Id Site_name
80 | P a g e
Applicant_Id Site_Id
Payment
Payment
tt_No Winner_Id
Bank account
Account number
TT number
tt_No Payment_type
Bank account
Account_No tt_No
Site
81 | P a g e
Site_Id Block_No Site_name City Woreda Kebele Block_type
Site
Block
Block_No Block_type
Site_Id Block_No
Block
Block
Block_No Block_type
Site
Site_Id Site_name
Block_No Site_Id
82 | P a g e
House
House
House_no House_type
Block
Site
Site_Id Site_name
83 | P a g e
dependency between different tables in the database
Utilize global access table, describing the access relation between the actors, objects and
operations in the system
Access control is a security technique that can be used to regulate who or what can view or use
resources in a computing environment. Access control list (ACL) refers to the permissions
attached to an object that specify which users are granted access to that object and the operations
it is allowed to perform. Each entry in an access control list specifies the subject and an
associated operation that is permitted.
84 | P a g e
Table 20. access control
CHAdmin x x x
Applicant x x x x
Finance x x x x x x x
Office
Committee x x x x x x x
85 | P a g e
86 | P a g e