Database Design & Development
Database Design & Development
Submission Format:
Assignment:
The submission is in the form of an individual written report. This should be written in a
concise, formal style using 1.5-line spacing, Time New Roman, font size 12. primary heading
size in 14, subheading size in 13, double spacing between paragraphs, and a maximum of 4
paragraphs in a single A4 sheet.
You are required to make use of headings, paragraphs, and subsections as appropriate, and all
work must be supported by research and referenced using the Harvard referencing system.
Please also provide a bibliography using the Harvard referencing system. This should include
published books, database journals, and few online sources.
The recommended word limit is 4,000–4,500 words, although you will not be penalized for
exceeding the total word limit.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
1
Assignment Brief (RQF)
LO1 - Use an appropriate design tool to design a relational database system for a substantial
problem.
LO2 - Develop a fully functional relational database system based on an existing system design.
LO3 - Test the system against user and system requirements.
LO4 - Produce technical and User documentation.
You are required to design a database system to solve a problem based on the following
case study
Case Study:
NewWorld hospital limited is a leading privately owned hospital in Sri Lanka among most Sri
Lankans. NewWold hospital provides in-house patient facilities as well as OPD services on
24*7 basis.
The hospital maintains a register of all the Patients who visit and record the ID number, name,
address, contact number by default with guardian information, blood group, insurance details
(if available) for in-house patients. OPD patients are given an appointment with a doctor.
Patients can be both in-house and OPD as most of the patients go through a sequence of visits
before hospitalization for diagnostic purposes. During an OPD visit, the doctor will record the
inspection details within the system, and he/she can also view the comments from previous
patient visits. Inspection details include the date, time, doctor identification, and the comment
of the doctor. After the inspection, the patent will be issued a prescription that includes the
name, age, contact number of the patient, and rows of drugs or tests listed. Although the
prescription will be recorded in the database permanently, lab fees and pharmacy fees will be
charged over the counter. According to the following formula, the patient will be charged a
fixed fee where fee = (doctor fee + standard charge (Rs. 350))*1.15.
During admission, the patient is allocated a room based on the requirements and moved in.
NewWorld has five different types of rooms: shared-ward, private, executive, family, and VIP.
Each room has different rates, is located on different floors of the building, and comes with
different visitor passes, parking slots, and bed counts. Upon allocating a room, an account will
be opened for the patient, which will record all the bills collected for that patient for the
specific stay. A sample bill record will include the date, time, idem, description, quantity, and
subtotal.
Upon checking out, the bill will be totaled, and a 15% tax is added and presented to the patient
to carry out the payment.
You are required to build a functional prototype of the system with a commercial DBMS and
report the work to the management of the NewWorld hospital to commence implementation.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
2
Assignment Brief (RQF)
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
3
Assignment Brief (RQF)
LO3 Test the system P4 Show Test data, test M4 Assess the
against user and system results against the user effectiveness of the Use of test cases, test
requirements and system testing, including an data with sample
requirements. explanation of the screens.
choice of test data
used.
LO4 Produce technical P5 Produce technical M5 Produce technical D3 Assess any future
and User and User and User improvements that
documentation documentation with documentation for a may be required to
sample screens and fully functional ensure the continued
diagrams where system, including effectiveness of the
appropriate. diagrams showing database system.
movement of data
through the system.
You may use dummy
screens or actual screen
shots.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
4
Assignment Brief (RQF)
Acknowledgement
My sincere thanks to my lecturers for teaching this module well, guiding and motivating me in
completing this assignment successfully. And I would like to thank who helped me to understand
the problems of the assignment and who helped me to approach the problems confidently.
And also, I would like to express my thanks to my parents & my friends/classmates for their help
and support for the successfully finishing of this project, and finally My thanks and pleasures also
go to my college.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
5
Assignment Brief (RQF)
Table of Contents
2. Implementation of the fully functional database using DDL, DML & DCL commands. . 13
3. Test evidence of the implemented database with the test plan, outcome, conclusions, etc.
30
4. Comprehensive design for the application based on the designed database using UML .. 33
7. An example of report generated by the solution (demonstrated used sql commands) and an
evaluation on how that report helps NewWorld hospital. ....................................................... 42
9. A technical and User Documentation for the Users and Technical support team of Move
me, including screenshots / dummies, guiding users to carry out tasks within the system. .... 50
Conclusion ............................................................................................................................... 64
Reference ................................................................................................................................. 65
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
6
Assignment Brief (RQF)
List of Figures
Figure 1 ......................................................................................................................................... 12
Figure 2 ......................................................................................................................................... 30
Figure 3 ......................................................................................................................................... 30
Figure 4 ......................................................................................................................................... 31
Figure 5 ......................................................................................................................................... 31
Figure 6 ......................................................................................................................................... 32
Figure 7 ......................................................................................................................................... 32
Figure 8 ......................................................................................................................................... 32
Figure 9 ......................................................................................................................................... 36
Figure 10 ....................................................................................................................................... 36
Figure 11 ....................................................................................................................................... 37
Figure 12 ....................................................................................................................................... 37
Figure 13 ....................................................................................................................................... 38
Figure 14 ....................................................................................................................................... 38
Figure 15 ....................................................................................................................................... 39
Figure 16 ....................................................................................................................................... 39
Figure 17 ....................................................................................................................................... 40
Figure 18 ....................................................................................................................................... 40
Figure 19 ....................................................................................................................................... 41
Figure 20 ....................................................................................................................................... 41
Figure 21 ....................................................................................................................................... 42
Figure 22 ....................................................................................................................................... 43
Figure 23 ....................................................................................................................................... 50
Figure 24 ....................................................................................................................................... 50
Figure 25 ....................................................................................................................................... 51
Figure 26 ....................................................................................................................................... 54
Figure 27 ....................................................................................................................................... 54
Figure 28 ....................................................................................................................................... 55
Figure 29 ....................................................................................................................................... 55
Figure 30 ....................................................................................................................................... 56
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
7
Assignment Brief (RQF)
Figure 31 ....................................................................................................................................... 56
Figure 32 ....................................................................................................................................... 57
Figure 33 ....................................................................................................................................... 57
Figure 34 ....................................................................................................................................... 58
Figure 35 ....................................................................................................................................... 58
Figure 36 ....................................................................................................................................... 59
Figure 37 ....................................................................................................................................... 59
Figure 38 ....................................................................................................................................... 60
Figure 39 ....................................................................................................................................... 60
Figure 40 ....................................................................................................................................... 61
Figure 41 ....................................................................................................................................... 62
Figure 42 ....................................................................................................................................... 62
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
8
Assignment Brief (RQF)
What is ER Diagram?
ER Diagram stands for Entity Relationship Diagram, also known as ERD is a diagram
that displays the relationship of entity sets stored in a database. In other words, ER
diagrams help to explain the logical structure of databases. ER diagrams are created based
on three basic concepts: entities, attributes and relationships.
ER Diagrams contain different symbols that use rectangles to represent entities, ovals to
define attributes and diamond shapes to represent relationships.
At first look, an ER diagram looks very similar to the flowchart. However, ER Diagram
includes many specialized symbols, and its meanings make this model unique. The
purpose of ER Diagram is to represent the entity framework infrastructure.
• Provide a preview of how all your tables should connect, what fields are going to
be on each table
• Helps to describe entities, attributes, relationships
• ER diagrams are translatable into relational tables which allows you to build
databases quickly
• ER diagrams can be used by database designers as a blueprint for implementing
data in specific software applications
• The database designer gains a better understanding of the information to be
contained in the database with the help of ERP diagram
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
9
Assignment Brief (RQF)
– Aggregation
• These extensions can also be converted to relational model – Introduce a few more
design choices.
1. Generalization
• Generalization is the process of generalizing the entities which contain the
properties of all the generalized entities.
• It is a bottom approach, in which two lower level entities combine to form a higher
level entity.
• Generalization is the reverse process of Specialization.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
10
Assignment Brief (RQF)
2. Specialization
• Specialization is a process that defines a group entities which is divided into sub
groups based on their characteristic.
• It is a top down approach, in which one higher entity can be broken down into two
lower level entity.
• It maximizes the difference between the members of an entity by identifying the
unique characteristic or attributes of each member.
• It defines one or more sub class for the super class and also forms the
superclass/subclass relationship.
There are three basic elements in an ER Diagram: entity, attribute, relationship. There are
more elements which are based on the main elements. They are weak entity, multi valued
attribute, Derived attribute, weak relationship, and recursive relationship. Cardinality and
ordinality are two Other notations used in ER diagrams to further define relationships.
Overall, an EER diagram builds off of an ER diagram by including elements that allow
for aggregating, generalizing, and specializing.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
11
Assignment Brief (RQF)
Figure 1
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
12
Assignment Brief (RQF)
2. Implementation of the fully functional database using DDL, DML & DCL
commands.
A data definition language (DDL) is a computer language used to create and modify the
structure of database objects in a database. These database objects include views,
schemas, tables, indexes, etc.
This term is also known as data description language in some contexts, as it describes the
fields and records in a database table.
The present database industry incorporates DDL into any formal language describing
data. However, it is considered to be a subset of SQL (Structured Query Language). SQL
often uses imperative verbs with normal English such as sentences to implement database
modifications. Hence, DDL does not show up as a different language in an SQL database,
but does define changes in the database schema.
It is used to establish and modify the structure of objects in a database by dealing with
descriptions of the database schema. Unlike data manipulation language (DML)
commands that are used for data modification purposes, DDL commands are used for
altering the database structure such as creating new tables or objects along with all their
attributes (data type, table name, etc.).
Commonly used DDL in SQL querying are CREATE, ALTER, DROP, and TRUNCATE.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
13
Assignment Brief (RQF)
CREATE
This command builds a new table and has a predefined syntax. The CREATE statement
syntax is: CREATE TABLE [table name] ([column definitions]) [table parameters];
For example:
CREATE TABLE Employee (Employee Id INTEGER PRIMARY KEY, First name
CHAR (50) NULL, Last name CHAR (75) NOT NULL);
The mandatory semi-colon at the end of the statement is used to process every command
before it. In this example, the string CHAR is used to specify the data type. Other data
types can be DATE, NUMBER, or INTEGER.
ALTER
An alter command modifies an existing database table. This command can add up
additional column, drop existing columns and even change the data type of columns
involved in a database table.
For example:
ALTER TABLE Employee ADD PRIMARY KEY (employee_pk);
In this example, we added a unique primary key to the table to add a constraint and enforce
a unique value. The constraint “employee_pk” is a primary key and is on the Employee
table.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
14
Assignment Brief (RQF)
DROP
A drop command is used to delete objects such as a table, index or view. A DROP
statement cannot be rolled back, so once an object is destroyed, there’s no way to recover
it. Drop statement syntax is: DROP object type object name;
For example:
DROP TABLE Employee;
In this example, we’re deleting the Employee table.
TRUNCATE
Similar to DROP, the TRUNCATE statement is used to quickly remove all records from
a table. However, unlike DROP that completely destroys a table, TRUNCATE preserves
its full structure to be reused later.
For example:
TRUNCATE TABLE Employee;
In this example, we’re marking all the extents of the Employee table for deallocation, so
they’re considered empty for reuse.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
15
Assignment Brief (RQF)
OTHER STATEMENTS
Other commonly used commands include RENAME and COMMENT. The first one is
used with the ALTER TABLE statement to change the name of an object (table, column,
etc.). COMMENT is used to add single line, multi-line and in-line comments.
DCL
2. REVOKE
1. GRANT COMMAND
Syntax:
GRANT <privilege list>
ON <relation name or view name>
TO <user/role list>;
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
16
Assignment Brief (RQF)
In the above example, user 'ABC' has been given permission to view and modify the
records in the 'employee' table.
2. REVOKE COMMAND
Syntax:
REVOKE <privilege list>
ON <relation name or view name>
FROM <user name>;
DDL or Data Definition Language actually consists of the SQL commands that can be
used to define the database schema. It simply deals with descriptions of the database
schema and is used to create and modify the structure of database objects in the database.
A Data Definition Language has a pre-defined syntax for describing data. For example,
to build a new table using SQL syntax, the CREATE command is used, followed by
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
17
Assignment Brief (RQF)
parameters for the table name and column definitions. The DDL can also define the name
of each column and the associated data type. Once a table is created, it can be modified
using the ALTER command. If the table is no longer needed, the DROP command can be
used to delete the table.
Since DDL is a subset of SQL, it does not include all the possible SQL commands. For
example, commands such as SELECT and INSERT are considered part of the Data
Manipulation Language (DML), while access commands such as CONNECT and
EXECUTE are part of the Data Control Language (DCL). The DDL, DML, and DCL
languages include most of the commands supported by SQL.
DDL statements are used to build and modify the structure of your tables and other objects
in the database. When you execute a DDL statement, it takes effect immediately.
The data types that you will use most frequently are character strings, which might be
called VARCHAR or CHAR for variable or fixed length strings; numeric types such as
NUMBER or INTEGER, which will usually specify a precision; and DATE or related
types. Data type syntax is variable from system to system; the only way to be sure is to
consult the documentation for your own software.
The alter table statement may be used as you have seen to specify primary and foreign
key constraints, as well as to make other modifications to the table structure. Key
constraints may also be specified in the CREATE TABLE statement.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
18
Assignment Brief (RQF)
You get to specify the constraint name. Get used to following a convention of
tablename_pk (for example, Customers_pk), so you can remember what you did later.
The attribute list contains the one or more attributes that form this PK; if more than one,
the names are separated by commas.
The foreign key constraint is a bit more complicated, since we have to specify both the
FK attributes in this (child) table, and the PK attributes that they link to in the parent table.
You need a separate foreign key definition for each relationship in which this table is the
child.
If you totally mess things up and want to start over, you can always get rid of any object
you’ve created with a drop statement. The syntax is different for tables and constraints.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
19
Assignment Brief (RQF)
This is where consistent constraint naming comes in handy, so you can just remember the
PK or FK name rather than remembering the syntax for looking up the names in another
table. The DROP TABLE statement gets rid of its own PK constraint, but won’t work
until you separately drop any FK constraints (or child tables) that refer to this one. It also
gets rid of all data that was contained in the table—and it doesn't even ask you if you
really want to do this!
All of the information about objects in your schema is contained, not surprisingly, in a set
of tables that is called the data dictionary. There are hundreds of these tables most
database systems, but all of them will allow you to see information about your own tables,
in many cases with a graphical interface. How you do this is entirely system-dependent.
• Create database
• Create symmetric encryption
• Drop constarint ( fk , unique, default )
• Drop store procedure
• Drop user define table type ( udt )
• Drop and create functions
• Drop and create table
• Create constarint ( fk , unique, default )
• Create user define table type ( udt )
• Create store procedure
• Create trigger
• Data insert scripts (using ssms import wizard , store procedure and insert sql scripts)
• create view
NOTE:-
1. Used Column Data Encryption for Password Column in dbo.Employee Table
2. Table-level CHECK Constraints based on a function
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
20
Assignment Brief (RQF)
- Add a table check constraint on dbo.EmployeeDetails to insert data in case age of the employee
between 19 and 60 .
CONSTRAINT CHECK_EmployeeDetails_Age CHECK
(dbo.fn_CalculateAge([DateOfBirth]) BETWEEN 19 AND 60)
- Add a table check constraint on dbo.PatientAppointment to insert only employeeID which role
is doctor.
CONSTRAINT CHECK_PatientAppoitment_Doctor CHECK
([dbo].[fn_GetEmployeeRole]([EmployeeID]) = 'Doctor'),
5. Triggers:-
- tr_UpdateLabReportBilling : This trigger will insert billing information in
dbo.PatientBilling table depend on the Labtest from dbo.PatientLabReport Table.
- tr_UpdateAttendantBilling : This trigger will insert billing information in
dbo.PatientBilling table depend on the Attendant from dbo.PatientAttendant Table.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
21
Assignment Brief (RQF)
A. CREATE DATABASE
IF DB_ID('HospitalManagementSystem') IS NULL
BEGIN
CREATE DATABASE HospitalManagementSystem
END
GO
1. Table `dbo.Employee`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
22
Assignment Brief (RQF)
2. Table `dbo.Role`
3. Table `dbo.EmployeeDetails`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
23
Assignment Brief (RQF)
4. Table `dbo.Address`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
24
Assignment Brief (RQF)
5. Table `dbo.Department`
6. Table `dbo.EmployeeDepartment`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
25
Assignment Brief (RQF)
OBJECTPROPERTY(id, N'IsTable') = 1)
BEGIN
DROP TABLE dbo.EmployeeDepartment
END
CREATE TABLE dbo.EmployeeDepartment (
[EmployeeID] INT NOT NULL,
[DepartmentID] INT NOT NULL,
[IsActive] BIT NULL,
PRIMARY KEY CLUSTERED
(
[EmployeeID] ASC,
[DepartmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY
= OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
7. Table `dbo.Patient`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
26
Assignment Brief (RQF)
8. Table `dbo.PatientInsurance`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
27
Assignment Brief (RQF)
9.Table `dbo.PatientRegister`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
28
Assignment Brief (RQF)
10.Table `dbo.PatientAttendant`
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
29
Assignment Brief (RQF)
3. Test evidence of the implemented database with the test plan, outcome,
conclusions, etc.
Insert-patient registration
Figure 2
Figure 3
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
30
Assignment Brief (RQF)
Update-patient registration
Figure 4
Figure 5
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
31
Assignment Brief (RQF)
Figure 6
Figure 7
Figure 8
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
32
Assignment Brief (RQF)
There are many problem-solving paradigms or models in Computer Science, which is the study of
algorithms and data. There are four problem-solving model categories: imperative, functional,
declarative and object-oriented languages (OOP). In object-oriented languages, algorithms are
expressed by defining ‘objects’ and having the objects interact with each other. Those objects are
things to be manipulated and they exist in the real world. They can be buildings, widgets on a
desktop, or human beings.
Object-oriented languages dominate the programming world because they model real-world
objects. UML is a combination of several object-oriented notations: Object-Oriented Design,
Object Modeling Technique, and Object-Oriented Software Engineering.
UML uses the strengths of these three approaches to present a more consistent methodology that's
easier to use. UML represents best practices for building and documenting different aspects of
software and business system modeling.
The Unified Modeling Language (UML) was created to forge a common, semantically
and syntactically rich visual modeling language for the architecture, design, and
implementation of complex software systems both structurally and behaviorally. UML
has applications beyond software development, such as process flow in manufacturing.
It is analogous to the blueprints used in other fields, and consists of different types of
diagrams. In the aggregate, UML diagrams describe the boundary, structure, and the
behavior of the system and the objects within it.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
33
Assignment Brief (RQF)
UML is not a programming language but there are tools that can be used to generate code
in various languages using UML diagrams. UML has a direct relation with object-oriented
analysis and design.
There are many problem-solving paradigms or models in Computer Science, which is the
study of algorithms and data. There are four problem-solving model categories:
imperative, functional, declarative and object-oriented languages (OOP).
Object-oriented languages dominate the programming world because they model real-
world objects. UML is a combination of several object-oriented notations: Object-
Oriented Design, Object Modeling Technique, and Object-Oriented Software
Engineering. UML uses the strengths of these three approaches to present a more
consistent methodology that's easier to use. UML represents best practices for building
and documenting different aspects of software and business system modeling.
‘The Three Amigos’ of software engineering as they were known, had evolved other
methodologies. They teamed up to provide clarity for programmers by creating new
standards. The collaboration between Grady, Booch, and Rumbaugh made all three
methods stronger and improved the final product.
The efforts of these thinkers resulted in the release of the UML 0.9 and 0.91 documents
in 1996. It soon became clear that several organizations, including Microsoft, Oracle, and
IBM saw UML as critical to their own business development. They, along with many
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
34
Assignment Brief (RQF)
other individuals and companies, established resources that could develop a full-fledged
modeling language. The Three Amigos published The Unified Modeling Language User
Guide in 1999, and an update which includes information about UML 2.0 in the 2005
Second Edition.
Each of UML inventors, viz, Grady Booch, Ivar Jacobson, and James Rumbaugh had a
fantastic idea for designing a language which will reduce the complexity. Booch's method
was very flexible to work with during the design and construction of objects. Jacobson's
method provided a great way to work around use-cases. It also has a powerful approach
for high-level design.
Rumbaugh's method turned out to be very useful while handling sensitive systems. Later
on, behavioral models and state-charts were introduced in the UML which were invented
by David Harel. UML was recognized as a standard by Object Management Group
(OMG) during 1997. Object Management Group is responsible for managing UML ever
since it was adopted as a standard. In 2005, the International Organization for
Standardization approved UML as an ISO standard. It is used in various industries for
creating object-oriented models.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
35
Assignment Brief (RQF)
Figure 9
Figure 10
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
36
Assignment Brief (RQF)
Figure 11
LOGIN
USERNAME
PASSWORD
LOGIN
Figure 12
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
37
Assignment Brief (RQF)
PATIENT REGISTRATION
ID
NAME
ADDRESS
CONTACT NO
BLOOD GROUP
CLEAR
Figure 13
ROOM SELECTION
PATIENT ID
ROOM TYPE
PAYMENT
Figure 14
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
38
Assignment Brief (RQF)
INSPECTION DETALS
VIEW
Figure 15
BILL DETALS
PATIENT ID
DATE
TIME
ITEM
DESCRIPTION
QUANTITY
TOTAL
Figure 16
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
39
Assignment Brief (RQF)
Login page
Figure 17
Registration
Figure 18
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
40
Assignment Brief (RQF)
Patient information
Figure 19
Bill information
Figure 20
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
41
Assignment Brief (RQF)
Figure 21
A page to add or search for any employee or doctor in the hospital and know all the details. Here
is a report in this system. we can search and get the patients details with this form easily. This is a
advantage of this system. Some times the data entered wrongly, in that situation we can update
here also. The Grid view option helps to see the data in one view immedietly.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
42
Assignment Brief (RQF)
Figure 21
Figure 22
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
43
Assignment Brief (RQF)
The evaluation process carried out entire software development life cycle to achieve the
user friendly system with satisfaction of user requirements. From this phase the all
aspect of Online reading materials delivery system was tested with sample data and
validates all.
The testing is very important to identify and detect error, check if the system is working
properly or not, validating the system and verification all activities of the software
implement correctly or not.
Testing
In testing there are many approaches available in software testing. But mainly there is two method
of testing, static and dynamic testing. Static testing is often implicit, as proof reading, plus when
programming tools/ text editor check source code, check syntax and data flow. The dynamic
testing takes place when the program itself is run. The dynamic test may begin before the program
is complete in order to test particular sections of code and are applied to discrete functions or
modules. Static testing involves verification, whereas dynamic testing involves validation.
Software testing methods are traditionally divided into white-box and black-box testing.
Whitebox testing tests internal structures or workings of a program. The black-box
testing is examining functionality of the system without any knowledge of internal
implementation of the code. Given input to the system and check output value with
expected value specified in the test case. In testing there are several levels of testing
such as unit testing, integration testing, system testing and acceptance testing.
Unit testing
Unit testing also known as component testing, refers to tests that verify the functionality of a
specific section of code, usually at the function level. In an object oriented concept this is usually
at the class level, and the minimal unit tests include the constructors and destructors. These types
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
44
Assignment Brief (RQF)
of tests are usually written by developers as they work on code (white-box style), to ensure that
the specific function is working as expected.
Integration tetsing
Integration testing is any type of software testing that seeks to verify the interface between
components against a software design. Software components may be integrated in an iterative way
or altogether. Integration testing works to expose defects in the interface and interaction between
integrated components. In integration testing there are several methods such as top-down testing,
bottom-up testing and interface testing. Top-down testing means, first test top level components
then the lower level components implemented and tested until lowest level reached. Bottom-up
testing means, the lower level components are tested and then working up on modules until the
final components is tested. Interface test means, it is done when modules or sub system are
integrated and built with larger system.
System testing
The system testing, tests a completely integrated system to verify that it meets its requirements.
The system testing should ensure that the program, as well as working as expected, does not also
destroy or partially corrupt its operating environment or cause other processes within that
environment to become inoperative.
Acceptance testing
At last system is delivered to the user foe acceptance testing. The different testing are used and
validated in different part of this project. The sample data were entered to the system to all modules
need to be tested in order to test the function. We test the all form, view, manage and report with
sample data. If we enter wrong input system display meaningful error message.
The sample data were entered to the system to all modules need to be tested in order to test the
function. We test the all form, view, manage and report with sample data. If we enter wrong input
system display meaningful error message.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
45
Assignment Brief (RQF)
02 Register new System want to System allowed the Test case pass
patient allow only patient rpatientegistered
who input the
password
05 The browser Support all Support all browser Test case pass
support and browser and all and all windows
operating system windows version version support to our
support support to our system access and
system access load
and load
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
46
Assignment Brief (RQF)
In change Pass
password, new
password and
retype new
password
are different
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
47
Assignment Brief (RQF)
Automatically Pass
calculate the
number of medicine
and total
price
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
48
Assignment Brief (RQF)
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
49
Assignment Brief (RQF)
9. A technical and User Documentation for the Users and Technical support
team of Move me, including screenshots / dummies, guiding users to carry
out tasks within the system.
Login page
Figure 23
When registered user enters wrong username or password the system will provide an error
message. It shows on following Username Error.
Figure 24
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
50
Assignment Brief (RQF)
Before Enter to the system the user must need basic Admiration user login information
to login to system. If you do not have user account, you can simply click on register
here for mage user account User must file the all the fields in registration from after
submitting valid data to registration. User can simply enter data to login form and can
enter to software main menu.
In the main menu, you can use the navigation bar or navigate buttons to navigate around
the application.After the main steps, before working with system make super admin
accountis the best way to start system.
Setup super user account to make super admin account user must needs to top level admin.
You can create super admin account by clicking Super admin account from navigation
bar. After entering to super admin function user need top level admin username and
password to login to create super admin account.
After adding login information of top level admin account, you can go to top level
admin account.
Figure 25
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
51
Assignment Brief (RQF)
User can click and go to Patient info function by using navigation bar or main menu.
Patient Registration.
In Patient Registration, user need to fill form with patient data and this form direct connects to
OPD of hospital and user need to select OPD doctor for patient.
In the patient, Registration form the Contact number needs to enter with 0. (Ex –340000000) Need
to select OPD doctor, Gender and Blood group of Patient.
Patient Information.
Patient Information, this function can view all Patient of Hospital. It shows Patient name, OPD
doctor Name and Blood Group.
Admit to Hospital
User can see new tab with forum user needs to Disease and Room number. After inserting data
user can remove patient form Admitted Patient function.
Patient Search.
Patient Search function able user to find some advanced information about Patient. In Patient
Search user need to insert registration number, Mobile number, Emil, first name or blood group
in search box, by click search button without inserting data it shows all data in system about
patients.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
52
Assignment Brief (RQF)
To work with Patient information, Edit and Delete user need a super user account. By clicking
Patient Information Edit and Delete form tab it shows login form again, user needs to insert super
user login information. After login, it shows interface with search bar user can search user
by inserting registration number, Mobile number, first name or blood group in search box. By
entering search value to search box user can get results It has two options Update and Delete. By
clicking on Delete it simply delete the record of Patient. By pressing update use can update patient
information. After clicking update system shows registration form with previous values of
patient after entering new values to form user need to active update button by selectin “Enable
Fields” form Active Fields selection. After select user can update patient information.
In this function user, can view admitted patients and user can discharge patient by clicking
“Remove form room”. After clicking “Remove from Room” there is no turning back, it shows
invoice forum and discharge patient form hospital.In admitted patient invoice user need to insert
Medicine Charge, Doctor Charge and Count of Days to forum. After submitting user can view
and print invoice form Patient invoice function.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
53
Assignment Brief (RQF)
Add staff
Figure 26
Delete/Update Staff
Figure 27
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
54
Assignment Brief (RQF)
Figure 28
Add Medicine
Figure 29
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
55
Assignment Brief (RQF)
Add Tests
Figure 30
View patients
Figure 31
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
56
Assignment Brief (RQF)
View Requests
Figure 32
Patients Records
Figure 33
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
57
Assignment Brief (RQF)
Admit Patients
Figure 34
Release Patients
Figure 35
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
58
Assignment Brief (RQF)
Available blood
Figure 36
Figure 37
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
59
Assignment Brief (RQF)
Figure 38
Figure 39
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
60
Assignment Brief (RQF)
Activity diagram
Figure 40
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
61
Assignment Brief (RQF)
Figure 41
Figure 42
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
62
Assignment Brief (RQF)
The project Hospital Management System (HMS) is for computerizing the working in a hospital.
The software takes care of all the requirements of an average hospital and is capable to provide
easy and effective storage of information related to patients that come up to the hospital.
It generates test reports; provide prescription details including various tests, diet advice, and
medicines prescribed to patient and doctor. It also provides injection details and billing facility on
the basis of patient’s status whether it is an indoor or outdoor patient.
At the beginning of this project, everything look really simple and easy but as timewent by, it was
realized that there is more to the development of the software especially the coding part, though
at the end of it all it was worth it because the result is satisfying because the main ob-jective was
realized There are still limitations tothe development of this software because at the moment, the
software is stand alone and cannot communicate with other another computer from another branch
of the hospital. Improvement is still needed to further enhance it so that in future it can
communicate with other computers which have same software installed on them.Furthermore, at
the moment the response of the software is delayed due to some technicali-ties that cannot be
resolved at the moment due to time constrain of this the thesis. It must be stated at this point that
the project is still on-going and many bugs are being fixed as testing goes on.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
63
Assignment Brief (RQF)
Conclusion
Hospital management software is software meant to computerize the day to day average small
hospital management activities and capable of providing easy and very effective storage in-
formation including patient registration, patient medical records, doctors and nurses infor-mation.
Test reports, medication prescription details which include diet advice can also be performed by
the system. The billing facility of either inpatient or outpatient is also an attribute of thissoftware
and most importantly, a backup facility is included in the software in case of unexpected crash.
Understanding the complexity of software development process and life circle was quite chal-
lenging and demanding, therefore a lot of man power, coding and research were done for this
project to be completed. The main scope of this project is to develop complete package Hos-pital
management software for Rainbow Specialist Medical Center, which was one of the rea-son
development and de-signed took so long but what is shown in this thesis is limited to few modules
because it is contract between me and the company.
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
64
Assignment Brief (RQF)
Reference
Prepared by: Higher Education Qualifications (HEQ) Approved by: HEQ, QDAM (HE) Version
1.0 – November 2017
DCL 1 – Public (Unclassified)
65