1. Introduction

1.1. Present Scenario

Internet is the latest and the most powerful innovation of mankind. In present era of internet we used computer technology to solve our many problems. Today in every field we use computer technology from education, business, social networking to order a dinner or health check-up.

Nobody knows from when human are start using medicine for cure themselves from illness. Many years ago when uncivilized human are lives in cave, deep forest they used various tree, plants leaves as medicine. They give their knowledge to the next generation. There is no MBBS doctors are available at that time.

The anytime anywhere availability of Internet has made a great impact specially in-terms of reaching customers and making themselves aware of one's products base and services. (Roche, 2010) Going back 15 or more years, when hardly anyone had access to the internet; you would have had to go out to find a doctor for solving your health problems. But now, that the internet is available to many people, so people can visit a virtual doctor clinic.

In today's modern society we have MBBS doctors, thousands of medicine for thousands of diseases. If we feel sick, we go to the doctors clinic and doctor diagnosis us, then prescribed some medicine and after taking medicine will fine within few days. But if you went out from your city or you go someplace, where you get sick and you don't have any doctor nearby. What you do then? In Africa there is only 1 doctor among 5000 people. Presently, Kenya has slightly more than 5,000 doctors. There are many places where people are dying because of some common diseases. Just some common medicine can help them.

Now if I asked you What if you could visit a doctor, any time of day or night, without leaving your home and that doctor could review your history, diagnose your problem and also give you prescription? Now you are thinking how is it possible? Ok you need just an internet connection and computer and Smart Medical Diagnosis for Common Diseases onlinesoftware will do it for you.

1.2. Topic of the Project

The Project is titled “Smart Medical Diagnosis for Common Diseases”. It will be a generic software package for a medical clinic. The system will be able to act as a web-based solution for medical symptom checker. It will prove to be asset for both the doctor as well as their patient.

1.3. Targeted Audience

Target audience or user is one of the main concerns on how and why a system is been developed, who is going to use this system. The target users of Smart Medical Diagnosis for Common Diseases with Medicine Search Engine have been categorized into three types.

Target audience

Application

Administrative/Managerial Staff

Customizing the application to suit company's needs

Adding and Managing Pages

Register Doctor

Patient

Can use virtual doctor.

Chat with doctor

Create Forum

Send Message to others

Upload Personal Details

Use Medical Symptom checker

Doctor

Chat with patient

Medicine search engine

Symptom Checker

1.4. Problem Context

  • Internet enthusiastic people want to use internet to solve their medical problems. But there is no good local site that can provide this kind of facility.
  • This kind of website is perfect for them who don't have time to visit a doctor's clinic for minor
  • Where doctor is unable, we used this kind of technology to help people. Presently,
  • There are only 54 doctors per 100,000 peoples in Africa. Kenya has slightly more than 5,000 doctors. In this country this kind of system will help people if it can be implemented. .

1.5. Rationale behind the System

The following has highlighted some of the most common benefits of the “Smart Medical Diagnosis for Common Diseases with Medicine Search Engine”

Because of the existence of the identified problems, there is a need for such project. This project consists of some on-line web application which provides guides to the patient. The system will be using advanced algorithm to design a virtual medical agent. The benefits gained from this project are:

  • User can contact with doctor easily from their home or office.
  • Doctor can easily manage their patient.
  • Patient can gain medical knowledge from using this system.
  • Smart Symptom checker can help patient anytime.

1.5.1. Proposed Solution

Ø Patient who have some knowledge of using internet doesn't need to visit to doctor for common diseases life fiver, Pain, stomatitis etc.

Ø It also helps community and skilled health workers, supported by automated assessment and treatment protocols, can rapidly expand the delivery of health care in developing countries

Ø The spread of mobile phones and web services makes new models of healthcare delivery possible at everyone's hand.

Ø Proven technology will allow developing countries to leapfrog the knowledge gap between doctors and patients

Ø User can learn about healthcare tasks from this system.

Ø Doctor doesn't need to remember all the name of medicine and their purpose. Doctor can find details of a medicine just a click of a search button.

Ø Ground-breaking but proven technology allows rapid development, review, and updating of complex automated guidelines by medical professionals without it intervention.

1.6. Benefits of the System

Development and Implementation of such a system will bring in a lot of benefits for the business, its employees and its customers (both current and potential). These benefits can be classified into Tangible and Intangible which are discussed in details below:-

Ø The system help doctor to make faster diagnosis.

Ø Using medicine search engine doctor can get any medicine information with in a second.

Ø Various medical tools like BMI calculator, symptom checker etc. will help doctor as well as patient to solve their problems easily.

Ø System administrator can easily manage the system using content management system.

Ø The system will use roles and permission levels, to maintain confidentiality of private data of administrator, doctor and patient.

Ø Patient can use chat services to chat with doctor.

Ø The presence of certain services offered by the system on the mobile web will also ensure that the system can be accessed from anywhere anytime.

1.7. Challenges Involved

Developing a system such as this will involve a host of challenges for the developer. The major challenges can be classified under:-

1.7.1. Domain Challenges:

Ø Data Gathering and Domain Analysis: Due to the developer's unfamiliarity with the work-flow and the processes followed in the online Symptom Checker it will become a challenging task to develop awareness about the medical service domain.

Ø Implementation of Customizability: The biggest challenge of developing a system like this is its implementation itself. There is high percentage of risk involved in development and implementation of a system like this. The main challenge is to understand the base concepts involved in designing and developing Smart Medical Diagnosis. The developer will also need to follow a modular and object oriented approach in developing this system for enhancing reusability, abstraction, encapsulation and polymorphism.

Ø Content Management System (CMS): Understanding and Implementing a CMS integrated with a system like this will require the developer to design the complex architecture of the system in prior so that his/her concepts are clear regarding the control flow of the system and no module infringes each other. This will also require him/her to study existing CMS such as Joomla and Drupal and understand their architecture and working.

Ø Database Designing and Normalization: Designing a database for a generic customizable system like this is challenge in itself. The fields and data types of the table along with the tables itself are not fixed or pre-defined. The developer needs to code keeping in mind user customization may need to create these database objects dynamically and hence needs to keep a scope for their creation and modification. Apart from this, there needs to be a big centralized database, which is capable of storing large amount of data and about a large number of entities. The relation between these large numbers of entities will be needed to be figure out and a complex normalization has to be implemented in designing a database like this.

Ø Implementation of 3-Tier Architecture: In order to enhance scalability, performance, reliability and robustness of this system, the developer will need to implement 3-Tier architecture for developing this system which is a challenging task keeping in mind the size and complexity of the system's database.

Ø Algorithm for Customizing the site and Symptom Checker: The developer will require to showcase solid understanding for logics and algorithms in order to develop the module where the administrative users can add or edit new pages, new symptom option where he/she will be able to add its name description along with the algorithm that will be followed for generating a definite result.

1.7.2. Technical Challenges:

  1. PHP: The system will require the developer to use advanced PHP functionalities like Personalization, Forum, Blog and Emailing which will be used in various modules of this system. Develop a PHP base application is harder as compare to develop same application in ASP.NET using visual studio. Visual studio generates code for you debug for you and it's also save time. But PHP is challenge as compare to asp.net. Cause PHP doesn't have any IDE and very code you need to write it down in a text editor. Finding an error is also a head ace. But for learning purpose PHP is great. That's the reason I chose PHP as main web development language.
  2. Web Based system: Making an interactive web based system is difficult. Implement a dynamic web site is harder than making a desktop application. We need to take care of network, client server, band width to make project successful.
  3. AJAX and JavaScript / jQuery: For designing an intuitive and dynamic interface so that users have a rich experience availing features like data entry assistance, error prevention, etc. The developer needs to have in depth knowledge of AJAX as well as JavaScript or jQuery. Implementation of AJAX is not easy task for a developer who is new to web development. I just know little PHP and HTML. It will be a challenge for me to implement Ajax in this project. AJAX makes web application fell like a desktop application.
  4. CSS: Most people who are new in web development can't able to understand how to lay out a page. They just try to drug and drop div, table using Dreamweaver or any HTML design tools with underrating the advanced concept of CSS. And ended up with
  5. Advanced Database Concepts with MYSQL: For designing such a complex database that the system requires the developer needs to have a concrete understanding of database concepts like Normalization, Query Optimization, Views, and Permissions. He/she should also require familiarity with MYSQL.
  6. MOBILE OPTIMIZATING : For optimizing the web application for mobile phones and handheld devices the developer needs to have extensive skills in WML, mobile web as well as an understanding of how to integrate WML with server side scripting technologies

1.8. Goals behind developing the System

1.8.1. Project goal

“When people are sick, they must make critical decisions about when and where they should receive healthcare. Unfortunately, most people lack the medical knowledge needed to make these decisions safely.

Online smart diagnosis is powered by a computer program that performs symptom triage. The goal of symptom triage is to decide when, and where, you should seek care when you have symptoms. Symptom triage does not replace a physician evaluation or make a diagnosis.”

1.8.2. Academic Goal

Ø To recall and analyse and implement the understanding and concepts learnt in the complete course curriculum through various modules as well as on individual level and implement all of it in order to come out with a complete computing project of industry standard

Ø To document and publish the deliverables professionally following the standards followed in industry.

1.9. Objectives of the System

1.9.1. Project Objectives

Ø To come up with a complete automation solution for online symptom diagnosis.

Ø To keep the design, architecture, implementation flexible so as to allow customization by the system administrator.

Ø Optimize information presentation and service interface according to the capability of the device requesting it.

Ø To use communication channels apart from HTTP like Email, SMS and WAP for supplying quality information and services to customers and company employees.

Ø To ensure that the web is bug free and that it runs equally and efficiently on all browsers and platforms

1.9.2. Academic Objectives

Ø The prime objective is to learn nitty-gritties of project management and project development lifecycle, implementing it in developing the system and gaining experience in it.

Ø Learn Content Management System (CMS)

Ø To learn and apply the various Web Development Methodology and Human Computer Interaction Design Principles to the system design.

Ø Web accessibility

Ø To learn and master the advance features of PHP, MYSQL and associated technologies.

Ø To learn the internal work-flow and procedures that is followed medical diagnosis.

1.10. Success Criteria

To determine whether the project is a success or a failure parameters such as the quality of application developed as well as the quality of project documentation will be analysed. The quality of application will include the degree to which requirement was fulfilled, the degree of user-friendliness of the system as well as the ability to run swiftly, consistently and error-freely on multiple browsers.

1.11 Scope and Functionalities of the System

Scope limits the project. It defines where in the project the developer should call it stop. It determines to what extent the system will support functionalities and beyond what the system facilitates no feature or functionalities.

1.11.1. Functionalities to be implemented

The functionalities to be incorporated into the system which in turn will decide the scope of the system have been classified into 3 categories on the basis of their complexity and exclusiveness. They are:-

1.11.1.1. Core Functionalities:.

Ø Symptom checker - is an automatic smart software agent that can ask question to patient about their problem and it analysis the problems and diagnosis the debases of the patient

Ø Chat Services Patients can text chat with doctor.

Ø Forum - User can create, post delete thread in forum

Ø Messaging - User can send message to each other

Ø CMS(Content management System) - Admin can create update and delete pages.

Ø Medicine search engine - Doctor can use medicine search engine to know about works of a particular medicine

Ø Registration of Doctor And Patient .

Ø Patient Can upload his/her medical history.

Ø Secure and configurable user access through individual user logins and passwords.

Ø Users can change their password.

1.11.1.2. Enhanced Functionalities:

Ø Design the virtual doctor using artificial intelligent

Ø Video chat service

Ø Create user blog

Ø Full Mobile based services

Ø Full customizing user profiling.

1.11.1.3. Special Functionalities

Ø Various tool boxes for doctor - BMI Calculator, BRM calculator, Body fat calculator.

Ø Voice chat and VoIP

1.11.2. Scope of the Project

This projects main aim is to give perfect medical information to the user through internet. It will save time and money of both doctor and patient. The patient who don't have the time to visit the clinic of the doctor for some common issue they can use this system. This kind of system already in market like virtual doctor, WEB MD, Online health, but none of them works on mobile platform. As Smart Medical Diagnosis also works on mobile platform, anyone with wap enable mobile with GPRS, EGDE or 3G can access his web services and get information about medicine and diseases.

1.11.2.1 Scope Limitation

Ø Smart Medical Diagnosis for Common Diseases is an online application. Without internet this system doesn't work

Ø WAP Based mobile not able to display the webpage

Ø chat required high speed internet connection

Ø Symptom checker may be diagnosis wrong if patient give wrong input

Ø Serious medical problems can't be solved using this system

Ø Only some common diseases can be diagnosis

1.12. Feasibility Study

By the means of feasibility study one can find out if an information system project can be done, and if so, how. A feasibility study should answers the following question:

Ø Whether the project can be done;

Ø What are alternative solutions?

Ø What are the criteria for choosing among them?

Ø Is there a preferred alternative?

After a feasibility study, a decision is taken on the go ahead/no go of the project. There are a many types of feasibility study that are used for analysis of Information System. In this project the developer has restricted the feasibility study to Technological Feasibility Study and Schedule Feasibility.

1.12.1. Technical Feasibility Study

The technical feasibility study compares the level of technology available in the software development firm and the level of technology required for the development of the product. Here the level of technology consists of the programming language, the hardware resources, Other software tools etc. (All About Information Technology)

In this project the hardware and software required as the application will be deployed on a apache server, PHP 5.3 With ZEND Framework and mysql 5 Server will not be big ask at present scene. On the Client End the application just requires any current java script enable web browser.

1.12.3. Operational Feasibility Study

Operational feasibility study tests the operational scope of the software to be developed. The proposed software must have high operational feasibility. The usability will be high.

It is basically used to analyse whether the system will be used if it is developed and implemented. Whether there will be resistance from users that will affect the possible application benefits? Data gathering methods such as questionnaire and interviews have been incorporated in the development plan to ensure all user requirements are collected well in hand to develop the system. We also provide help manual to better understand the tystem.

1.12.3. Schedule Feasibility Study

Schedule Feasibility is an assessment whether the project will be able to complete on time. Since the project deadline is fixed i.e. 32 weeks. Each project phase time-line has been established with certain milestones also including some form of deliverables like PPF, PSF and Mid-Point the project-schedule is realistic and well within reach if the established schedule is followed precisely.

1.13. Major Project Deliverables

Final Year Project Documentation Page | 18

Abhijit Roy (PTL00782212)

Smart Medical Diagnosis for Common Diseases

Draft Proposal

PPF

Ethical Form

PSF

log sheet

Hard copy

Soft copy

Final Year Project Documentation Page | 18

Abhijit Roy (PTL00782212)

Smart Medical Diagnosis for Common Diseases

Start date: 27th July 2010

Duration: 31 Weeks

End date: 20th March

Project Development plan and Time Estimation.

S.no

Phase

Tasks

Weeks

1

Formulation

(total 10days)

Idea Generation

Project Title Selection

Feasibility Studies

Abstract Draft Project Proposal

Weeks -1.5

2

Planning

(total 18 days)

Work Breakdown Structure

Schedule and Time Estimation

Critical Path Method

Interviews

Gantt Chart

Project Proposal Form

Weeks -2.5

3

Analysis

(total 49 days)

Identify project specifications

- Project Background

- Resources required

- Techniques to be learnt

- Goals and Objectives

- Determine System Functionalities

- Identify scope of research

Project Specification Form

Investigation ad Research

- Programming

- Human Computer Interaction

- Multimedia Design Principles

- User requirements

- Drifting

Analysis

- User Profiling

- Domain analysis

- System analysis

- Risk analysis

Weeks -7

4

System Design

(Total 49 days)

Tasks:

Navigational Design

- Story Boarding

- Process Diagram

Abstract Interface Design

- Screen layout

- Content Design

- Interactivity Design

- Functionality Design

Midpoint Interview

Weeks -7

5

Implementation

(Total 28 days)

Code generation

Module Integration

Weeks -4

6

Testing and Evaluation

(Total 35days)

Test Plans

Unit Testing

Integration Testing

System Testing

Critical Evaluation

Weeks -5

7

Project Ending

(Total 35days)

Submission of the finished product

Presentation

Weeks -5

2. Problem Description

When people are sick, they must make critical decisions about when and where they should receive healthcare. Unfortunately, most people lack the medical knowledge needed to make these decisions safely.

Online Smart Diagnosis is powered by a computer program that performs symptom triage. The goal of symptom triage is to decide when, and where, you should seek care when you have symptoms. Symptom triage does not replace a physician evaluation or make a diagnosis.

Over the past 12 years, healthcare professionals in the U.S. government and major managed care organizations have used the program extensively, proving its effectiveness. Like FreeMD.com improves medical outcomes by helping consumers determine the most appropriate time and place to receive care from a healthcare professional. (How it Works)

With so many options for care today, it's becoming more important for you to know where you should get care when you develop symptoms. Choices include:

  • Emergency Room

  • Urgent Care Center

  • Physician Office

  • Physician eVisit (via the web, e-mail, or phone)

  • Dentist Office

  • Nurse Retail Clinic

Your choice on where to get care is important because not all of these locations are equipped to treat all health problems. If you make the wrong choice, you risk delaying your diagnosis and treatment. A wrong choice could also lead you to over-pay for the same care you could have received in a less expensive setting. Online Smart Diagnosis was created to safely direct you to the right location: where you get the care you need, without paying more than you need to.

Online Smart Diagnosis performs a medical interview, just like a real doctor. During the interview, you answer questions about your symptoms and past medical history. Online Smart Diagnosis is designed to be fast (average encounter time is less than 2 minutes), so you get help fast! At the end of the process, FreeMD.com generates a report that provides the following information:

  • What might be causing your symptoms?
  • When should you see a doctor?
  • Where should you seek care?
  • What kind of doctor should you see?
  • What should you do to care for yourself?

There are many palaces in the world where you can't find a single doctor.

There are only 54 doctors per 100,000 peoples in Africa.

Presently, Kenya has slightly more than 5,000 doctors.

In many parts of the world, far too many children and adults are dying unnecessarily from easily treatable diseases.

In a world where many of us take basic healthcare for granted, one in six children in Zambia will still not reach the age of five.

Too often this problem is simply due to the lack of access to effective primary healthcare. Whether it is the huge distances to health centres and lack of transport, the lack of doctors in many regions, or the simple shortage of resources such as medications, very often easily treatable conditions are left until it is too late.

From above information we can say, there is a desperate lack of primary healthcare available to rural communities in many parts of the world due to their geographical isolation, shortage of doctors, and lack of resources. The Smart Medical Diagnosis for Common Diseases Project is an innovative new venture that aims to use mobile clinics and internet to save lives.

3. Literature Review

Development of successful project starts with a solid and deep Research. Thus, Research will be an on-going process throughout the project. Researches need in every phase let it be planning, user interface designing or anything and especially when you are in process of building comprehensible website. The research area will also consist of the development process model which will be used for the project. Getting good hands on programming languages and mastering back-ends will also be a challenge and research work. For developing this project I am going to flow Web Engineering model. I think this is the best model to make web based project.

3.1. Web Engineering and WebE Process model:

As Web-based systems play increasingly important roles in a number of applications, the demands placed on these systems and their complexity have also increased significantly. Also, there is growing need for improved quality, performance and availability of Web-based systems as we are now more dependent on Web-based systems than ever before. But, most Web-based systems are poorly developed in ad hoc manner and hence they exhibit poor performance and are susceptible for major failures. Web-based system development, in most cases, lacks rigour, systematic approach to design, disciplined development process and quality control and assurance procedures. Hence, there is growing concern about the performance, quality, integrity, maintainability and scalability of complex Web based systems. Web engineering advocates a process and a systematic approach to development of high quality Web-based systems and aims to bring the potential chaos in Web-based system development under control and enhance scalability, maintainability and quality. It is a rapidly emerging as a new discipline for successful development and deployment of large Web-based systems in a range of applications. Web Engineering is an evolving development methodology dedicated to the development of superior Internet and Web Applications. It advocates a standardized process and follows a systematic approach. (S. Murugesan, Y. Deshpande, S. Hansen and A. Ginig, 1999)

Web engineering principles and approaches can fix the issues related to web development methodology gaining complete control over the process, minimizing risk and improving the quality and maintainability

(Ginige & Murugesan, 2000)

Web Engineering Activities

Successful Web-based system development and deployment is a process, not just an event as currently perceived and practiced by many developers and academics. Web engineering is a holistic approach and deals with all aspects of web-based development, starting from concerting and development to implementation, performance evaluation, and continual maintenance. (Suh, 2005)

(Suh, 2005)

Web Engineering Development Process:

Reasons behind choosing the WebE process model -

  1. Smart Medical Diagnosis for Common Diseases :going to be a web based project and as developer have chosen web engineering model, it would be easy and profitable to follow the process model suggested under the web engineering.
  2. The WebE process model is deliberately developed for the web applications and it addresses the specific needs of a web application which differs from the traditional software and is not addressed by the traditional software methodologies, too. Developer's system is a web based system and would have a feature that can be looked after only by a dedicated web process model and that's why I found WebE useful.
  3. Take time to understand the business needs and product objectives, even if WebApp details are vague.
  4. Describe how users will interact with the WebApp using a scenario-based approach
  5. Develop a brief project plan.
  6. Spend time modeling what you are going to build


3.2 Academic Research

Smart Medical Diagnosis for Common Diseases with Medicine Search Engine is a project where research is going to be very crucial. I have contact with doctor for gathering information. Some of friends who are medical student are going to help in making the database. There are already some system are on the market. From this kind of system I can learn, how I can make this kind of system. Academic Research means extracting information from others hard earned experiences like going through books, journals, paper presentations and other published materials.

My project has multidirectional requirements

  1. Medical - Since this project deals with Medical, patient and so I will need to go through various Medical books so that at least I should have an idea how can I make a virtual medical agent.
  2. Patient - I have to understand what a patient want from a doctor. What kind of patient should able to use this kind of system?
  3. Software Engineering Techniques
  4. Web engineering , Mobile WEB technologies
  5. Network and Internet -
  6. Databases - there will be a huge use and requirements for databases, since everything will be stored at backend. So I will need a secure, big database
  7. Reports generation

The books that I would refer would cover both the technical and the domain aspects:

The list is as follows:

  1. Pressmen, RS 2001, Software Engineering - A Practioner's Approach, Tata McGraw Hill, New York.
  2. Jalote, P 2005, An Integrated Approach to Software Engineering,Narosa Publishing House Pvt. Ltd., Kolkatta.
  3. RamaKrishnan, R & Gehrke, J 2000, Database Management Systems, Tata McGraw Hill, Singapore.
  4. Shneiderman, B 2005, Designing the User Interface Strategies for Effective Human- ComputerIinteraction, Pearson Education, New Delhi.
  5. Welling, L & Thompson, L 2006, PHP and MySQL Web Development, Dorling Kindserley Publishing Inc., New Delhi.
  6. Dubois, P 2004, MySQL Cook Book, Shroff Publishers & Distributers Pvt. Ltd., New Delhi.
  7. Kendall, EK & Kendall EJ 2004, System Analysis and Design, Prentice Hall of India Pvt. Ltd., New Delhi.
  8. American Medical Association Guide to Talking to Your Doctor, The American Medical Association, New York.
  9. Navathe, B, Elmasri, R, Somayajulu, VLN, Gupta, SK 2008, Fundamentals of Database Systems, Dorling Kindserley, New Delhi.
  10. Mercer, DW, Kent, A, Nowicki, SD, Mercer, D, Squier, D, Choi, W & Eide-Goodman, H 2004, Beginner's PHP, Willey Dreamtech India Pvt. Ltd, New Delhi.

The websites that I would like to refer are:

  1. http://www.freemd.com/
  2. http://www.consumercomplaints.in/complaints/virtual-pc-doctor-c403217.html
  3. http://www.everydayhealth.com/
  4. http://web-md.com/
  5. http://cs.pervasive.com/blogs/sql4psql
  6. http://www.php.net
  7. http://www.mysql.com
  8. www.sourceforge.net
  9. http://www.w3schools.com/Ajax/Default.Asp
  10. http://www.w3schools.com/CSS/Default.Asp
  11. http://www.crm2day.com/index_6.php
  12. http://crm.ittoolbox.com/
  13. www.parenonline.net
  14. http://www.pmi.org/Pages/default.aspx
  15. http://whatis.techtarget.com
  16. http://www.phpfreaks.
  17. http://www.haskell.org
  18. http://www.visual-prolog.com/

3.3 Researches on Similar System

Compression chart between Smart Medical Diagnosis for Common Diseases with Medicine Search Engineand other similar system those are available in the market like Free-MD, Virtual Doctor.

Features

Smart Medical Diagnosis

Free-MD

  • irtual Doctor

  • CMS Based system

    Yes

    No

    No

    AJAX Used

    Yes

    Yes

    No

    Chat services

    Text Chat

    No

    No

    Virtual doctor agent

    Yes

    Yes

    Yes

    Contact with Real Doctor

    Yes

    No

    No

    Mobile Support

    Yes

    No

    No

    Forum

    Yes

    No

    No

    3.4. Content Management System

    A Content Management System (CMS) is a piece of software that runs on a server. Typically a database application, a CMS makes it easy to publish and administrate content. Some basic features that is common to all CMSes:

    • Decentralized maintenance.
      Typically based on a common web browser. Edit anywhere, anytime. Bottlenecks removed.
    • Designed with non-technical content editors in mind.
      People with average knowledge of word processing can create the content easily. No HTML skills required.
    • Configurable access restrictions.
      Users are assigned roles and permissions that prevent them from touching content in which they are not authorized to change.
    • Consistency of design is preserved.
      Because content is stored separate from design, the content from all authors is presented with the same, consistent design.
    • Navigation is automatically generated.
      Menus are typically generated automatically based on the database content and links will not point to nonexistent pages.
    • Content is stored in a database.
      Central storage means that content can be reused in many places on the website and formatted for multiple devices (web browser, mobile phone/WAP, PDA, printer).
    • Dynamic content.
      Extensions like forums, polls, shopping carts, search engines, news management are typically drop-in modules. A good CMS also allows for truly user defined extensions.
    • Daily updates.
      You do not need to involve web designers or programmers for every little modification - you are in control of your website.
    • Cooperation.
      Encourages faster updates, enforces accountability for content editors via log files and promotes cooperation between authors.
    • Content scheduling.
      Content publication can often be time-controlled; hidden for previews; or require a user login with password.

    In this project I will try make CMS. Manu, image, pages etc. will be created dynamically.

    3.5. Architecture of the System

    The popularity of online medical diagnosis is growing day by day. Lots of internet user and doctors are using this kind of services every day. There are many online medical diagnosis system is available like web-md, virtual doctor, symptom-checker, everyday health. Those existing web diagnosis system is designed using existing technologies like Hyper Text Transfer Protocol (HTTP), ASP.Net, PHP, JavaScript, secure socket layer(SSL) that drive the internet. These technologies follow the well-known Client Server Architecture.

    The client-server system over the internet works well for online medical diagnosis but required high speed internet connection. Here the client is provided with an interface, implemented as XHTML in PHP, for the auction floor. The client carries out patient information through chat interface.

    PPH 3 tire Clint Server Architecture

    Reason for adopting Client Server Architecture-

    1. When we need to connect two computers we need network. For remote diagnosis a patient using internet connection we need some kind of architecture by which we can connect them so client server is the perfect solution for this system
    2. Client/Server architecture allows for the implementation of relational databases, which allows users to access data in many ways.

    Content Management System (CMS)

    A content management system (CMS) is a system used to manage the content of a Web site. Typically, a CMS consists of two elements: the content management application (CMA) and the content delivery application (CDA). The CMA element allows the content manager or author, who may not know Hypertext Markup Language (HTML), to manage the creation, modification, and removal of content from a Web site without needing the expertise of a Webmaster. The CDA element uses and compiles that information to update the Web site. The features of a CMS system vary, but most include Web-based publishing, format management, revision control, and indexing, search, and retrieval. (Svarre, 2006)

    The Web-based publishing feature allows user to use a template or a set of templates approved by the system, as well as wizards and other tools to create or modify Web content. The format management feature allows documents including legacy electronic documents and scanned paper documents to be formatted into HTML or Portable Document Format (PDF) for the Web site. The revision control feature allows content to be updated to a newer version or restored to a previous version. Revision control also tracks any changes made to files by individuals. An additional feature is indexing, search, and retrieval. A CMS system indexes all data within an organization. Individuals can then search for data using keywords, which the CMS system retrieves.

    The benefits of CMS is that user can modify add delete content of a web page easily and user doesn't want to know any kind of code or technical knowledge of software. It is like using a MS office.

    To design a CMS system developer must have a good knowledge of database and web technologies. CMS is easy for user but heard and more time consuming than general website development.

    4. Research Method

    4.1. Primary Research

    Primary research was performed to gather preliminary information in order to proceed further in the development of the system. Since literature review and academic research concluded most technical and domain study, it was necessary to involve end-users in the development of the system. The developer planned to gather user requirements to gain more information on the feasibility, functionality and the usability of the system.

    The primary research is conducted by the developer to understand user needs. The developer need to understand the need of patient, how a doctor diagnosis diseases, what user like to use for better understanding of the project. This type of research comes under primary research. These techniques are done in the first phase of any methodology. There are various processes of data gathering techniques which the developer has used are listed below:

    4.1.1. Questionnaires

    Questionnaires are an inexpensive way to gather data from a potentially large number of respondents. Often they are the only feasible way to reach a number of reviewers large enough to allow statistically analysis of the results. A well-designed questionnaire that is used effectively can gather information on both the overall performance of the test system as well as information on specific components of the system. If the questionnaire includes demographic questions on the participants, they can be used to correlate performance and satisfaction with the test system among different groups of users. (Questionnaire Design, 2009)

    Reason of using questionnaires

    A Questionnaire can be quite inexpensive to developer. Although preparation may be costly, any data collection scheme will have similar preparation expenses. The cost per person of a questionnaire can be as low as postage and a few photocopies. Time is also an important resource that questionnaires can maximize. If a questionnaire is self-administering, such as an e-mail questionnaire, potentially several thousand people could respond in a few days. It would be impossible to get a similar number of usability tests completed in the same short time. Questionnaires will save time and money of developer.

    Benefits

    Justification

    Generally it is relatively quick to collect information and also chip. However in some situations they can take a long time not only to design.

    . Thus it helps the developer to save time and money.

    Helps the researcher to gain answers to embarrassing questions.

    People are more likely to tell the truth if they can do so anonymously than if they have to tell an interviewer face to face. They can also be useful for collecting sensitive information. Thus it will help the developer to get correct information about the system development.

    They usually are self-administered by the respondent.

    People find difficult to answer the questions if they are not self- explained. As questionnaires are made to be self-answered. Therefore it helps the developer to get information which he wants from the user.

    Categorizing the responses of open-ended questions may require use of content analysis.

    The open ended questions help the developer to get information about the features of the software.

    It helps to get information from different type of people.

    The developer cannot go to each and every person. Therefore by distributing the questionnaires to large group of people helps the developer to get wide range of solution for the system.

    ( Milne, 1999)

    Some disadvantages of questionnaires:

    Questionnaires, like many evaluation methods occur after the event, so participants may forget important issues.

    Questionnaires are standardized so it is not possible to explain any points in the questions that participants might misinterpret. This could be partially solved by piloting the questions on a small group of students or at least friends and colleagues. It is advisable to do this anyway.

    Open-ended questions can generate large amounts of data that can take a long time to process and analyses. One way of limiting this would be to limit the space available to students so their responses are concise or to sample the students and survey only a portion of them.

    Respondents may answer superficially especially if the questionnaire takes a long time to complete. The common mistake of asking too many questions should be avoided.

    Students may not be willing to answer the questions. They might not wish to reveal the information or they might think that they will not benefit from responding perhaps even be penalized by giving their real opinion. Students should be told why the information is being collected and how the results will be beneficial. They should be asked to reply honestly and told that if their response is negative this is just as useful as a more positive opinion. If possible the questionnaire should be anonymous.

    ( Milne, 1999)

    Name:

    Date:

    Questioners for Patient

    System Name: Smart Medical Diagnosis for Common Diseases with Medicine Search Engine

    1. Do you have an Internet connection at home?

    Yes No

    2. What kind of mobile phone do you use?
    A basic phone just for calling
    JAVA based mobile
    Smart Phone (e.g. -Nokia Symbian Phone, Windows Mobile )
    Mobile Computer ( e.g.- Google Android Phone, Nokia N900 )
    No Idea

    3. Do you use internet in your mobile phone?
    Yes No

    4.Which bowsers you used most?

    IE Opera Mizilla Firfox Google Chrome Safari

    5. Have you use any online virtual medical diagnosis or virtual doctor earlier?

    Yes (Please mention name of the application)

    -----------------------------------------------------------------------------------------------

    No

    6. How often do you visit internet?

    Everyday Two to three times a week

    Once a week Once a month or less

    7. In this system we offer two kind of medical diagnosis. Which one you prefer most?

    By software.

    By doctor through chat or video conference

    Questions used for data gathering

    8. For what kind of diseases you like to use this online Smart Medical Diagnosis

    For minor issue

    For common diseases like cold, fever.

    For all kind of diseases that can be diagnosis through online.

    9. What kind of current technology is best for you to contact with a your Doctor through online?

    Text Chat Voice Chat Video Confersing Email Forum

    10.How this system will help you?

    It will save your time and money because you don't need to visite a doctor's clinic.

    It will increase your knowledge in medicine

    It will help you when you don't get a doctor nearby.

    Name:

    Date:

    Questioners for Doctor

    System Name: Smart Medical Diagnosis for Common Diseases with Medicine Search Engine

    1. Do you think that it is possible to diagnosis patient using computer software?

    Yes

    No

    Please give some reason of your answer ………………………………………………………………………………………...

    ………………………………………………………………………………………..

    2. Is it possible for a doctor to diagnosis a remote patient by using a text chat or video chat

    Yes

    No

    Please give some reason of your answer …………………………………………………………………………………............

    …………………………………………………………………………………………

    3. Do you think medicine search engine will help doctor because of they don't need to remember all the name and works of medicines.

    Yes No

    4. Is BMI Calculator, BMR Calculator, Body Fat Calculator health tool box will helpful for a doctor to diagnosis a patient?

    Yes No

    5. What kind of diseases can be diagnosis through online?

    For minor issue

    For common diseases like cold, fever.

    For all kind of diseases that can be diagnosis through online.

    6. What kind of current technology is best for you to diagnosis patient through online ?

    Text Chat Voice Chat Video Confersing

    Anyother (Please mention the name of the technology below)

    …………………………………………………………………………………..

    …………………………………………………………………………………..

    7. Do you think this system will help patient when they don't get a doctor nearby or patient don't have a time to visit a doctor's clinic for a minor or common health issue ?

    Yes

    No (Please give some reason of your )

    ……………………………………………………………………………….

    ………………………………………………………………………………..

    4.2. Secondary Research

    4.2.1. Methodology

    Reasons for choosing the WebE process model:

    1. This project is an web based project and WebE is the best model compare to other models for web development.
    2. The WebE process model defines a few testing strategies which are optimized for a web application. These techniques are not found under any under any other software development model.
    3. With the project being an evolutionary product, the room for evolution in the WebE development model makes it worthwhile to follow.
    4. WebE model deliverables such as navigational design, architectural design, content design and configuration design are received at the end of Engineering phase. These deliverables plays a major role in future development phase acting as a reference model, ensuring quality of the final product developed. So it is all the more preferable to follow WebE model. (S. Murugesan, Y. Deshpande, S. Hansen and A. Ginig, 1999)
    5. WebE process model gives the developer the desired flexibility to support scope refinement after increments. CMS based system changed and increment day by day so this model is perfects this project.

    4.2.2. Technical Research

    4.2.2.1. Platform and Programming Language Research

    In today's internet market is dominated by three Platforms

    1. PHP (PHP: Hypertext Pre-processor) With Apache
    2. ASP.NET With IIS
    3. JSP (JavaServer Pages)

    For this project I am going to use PHP add Apache as Platform. I choose PHP because of it is the only web based language I know. I have little idea about ASP.NET and JSP.

    PHP over ASP.NET

    • PHP is an open source whereas ASP.NET comes under copyrighted Visual Studio from Microsoft.
    • PHP is a relatively simpler language to use than ASP.net. Initially, PHP was written in the C programming language to replace a set of scripts in Perl. That is the reason why coding in PHP remains simple even today. Many developers find themselves to be more at ease with the user-friendly nature of PHP when it comes to coding. However, critics also count this advantage of PHP as a disadvantage. Some of them maintain that the language of PHP has not been updated much, and hence it is still quite archaic and even, somewhat cumbersome for coding. ASP.net, which is a relatively new development, has a lot of options when it comes to languages. Here, you can use languages such as C#, J#, C++ and VB.net. Hence, when it comes to sheer choice, ASP.net has better to offer. But PHP is no less, since it can do its task quite well, even with its minimum language tools.
    • PHP is has much better support for the database management system, MySQL. In fact, the very popular blogging platform, WordPress uses the formidable combination of PHP coding on MySQL for its content management system, which includes about hundreds of thousands of blog posts every single day. Another very popular and frequently updated service that uses the combination of PHP and MySQL is Wikipedia. ASP.net can also support MySQL, but PHP is unanimously hailed, by the masses and classes alike, for its great support for this database management system.
    • People who use both PHP and ASP.net also maintain their opinion that PHP is better for embedded support with another database management system, viz. SQLite. SQLite is described as a relational database management system and since it is contained in a C programming library, PHP can provide better support to it.
    • Then to run ASP.NET we again need Windows which we will need to buy which will again incur some cost. But in case of PHP, it can be run on Linux again an open source & free of cost.
    • PHP is comparatively older than ASP.NET but newer versions are launching time to time. So we get more help in coding purposes in harder modules
    • We can get plenty of expertise in PHP at a lower cost than ASP.NET.
    • Size will be smaller and it will cost less at the same time, easy & fast to open at client side.
    • When it comes to support, PHP wins over ASP.net. The main reason for this is that PHP is open source. Hence, the support can come freely from all over the world. In most cases, PHP fixes are made instantly. Being open source also ensures that there are very few snags in PHP. While, ASP.net could take a while to make fixes. That is because it is owned by Microsoft, and it is the development team of Microsoft that will need to respond to the support query. That could take more time than the worldwide open source support that PHP is able to get. Most PHP supports can be instantly found online by doing a simple search on the Internet. Some of the providers of support for PHP are Zend, NuSphere and ThinkPHP. . PHP is free and 70% of dynamic websites are made of PHP.
    • ther supported programming language is used HTML, XHTML, CSS, PHP, JAVASCRIPT, AJAX, JQUARY, and SQL

    4.2.2.2. Database Management System (DBMS) Research

    MySQL5 vs. SQL Server 2005

    Features

    MySQL5

    SQL Server 2005

    Os Support

    Windows, Mac, Linux, Unix

    Windows NT

    Licensing

    Free

    Commercial - Closed Source

    Install/Maintenance Process

    Heard

    Easy

    Graphical View Designer

    Yes

    Yes

    Multi Row value insert

    Yes

    No

    Triggers

    Yes

    Yes

    Graphical Explain Tool - no additional charge

    No

    Yes

    Pluggable Storage Engine

    Yes

    No

    (Hsu & Obe, 2008)

    I choose MySQL 5 because it is free and open source provide full support. Lighter than SQL Server 2005 and run from all operating system available in the market.

    Hardware and Software Requirements to run this web application

    5. Analysis and Design

    5.1.1. Questionnaire Analysis

    1. Do you have an Internet connection at home?

    Summary

    Value

    Percent %

    YES

    100%

    NO

    0%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Purpose

    To find that how many user have internet connectivity at their home or office

    Justification

    The above pie chart shows that computer all users have internet connection at their home. But in reality Only 5.3% people use internet in India. (Rameshjeee, 2008) .

    2. What kind of mobile phone do you use?

    Value

    Percent %

    Basic Phone

    15%

    Java Phone

    50%

    Smart Phone

    30%

    Mobile Computer

    5%

    Choices Selected:

    20

    Total Responses:

    20

    Purpose

    For designed Mobile site I need to know what kind of mobile are used by user.

    Justification

    Above chart shows that 15 % of user use basic phone which not able to connect with internet. But other 90% phone use can access internet from their mobile phone. JAVA based phone are not able to display mobile and WAP pages. But now days WAP services are out-dated. But latest JAVA based phone has inbuilt web browser it able to open any web site expect some flash based web site. So I as a developer try to design mobile site that can open from JAVA based phone.

    3. Do you use internet in your mobile phone?

    Value

    Percent %

    YES

    70%

    NO

    30%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Purpose

    To find that how many user use mobile internet connection.

    Justification

    The graph shows that 70% people use internet in their phone. So user can access this system from anywhere.

    4. Which bowsers you used most?

    Value

    Percent %

    IE

    20%

    Opera

    10%

    Mozilla

    40%

    Chrome

    15%

    Safari

    15%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Purpose

    To find that how many user using what browser.

    Justification

    This will help me to design the CSS of the web site. Because all browsers are interpret html data little different way.

    6. Have you use any online virtual medical diagnosis or virtual doctor earlier?

    Value

    Percent %

    Yes

    10%

    No

    90%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Justification

    If I know what user like and kind of system he/she currently using then will it helps me to make better system.

    7. In this system we offer two kind of medical diagnosis. Which one you prefer most?

    Value

    Percent %

    Software

    25%

    Doctor

    75%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Justification

    I want to know what kind of diagnosis like most by user. So majority of user want to diagnosis by Human doctor.

    8. For what kind of diseases you like to use this online Smart Medical Diagnosis?

    Value

    Percent %

    Minor Issue

    30%

    Common Diseases

    70%

    All kind of diseases

    0%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Justification

    This will help me to understand when and in what condition patient want to use this system.

    9. What kind of current technology is best for you to contact with a your Doctor through online?

    Value

    Percent %

    Text Chat

    10%

    Voice Chat

    20%

    Video Confersing

    7%

    Email

    0

    Forum

    0

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Justification

    This will help me to understand what kind of technology user want to contact with doctor. 70 % user said Video Confersing but at this movement this is not fisible for me to develop. So I desiced for to implemnt text chat first then I try to implement Video Confersing.

    10. How this system will help you?

    Value

    Percent %

    Save Time & Money

    60%

    Increase your knowledge

    30%

    When you don't get a doctor

    10%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Justification

    This will help me to understand what kind of technology user want to contact with doctor. 70 % user said Video Confersing but at this movement this is not fisible for me to develop. So I desiced for to implemnt text chat first then I try to implement Video Confersing.

    1. Do you think that it is possible to diagnosis patient using computer software?

    Summary

    Value

    Percent %

    YES

    100%

    NO

    0%

    Statistics

    Choices Selected:

    10

    Total Responses:

    10

    Justification

    I just want know what a doctor think about this Smart Medical Diagnosis system concept. If doctors think it is not possible to make software that cans diagnosis a patient's common diseases. Why he think it is not possible. If I figure out the solution then I can make this system. But above pie chart shows all doctor think that it is possible.

    2. Is it possible for a doctor to diagnosis a remote patient by using a text chat or video chat?

    Summary

    Value

    Percent %

    YES

    90%

    NO

    10%

    Statistics

    Choices Selected:

    10

    Total Responses:

    10

    Justification

    This will help me to understand how a doctor can diagnosis a patient through internet and what kind of problems the doctor face to diagnosis a disease through internet. This information will help me to design a better system that can be useful for a doctor. Above pie chart shows that 90% doctors are think that medical diagnosis for common diseases can be done using internet.

    5. What kind of diseases can be diagnosis through online?

    Value

    Percent %

    Minor Issue

    100%

    Common Diseases

    100%

    All kind of diseases

    60%

    Statistics

    Choices Selected:

    20

    Total Responses:

    20

    Justification

    If I know what kind of diseases can be diagnosis through online? This will help to make the database and design. From above chart we come to know that doctors thinks minor issue and common diseases can be 100% diagnosis and cured by remote diagnosis using internet.

    7. Do you think this system will help patient when they don't get a doctor nearby or patient don't have a time to visit a doctor's clinic for a minor or common health issue ?

    Summary

    Value

    Percent %

    YES

    100%

    NO

    0%

    Statistics

    Choices Selected:

    10

    Total Responses:

    10

    Justification

    This will help me to understand is this system going to help the user. And how can I make this system better.

    2. Is it possible for a doctor to diagnosis a remote patient by using a text chat or video chat?

    Summary

    Value

    Percent %

    YES

    90%

    NO

    10%

    Statistics

    Choices Selected:

    10

    Total Responses:

    10

    Justification

    This will help me to understand how a doctor can diagnosis a patient through internet and what kind of problems the doctor face to diagnosis a disease through internet. This information will help me to design a better system that can be useful for a doctor. Above pie chart shows that 90% doctors are think that medical diagnosis for common diseases can be done using internet.

    5.2. System Design

    After a thorough analysis and research, the developer is in acquisition with ample amount of information to model the proposed system. There are several ways to model and design systems, using different modelling diagrams.

    • System models - Abstract descriptions of systems whose requirements are being analysed
    • Formal methods - Techniques and notations for the unambiguous specification of software
    • Objectives
      • To explain why the context of a system should be modelled as part of the requirements engineering process
      • To describe behavioural modelling, data modelling and object modelling
      • To introduce some of the notations used in the Unified Modeling Language (UML)
    • To introduce formal methods and formal modeling approachesin a timing sequence.
    • The Unified Modelling Language

    Devised by the developers of object-oriented analysis and design methods

    5.2.1. Requirement Analysis and Modelling

    After completing the requirement modelling it becomes easier to proceed with actual modelling such as Class diagrams, Database design and Interface design. To explain the state and behaviour of the classes to be used, the developer has decided to use the Class diagrams. Entity relationship diagrams will be used for the databases.

    As a developer I use use-case context diagram to specific user classes on the basis of audience classes. Some use-cases are designed to show some special goal. Use Case diagrams have been followed by Use Case specification (textual use-cases). Sequence Diagrams have also been used to explain those scenarios within the use case where group of objects will collaborate and communicate with each other in a timing sequence.

    5.2.1.1. Use-Case Context Diagram

    5.2.1.1.1. Use Case List

    ID

    Use Case Name

    Description

    1

    Login

    Allows user to login and gain access to their role specific user panel

    2

    Register Doctor

    Allows admin Register Doctor.

    3

    manage user account

    Allows authorized users to view, add, edit and delete Users.

    4

    Chat

    Allows patient to chat with doctor

    5

    manage patient

    Doctor can manage patient data

    6

    Customisation

    Edit web pages. Add, delete, create new pages using CMS

    7

    Medicine search

    Allows doctor to search medicine and its details.

    8

    Forum

    Allow user to create thread

    9

    health tools

    Allows user to use some health tools

    10

    Upload medical history

    Allows patient to upload their medical history

    11

    Symptom checker

    Check symptom for diseases

    5.2.1.1.2. Actors Description

    ID

    Actor Name

    Description

    1

    Admin

    Administrator who manages, monitors, sets up the system as well as carry out certain company specific customisation.

    2

    Patient

    The user who manages and monitors operation within a single branch.

    3

    Doctor

    The office users who belong to a particular branch and carry out customer service duty as well as manage branch specific shipment.

    6

    Unregistered user

    Customer or Site Visitors who have not registered themselves with the company.

    5.2.1.1. Use-Case Context Diagram

    Final Year Project Documentation Page | 18

    Abhijit Roy (PTL00782212)

    Smart Medical Diagnosis for Common Diseases