Upload
anil-siva-prasad
View
110
Download
1
Tags:
Embed Size (px)
Citation preview
E-MEDICARD
A PROJECT REPORT
Submitted by
PANKAJ GUPTAIn partial fulfillment for the award of the degree
Of
BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE AND ENGINEERING
COMPUTER SCIENCE AND ENGINEERING DEPARTMENTRAGHU INSTITUTE OF TECHNOLOGY
APPROVED BY AICTE & AFFILATED TO ANDHRAUNIVERSITYDAKAMARRI, BHEEMUNIPATNAM MANDAL
VISAKHAPATNAMAPRIL 2011
i
RAGHU INSTITUTE OF TECHNOLOGY : VISAKHAPATNAM
BONAFIDE CERTIFICATE
Certified that this project report “E-MEDICARD ” is the bonafide work
of “PANKAJ GUPTA” who carried out the project work under my supervision.
SIGNATURE SIGNATURE
Mr. A.RAMA RAO Mr. K.SATYANARAYANA HEAD OF THE DEPARTMENT SUPERVISOR COMPUTER SCIENCE DEPT. HCL,
RAGHU INSTITUTE OF TECH. VISAKHAPATNAM-530013 DAKAMARRI, BHIMILI MANDAL VISAKHAPATNAM-531162
i
ACKNOWLEDGEMENT
I would like to thank all those people who helped me in successful
completion of the project “REMOTE PC CONTROL THROUGH SMS”.
I would like to thank Mr. Raghu garu, Chairman of Raghu Institute of
Technology, for providing necessary facilities.
I would like to thank Mr. K,Satyanarayana Principal of Raghu Institute of
Technology for his immense support and motivation.
I would like to thank Mr. A.Rama Rao, Head Of the Department,
Computer Science Department of Raghu Institute of Technology, Dakamarri, for
his guidance, I have learnt so many things from him and he motivated me and
strengthened my confidence in doing the thesis.
We consider it our privilege to express our deepest gratitude to
M.Tulasi Devi, for her valuable suggestions and constant motivation that greatly
helped the project work to get successful completed. Throughout the project work,
her useful suggestions, constant encouragement has given us a right direction and
shape to our learning. Really, we are indebted to him for his excellent and
enlightened guidance
I would like to thank Mrs. K.SATYANARAYANA , Manager of HCL
career development center for giving us valuable suggestions. I have learnt so
many concepts under her guidance.
I would also thank all the faculty members who have been a constant source
and encouragement during the entire course of my study in this college.
I thank my family members and friends without whom this project would
not have been a wonderful experience. My regards to them, for their blessings .
PANKAJ GUPTA
i
ABSTRACT
This project deals with the development of an electronic medical report system,
titled as ‘e-Medicard’. The motto of the project is to build a web portal that stores
the records of medical diagnosis made on any individual. The motivation for this
project was the requirement for correct and unambiguous representation of the
previous diagnosis made on the patient, and the subsequent treatment to be carried
out, so that the ailments can be recognized and corrected in an effective manner.
This project mainly consists of a third party website which is used by several
hospitals and pharmacies by registering themselves. Another Interesting aspect of
the project is that the portal also plays a supporting role for budding practitioners
and medical enthusiasts. They can participate in the various forums and
discussions, hence making the clarifications they needed in a comfortable manner.
i
TABLE OF CONTENTS
CHAPTER NO TITLE PAGE NO.
1. INTRODUCTION 1
1.1 Overview 1
1.2 Project Goals and Objectives 1 1.3 Target Audience 2 1.4 Feasibility Study and Rationalize 3 1.5 Project Scope and Deliverables 3
1.6 Evidence of Limiting the Project Scope 4
1.7 Development Plan 4
2. PROBLEM CONTEXT AND DESCRIPTION 5
2.1 Problem Description 5
2.2 Justification of Problem stated 5
3. LITERATURE REVIEW 6
3.1 Introduction 6
3.2 Primary Research 6
4. ANALYSIS 14
4.1 Methodology 14
4.2 Feasibility Study 16
4.3 Methods of Problem Solving 17
i
4.4 Risk analysis 17
5 DESIGN 19
5.1 Architecture 19
5.2 Use case diagram 20
5.3 Class diagrams 21
5.4 Data Flow Diagrams (DFD) 22
5.5 Entity Relationship Diagram 28
5.6 Database Design 29
6 IMPLEMENTATION 36
7 SCREEN SHOT 52
8 TESTING 84
8.1 Introduction 84
8.2 Software Testing 84
8.3 Black Box Testing 84
8.4 White Box Testing 84
8.5 Software Testing Strategies 84
8.6 Test cases and Scenarios 86
9 CONCLUSIONS & SCOPE FOR FUTURE
ENHANCEMENTS
9.1 Conclusion 88
9.2 Scope for Future Enhancements 88
10 REFERENCES 89
i
LIST OF TABLE
CHAPTER NO DETAILS PAGE NO
1.7 Development plan 5
4.1.3 Justification of ADDIE Approach 16
i
LIST OF FIGURES
CHAPTER NO DETAILS PAGE NO
5.1.1 Architecture description 18
5.1.2 Flow of control 19
5.2 Use case diagram 20
5.3 Class diagram 21
5.4 Data flow diagram(DFD) 22
5.4.1 Context Level DFD for hospital 22
5.4.2 Context Level DFD for Patient 22
5.4.3 Context Level DFD for Doctor 23
5.4.4 Context Level DFD for Pharmacy 23
5.4.5 Level-0 DFD for Hospital 24
5.4.6 Level-0 DFD for Doctor 25
5.4.7 Level-0 DFD for Patient 26
5.4.8 Level-0 DFD for Pharmacy 27 5.5 Entity relationship diagram 28
i
1. INTRODUCTION
1.1 Overview
Information Technology is omnipresent nowadays. The applications of IT have its
presence in all the areas like communications, entertainment, security, banking, social networking
and medicine. When it comes to medicine there has been lot of improvement in the medical
applications like ECG, X-Ray etc., where the medical condition of the patient can be assessed at
high levels of accuracy and reports are generated accordingly. But the above mentioned benefits
of technology can serve its purpose to the fullest only when the generated reports are utilized in
critical situations.
There has often aroused cases where the treatment fails due to lack of prior information of
patient in order to perform the subsequent treatment. Therefore it has raised a need for the
development of a global system which maintains the medical record of all the individuals. This
paved the way for the development of one such application i.e. ‘e-Medicard’.
This project deals with the development of an electronic medical report system, titled as
‘e-Medicard’. The motto of the project is to build a web portal that stores the records of medical
diagnosis made on any individual. The motivation for this project was the requirement for correct
and unambiguous representation of the previous diagnosis made on the patient, and the
subsequent treatment to be carried out, so that the ailments can be recognized and corrected in an
effective manner.
1.2 Project Goals and Objectives
This project mainly consists of a third party website which is used by several hospitals and
pharmacies by registering themselves. At the outset, a patient visits a hospital for a regular
checkup. At the receptionist corner the patient is suppose to register himself with some of his
personal details abiding b by the rules and regulations of hospital.
After the registration is complete, the patient is provided with a Unique ID which plays a
major role throughout the project. Then patient is guided to the respective doctor for treatment.
Here the doctors who are a part of the hospital should also be registered so that administrator is
aware of the all doctors working within an organization. The registration of all the doctors can be
done with the ID provided to each hospital after their registration process is complete.
1
Eventually the administrator will have control over all the hospitals and pharmacies by
making them register in the portal. The patient may just remember his ID which holds all his
details rather than carrying all his reports along with him. Doctor’s attending the patient, need to
use only this ID to retrieve all the information of previous treatment undergone by the patient and
along with his medical condition. In this way the medicos can make necessary changes in the
prescriptions and also updates the same information in the website.
Patient can also visit various pharmacies and procure the required medicines by using
their ID. The chemist can only view the medicines which are allotted for the patient and nothing
else. Even patients are allowed to check their records by login into the website by using their ID
where a set of security questions could be asked for privacy concern.
Another Interesting aspect of the project is that the portal also plays a supporting role for
budding practitioners and medical enthusiasts. They can participate in the various forums and
discussions, hence making the clarifications they needed in a comfortable manner.
1.3 Target Audience
Patients: The patients need not carry their medical report on the go and explain their treatment
status and medication process without any ambiguity, to the concerned persons.
Doctors: The treatments undergone and the medical condition of the patient can be interpreted in
a detailed and lucid manner by the doctors with the help of the information provided through this
portal, as a result of which the further treatments can be carried out smoothly.
Medical Practitioners: They can actively participate in the various forums in the portal and
know more about the current technological advancements, standardized practices and can also
make clarifications from reputed persons in the same field.
Pharmacies: Using this web portal, online prescriptions of the individuals can be viewed and the
necessary medicines can be delivered to them even without carrying the written prescription
given by the doctors.
2
1.4 Feasibility Study and Rationalize
The most important phase in a project development is judging whether the project will be
feasible or not. A project developed if not feasible will not serve the purpose. Therefore, we
concentrate on the following benefits:
Tangible Benefits
1. Uninterrupted Service: A clear record of all the diagnosis made on the patients is maintained in
specific databases so that the problem can be easily comprehended by the doctors and necessary
actions can be performed without further delay. Also, it plays a major role in cases where a
patient has to approach different hospitals in order to complete the various stages of his treatment.
2. Maintains a specific standard: If a standardized portal is maintained for all the hospitals, then
the details of the patients as per the records can be considered authentic and can be come in handy
during emergency.
Intangible Benefits
1. Goodwill: The Society, as a whole, will be benefited by using these online medical reports.
2. Motivation: This system acts like a motivation for IT professionals to develop more such
systems which focus on public welfare and in the field of immense importance like medicine.
1.5 Project Scope and Deliverables
The objective of the project is to provide the details of the patient in a globally accessible
system. This project will serve many individuals so that the patient can update his/her medical
diagnosis reports regularly and can get uninterrupted treatment in case of emergency.
The system interface provides flexibility to all kinds of users so that it will not be a difficult job
for them to use the application. The user menu contains items like view, update, print, discussion
forums etc.
Summarizing them as a whole the deliverables of the project are as follows:
1. Project Proposal Form
2. Project Specification Form
3. Soft cover documentation of the system
4. Hard cover documentation of the system
5. A prototype of the system application on CD
3
1.6 Evidence of Limiting the Project Scope
As every project has its own limitations and scope, e-Medicard has also got some
limitations where this project cannot hook up certain features which are discussed below.
Appointments – The user cannot directly contact the doctor for appointment but instead has to
make it through the hospital where the patient would be subsequently guided to the appropriate
doctor. However once the appointment is made the status can be viewed by the user directly
through his account.
Hospitals/Pharmacy registration – The hospitals/pharmacies which are registered in portal can
only access the patient data. Other hospitals cannot avail the features provided by the system.
1.7 Development Plan
While the project follows the five phases of the ADDIE model, The breakdown structure is
scheduled as follows:
Table 1 : Development Plan
S.No. Phases
1. Analysis
2. Design
3. Development
4. Implementation
5. Evaluation
4
2. PROBLEM CONTEXT AND DESCRIPTION
2.1 Problem Description
Consider a situation where a person is traveling long distances and has forgot to his/her
medical reports along with him/her. If ever he/she falls ill, couldn’t take the treatment or explain
his condition as per the doctor’s requirement. The doctor would always prefer the previous
medication details in order to go ahead.
2.2 Justification of Problem stated
In the above mentioned problem there is an urgent need for the medical reports of the
patient. e-Medicard comes in handy in this situation. Once a user of e-Medicard is registered
he can avail the data anytime and in any place. This will help many individuals even if they don’t
carry their medical reports on the go. This system acts as a great tool for the
doctor/patient/pharmacies during critical situations.
5
3. LITERATURE REVIEW
3.1 Introduction:
An e-Medicard system (also electronic patient record or computerized patient record) is
an evolving concept defined as a systematic collection of electronic health information about
individual patients or populations. It is a record in digital format that is capable of being shared
across different health care settings, by being embedded in network-connected enterprise-wide
information systems. Such records may include a whole range of data in comprehensive or
summary form, including demographics, medical history, medication and allergies,
immunization status, laboratory test results, radiology images, and billing information.
It is important to note that an e-Medicard is generated and maintained within an
institution, such as a hospital, integrated delivery network, clinic, or physician office.
Its purpose can be understood as a complete record patient encounters that allows to
automate and streamline workflow in health care settings and to increase safety through
evidence-based decision support, quality management, and outcomes reporting.
3.2 Primary Research
3.2.1 Domain Research
3.2.1.1 Electronic Health Records
In the United States, the Department of Veterans Affairs (VA) has the largest enterprise-
wide health information system that includes an electronic medical record, known as the
Veterans Health Information Systems and Technology Architecture (VistA). A key component in
VistA is their VistA imaging System which provides a comprehensive multimedia data from
many specialties, including cardiology, radiology and orthopedics. A graphical user interface
known as the Computerized Patient Record System (CPRS) allows health care providers to
review and update a patient’s electronic medical record at any of the VA's over 1,000 healthcare
facilities. CPRS includes the ability to place orders, including medications, special procedures,
X-rays, patient care nursing orders, diets, and laboratory tests.
6
The 2003 National Defense Authorization Act (NDAA) ensured that the VA and DoD
would work together to establish a bidirectional exchange of reference quality medical images.
Initially, demonstrations were only worked in El Paso, Texas, but capabilities have been
expanded to six different locations of VA and DoD facilities. These facilities include VA
polytrauma centers in Tampa and Richmond, Denver, North Chicago, Biloxi, and the National
Capitol Area medical facilities. Radiological images such as CT scans, MRIs, and x-rays are
being shared using the BHIE. Goals of the VA and DoD in the near future are to use several
image sharing solutions (VistA Imaging and DoD Picture Archiving & Communications System
(PACS) solutions).
Clinical Data Repository/Health Data Repository (CDHR) is a program that allows for
sharing of patient records, especially allergy and pharmaceutical information, between the
Department of Veteran Affairs (VA) and the Department of Defense (DoD) in the United States.
The program shares data by translating the various vocabularies of the information being
transmitted, allowing all of the VA facilities to access and interpret the patient records. The
Laboratory Data Sharing and Interoperability (LDSI) application is a new program being
implemented to allow sharing at certain sites between the VA and DoD of “chemistry and
hematology laboratory tests.” Unlike the CHDR, the LDSI is currently limited in its scope.
One attribute for the start of implementing EHRs in the States is the development of the
Nationwide Health Information Network which is a work in progress and still being developed.
This started with the North Carolina Healthcare Information and Communication Alliance
founded in 1994 and who received funding from Department of Health and Human Services.
The Department of Veterans Affairs works with Kaiser Permanente to further develop
software which allows sharing information with private health care providers. This software
called 'CONNECT' uses Nationwide Health Information Network standards and governance to
make sure that health information exchanges are compatible with other exchanges being set up
throughout the country. CONNECT is an open source software solution that supports electronic
health information exchange. The CONNECT initiative is a Federal Health Architecture project
that was conceived in 2007 and initially built by 20 various federal agencies and is now
comprised of more than 500 organizations including federal agencies, states, healthcare
providers, insurers, and health IT vendors.
The US Indian Health Service uses an EHR similar to VistA called RPMS. VistA
Imaging is also being used to integrate images and co-ordinate PACS into the EHR system.
7
3.2.1.2 Human Computer Interaction (HCI)
In order to produce a good multimedia application, it requires a good HCI concept behind
the system. Human–computer interaction (HCI) or, alternatively, man-machine interaction
(MMI) or computer–human interaction is the study of interaction between people (users) and
computers. It is an interdisciplinary subject, relating computer science with many other fields of
study and research. Interaction between users and computers occurs at the user interface (or
simply interface), which includes both software and hardware, for example, general purpose
computer peripherals and large-scale mechanical systems such as aircraft and power plants. This
is just a definition of HCI.
Goal
A basic goal of HCI is to improve the interaction between users and computers by making
computers more user-friendly and receptive to the user's needs. Specifically, HCI is concerned
with
1. methodologies and processes for designing interfaces (i.e., given a task and a class of
users, design the best possible interface within given constraints, optimizing for a desired
property such as learn ability or efficiency of use)
2. methods for implementing interfaces (e.g. software toolkits and libraries; efficient
algorithms)
3. techniques for evaluating and comparing interfaces
4. developing new interfaces and interaction techniques
5. Developing descriptive and predictive models and theories of interaction.
Consistency
Does the application provide a consistent user experience? For example:
1. Is the user able to navigate the menus always in the same place?
2. Is the "Back” link (do you have one?) always in the same place on the page?
3. Can we consistently use the same font, font-size and font-colour for a quote or normal
paragraph text?
These are some of the commonly raised questions while developing the user interface.
Simplicity
Is the application simple to use? Of course those carefully crafted buttons are clickable.
But one must put themselves in the users shoes while designing the interface in order to make it
more clear and easy to use.
8
Structure
1. Providing a structure is important. Users are looking for information and need it quickly.
Grouping of information must be done in a meaningful manner. This provides an intuitive
and quick means of access to any section. A sub-menu of navigation is placed on the left-
hand side.
2. Provide clear navigation. Is it clear to users as to how they can reach another page?
Ensure that users can navigate quickly to another page - avoid unnecessary click through.
Users can become easily annoyed; once that happens they are gone forever! (Go here for
an example of how not to do it).
Tolerance
1. Designers need to concern themselves with tolerance issues. How can a user recover from
an error? Can a user clear the data entered in a form? Can he, or she, return to the form on
the previous page? Will a user be prompted to enter the required data if a text field is
inadvertently left empty?
2. Keep download times to a minimum. Unless the quality of the image is of paramount
importance, avoid large image files. Remember that not everyone uses broadband. Offer
the user a thumbnail image first and indicate the size of any large file.
3. Avoid unnecessary graphics. Form should be used at the service of content. Diagrams or
illustrations can sometimes convey concepts more efficiently and effectively than text,
but a poorly constructed diagram can just as easily confuse the reader. Does that Flash
movie, or animated gif, really conveys your content better than some text?
Usability
It is time to consider the means for ensuring that readers, or users, can successfully use a
page or application in a manner that suits their needs.
Usability concentrates on the means of achieving satisfaction for users by providing
effective and efficient means for achieving the tasks they wish to perform. In other words, we
want to keep the user happy and not drive him, or her, away. This requires an understanding of
the basic design concepts of Human Computer Interaction (HCI).
9
The study of the relationship between a user and a User Interface (UI) forms the basis of
user-centred design. An analysis of usability requires the designer of an interface to answer a
number of questions. For example:
1. Does the interface aid or hinder the user?
2. Can the user successfully complete a task in a safe, comfortable and efficient manner?
3. Is the interface simple and intuitive to use?
4. Does the UI overload the user's memory?
As Don Norman once said, "Don't think technology: think person, task, and situation."
Applying this to any application design:
Person - the user of a website. Designers often fall into the trap of thinking that because they
have successfully tested a site, designed by them, then it's easy to use.
Task - for example, filling in a web form, finding and downloading a file, navigating through a
website, or simply being able to read the text on a web page.
Situation - for example:
The user is working from home with a PC, 15 inch monitor and 56K dial-up connection.
The user is delivering a presentation using a notebook with a T1 connection and digital projector.
The user is sitting on a train using a PDA hooked up to a mobile phone.
After strong research on HCI and Usability Principles, it can be concluded that
Designers need to think user!
3.2.2 Technical Research
3.2.2.1 Developing Tools
To develop a perfect application or appropriate system, certain tools are required to
complete the task with a certain assist. Selecting or choosing a right tool fro right task is little bit
difficult. With the combination of different tools and better calculation, it may possible to
provide a perfect application in a given period of time or in short period of time.
Microsoft .NET Framework
It is a software framework that can be installed on computers running Microsoft
Windows operating systems. It includes a large library of coded solutions to common
programming problems and a virtual machine that manages the execution of programs written
specifically for the framework. The .NET Framework is a Microsoft offering and is intended to
be used by most new applications created for the Windows platform.
10
The framework's Base Class Library provides a large range of features including user
interface, data access, database connectivity, cryptography, web application development,
numeric algorithms, and network communications. The class library is used by programmers,
who combine it with their own code to produce applications.
Microsoft Visual Studio
Microsoft Visual Studio is an Integrated Development Environment (IDE) from
Microsoft. It can be used to develop console and graphical user interface applications along with
Windows Forms applications, web sites, web applications, and web services in both native code
together with managed code for all platforms supported by Microsoft Windows, Windows
Mobile, Windows CE, .NET Framework, .NET Compact Framework and Microsoft Silverlight.
Visual Studio includes a code editor supporting IntelliSense as well as code refactoring.
The integrated debugger works both as a source-level debugger and a machine-level debugger.
Other built-in tools include a forms designer for building GUI applications, web designer, class
designer, and database schema designer. It accepts plug-ins that enhance the functionality at
almost every level—including adding support for source control systems (like Subversion and
Visual SourceSafe) to adding new toolsets like editors and visual designers for domain-specific
languages or toolsets for other aspects of the software development lifecycle.
Rational Rose
The Rational Environment was organized around a persistent intermediate representation
(DIANA), providing users with syntactic and semantic completion, incremental compilation, and
integrated configuration management and version control. To overcome a conflict between
strong typing and iterative development that produced recompilation times proportional to
system size rather than size-of-change, the Rational Environment supported the definition of
subsystems with explicit architectural imports and exports; this mechanism later proved useful in
protecting application architectures from inadvertent degradation. The Environment's Command
Window mechanism made it easy to directly invoke Ada functions and procedures, which
encouraged developer-driven unit testing.
The Rational Environment ran on custom hardware, the Rational R1000, which
implemented a high-level architecture optimized for execution of Ada programs in general and
the Rational Environment in particular. The horizontally-micro programmed R1000 provided
two independent 64-bit data paths, permitting simultaneous computation and type checking.
11
Memory was organized as a single-level store; a 64-bit virtual address presented to the memory
system either immediately returned data, or triggered a page fault handled by the processor's
microcode.
3.2.2.2 Programming Language & Techniques
How much importance we are focusing on right developing tool that much of importance
is needed to understand how to utilize different techniques and also their programming features
to enhance the project further.
3.2.2.2.1: ASP .net with C#
C# (pronounced "see sharp") is a multi-paradigm programming language encompassing
imperative, functional, generic, object-oriented (class-based), and component-oriented
programming disciplines. It was developed by Microsoft within the .NET initiative and later
approved as a standard by Ecma (ECMA-334) and ISO (ISO/IEC 23270). C# is one of the
programming languages designed for the Common Language Infrastructure.
C# is intended to be a simple, modern, general-purpose, object-oriented programming
language. Its development team is led by Anders Hejlsberg. The most recent version is C# 3.0,
which was released in conjunction with the .NET Framework 3.5 in 2007. The next proposed
version, 4.0, is in development.
3.2.2.2.2: ASP .NET and Sql Server
ASP.NET is a web application framework developed and marketed by Microsoft to
allow programmers to build dynamic web sites, web applications and web services. It was first
released in January 2002 with version 1.0 of the .NET Framework, and is the successor to
Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language
Runtime (CLR), allowing programmers to write ASP.NET code using any supported .NET
language. The ASP.NET SOAP extension framework allows ASP.NET components to process
SOAP messages.
SQL Server 2005
SQL Server 2005 (codenamed Yukon), released in October 2005, is the successor to SQL
Server 2000. It included native support for managing XML data, in addition to relational data.
12
For this purpose, it defined an xml data type that could be used either as a data type in database
columns or as literals in queries. XML columns can be associated with XSD schemas; XML data
being stored is verified against the schema. XML is converted to an internal binary data type
before being stored in the database. Specialized indexing methods were made available for XML
data. XML data is queried using XQuery SQL Server 2005 added some extensions to the T-SQL
language to allow embedding XQuery queries in T-SQL. In addition, it also defines a new
extension to XQuery, called XML DML that allows query-based modifications to XML data.
SQL Server 2005 also allows a database server to be exposed over web services using TDS
packets encapsulated within SOAP (protocol) requests. When the data is accessed over web
services, results are returned as XML.
13
4. ANALYSIS
4.1 Methodology
4.1.1 The right methodology for the project ADDIE
The ADDIE model is the generic process traditionally used by instructional designers
and training developers. The five phases—Analysis, Design, Development, Implementation, and
Evaluation—represent a dynamic, flexible guideline for building effective training and
performance support tools.
The reasons of this model is,
In this model I can test after completing each and every phase like, the phase are divided
like,
Analysis > Design > Development > Implementation > Evaluation
The evaluation phase consists of two parts: formative and summative. Formative evaluation
is present in each stage of the ADDIE process. Summative evaluation consists of tests designed
for criterion-related referenced items and providing opportunities for feedback from the users.
ADDIE is an instructional model for teaching the Instructional Design process. The acronym
corresponds with the five stages of instructional development: analysis, design, development,
implementation, and evaluation. Each step of the model has an outcome that feeds information to
the following steps.
1. Assessment should occur at the beginning of a project. During this stage, the
instructional designer should consider optimals and actuals. According to Allison
Rossett, an expert on training needs assessment, actuals are what the current
performance is and optimals are what should be happening, the desired performance.
Once these are determined, it should be determined whether or not instruction is
needed to fill the gap. If instruction is needed, the instructional designer should
continue the process. If instruction is not needed, a Human Performance Technologist
should be consulted.
2. Design happens after the assessment phase. This is where the objectives, assessment
approach, exercise and content is specified.
14
3. Development is the phase in which the work takes place. User manuals/materials are
created as well as instructor materials. The actual course is developed, whether it is an
instructor led course, web-based course, or computer based training.
4. Implementation is the actual rollout of what was designed and developed. Providing
the actual instruction/course to the learners.
5. Evaluation should be conducted throughout the phases in the form of formative
evaluation. As formative evaluation is conducted, revisions are made to the
instruction/design. Summative evaluation occurs at the end. Summative evaluation
looks at the actual outcomes of the instruction, did the learners learn what they
needed to know.
Advantages of Using ADDIE
1. Cost effective.
2. Saves time.
3. Promotes effective learning.
4. Consistent.
5. Effective in training.
4.1.2 Criticisms of ADDIE
There are drawbacks to any large system or model and ADDIE is not different. ADDIE
has been criticized for being:
1. Too systematic
2. Too linear
3. Too constraining
For best results, the development process for CD-ROM or Web-based training programs
should use a modified ADDIE model, which borrows from the most valuable aspects of the
systemic approach. Specifically, a rapid prototype phase is inserted after, or as an extension of,
the design phase. A rapid prototype is simply a quickly assembled module that can be tested with
the student audience early in the ISD process. The evaluation typically looks at things like how
well the learners responded to the creative metaphor, how effective the learning activities are,
and how well the program performs on the chosen technology platform. Based on the feedback,
15
the design can be revised and another prototype developed. This iterative process continues until
there is agreement and confidence in the prototype.
In this process, only after the prototype is completed is additional development work
done. However, this work often moves more quickly after a rapid prototype than in the
traditional ADDIE model. Instructional designers and writers are able to proceed more
efficiently since they know exactly what the program will look like and what it will be capable of
doing. Additionally, with all of the major technical issues resolved, final programming becomes
a simple matter of assembly of media components.
4.1.3 Justification
Table 2: Justification of ADDIE Approach
Approach Multimedia industry affirmation
responses (10)
Semi structured SDLC 6
Prototyping 8.6
Production – oriented approach 8
Formal / structured SDLC 4
Advertising / graphic design 5
Object – oriented approach 3
Other 4
Artistic approach 4
Media design approach 4
ADDIE 9
4.2 Feasibility Study
The most important phase in a project development is judging whether the project will be
feasible or not. A project developed which is not feasible will serve no purpose. The feasibility
will be analyzed under:
1. Technical Feasibility
2. Economical Feasibility
3. Operational Feasibility
16
1. Technical Feasibility: It denotes whether appropriate technology is available for the
development of the project. The tools specified in the project management sections are
broadly available today so procuring them will not be a trouble. Moreover the client side
deliverable will require merely internet. So technically speaking, this project seems
feasible.
2. Economical Feasibility: Though this project was not done with money in mind, if the
economics are calculated for the project we will find it beneficial to our point. The
deployment and managing cost is null. So there would be a nominal expense towards
development, which would be a onetime investment. The returns the application will give
will be beneficial both in tangible and intangible forms.
3. Operational Feasibility: As mentioned earlier, the operational need is minimal on the
client side. All a client requires is internet. This is readily available with almost everyone
who possesses a computer. This point makes it operationally feasible.
Conclusion
Thus analyzing the feasibility consideration, we can conclude that the project is feasible in
all aspects.
4.3 Methods of Problem Solving
In this project, an ADDIE methodology was chosen to deal with the whole processes of
this project. Whenever there is an encounter of a problem, the process will be forced to come to
a halt and then diagnose the problem, finding out the appropriate solution and correcting the
problem immediately.
Research will be required for gathering the necessary information and it’s a vital element
in problem solving, the same goes to analysis. With the researched data, an analysis should be
done to come up with the appropriate conclusion regarding to the development of the project.
Prototyping will also be used frequently during the implementation phase, with the
iteration process approach; several prototypes could be created and issued to different testers in
order to reach the optimum quality of the system. Not only for developing the system but also
quality controls.
4.4 Risk analysis
This is not a part of this methodology but it is considered that this analysis is applicable
for any project because there should be some risk regarding to physical or soft information. So,
for a better project management, risk analysis is most important element.
17
Therefore the risks present in the project are: -
1. Schedule Risk: Though we have defined time for the completion of this project and we
have used development tools but there is still a risk that the time we have estimated for a
particular task may not be sufficient for it.
2. Physical damage: There is a risk of physical damage like hard disk crash or losing of
some important data may be hardcopy or softcopy.
18
5. DESIGN
5.1 Architecture
Figure 5.1.1 Architecture Description
19
Figure 5.1.2 Flow of Control
20
5.2 Use case diagram
Figure 5.2 Use case Diagram for e-Medicard System
21
5.3 Class diagram
Figure 5.3 Class Diagram for e-Medicard System
22
5.4 Data Flow Diagrams (DFD)
Patient Records
Figure 5.4.1 Context Level DFD for Hospital
Patient Records
Figure 5.4.2 Context Level DFD for Patient
23
Hospital Updates 1.0
Patient Updates 2.0
Patients Records
Figure 5.4.3 Context Level DFD for Doctor
Prescriptions
Figure 5.4.4 Context Level DFD for Pharmacy
24
Doctor Updates 3.0
Pharmacy Views 4.0
Patient Record
Doctor Record
Appointments
Figure 5.4.5 Level- 0 DFD for Hospital
25
Hospital 1.1 Register Patient
1.2 Register Doctor
1.3MakeAppointment
Prescriptions
Reports
Prescriptions
Figure 5.4.6 Level- 0 DFD for Doctor
26
Doctor 1.1 View Prescription
1.2 View Reports
1.3MakePrescription
Appointments
Reports
Prescriptions
Figure 5.4.7 Level- 0 DFD for Patient
27
Patient1.1 View Appointment Status
1.2 View Reports
1.3View Prescription
Medicine Records
Forums
Prescriptions
Figure 5.4.8 Level- 0 DFD for Pharmacy
28
Pharmacy1.1 Search Medicines
1.2 Make Discussions
1.3View Prescription
5.5 Entity Relationship Diagram
Figure 5.5 Level- 0 ER Diagram
29
5.6 Database Design
Figure 5.6.1 Admin Table
30
Figure 5.6.2 Appointments Table
Figure 5.6.3 Discussion Table
31
Figure 5.6.4 Doctor Table
32
Figure 5.6.5 Feedback Table
Figure 5.6.6 Hospital Table
33
Figure 5.6.7 Mediguide Table
Figure 5.6.8 Patient Table
34
Figure 5.6.9 Pharmacy Table
35
Figure 5.6.10 Prescription Table
Figure 5.6.11 Reports Table
36
6. IMPLEMENTATION
Medicine Search
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;
public partial class Mediguide : System.Web.UI.Page{ SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False"); SqlCommand cmd; string qry;
protected void Page_Load(object sender, EventArgs e) {
} protected void TextBox1_TextChanged(object sender, EventArgs e) {
}
protected void Button1_Click1(object sender, EventArgs e) { String str = TextBox1.Text; String[] s1 = str.Split('+',' ', ',',' '); int len = s1.Length - 1;
qry = "select Name,Description from mediguide_tbl where Name LIKE '%" + TextBox1.Text + "%' or ";
// var e = from s in s1; // select s; for ( int k = 0; k < len; k++) {
37
if (s1[k].Equals("")) continue; qry += "Description LIKE '%" + s1[k] + "%' or "; } if (s1[len].Equals("")) qry += "Description LIKE '%" + TextBox1.Text + "%'"; else qry += "Description LIKE '%" + s1[len] + "%'"; //Label2.Visible = true; // Label2.Text = qry + " length = "+len;
cmd = new SqlCommand(qry, con);
cmd.Connection = con; if (con.State != ConnectionState.Closed) { con.Close(); } con.Open(); SqlDataReader dr; dr = cmd.ExecuteReader();
if (dr.HasRows) { int i = 0; Label1.Visible = true; Label1.Text = "Following Items match the criteria given above<br/><br/>"; Label1.Text += "<table border=1 align= left cellpadding=10>"; Label1.Text += "<tr><th>S.No</th><th>Name</th><th>Description</th></tr>"; while (dr.Read()) { i++; Label1.Text += "<tr><td width = 10%>" + i + "</td>" + "<td width= 30%>" + dr["Name"].ToString() + "</td><td width= *>" + dr["Description"].ToString() + "</td></tr>";
} Label1.Text += "</table>"; }
else {
Label1.Visible = true; Label1.Text = "Sorry.No related information has been found.\n Check the spelling or try again with different keywords .";
}
}}
38
Discussion Forum
(Phase 1)
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;
public partial class DiscussionForum : System.Web.UI.Page{ SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False"); SqlCommand cmd; SqlDataAdapter da; string qry; DataSet ds; SqlDataReader dr;
protected void Page_Load(object sender, EventArgs e) {
qry = "select * from discussion_tbl "; cmd = new SqlCommand(qry, con);
cmd.Connection = con; if (con.State != ConnectionState.Closed) { con.Close(); } con.Open(); dr = cmd.ExecuteReader(); if (dr.HasRows) { dr.Close(); qry = "select distinct Topic from discussion_tbl "; da = new SqlDataAdapter(qry, con); ds = new DataSet(); da.Fill(ds, "discussion_tbl"); GridView1.DataSource = ds; GridView1.DataBind(); } else
39
{ GridView1.Visible = false; Label1.Visible = true; }
}
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) { string topic = GridView1.Rows[e.NewSelectedIndex].Cells[1].Text; Session["mytopic"] = topic; Response.Redirect("Topics.aspx"); } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { }}
(Phase 2)
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;
public partial class Topics : System.Web.UI.Page{ SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False"); SqlCommand cmd; string qry; protected void Page_Load(object sender, EventArgs e) {
40
String selectedtopic = Session["mytopic"].ToString(); Label2.Text = selectedtopic; qry = "select * from discussion_tbl where Topic = '" + selectedtopic + "'"; cmd = new SqlCommand(qry, con);
cmd.Connection = con; if (con.State != ConnectionState.Closed) { con.Close(); } con.Open(); SqlDataReader dr; dr = cmd.ExecuteReader(); Label1.Text = "";
if (dr.HasRows) { int i = 0; Label1.Visible = true; Label1.Text += "<table align=center cellpadding=10>"; Label1.Text += "<head><style type=\"text/css\">"; Label1.Text += "tr.d0 td {";Label1.Text += " background-color: SteelBlue; color: white"; Label1.Text += " }";Label1.Text +="tr.d2 td {";Label1.Text += "background-color: LightSteelBlue; color: black"; Label1.Text +=" }"; Label1.Text += "tr.d1 td {"; Label1.Text += "background-color: Lavender; color: black"; Label1.Text += " }"; Label1.Text += "</style>"; while (dr.Read()) { i++; Label1.Text += "<tr class=\"d0\"><td align = left border =0><b>" + dr["Title"].ToString() + "</b></tr>"; Label1.Text += "<tr class=\"d1\" border=0><td align = center>" + dr["Comment"].ToString() + "</td></tr>"; Label1.Text += "<tr class=\"d1\" border=0><td align = right> -- by <i> " + dr["Sender"].ToString() + " on " + dr["Date"].ToString() + "</i> </td></tr>"; } Label1.Text += "<tr><td align = center><a href= TopicReply.aspx >" + " reply " + "</td><td></td><td></td></tr>"; Label1.Text += "</table>"; }
else
41
{
Label1.Visible = true; Label1.Text = "No Discussion started yet";
} }}
(Phase 3)
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;
public partial class TopicReply : System.Web.UI.Page{ SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False"); SqlCommand cmd; string qry,uid,str; String selectedtopic ; DateTime date = DateTime.Now; protected void Page_Load(object sender, EventArgs e) { selectedtopic = Session["mytopic"].ToString(); Label4.Text = selectedtopic; } protected void Button1_Click(object sender, EventArgs e) {
try {
cmd = new SqlCommand(); string category = Session["category"].ToString(); // if (category == null) category = "naiveuser"; switch (category) {
case "patient": uid = Session["patid"].ToString(); str = "A Patient with ID:" + uid;
42
break; case "doctor": uid = Session["id"].ToString(); str = "A Doctor with ID:" + uid; break; case "hospital": uid = Session["hid"].ToString(); str = "A Hospital with ID:" + uid; break; case "pharmacy": uid = Session["pharid"].ToString(); str = "A Pharmacy with ID:" + uid; break;
} } catch (NullReferenceException e1) { str = "A Guest User"; }
finally { cmd.CommandText = "insert into discussion_tbl values('" + selectedtopic + "','" + TextBox1.Text + "','" + TextBox2.Text + "','" + str + "','" + date.ToString() + "')";
cmd.Connection = con; if (con.State != ConnectionState.Closed) { con.Close(); } con.Open(); int i = int.Parse(cmd.ExecuteNonQuery().ToString()); if (i != 0) { Label3.Visible = true; TextBox1.Text = ""; TextBox2.Text = ""; Label3.ForeColor = System.Drawing.Color.Green; Label3.Text = " Comment Posted Successfully !!"; Button1.Visible = false; }
else { TextBox1.Text = ""; TextBox2.Text = ""; Label3.Visible = true;
43
Label3.ForeColor = System.Drawing.Color.Red; Label3.Text = "Sorry !! Comment cannot be posted now. Please try again later";
} } } protected void Button2_Click(object sender, EventArgs e) { Response.Redirect("Topics.aspx"); }}
44
Reports
(Phase 1) Upload Report
Imports System.Data.SqlClientImports System.DataImports System.IOPartial Class upload Inherits System.Web.UI.Page Dim uid As String
Protected Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
End Sub
Protected Sub btnAddToCategory_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAddToCategory.Click Try
uid = Session("hid").ToString() Dim strGuid As String = "" Dim strPicExtension As String = "" Dim strFileName As String = ""
' Firstly upload the picture associated with the news If PhotoUpload.HasFile Then ' Constructs the picture extension strGuid = fnGuid() strPicExtension = fnGetPictureExtension(PhotoUpload.FileName) strFileName = strGuid & strPicExtension
' Add picture to folder subAddNewPicture(PhotoUpload, strFileName, "Gallery")
' Add the record to the database
UpdateGallery(TextBox2.Text, TextBox3.Text, strFileName, TextBox1.Text, uid)
lblUploadMessage.Text = "Image uploaded successfully..." Else lblUploadMessage.Text = "Please select appropriate image..." End If
lblUploadMessage.Visible = True Catch ex As Exception Throw ex End Try End Sub Private Sub UpdateGallery(ByVal rname As String, ByVal rdate As String, ByVal strfilename As String, ByVal pid As String, ByVal hid As String)
45
' Variables declaration Dim strConnString As String = "Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False" Dim sqlConn As New SqlConnection(strConnString) Dim sqlcmd As New SqlCommand()
' Building the query Dim sqlQuery_Photo As String = "INSERT INTO [Reports_tbl] VALUES ('{0}', '{1}', '{2}','{3}','{4}')"
sqlQuery_Photo = sqlQuery_Photo.Replace("{0}", rname) sqlQuery_Photo = sqlQuery_Photo.Replace("{1}", rdate) sqlQuery_Photo = sqlQuery_Photo.Replace("{2}", strfilename)
sqlQuery_Photo = sqlQuery_Photo.Replace("{3}", pid) sqlQuery_Photo = sqlQuery_Photo.Replace("{4}", uid)
' Retrieving search result sqlConn.Open() sqlcmd.Connection = sqlConn
' Adding records to table sqlcmd.CommandText = sqlQuery_Photo sqlcmd.ExecuteNonQuery()
sqlConn.Close() End Sub
' Adds picture to specified folder Private Sub subAddNewPicture(ByVal FileUploader As FileUpload, ByVal strPictureName As String, ByVal strImgFolder As String) Dim strImageFolderPath As String Dim strImagePath As String
Try ' Construct saving path strImageFolderPath = Path.Combine(Request.PhysicalApplicationPath, strImgFolder) strImagePath = Path.Combine(strImageFolderPath, strPictureName)
' Upload image FileUploader.SaveAs(strImagePath) Catch ex As Exception Throw ex End Try End Sub
' Function to generate a GUID using current date and time Private Function fnGuid() As String Dim strGuid As String = ""
46
Try With Today strGuid = .Year & .Month & .Day & Now.Hour & Now.Minute & Now.Second End With Catch ex As Exception Throw ex End Try
' returning the guid generated Return strGuid End Function
' Returns true if file name has the extension .jpg, .gif, .jpeg Private Function fnGetPictureExtension(ByVal strPictureName As String) As String Try With strPictureName.ToUpper If .EndsWith(".JPG") Then Return ".JPG" ElseIf .EndsWith(".GIF") Then Return ".GIF" ElseIf .EndsWith(".JPEG") Then Return ".JPEG" End If End With Catch ex As Exception Throw ex End Try
' Else if has no extension so it returns "" Return "" End Function
End Class
47
(Phase 2) Display Reports
Imports System.Data.SqlClientImports System.DataPartial Class report Inherits System.Web.UI.Page Dim con As New SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False") Dim da As New SqlDataAdapter Dim ds As DataSet
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim qry As String qry = "select rid,rimage,patid,rname from reports_tbl where patid='" + Session("patid").ToString() + "' and date= '" + Session("mydate").ToString() + "'"
da = New SqlDataAdapter(qry, con) TextBox2.Text = Session("patid").ToString() TextBox4.Text = Session("mydate").ToString()
ds = New DataSet() da.Fill(ds, "reports_tbl") DataList1.DataSource = ds DataList1.DataBind() End SubEnd Class
48
Prescription
(Phase 1) Listing The Prescription
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;
public partial class ListPrescription : System.Web.UI.Page{ SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False"); SqlCommand cmd; SqlDataAdapter da; string qry; DataSet ds; protected void Page_Load(object sender, EventArgs e) { if (Session["category"].ToString() == "patient") { TextBox1.Text = Session["patid"].ToString(); TextBox1.Enabled = false; Label1.Text = "Your ID:"; }
}
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) { string date = GridView1.Rows[e.NewSelectedIndex].Cells[2].Text; Session["mydate"] = date; Session["patid"] = TextBox1.Text; Response.Redirect("ViewPrescription.aspx"); } protected void Button1_Click(object sender, EventArgs e) {
qry = "select * from prescription_tbl where patid = '" + TextBox1.Text+ "'"; if (con.State != ConnectionState.Closed) { con.Close();
49
} con.Open(); cmd = new SqlCommand(qry, con); SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows) { Label2.Visible = false; showgrid();
}
else { Label2.Visible = true; GridView1.Visible = false; Label2.BackColor = System.Drawing.Color.Yellow; Label2.ForeColor = System.Drawing.Color.Red; Label2.Text = "No prescriptions Found for given id !! "; } dr.Close(); con.Close();
}
protected void showgrid() { GridView1.Visible = true; qry = "SELECT distinct date from prescription_tbl WHERE patid = '" + TextBox1.Text + "' "; if (con.State != ConnectionState.Closed) { con.Close(); } con.Open();
da = new SqlDataAdapter(qry, con); ds = new DataSet(); da.Fill(ds, "prescription_tbl"); GridView1.DataSource = ds; GridView1.DataBind(); } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { }}
50
(Phase 2) Viewing Prescription
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;
public partial class ViewPrescription : System.Web.UI.Page{
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=e-Medicard;User ID=sa;Pooling=False"); SqlCommand cmd; string qry; int presid; protected void Page_Load(object sender, EventArgs e) { string id = Session["patid"].ToString(); string date = Session["mydate"].ToString(); qry = "SELECT A1.fname, A1.lname, A1.contact, A1.dob, A1.bgroup, A1.email, A1.patid, A1.psd, A2.presid, A2.patid AS Expr1, A2.date, A2.medication, A2.strength, A2.quantity, A2.docid, A2.instructions FROM patient_tbl AS A1 INNER JOIN prescription_tbl AS A2 ON A1.patid = A2.patid WHERE (A2.patid = '"+ id+"' and A2.date = '"+date+"')"; if (con.State != ConnectionState.Closed) { con.Close(); } con.Open(); cmd = new SqlCommand(qry, con); SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows) {
Label4.Text = "<table border=2 cellpadding=10>"; Label4.Text += "<tr><th>Medication</th><th>Strength</th><th>Quantity</th><th>Instructions</th></tr>";
while (dr.Read()) {
51
TextBox3.Text = dr["fname"].ToString() + " " + dr["lname"].ToString(); TextBox1.Text = dr["presid"].ToString(); TextBox2.Text = dr["patid"].ToString(); TextBox4.Text = dr["date"].ToString(); Label4.Visible = true; Label4.Text += "<tr><td>" + dr["medication"].ToString() + "</td><td>" + dr["strength"] + "</td><td>" + dr["quantity"].ToString() + "</td><td>" + dr["instructions"].ToString() + "</td></tr>"; } // Label4.Text += "<\table>"; }
else { Label4.Text = "Failure"; } }}
52
7. SCREEN SHOTS
Figure 7.1 Home Page
53
Figure 7.2 Category Page
54
Figure 7.3 Doctor Login Page
55
Figure 7.4 Doctor Login Page
56
Figure 7.5 Doctor Login Page
57
Figure 7.6 Doctor Login Page
58
Figure 7.7 Admin Login Page
59
Figure 7.8 Hospital Home Page
60
Figure 7.9 Medical Report Making Page
61
Figure 7.10 View Medical Report Page
62
Figure 7.11 Patient Registration Page
63
Figure 7.12 Doctor Registration Page
64
Figure 7.13 Make Appointments Page
65
Figure 7.14 Hospital Account Page
66
Figure 7.15 Doctor Home Page
67
Figure 7.16 Make Prescription Page
68
Figure 7.17 View Prescription Page
69
Figure 7.18 Appointment Confirmation Page
70
Figure 7.19 Doctor Profile Update Page
71
Figure 7.20 Patient Home Page
72
Figure 7.21 Appointment Status Page
73
Figure 7.22 Profile Updating Page
74
Figure 7.23 Pharmacy Home Page
75
Figure 7.24 View Prescription Page
76
Figure 7.25 Profile Update Page
77
Figure 7.26 Feedback Page
78
Figure 7.27 E-Medisearch Page
79
Figure 7.28 Discussion Forum Page
80
Figure 7.29 Start new topic Page
81
Figure 7.30 View Comments Page-1
82
Figure 7.31 View Comments Page-2
83
Figure 7.32 Discussion Reply Page
84
8. TESTING8.1 Introduction
Testing is a process of executing a program with the explicit intention of finding errors
that makes the program fail.
8.2 Software Testing
It is the process of testing the functionality and correctness of software by running it. It is
a process of executing a program with the intent of finding an error.
A good test case is one that has a high probability of finding an as yet undiscovered error. A
successful test is one that uncovers an as yet undiscovered error.
Software Testing is usually performed for one of two reasons:
1. Defect detection
2. Reliability estimation
8.3 Black Box Testing
It applies to software systems or module, tests functionality in terms of inputs and outputs
at interfaces. Test reveals if the software function is fully operational with reference to
requirements specification.
8.4 White Box Testing
Knowing the internal workings i.e., to test if all internal operations are performed
according to program structures and data structures.
To test if all internal components have been adequately exercised.
8.5 Software Testing Strategies
A strategy for software testing will begin in the following order:
1. Unit testing
2. Integration testing
3. Validation testing
4. System testing
85
8.5.1 Unit testing
It concentrates on each unit of the software as implemented in source code and is a white
box oriented. Using the component level design description as a guide, important control paths
are tested to uncover errors within the boundary of the module. In the unit testing,
The step can be conducted in parallel for multiple components.
8.5.2 Integration testing
Here focus is on design and construction of the software architecture. Integration testing
is a systematic technique for constructing the program structure while at the same time
conducting tests to uncover errors associated with interfacing. The objective is to take unit tested
components and build a program structure that has been dictated by design.
8.5.3 Validation testing
In this, requirements established as part of software requirements analysis are validated
against the software that has been constructed i.e., validation succeeds when software functions
in a manner that can reasonably expected by the customer.
8.5.4 System testing
In this software and other system elements are tested as a whole.
8.6 Test cases and Scenarios
Having discussed about the various testing strategies and methodologies of testing we
now move into the testing aspects of the e-Medicard System. The following figures provide the
screen shots of the function points within the project where proper testing is absolutely
mandatory
A properly functioning portal should not allow the users to submit a form with empty
fields for obvious reasons. Hence, a proper message has to be provided to the user in order to
prevent him from making such errors and the user must also be provided with a facility to make
corrections to the errors he committed. Some of the screen shots of the various scenarios are
provided below
86
Figure 8.6.1 Response for erroneous/empty inputs in search field
Figure 8.6.2 Response for erroneous inputs in change password field
87
Figure 8.6.3 Response for improper/empty inputs in registration form
88
9. CONCLUSIONS AND SCOPE FOR FUTURE ENHANCEMENT
9.1 Conclusions
The implementation of e-Medicard can help lessen patient sufferance due to medical
errors and the inability of analysts to assess quality.
These systems are claimed to help reduce medical errors by providing healthcare workers
with decision support. Fast access to medical literature and current best practices in medicine are
hypothesized to enable proliferation of ongoing improvements in healthcare efficacy. Improved
usage of EHR is achieved if the presentation on screen or on paper is not just longitudinal, but
hierarchically ordered and layered. During compilation while hospitalization or ambulant serving
of the patient, easing to get access on details is improved with browser capabilities applied to
screen presentations also cross referring to the respective coding concepts ICD, DRG and
medical procedures information.
e-Medicard also increases patient safety by listing instructions for physicians to follow
when they prescribe drugs to patients.
9.2 Scope for Future Enhancement
With the improvement of Nano Technology, the e-Medicard System can be integrated to
its users on the go by incorporating a microchip within the user. The responses from these
microchips can be recorded and corresponding actions can be generated. Features like, Blood
Pressure, Sugar levels, Body Temperature, pH Level in intestine etc can be recorded dynamically
and these statistics can be stored within the e-Medicard database. The most recent statistics can
be used for reference as an authentic one, before proceeding with the treatment, thus avoiding
any sort of ambiguity.
89
10. REFERENCES
1. Gunter, T.D. and Terry, N.P. 2005 The Emergence of National Electronic Health Record
Architectures in the United States and Australia: Models, Costs, and Questions in J Med
Internet Res 7(1)
2. Hillestad, Richard et al.: "Can Electronic Medical Record Systems Transform Health
Care? Potential Health Benefits, Savings, and Costs", Health Affairs, 2005.
3. Hillestad, Richard et al.: "Can Electronic Medical Record Systems Transform Health
Care? Potential Health Benefits, Savings, and Costs", Health Affairs, 2005.
4. Hoffman S, Podgurski, A (Fall 2008). "Finding a Cure; The Case for Regulation and
Oversight of Electronic Health Record Systems" (PDF). Harvard Journal of Law &
Technology 22
(1):107.http://jolt.law.harvard.edu/articles/pdf/v22/22HarvJLTech103.pdf.
5. Moore, Pamela (2008). "Navigating The Tech Maze". Physicians Practice.
http://www.physicianspractice.com/index/fuseaction/articles.details/articleID/1214/
page/1.htm.
6. Gabriel, Barbara (2008). "Do EMRs Make You a Better Doctor?". Physicians Practice.
http://www.physicianspractice.com/index/fuseaction/articles.details/articleID/1203/
page/1.htm.
7. Silverstein, Scot (2009). "2009 a pivotal year in healthcare IT". Drexel University.
http://www.ischool.drexel.edu/faculty/ssilverstein/failurecases/?loc=cases&sloc=2009.
8. Greenhalgh T, Potts HWW, Wong G, Bark P, Swinglehurst D (2009). Tensions and
paradoxes in electronic patient record research: A systematic literature review using the
meta-narrative method. Milbank Quarterly, 87(4).
9. Himmelstein DU, Wright A, Woolhandler S (2009). Hospital Computing and the Costs
and Quality of Care: A National Study. American Journal of Medicine,
doi:10.1016/j.amjmed.2009.09.004.
90