Sec Assignment 3
Sec Assignment 3
for
MediChaos
Version 1.0
By
Abdur Rehman CIIT/SP22-BCS-005/ISB
Muhammad Adil Feroze CIIT/SP22-BCS-006/ISB
Hassan Ali CIIT/SP22-BCS-032/ISB
Supervisor
XYZ
Table Of Contents
1. Introduction..............................................................................................................................3
1.1 System Introduction......................................................................................................................3
1.2 Background of the System............................................................................................................3
1.3 Objectives of the System..............................................................................................................3
1.4 Significance of the System...........................................................................................................4
2. Design Methodology and Software Process Model...............................................................4
2.1 Design Methodology....................................................................................................................4
2.2 Software Process Model: Agile Development Model..................................................................5
2.3 Justification for the Agile Model..................................................................................................5
2.3.1 Why Not Waterfall?.................................................................................................................5
2.3.2 Why Not Prototyping or Spiral?...............................................................................................5
2.4 Conclusion....................................................................................................................................6
3. System Overview......................................................................................................................6
3.1 Product Perspective......................................................................................................................6
3.2 Product Scope...............................................................................................................................7
3.3 Product Functionality...................................................................................................................7
3.4 Users and Characteristics..............................................................................................................8
3.5 Operating Environment................................................................................................................9
4. Design Models.........................................................................................................................10
4.1 Composite Viewpoint.................................................................................................................10
4.2 Logical Viewpoint......................................................................................................................11
4.3 Information Viewpoint...............................................................................................................12
4.4 Interaction Viewpoint.................................................................................................................13
Admin Sequence Diagram......................................................................................................................13
Doctor Sequence Diagram......................................................................................................................14
Patient Sequence Diagram......................................................................................................................15
4.5 State Dynamics Viewpoint.........................................................................................................16
Admin State Diagram..............................................................................................................................16
Doctor State Diagram..............................................................................................................................17
Patient State Diagram..............................................................................................................................18
4.6 Algorithm Viewpoint..................................................................................................................19
Software Design Description for MediChaos Page 2
Software Design Description for MediChaos Page 3
1. Introduction
1.1 System Introduction
The software project, MediChaos - Organizing healthcare, optimizing outcomes, is an ambitious
endeavor that combines advanced technologies to address critical challenges in the healthcare
sector. Our primary goal is to create an intelligent system that leverages web-based platforms,
machine learning models, and efficient data management to enhance patient care, streamline
operations, and improve overall healthcare experiences.
MediChaos aims to empower patients by providing easy access to medical information, enabling
convenient appointment scheduling, and offering predictive health insights through integrated
machine learning models. It acts as a comprehensive tool for doctors to manage patient data,
streamline communication, and utilize diagnostic aids. By seamlessly integrating robust algorithms,
secure databases, and user-friendly interfaces, MediChaos promises to revolutionize how healthcare
is delivered and managed.
- Advanced Disease Prediction: MediChaos goes beyond basic management, using machine
learning models to predict health issues such as heart disease, diabetes, and Parkinson's disease.
- Seamless Data Management: Integrating robust algorithms and secure databases, MediChaos
ensures real-time responsiveness and data security.
In short, MediChaos aims to revolutionize patient care, streamline operations, and enhance overall
healthcare experiences.
Enhance Accessibility: MediChaos aims to provide patients with easy access to medical
information, appointment scheduling, and health predictions, empowering them to manage
their healthcare confidently.
Improve Patient Care: By utilizing machine learning models for disease prediction,
MediChaos enhances diagnostic accuracy and provides personalized healthcare
recommendations.
Software Design Description for MediChaos Page 4
MediChaos is a complex system with multiple interacting modules (e.g., Patient Management,
Doctor Management, Administrative Management, Machine Learning Integration). Object-
Oriented Programming (OOP) is the ideal choice because:
The Agile model is the best fit for MediChaos due to the following reasons:
Waterfall is linear and rigid, requiring all requirements to be finalized upfront. MediChaos
is a new system, and user needs or ML models may evolve during development, making
Agile more suitable.
Prototyping is effective for systems with ambiguous requirements but lacks a structured
approach to deployment and scalability.
The Spiral model, while iterative, is more suited to high-risk projects with less defined
goals and a heavier focus on risk management.
Software Design Description for MediChaos Page 6
2.4 Conclusion
By following OOP as the design methodology and the Agile Development Model as the process,
MediChaos ensures:
3. System Overview
3.1 Product Perspective
MediChaos is an innovative system that combines advanced web-based platforms, machine learning
models, and efficient data management to transform healthcare management. It operates in various
healthcare environments, including hospitals, clinics, and private practices. The project is entirely
new, designed from scratch to address the need for comprehensive healthcare management,
predictive health insights, and seamless patient-doctor interaction.
Doctor Management:
- Allows doctors to manage their profiles, view patient records, update availability, and
schedule appointments.
- Provides diagnostic support through machine learning models, assisting in early detection and
personalized treatment plans.
- Facilitates communication with patients, allowing for efficient and timely medical advice and
follow-ups.
Administrative Management:
- Offers a centralized dashboard for administrators to monitor and manage all system activities,
including patient and doctor data.
- Ensures data security and privacy, complying with healthcare regulations and standards.
- Allows for the addition and management of hospital departments, staff, equipment, ongoing
operations, and appointments.
User Interface:
- Provides an intuitive, web-based interface for patients, doctors, and administrators to interact
with the system.
- Displays real-time updates, notifications, and alerts to ensure timely information flow.
- Facilitates easy navigation and access to various functionalities and features of the system.
Communication Module:
- Enables secure communication between patients and doctors through messaging and video
consultation features.
- Supports timely medical guidance, follow-ups, and patient queries.
- Integrates with email and SMS systems for notifications and reminders.
Software Design Description for MediChaos Page 8
Secondary Users:
1. Patients:
o Characteristics:
Individuals seeking medical treatment, care, or consultation from healthcare
providers.
Have varying levels of medical knowledge and technology literacy.
Require access to personal health information, appointment scheduling, and
communication with healthcare providers.
Software Design Description for MediChaos Page 9
3. Software Components:
- MERN Stack: Built using the MERN (MongoDB, Express.js, React, Node.js) stack,
ensuring compatibility with the latest stable versions of each component.
- Machine Learning Integration: Machine learning models used to predict different
diseases of user and recommend doctors accordingly.
- Database Compatibility: Utilizes MongoDB as the backend database, compatible
with the selected version of MongoDB.
- Node.js Runtime: Runs on Node.js runtime environment, compatible with the
chosen version of Node.js for server-side operations.
4. Network Environment:
- MediChaos operates over the internet and requires a stable internet connection for
users to access the application.
- Compatibility with various network environments including wired, wireless, and
mobile data connections (3G, 4G) ensures accessibility from different locations and
devices.
Software Design Description for MediChaos Page 10
5. Interoperability:
- Interacts effectively with different devices and platforms, providing a consistent user
experience across various devices and screen sizes.
- Ensures compatibility with web standards and protocols for seamless integration
with other web services and APIs.
4. Design Models
4.1 Composite Viewpoint
2. Initialize variables, data structures, and necessary services (database connection, server,
etc.).
3. Authenticate user:
If the user is not authenticated:
Display login screen.
Read user credentials.
Validate credentials.
If credentials are valid, proceed to the next step.
Else, display error message and return to the login screen.
4. Display the main menu to the user.
5. Repeat the following steps until the software is closed:
1. Read the user's choice from the input.
2. If the user's choice is 1:
Display account management options (e.g., view profile, edit profile, change password).
Read and process user inputs for account management.
3. Else if the user's choice is 2:
Display patient management options (e.g., add patient, view patient records, update patient
records).
Read and process user inputs for patient management.
4. Else if the user's choice is 3:
Display AI model management options (e.g., run diagnostic model, view model results,
update models).
Read and process user inputs for AI model management.
5. Else if the user's choice is 4:
Display appointment scheduling options (e.g., schedule new appointment, view
appointments, update appointments).
Read and process user inputs for appointment scheduling.
6. Else if the user's choice is 5:
Display billing and payment options (e.g., view invoices, process payments, generate
reports).
Read and process user inputs for billing and payment.
7. Else if the user's choice is 6:
Display system administration options (e.g., user management, data backup, system
settings).
Read and process user inputs for system administration.
8. Else:
Display an error message for an invalid choice.
6. End the software:
Perform necessary cleanup operations (e.g., close database connections, save user session
data).
Log the user out.
Display a shutdown message.