You are on page 1of 50

Tisqaad Computer Science College

CERTIFICATE
This is to certify that the project titled “Canadian Dental Management System” is

a bona- fide work done by

Student Name

1) Abdijibar Mohamoud Abdi


2) Abdikariim Hassan Mohamed
3) Mohamed Ahmed Ibrahim

In partial fulfillment of the requirements for the award of Diploma. (ICT)

(Eng: Abdirizak Mohamed Abdilahi)


Advisor

I
DECLARATION
We, Abdijibar Mohamoud Abdi, Abdikarim Hassan Mohamed, Mohamed Ahmed Ibrahim
hereby declare that this thesis is our original work and has not been presented for the
award of any diploma in any other college or university.

Abdijibar Mohamoud Abdi Abdikarim Hassan Mohamed

Signature……………………. Signature…………………….

Mohamed Ahmed Ibrahim

Signature…………………….

Date: ………………….

This thesis has been submitted with my approval as supervisor:

Eng: Abdirizak Mohamed Abdilahi

ICT,

Tisqaad College, Hargeisa. Somaliland.

Signature……………………........... Date: ……………………………

II
ACKNOWLEDGEMEN

BISMILLAH , first thanks to Allah(SW) who allowed us to achieve this stage of life and
make our long dream came true, again special thanks goes to our parents whom their
encouragement and advice for our studying.

We are also here to express our gratitude to our advisor Mr.: Abdirizak Mohamed Abdilahi
for his support, guidance and encouragement of our project.

This book would not have been possible without the help of many people whose
comments and suggestions significantly improved the end result of this project.

Finally, we wish to express our appreciation to all who has contributed whatever
donations to this paper including our family, friends and our honorable teachers.

III
Table of Contents
CERTIFICATE ................................................................................................................................................... I
In partial fulfillment of the requirements for the award of Diploma. (ICT) ........................................... I
DECLARATION ............................................................................................................................................... II
ACKNOWLEDGEMEN .................................................................................................................................... III
Table of Contents ........................................................................................... Error! Bookmark not defined.
Chapter One ................................................................................................................................................ 1
Introduction ................................................................................................................................................. 1
1.0 Introduction ....................................................................................................................................... 1
1.1 Background ....................................................................................................................................... 2
1.1.1 Organization Background ......................................................................................................... 2
1.1.2 Mission ........................................................................................................................................ 2
1.1.3 Vision........................................................................................................................................... 2
1.1.4 Org Structure ............................................................................................................................. 3
1.2 Problem Statement............................................................................................................................ 3
1.3 Proposed Solution ............................................................................................................................. 4
1.4 The project goals and objectives ......................................................................................................... 4
1.4.1 Project Goals ................................................................................................................................ 4
1.4.2 Project Objectives ........................................................................................................................ 4
1.5 Theoretical background ................................................................................................................... 5
1.6 Project management: ........................................................................................................................ 6
1.6.1 Total Cost .................................................................................................................................... 6
1.6.2 Time management ...................................................................................................................... 6
Chapter two ................................................................................................................................................. 7
Analysis ........................................................................................................................................................ 7
2.0 Introduction ....................................................................................................................................... 7
2.1 Fact Finding....................................................................................................................................... 7
2.1.1 Interview ..................................................................................................................................... 7
2.2 Requirement ...................................................................................................................................... 8
2.2.1 Functional requirement system ................................................................................................ 8
2.2.2 Non-fictional requirements ....................................................................................................... 9
2.3 System DFDs.................................................................................................................................... 10

IV
2.3.1 Context Diagrams .................................................................................................................... 10
2.3.2 Level zero diagrams ................................................................................................................. 11
2.3.3 Lower level diagram ................................................................................................................ 13
Chapter Three ........................................................................................................................................... 14
Project Design............................................................................................................................................ 14
3.0 Introduction: ................................................................................................................................... 14
3.1: Data Dictionary .............................................................................................................................. 14
3.1.2 Data structure dictionary ............................................................................................................ 15
3.1.3 Data store dictionary ............................................................................................................... 16
3.1.4 Data flow dictionary................................................................................................................. 16
3.2 Data design ...................................................................................................................................... 17
3.2.1 Entities and Attributes............................................................................................................. 17
3.2.2 Database design ........................................................................................................................ 17
3.3 Interface & Screens Design ............................................................................................................ 22
3.4 Input, Output & report Design .......................................................................................................... 22
Chapter Four ............................................................................................................................................... 24
Project Implementation ............................................................................................................................. 24
4.0 Introduction: ................................................................................................................................... 24
4.1 Application Development ............................................................................................................... 24
............................................................................................................................................................ 31
4.1.1 Modules ..................................................................................................................................... 31
............................................................................................................................................................ 34
............................................................................................................................................................ 35
............................................................................................................................................................ 36
............................................................................................................................................................ 40
4.1.2Refer to DFDs, process description, ERDs ............................................................................. 41
4.2 User manual.................................................................................................................................... 41
Chapter Five .............................................................................................................................................. 42
Project Conclusion .................................................................................................................................... 42
5.1 Future work:.................................................................................................................................... 42
5.2 Conclusions:..................................................................................................................................... 42
5.3 Reference ......................................................................................................................................... 43

V
VI
Chapter One
Introduction
1.0 Introduction
Canadian dental Management system is software for registration manipulating and storing the data
in each customer, and other clients in the field. This dental is the most popular in Somaliland
special Hargeisa City. Dental health centers are important because they provide crucial services to
the society, so it is necessary to automate their work process in order to enhance the quality of
their service. They provide instruction on brushing, flossing, the use of fluorides, and other aspects
of dental care. They remove tooth decay, fill cavities, examine X rays, place protective plastic
sealants on children's teeth, straighten teeth, and repair fractured teeth. They also perform
corrective surgery on gums and supporting bones to treat gum diseases.
Dentists extract teeth and make models and measurements for dentures to replace missing teeth.
They also administer anesthetics and write prescriptions for antibiotics and other medications.
Since most of our dental clinics work manual system, and it is very hard to keep track the health
situation of the patients in an order manner with time to time.
At that time, it is worthwhile to make a database system that safe and keep track the information
of the patients as well as simplify their work up to extent.
The other reason why it is important for dental clinics to have a database system is that patients
with dental problems might take long time to cure and visits their doctors/consultants more than
one time, so the dentist have to follow up their treatment history properly to provide the best
treatment type. This dental is located opposite the Somcable in Hargeisa City but our project this
only designed in Canadian dental for registration and storing data of employees and customers, So
we decided to make a modern technology program that dental works for and at that time we used
C# .net which as an object-oriented language and it was the only language we thought is good for
making dental management system. This project has started the month of January 23 2020 and
designed for registration manipulate updates and also store client’s information it also included.
Any customer that joint and leave and their information and also the schedule of employees and
their work Also This project it included a database program in order to save the
data in the dental information and etc. So, we thought Microsoft SQL server is suitable for
connecting C#.net program.

1
1.1 Background
1.1.1 Organization Background
This Canadian dental was started working 2016 and it located Sha’ab village opposite Somcable
the owner of the dental is takaful insurance and consists in several parts and the employee that
works. And also, this dental works like the international dental in the world and it is better than
other dentals in Hargeisa to cover all needs and wants of the customers.
Canadian dental clinic and pharmacy principal activities include flossing, the use of fluorides,
remove tooth decay, fill cavities, examine X rays, place protective plastic sealants on teeth,
straighten teeth, and repair fractured teeth. They also perform curative surgery on gums and
supporting bones to treat gum diseases.
The dental clinic is small in size and has no branches in other regions of Somaliland.
The dental clinic works 11/5 every day except weekends, the dentist works two shifts.
In the morning the dentist check patients that has already examined and described their problem,
while in the afternoon the dentist tries to receive and see the complaints of at least 50 patients.
Apart from Canadian Dental Clinic and Pharmacy, there are many other dental clinics which
provide the same service to the society, but the reliable knowledge of the Dr. and his team made
the clinic the most famous and customer oriented dental clinic in Somaliland.
Canadian Dental Clinic and Pharmacy work in a manual system; they use big books to store the
information of their patients.
Also, dental staffs are always ready to serve to the dental's customers and customer satisfaction.
1.1.2 Mission
1. Our mission to able by the rule of the low, and adherent to the principle of Islamic
religion. Human rights and moral values.
2. Promoting best dental
1.1.3 Vision
To be the first choice for customers, Exceptional and personalized service, exceeding expectations,
and inspiring a connection to our service in the experiences we provide.
And also, we want to become the best dental in the Somaliland
Values
At its core, the Canadian dental holds the following values and beliefs:

2
Exceptional Service - We understand that the value can be created with every encounter and this
is reflected in our superior standard of service.
Integrity - We are honest and straight forward in our interactions with our customers and the
communities in which we operate.
Respect - We respect the objectives of our clients, the values of our customers, and the cultural
difference in the locations that we operate. Teamwork and Passion - We bring our individual
expertise, creativity and passion for our customers as a Canadian dental team member.

1.1.4 Org Structure

Customer manager Staff

Cashier

1.2 Problem Statement


As for this time being, there is no dental database system that had been applied to the Dental
Clinics in Somaliland.
Usually, the dentists use a dentist card to record all the dental information. This information may
easily being cheated, as the information can be deleted and also change easily. The manual paper-
based method that had been used by the clinic can be viewed by anyone else. Dental patient
information should be kept as a secret by the clinic as a policy of treatment. In addition, the dentist
card has the possibility to lost, misplace or being taken by someone else. Again, which threaten
the data of the patients, waste of space, unnecessary costs are involved, take time, also mistakes
are not always avoidable and repetition of work may take place. By having the new Development
of Dental Database System for Canadian Dental Clinical the record regarding the patient dental
information will be kept in a secure database and can be easily keep track by the dentist. Dentist
can figure out the best treatment for the patient by viewing the past dental history that had been
recorded before. So, to organize, keep save patient’s information and provide the
best, appropriate treatments to the patients there must be a database system that stores the right
information for every patient.

3
this system is transferring from a lot of the problem is lost would This dental lost everything you
write your personal computer and puts it could resolve problems of dental I want to use this
program to that we make because the program is very useful quality.
1) The dental we were working for, were manual system and were not right to store in this
modern in this modern time
2) This dental has no database system to store data of the customers
3) There was no computerized system for employees and customer’s data.
4) Sometimes the data is losing

1.3 Proposed Solution


The solution proposed is to have a comprehensive dental project. to have the problem of the
solution paper and in order to succeed with this Project, the problem was too much help from the
voucher registration and contains everything that is demanded first and ongoing use of paper and
lists of useless.
1) The solutions we did in this program was to solve this problem we mentioned above firstly
we ensured to get a guarantee programing language to do is big project, then we realized
that C sharp programing language is suitable for making dental management system.
2) The problem for employees and customers mentioned above we solved we make system
for that to store the data of each employees and customer’s data
3) The database problem we mentioned above was also the problems we solved and when you
are designing C#.net program you should use SQL server because that program is often the
program that related in C sharp programing language so we solved that problem
4) This project is solved losing data

1.4 The project goals and objectives


1.4.1 Project Goals
1. To get experience the way that makes the Programs
2. To help the dental to accountant their business affectively
3. To compete with same level Customer

1.4.2 Project Objectives


1. system to manage to save all customers records accurately and computerized
2. system should able to avoid the data redundancy of customer’s information

4
3. system able to display available customers and left customers

1.5 Theoretical background


Comprehensive dental care services that deliver effective, safe, high-quality intervention to those
that need them, when and where needed, with minimum waste of resource, and with continuity of
care across levels of care, settings, and providers.
Our software has the facility to give a unique id for every patient and stores the details of every
patient and the doctor automatically.
RESOURCE REQUIREMENT
The Platforms that is running the project is
❖ Operating Systems:
Microsoft Windows 8
Microsoft Windows 10
❖ Packages of the Application:
Microsoft Visual Studio 2015
Microsoft SQL server 2014
1. Hardware Requirements
The following lists are the minimum system requirements to run the project:
1. RAM (Random Access Memory) 8GB
2. CPU (Central Process Unit) requires a computer Pentium processor with a clock speed of
at least 233 megahertz (MHz). Microsoft recommends a computer with a cori5 or faster
processor
3. Available Hard Disk Space 500 GB of available hard-disk space
We use during making this program two programs those are Sql server and Microsoft C sharp
those Makes easier to make these projects and the advantage of these programs
1. The Sql server management system allows storing data and tables of the Projects
2. And C sharp helps us to build the structure and front end of the projects
We are determined to be an over program we want to do anything that will help business
Our hope to achieve and implement a system to make accurate long-time interrupted program
Working.

5
1.6 Project management:
1.6.1 Total Cost
In this project, we did not face a lot of cost issues specially hardware cost because the dental
we were working for had not a program of hardware it had computer also have laptops but the
issue was to buy software’s we bought Microsoft SQL server and Microsoft Visual studio
also, laptop or desktop computer to use this software, that took as a money that we estimated $260
and that Software’s that the dental works.

Hardware Type of Hardware Cost

Computer hp Computer $185

Laptop Hp Laptop $260

Ram 8GB $30

Mouse Wireless $6

Printer Hp printer $165

1.6.2 Time management:

PROJECT CHAPTERS
Chapter Five

Chapter Four
PROJECT HAPTERS

Chapter Three

Chapter Two

Chapter One

0 2 4 6 8 10 12 14 16

TIME/DAYS

6
Chapter two

Analysis
2.0 Introduction
System analysis is a logical process; the objective of this phase is not actually to solve the problem
but to determine what must be done to solve the problem. The basic objective of the analysis stage
is to develop the logical model of the system.
This chapter will provide a full description of the system and its users then it depicts the functional
And non-functional requirements that have been collected using several methods from
Brainstorming interview and e-surveys, after determining the most important requirement,
Requirement analysis was adopted using several tools such as use –case diagram, sequence
diagram and activity diagram Before making our project we must to make Analysis to try the solve
problems that we found our analysis. In this chapter we deliberate to analysis the system and easily
to understand how data is follow. The data Follow diagrams (DFDs) or fact finding they are help
to building international system,

2.1 Fact Finding


2.1.1 Interview
Analyze manager
A: Do you use a computer? B: yes, we use a computer and voucher that
have to store data.
A: what are the problems that your Dental B: sometimes data can lost
needs to help? They Do not take full information patient in
Registration.
A: How to see if we make you program your B: I need to find our own program and doing
own? jobs weneed
A: what do you think will make program easy B: we hope it will be fullness program
to use for you?

7
2.2 Requirement
Before starting making any project the manager of project must determine what is functional, on
functional and quality functional for the project. Functional requirements show how the system
behave. Nonfunctional requirements are mainly to specify criteria that judge the operation of the
system like reliability for example. Quality requirement will show security, usability and
maintainability of project
2.2.1 Functional requirement system
It will describe what the software should do and also define the internal working of software
And also it is a requirement that specifies criteria that can be used to judge the
Operation of a system, rather than specific behaviors. They are contrasted with functional
Requirements that define specific behavior or functions. On the other side:
The functional requirements document is a formal statement of an application’s functional
Requirements. It serves the same purpose as a contract. The developers agree to provide the
Capabilities specified. The client agrees to find the product satisfactory if it provides the
Capabilities specified in the Functional requirements.
The system should add the details along with automatically generated registration number of newly
admitted patients to the database
The system should search for existing patient details for a given registration number
The system should keep the track of vacant and occupied beds in general ward and ICU
The clinic has one dentist and two staff which are responsible for patient registration, and giving
prescribed drugs to the patients.
So this system is going to be used in a small network (client- server based) in which the dentist
himself is the administrator of the database and responsible who is accessing the database and what
privileges should be given to the users.
User id and password must be maintained to restrict data access and empower data integrity.
The new system should be a very simple and easy to use one; most important it should be very
user friendly so that the user can get used to, without a lot of pre-training.
1. All Registrations can be completed automatically as you enter data.
2. Data can be saved automatically soon after it is entered so that the risk of data being lost is
minimized.
3. Sorting and storing documents and other information like searching is much easier.

8
4. Searching and retrieving data is much easier.
5. Validation rules can be used in order to guarantee better verification
6.Addition of new patients, modification of appointment, keeping the patient’s treatment history
will be simple
❖ Step one: how to enter system
✓ Enter the password of administrator will be able to create account and delete update
data in this Dental management system.
How to create new data: You can enter new record via visual basic studio and
SQL server
1. Click new button then patient ID
2. Write the patient name, then
3. Gender
4. Fill the phone patient then
5. Write Data-register
6. And then click save button
❖ Step Two:
How to update: Is the change data already exist another new data if you made mistake
1. click patient’s tables you want to update
2. click Address or phone you went to update, then
3. Click update button your date will be update.
2.2.2 Non-fictional requirements
These define system properties and constraints e.g. reliability, response time and storage
requirements. Constraints are I/O device capability, system representations, etc.
Process requirements may also be specified mandating a particular IDE, programming language
or development method.
Non-functional requirements may be more critical than
Functional requirements. If these are not met, the system may be useless.
Usability: the system should be easy to use by Staff.
Maintainability: the system must be easy to modify and maintain.
Effectiveness: This means that system should perform well in relation to the effort.
Interoperability: the system should be able to work with any operating system easily.

9
Efficiency: the system must give good result within amount of time.
Security: the system should be secured from un-authorized access.
Accessibility: we must make sure that the system be accessible for all authorized staff and not
accessibility by anyone else.
Extensibility: the system must be customizable.

2.3 System DFDs


A Data-Flow Diagram (DFD) is a graphical visualization of the movement of data through an
Information system
DFDs are one of the three essential components of the structured-systems analysis and design
Method (SSADM).

2.3.1 Context Diagrams


Context diagram diagrams and data follows Context Diagrams and Data-Flow
Diagrams were created for systems analysis and design.

Patient Doctor
Dental
Patient Visits Management
System Patient Information

Payment detail Employee detail

Payment
Employee

10
2.3.2 Level zero diagrams
In this part we will study diagrams in the project that how can easily understand Diagrams can
Help us to understand main concept of the project many people can understands easily understand
What diagrams tells us
1. Shows all the major processes that comprise the overall system the internal components
Of process zero
2. On the other side:
3. Shows how the major processes are interrelated by data flows
4. Shows external entities and the major processes with which they interact
5. Adds data stores
Data flow diagrams (DFDs) reveal relationships among and between the various
components in a
Program or system. DFDs are an important technique for modeling a system’s high-level
detail
By showing how input data is transformed to output results through a sequence of
functional
Transformations. DFDs consist of four major components: entities, processes, data stores,
and data flows.
In below pictures tells us the process of the programming is working

11
Level zero diagrams

Permission Employee

Patient

Request
Invoice
Request

System Doctor
Request

Expense

Payment
Manager
Report

D1 Payment FILE

12
2.3.3 Lower level diagram
A lower level diagram is component-level design process that follows a step-by-step
refinement
Process. This process can be used for designing data structures, required software
architecture
The goal of LLD or a low-level design document (LLDD) is to give the internal logical
design of
The actual program code. High-level design is created based on the low-level design. LLD
describes
The class diagrams with the methods and relations between classes and program specs. It
describes
The modules so that the programmer can directly code the program from the document.

13
Chapter Three

Project Design
3.0 Introduction:
In this chapter we deliberate and express to the system and easily to see graphical design project.
Here, we shaping on the system and always users shall to see the design to evaluate.

3.1: Data Dictionary


A data dictionary is a collection of descriptions of the data objects or items in a data model for the
benefit of programmers and others who need to refer to them. A first step in analyzing a system of
objects with which users interact is to identify each object and its relationship to other objects.
This process is called data modeling and results in a picture of object relationships. After each data
object or item is given a descriptive name, its relationship is described (or it becomes part of some
structure that implicitly describes relationship), the type of data (such as text or image or binary
value) is described, possible predefined values are listed, and a brief textual description is
provided. This collection can be organized for reference into a book called a data dictionary. When
developing programs that use the data model, a data dictionary can be consulted to understand
where a data item fits in the structure, what values it may contain, and basically what the data item
means in real-world terms. For example, a bank or group of banks could model the Data objects
involved in consumer banking. They could then provide a data dictionary for a bank's
programmers.

Entity Attribute Type/Size Primary key

Patient ID INT

Patient Full name Varchar (50)

Patient Age INT

Patient Gender VARCHAR (50)

Patient Tell INT

14
Patient Registration date VARCHAR (50)

Entity Attribute Type/Size Primary key

Patient Id No Int

Doctor Name Name Varchar (50)

Date of appointment Date Date & time

Appointment Time Time Date & time

3.1.2 Data structure dictionary


A dictionary is a general-purpose data structure for storing a group of objects. A dictionary has a
set of keys and each key has a single associated value. When presented with a key, the dictionary
will return the associated value. Which data structure can be used for efficiently building a word
dictionary and Spell Checker?

The answer depends upon the functionalists required in Spell Checker and availability of memory.
For example, following are few possibilities.

1. Hashing is one simple option for this. We can put all words in a hash table. Refer this paper
which compares hashing with self-balancing Binary Search Trees and Skip List, and shows that
hashing performs better. 2. Hashing doesn’t support operations like prefix search. Prefix search is
something where a user types a prefix and your dictionary shows all words starting with that prefix.
Hashing also doesn’t support efficient printing of all words in dictionary in alphabetical order and
nearest neighbor search.

Dental
Patient management Admin
system

15
3.1.3 Data store dictionary
A data store is a repository for persistently storing and managing collections of data which include
not just repositories like databases, but also simpler store types such as simple files, emails etc. A
database is a series of bytes that is managed by a database management system (DBMS). A file is
a series of bytes that is managed by a file system. Thus, any database or file is a series of bytes
that, once stored, is called a data store.

3.1.4 Data flow dictionary


In computers, the path of data from source document to data entry to processing to final reports.
Data changes format and sequence (within a file) as it moves from program to program. In
communications, the path taken by a message from origination to destination that includes all
nodes through which the data travels.

Patients
Administrator

Processor

Dental management Nurses


system

Data source
16
3.2 Data design
3.2.1 Entities and Attributes
An entity relationship diagram is a means of visualizing how the information a system produces is
related. There are five main components of an ERD:
Entities which are represented by rectangles. An entity is an object or concept about which you
want to store information

Entity

A weak entity is an entity that must defined by a foreign key relationship with another entity as
it cannot be uniquely identified by its own attributes alone.

Entity

Actions, which are represented by diamond shapes, show how two entities share information in
the database

Entity

3.2.2 Database design


A database is a collection of information that is organized so that it can easily be accessed,
managed, and updated. In one view, databases can be classified according to types of content
bibliographic, full-text, numeric, and images.A database is a list or a group of lists of objects
organized to make the list(s) and their values easy to create and manage. In the computer world,
this suggests, rightly, that the list(s) and (their) values are stored in a machine. As information
becomes of high importance, almost every company keeps some type of database, whether it
includes its employees, its customers, or the products it sells.
Database design is the process of producing a detailed data model of database. This data model
contains all the needed logical and physical design choices and physical storage parameters needed

17
to generate a design in a data definition language, which can then be used to create a database. A
fully attributed data model contains detailed attributes for each entity.
The term database design can be used to describe many different parts of the design of an overall
database system. Principally, and most correctly, it can be thought of as the logical design of the
base data structures used to store the data. In the relational model these are the tables and views.
In an object database the entities and relationships map directly to object classes and named
relationships. However, the term database design could also be used to apply to the overall process
of designing, not just the base data structures, but also the forms and queries used as part of the
overall database application within the database management system (DBMS).

The process of doing database design generally consists of a number of steps which will be carried
out by the database designer. Usually, the designer must:

1) Determine the data to be stored in the database.

2) Determine the relationships between the different data elements.

3) Superimpose a logical structure upon the data on the basis of these relationships

3.2.2.3 create an initial ERD

18
3.2.2.4 assign all data elements to entities

3.2.2.5 create 3NF designs for all tables, taking care to identify all primary
and foreign keys

Database Normalization:

19
is a process in which data attributes within a data model are organized to increase the cohesion of
entity types in other words, the goal of data normalization is to reduce and even eliminate data
redundancy, an important consideration for application developers because it is incredibly difficult
to stores objects in a relational database that maintains the same information in several places?

First Normal Form (1NF)

As per First Normal Form, no two Rows of data must contain repeating group of information i.e.
each set of columns must have a unique value, such that multiple columns cannot be used to fetch
the same row. Each table should be organized into rows, and each row should have a primary key
that distinguishes it as unique. The Primary key is usually a single column, but sometimes more
than one column can be combined to create a single primary key. For example, consider a table
which is not in First normal form in First. Normal Form, any row must not have a column in which
more than one value is saved, like separated with commas. Rather than that, we must separate such
data into multiple rows

Second Normal Form (2NF)

A table is in Second Normal Form if it is in 1NF and all of its non-key columns depend on the full
key

20
Third Normal Form (3NF)
A table is in Third Normal Form if it is in 2NF and has no transitive dependencies. A transitive
dependency is one in which a first column determines a second column, and that second column
in turn determines a third column.
Most database designers don't bother going any further, but there are more normal forms should
you be interested.

3.2.2.4 generate the final ERD that will include new entities identified during
normalization

21
3.3 Interface & Screens Design

3.4 Input, Output & report Design.

22
3.5 Control Design.

New Clear Button

Save Button
Save

Update Update Button

Delete Delete Button

23
Chapter Four

Project Implementation
4.0 Introduction:
In this chapter we deliberate and express to the system and easily to see graphical design project.

Here, we shaping on the system and always users shall to see the design to evaluate.

4.1 Application Development


Login from:
This form allows you to enter the project and needs you to enter username and password to enter

the project, if you type incorrect username or password you can enter the project so its security
form

login Form code


When you passed the login form you will come and show main Form. Main form consists of all
form in our system, such as register customer, rooms, payment and etc.

SqlConnection cn = new SqlConnection("Data Source=DESKTOP-1IH0L1E;Initial Catalog=Project;Integrated


Security=True");
string str = "Select * from Users where UserName='" + TXTUsername .Text.Trim() + "' and Password='"
+ TXTPassword .Text.Trim() + "'";
SqlDataAdapter da = new SqlDataAdapter(str, cn);
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count == 1) 24
Main Form

private void Home_Load(object sender, EventArgs e)


{

}
private void pictureBox2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void metroLabel1_Click(object sender, EventArgs e)
{
Home f1 = new Home();
f1.Show();
this.Hide();
}
private void metroLabel2_Click(object sender, EventArgs e)
{
Doctors f2 = new Doctors ();
f2.Show();
this.Hide();
}
private void metroLabel3_Click(object sender, EventArgs e)
{
Patient f1 = new Patient ();
f1.Show();
this.Hide();

25
Doctor

Save

private void btnSave_Click(object sender, EventArgs e)


{
try
{
if (txtDoctor_ID.Text != "" && txtDoctorName.Text != "" && txtGender.Text !=
"" && txtTell.Text != "" && txtQualification.Text != "")
{
Cmd = new SqlCommand("insert into Doctors
values(@Doctor_ID,@Doctor_Name,@Gender,@Tell,@Hire_Date,@Qualification )", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
Cmd.Parameters.AddWithValue("@Doctor_ID", txtDoctor_ID.Text);
Cmd.Parameters.AddWithValue("@Doctor_Name", txtDoctorName.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Tell", txtTell.Text);
Cmd.Parameters.AddWithValue("@Hire_Date", dtp.Value);
Cmd.Parameters.AddWithValue("@Qualification", txtQualification.Text);

Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Successfully Saved");
DisplayData();
ClearData();

}
26
Update

private void btnUpdate_Click(object sender, EventArgs e)


{
try
{
if (txtDoctor_ID.Text != "" && txtDoctorName.Text != "" &&
txtGender.Text != "" && txtTell.Text != "" && txtQualification.Text != "")
{
Cmd = new SqlCommand("update Doctors Set
Doctor_ID=@Doctor_ID,Doctor_Name=@Doctor_Name,Gender=@Gender,Tell=@Tell,Hire_Date=@Hir
e_Date,Qualification=@Qualification Where Doctor_ID=@Doctor_ID", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtDoctor_ID.Text);
Cmd.Parameters.AddWithValue("@Doctor_ID", ID);
Cmd.Parameters.AddWithValue("@Doctor_Name", txtDoctorName.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Tell", txtTell.Text);
Cmd.Parameters.AddWithValue("@Hire_Date", dtp.Value);
Cmd.Parameters.AddWithValue("@Qualification",txtQualification.Text);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Successfully Updated");
DisplayData();
ClearData();
}

Delete
private void btnDelete_Click(object sender, EventArgs e)
{
try
{
if (txtDoctor_ID.Text != "")
{
Cmd = new SqlCommand("delete Doctors where Doctor_ID= @Doctor_ID",
cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtDoctor_ID.Text);
Cmd.Parameters.AddWithValue("@Doctor_ID", ID);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record deleted Successfully");
DisplayData();
ClearData();
}

27
Patient

public partial class Patient : MetroFramework .Forms .MetroForm


{
public Patient()
{
InitializeComponent();
}
SqlConnection cn = new SqlConnection("Data Source=DESKTOP-1IH0L1E;Initial
Catalog=Project;Integrated Security=True");
SqlCommand Cmd;
SqlDataAdapter da;
DataTable table;
int ID = 0;

private void Patient_Load(object sender, EventArgs e)


{
cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from PatientRegistration", cn);
da.Fill(dt);
dgv.DataSource = dt;
cn.Close();
}
private void DisplayData()
{
cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from PatientRegistration", cn);
da.Fill(dt);
dgv.DataSource = dt; 28
cn.Close();
}
Save
private void btnSave_Click(object sender, EventArgs e)
{
try
{
if (txtPatientID.Text != "" && txtFullName.Text != "" && txtAge.Text != "" &&
txtGender.Text != "" && txtPTell.Text != "" && txtDoctorName.Text != "" && txtDoctore_ID .Text
!= "")
{
Cmd = new SqlCommand("insert into PatientRegistration
values(@Patient_ID,@Full_Name,@Age,@Gender,@Tell,@Registration_Date,@Doctor_Name,@Doctor_ID)",
cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
Cmd.Parameters.AddWithValue("@Patient_ID", txtPatientID.Text);
Cmd.Parameters.AddWithValue("@Full_Name", txtFullName.Text);
Cmd.Parameters.AddWithValue("@Age", txtAge.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Tell", txtPTell.Text);
Cmd.Parameters.AddWithValue("@Registration_Date", dtp.Value);
Cmd.Parameters.AddWithValue("@Doctor_Name", txtDoctorName.Text);
Cmd.Parameters.AddWithValue("@Doctor_ID", txtDoctore_ID .Text);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Successfully Saved");
DisplayData();
ClearData();
}

Update

private void btnUpdate_Click(object sender, EventArgs e)


{
try
{
if (txtPatientID.Text != "" && txtFullName.Text != "" && txtAge.Text != ""
&& txtGender.Text != "" && txtPTell.Text != "" && txtDoctorName.Text != "" &&
txtDoctore_ID.Text != "")
{
Cmd = new SqlCommand(" update PatientRegistration set
Patient_ID=@Patient_ID,Full_Name= @Full_Name, Age=@Age, Gender=@Gender, Tell=@Tell,
Registration_Date=@Registration_Date, Doctor_Name=@Doctor_Name, Doctor_ID=@Doctor_ID where
Full_Name= @Full_Name", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtPatientID.Text);
Cmd.Parameters.AddWithValue("@Patient_ID", ID);
Cmd.Parameters.AddWithValue("@Full_Name", txtFullName.Text);
Cmd.Parameters.AddWithValue("@Age", txtAge.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Tell", txtPTell.Text);
Cmd.Parameters.AddWithValue("@Registration_Date", dtp.Value);
Cmd.Parameters.AddWithValue("@Doctor_Name", txtDoctorName.Text);
Cmd.Parameters.AddWithValue("@Doctor_ID", txtDoctore_ID.Text);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record Updated Successfully");
DisplayData(); 29
ClearData();
}
Delete

private void btDelete_Click(object sender, EventArgs e)


{
try
{
if (txtPatientID .Text != "")
{
Cmd = new SqlCommand("delete PatientRegistration where Patient_ID=
@Patient_ID", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtPatientID .Text);
Cmd.Parameters.AddWithValue("@Patient_ID", ID );
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record deleted Successfully");
DisplayData();
ClearData();
}

else
{
MessageBox.Show("Please select record to delete");
}
}
catch (Exception ex)
{

MessageBox.Show(ex.Message);
}

Clear
private void btnClear_Click(object sender, EventArgs e)
{
txtPatientID.Clear();
txtFullName.Clear();
txtGender.Clear();
txtAge.Clear();

txtPTell.Clear();
txtDoctorName.Clear();
txtSearch.Clear();

30
4.1.1 Modules
SqlConnection cn = new SqlConnection("Data Source=DESKTOP-1IH0L1E;Initial
Catalog=Project;Integrated Security=True");
SqlCommand Cmd;
SqlDataAdapter da;
DataTable table;
int ID = 0;

private void Employee_Load(object sender, EventArgs e)


{

cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from Employee", cn);
da.Fill(dt);

dgv.DataSource = dt;
cn.Close();

}
private void DisplayData()
{
cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from Employee", cn);
da.Fill(dt);
dgv.DataSource = dt;
cn.Close();
}
private void ClearData()
{
txtEmployeeID.Clear();
txtFull_Name.Clear();
txtGender.Clear();
txtSalary.Clear();
txtJobTitle.Clear();
txtTell.Clear();
31
ID = 0;
}
Save

private void btnSave_Click(object sender, EventArgs e)


{
try
{
if (txtEmployeeID.Text != "" && txtFull_Name.Text != "" && txtGender.Text != "" &&
txtSalary .Text != "" && txtTell.Text != "" && txtJobTitle.Text != "" )
{
Cmd = new SqlCommand(" insert into Employee values(@Employee_ID, @Full_Name,
@Gender, @Salary, @Tell,@Job_Title, @Registration_Date )", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
Cmd.Parameters.AddWithValue("@Employee_ID", txtEmployeeID.Text);
Cmd.Parameters.AddWithValue("@Full_Name", txtFull_Name.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Salary", txtSalary.Text);
Cmd.Parameters.AddWithValue("@Tell", txtTell.Text);
Cmd.Parameters.AddWithValue("@Job_Title", txtJobTitle.Text);
Cmd.Parameters.AddWithValue("@Registration_Date", dtp .Value );

Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record Saved Successfully");
DisplayData();
ClearData();
}
else
{
MessageBox.Show("Please provide record");
}
}
catch (Exception ex)
{

MessageBox.Show(ex.Message);
}
}

32
Update
private void btnUpdate_Click(object sender, EventArgs e)
{
try
{
if (txtEmployeeID.Text != "" && txtFull_Name.Text != "" && txtGender.Text != "" &&
txtTell.Text != "" && txtJobTitle.Text != "" && txtSalary.Text != "" )
{
Cmd = new SqlCommand(" Update Employee set Employee_Id=@Employee_Id
,Full_Name=@Full_Name, Gender=@Gender, Salary=@Salary, Tell=@Tell , Job_Title=@Job_Title,
Registration_Date=@Registration_Date where Employee_Id=@Employee_Id", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtEmployeeID.Text);
Cmd.Parameters.AddWithValue("@Employee_Id", ID);
Cmd.Parameters.AddWithValue("@Full_Name", txtFull_Name.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Salary", txtSalary.Text);
Cmd.Parameters.AddWithValue("@Tell", txtTell.Text);
Cmd.Parameters.AddWithValue("@Job_Title", txtJobTitle.Text);
Cmd.Parameters.AddWithValue("@Registration_Date", dtp.Text);

Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record updated succesfuly");
DisplayData();
ClearData();
}

}
Delete catch (Exception ex)
{
private
Clearvoid btnDelete_Click(object sender, EventArgs e)
{ MessageBox.Show(ex.Message);
}try
{
if (txtEmployeeID.Text != "")
{
Cmd = new SqlCommand("delete Employee where Employee_ID= @Employee_ID", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtEmployeeID.Text);
Cmd.Parameters.AddWithValue("@Employee_ID", ID);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record deleted Successfully");
DisplayData();
ClearData();
}

else
{
MessageBox.Show("Please select record to delete");
}
}
catch (Exception ex)
{

MessageBox.Show(ex.Message);
}
33
}
Clear

private void btnClear_Click(object sender, EventArgs e)


{

txtEmployeeID.Clear();
txtFull_Name.Clear();
txtGender.Clear();
txtSalary.Clear();
txtTell.Clear();
txtJobTitle.Clear();
txtSearch.Clear();
}

34
public Salary()
{
InitializeComponent();
}
SqlConnection cn = new SqlConnection("Data Source=(local);Initial
Catalog=Project;Integrated Security=True");
SqlCommand Cmd;
SqlDataAdapter da;
DataTable table;
int ID = 0;
private void Salary_Load(object sender, EventArgs e)
{
cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from Salary", cn);
da.Fill(dt);

dgv.DataSource = dt;
cn.Close();

Save

private void btnSave_Click_1(object sender, EventArgs e)


{
try
{
if (txtEmployeeID.Text != "" && txtFull_Name.Text != "" && txtGender.Text != ""
&& txtGender.Text != "" && txtSalaryAmount.Text != "" && txtPAID.Text != "" )
{
Cmd = new SqlCommand(" insert into Salary values(@Employee_ID, @Full_Name,
@Gender, @Salary_Amount,@PAID, @Payroll_Date)", cn);
Update if (cn.State == ConnectionState.Closed)
cn.Open();
Cmd.Parameters.AddWithValue("@Employee_ID", txtEmployeeID.Text);
Cmd.Parameters.AddWithValue("@Full_Name", txtFull_Name.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Salary_Amount", txtSalaryAmount.Text);
Cmd.Parameters.AddWithValue("@PAID", txtPAID.Text);
Cmd.Parameters.AddWithValue("@Payroll_Date",dtp .Value );
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record Saved Successfully");
DisplayData();
ClearData();
}
else
{
MessageBox.Show("Please provide record");
}
}
35
Update

private void btnUpdate_Click_1(object sender, EventArgs e)


{
try
{
if (txtEmployeeID.Text != "" && txtFull_Name.Text != "" && txtGender.Text
!= "" && txtGender.Text != "" && txtSalaryAmount.Text != "" && txtPAID.Text != "" )
{
Cmd = new SqlCommand("update Salary set Employee_ID=@Employee_ID,
Full_Name=@Full_Name, Gender=@Gender, Salary_Amount=@Salary_Amount, PAID=@PAID,
Payroll_Date=@Payroll_Date where Employee_ID=@Employee_ID ", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtEmployeeID.Text);
Cmd.Parameters.AddWithValue("@Employee_ID", ID);
Cmd.Parameters.AddWithValue("@Full_Name", txtFull_Name.Text);
Cmd.Parameters.AddWithValue("@Gender", txtGender.Text);
Cmd.Parameters.AddWithValue("@Salary_Amount", txtSalaryAmount.Text);
Cmd.Parameters.AddWithValue("@PAID", txtPAID.Text);
Cmd.Parameters.AddWithValue("@Payroll_Date", dtp .Value );
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record updated Successfully");
DisplayData();
ClearData();
}
else
{
MessageBox.Show("Please provide record");
}

Delete
private void btnDelete_Click_2(object sender, EventArgs e)
{
try
{
if (txtEmployeeID.Text != "")
{
Cmd = new SqlCommand("delete Salary where Employee_ID= @Employee_ID",
cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtEmployeeID.Text);
Cmd.Parameters.AddWithValue("@Employee_ID", ID);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record deleted Successfully");
DisplayData();
ClearData();
}

else
{
MessageBox.Show("Please select record to delete"); 36
}
}
catch (Exception ex)
{
Clear

private void btnClear_Click_1(object sender, EventArgs e)


{

txtEmployeeID.Clear();
txtFull_Name.Clear();
txtGender.Clear();
txtPAID.Clear();
txtSalaryAmount.Clear();
txtSearch.Clear();
}

37
Save
public Payment()
{
InitializeComponent();
}
SqlConnection cn = new SqlConnection("Data Source=(local);Initial
Catalog=Project;Integrated Security=True");
SqlCommand Cmd;
SqlDataAdapter da;
DataTable Table;
int ID = 0;
private void Payment_Load(object sender, EventArgs e)
{
cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from Payment", cn);
da.Fill(dt);

dgv.DataSource = dt;
cn.Close();

private void DisplayData()


{
cn.Open();
DataTable dt = new DataTable();
da = new SqlDataAdapter("Select * from Payment", cn);
da.Fill(dt);
dgv.DataSource = dt;
cn.Close();
}
private void ClearData()
{
txtPatientID .Clear();
txtFullName .Clear();
txtPrice .Clear();

ID = 0;
}

38
Save
private void btnSave_Click(object sender, EventArgs e)
{
try
{
if (txtPatientID .Text != "" && txtFullName .Text != "" && txtPrice .Text != "" )
{
Cmd = new SqlCommand("insert into Payment
values(@Patient_ID,@Full_Name,@Price,@Payment_Date )", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
Cmd.Parameters.AddWithValue("@Patient_ID", txtPatientID .Text);
Cmd.Parameters.AddWithValue("@Full_Name", txtFullName .Text);
Cmd.Parameters.AddWithValue("@Price", txtPrice .Text);
Cmd.Parameters.AddWithValue("@Payment_Date", dtp.Value);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Successfully Saved");
DisplayData();
ClearData();

}
else
{
MessageBox.Show("Please provide details!!");
}
}
catch (Exception ex)
{

MessageBox.Show(ex.Message);

}
}

Clear

private void btnClear_Click(object sender, EventArgs e)


{
txtPatientID.Clear();
txtFullName.Clear();
txtPrice.Clear();
txtSearch.Clear();

39
Update

private void btnUpdate_Click(object sender, EventArgs e)


{
try
{
if (txtPatientID.Text != "" && txtFullName.Text != "" && txtPrice.Text !=
"")
{
Cmd = new SqlCommand("Update Payment set Patient_ID=
@Patient_ID,Full_Name=@Full_Name,Price=@Price,Payment_Date=@Payment_Date where
Patient_ID=@Patient_ID ", cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtPatientID.Text);
Cmd.Parameters.AddWithValue("@Patient_ID", ID);
Cmd.Parameters.AddWithValue("@Full_Name", txtFullName.Text);
Cmd.Parameters.AddWithValue("@Price", txtPrice.Text);
Cmd.Parameters.AddWithValue("@Payment_Date", dtp.Value);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Successfully Updated");
DisplayData();
ClearData();

}
else
{
MessageBox.Show("Please provide details!!");
}
}
catch (Exception ex)
Delete {

MessageBox.Show(ex.Message);
private void btnDelete_Click(object sender, EventArgs e)
}
{
}
try
{
if (txtPatientID.Text != "")
{
Cmd = new SqlCommand("delete Payment where Patient_ID = @Patient_ID",
cn);
if (cn.State == ConnectionState.Closed)
cn.Open();
ID = Convert.ToInt32(txtPatientID.Text);
Cmd.Parameters.AddWithValue("@Patient_ID", ID);
Cmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("Record deleted Successfully");
DisplayData();
ClearData();
}

else
{
MessageBox.Show("Please select record to delete");
40
}
}
catch (Exception ex)
{
4.1.2Refer to DFDs, process description, ERDs

Register information
Main Patient
Registration
Office

Payment
information
Register
automatically the

patient Every Patient have


Doctor
one id
Registration

Payment

He/Her use to buy the Office


price of operation

4.2 User manual


The system will have user accounts for its users. The passwords will be encrypted. To protected
and will be kept for access to the system.
There is no such functionality in the system by which the user can register himself to the system.
This is because there are only five users in the system apart from the system administrator, so the
user accounts are created by the system administrator.
The system administrator can activate, deactivate, create, edit and delete user accounts, because
every once in a number of years the user 1 or the user 2 may be changed, but the user names for
them will be constant. The new user will have to do is to change the passwords for Him/herself

41
Chapter Five

Project Conclusion
5.1 Future work:
We will be upgrading with new visions and design that better than this part Now we can’t able to
upgrading due to time and our techniques when we reach our hope We will produce new versions
that is the best this one this software will make more update in reality for all that reasons it made
to make an update placed and make advanced this software works only offline It may have not
attractiveness graphical interface that attractive with the user, for the future will update it and
we will add more additional interfaces that make the software more attractive,

The interfaces that will update is:


✓ Graphic interface
✓ Labels and their interfaces
✓ Controls and their interface structure
✓ Colors and user interfaces
The system of design it will be need to edit, remove and save more extra thing like:

✓ Camera

5.2 Conclusions:
The system has been developed using C# and SQL Server, the system was able to process and
update the database with more ease. It helped in developing a total integrated system.

This the project “Canadian Dental Management System” can be altered in accordance with the
future requirements of the organization. After we have completed the project we are sure the
problems in the existing system would Overcome. The “Canadian Dental Management System”
process made computerized to reduce human errors and to increase the efficiency. The main focus
of this project is to lessen human efforts. The maintenance of the records is made efficient, as all
the records are stored in the SQL SERVER database, through which data can be retrieved easily.
The navigation control is provided in all the forms to navigate through the large amount of records.
If the numbers of records are very large then user has to just type in the search string and user gets
the results immediately. The editing is also made simpler. The user has to just type in the required
field and press the update button to update the desired field

42
5.3 Reference
Online collecting information’s

http://www.google.com

http://www.youtube.com

Some teachers of tisqaad

43
The End

44

You might also like