0% found this document useful (0 votes)
81 views57 pages

INMAS Report

The document outlines the development of a standalone application for managing CBRN training sessions data at INMAS, DRDO, aimed at improving operational efficiency through centralized data management. Built using Python, the application features a comprehensive database schema, user-friendly interface, and functionalities for data visualization, schedule generation, and record management. The project addresses current inefficiencies in training record management by replacing traditional methods with a robust digital solution.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
81 views57 pages

INMAS Report

The document outlines the development of a standalone application for managing CBRN training sessions data at INMAS, DRDO, aimed at improving operational efficiency through centralized data management. Built using Python, the application features a comprehensive database schema, user-friendly interface, and functionalities for data visualization, schedule generation, and record management. The project addresses current inefficiencies in training record management by replacing traditional methods with a robust digital solution.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 57

“Standalone CBRN Integrated Data

Management& Analysis Platform”


by
Akanksha Kumari (B.Tech-IT)
Akshat Singh (B.Tech - CSE)
Lavika Khattar (MCA)
Satvik Bhardwaj (B.Tech-AIML)
Shelly Garg (B.Tech - IT)

Under the supervision of


Ms. Sima Gautam
Scientist ‘E’
Division of CBRN Defence
INMAS, DRDO, Ministry of Defence
Timarpur, Delhi - 110054
ACKNOWLEDGEMENT

We, the interns at the Institute of Nuclear Medicine and Allied Sciences (INMAS), DRDO, Ministry of
Defence, Timarpur, Delhi-110054, collectively express our deepest gratitude to the institution for
providing us with the invaluable opportunity to undertake this internship.

We are profoundly grateful to Ms. Sima Gautam (Scientist 'E', CBRN Division, INMAS, DRDO), our
mentor and supervisor, for her invaluable guidance and unwavering support throughout the internship. Her
constant mentoring and encouragement were instrumental in the success of our project.

We would also like to extend our sincere appreciation to each other - Akshat Singh, Akanksha Kumari,
Lavika Khattar, Satvik Bhardwaj, and Shelly Garg - for the collaboration, teamwork, and mutual
support that made this internship a rewarding learning experience for all of us.

Finally, we wish to express our heartfelt thanks to our families and friends for their constant support,
motivation, and faith in us as we worked together to complete this project.

1
ABSTRACT

This report details the work accomplished during internship at the Institute of Nuclear Medicine
and Allied Sciences (INMAS), DRDO. The focus of the internship was on developing a
standalone application for managing CBRN training sessions data. The application was built using
Python language to streamline the management of training data and enhance operational
efficiency.

The project involved designing and implementing a comprehensive database schema to store
extensive training records, including information on training sessions, participants, faculty, and
schedules.

The application includes features for adding and displaying records, improving accessibility.
Additional features such as a gallery, blog, and contact page were also integrated into the
application, enhancing its functionality and user experience. The gallery provides a visual
representation of the training sessions, the blog allows for sharing updates and insights, and the
contact page facilitates communication.

Further functionalities include a search bar that fetches data based on title, time period, and
agencies. It then performs data analysis, visualising the results through multiple pie charts that
illustrate agencies participation and participants count.

The resulting application is robust and user-friendly, capable of storing and managing large
datasets from previous training records. This application is expected to significantly improve the
management of CBRN training sessions by providing a centralised and efficient solution for data
handling.

2
TABLE OF CONTENTS

Contents
ABSTRACT....................................................................................................................................2
TABLE OF CONTENTS.................................................................................................................3
ABSTRACT....................................................................................................................................4
CHAPTER 1...................................................................................................................................5
1.1 Background..........................................................................................................................5
1.2 Problem Statement..............................................................................................................5
1.3 Objective..............................................................................................................................6
CHAPTER 2...................................................................................................................................8
2.1 Introduction………………………………………………………………………………………...8
2.2 Product Perspective……………………………………………………………………………..11
2.3 Specific requirements……………………………………………………………………………12
CHAPTER 3.................................................................................................................................32
3.1 Python................................................................................................................................32
3.2 PyQt5.................................................................................................................................32
3.3 SQLite................................................................................................................................32
3.4 Matplotlib............................................................................................................................33
3.5 Development Environment.................................................................................................33
CHAPTER 4.................................................................................................................................34
4.1 Database Schema Design.................................................................................................34
4.2Frontend Design.................................................................................................................37
CHAPTER 5………………………………………………………………………………………………
STANDARD OPERATING PROCEDURE
CHPTER 5……………………………………………………………………………………………….49
SUMMARY & CONCLUSION......................................................................................................50
CONTACT INFORMATION…………………………………………………………………………….52
REFERENCES............................................................................................................................53

3
ABSTRACT

This report details the work accomplished during internship at the Institute of Nuclear Medicine
and Allied Sciences (INMAS), DRDO. The focus of the internship was on developing a
standalone application for managing CBRN training sessions data. The application was built using
Python language to streamline the management of training data and enhance operational
efficiency.

The project involved designing and implementing a comprehensive database schema to store
extensive training records, including information on training sessions, participants, faculty, and
schedules.

The application includes features for adding and displaying records, improving accessibility.
Additional features such as a gallery, blog, and contact page were also integrated into the
application, enhancing its functionality and user experience. The gallery provides a visual
representation of the training sessions, the blog allows for sharing updates and insights, and the
contact page facilitates communication.

Further functionalities include a search bar that fetches data based on title, time period, and
agencies. It then performs data analysis, visualising the results through multiple pie charts that
illustrate agencies participation and participants count.

Additionally, the application can store book records, present faculty data, and even generate
schedules for training sessions. The resulting application is robust and user-friendly, capable of
storing and managing large datasets from previous training records. This application is expected to
significantly improve the management of CBRN training sessions by providing a centralized and
efficient solution for data handling.

4
CHAPTER 1
INTRODUCTION AND RESEARCH

1.1 Background
The Institute of Nuclear Medicine and Allied Sciences (INMAS), part of the Defence Research
and Development Organisation (DRDO), plays a pivotal role in conducting Chemical, Biological,
Radiological, and Nuclear (CBRN) emergency training sessions. These training sessions are
crucial for preparing defence personnel, emergency responders, and other relevant stakeholders to
effectively handle hazardous and potentially life-threatening situations.
Given the critical nature of CBRN training, it is essential to maintain meticulous records of each
training session. This documentation serves several key purposes:
o Future References: Accurate records are necessary for evaluating the effectiveness of
training programs, tracking participants, and planning future training sessions.
o Compliance and Reporting: Maintaining detailed records ensures compliance with
regulatory requirements and organisational standards. It facilitates the generation of reports for
internal assessments and external audits.
Furthermore, the information associated with CBRN training sessions is highly sensitive and
classified due to its security implications. Therefore, it is crucial to implement robust measures for
data protection and access control.

1.2 Problem Statement


The management of CBRN training sessions at the INMAS, DRDO, is currently handled using
traditional methods that involve physical documentation and electronic files stored in folders and
PDFs. While this approach has been used for years, it presents several significant challenges that
hinder the efficiency and effectiveness of training management. Current challenges involve :

● Inefficiency in Reporting and Analysis: The current method of managing training


records makes it difficult to perform comprehensive analysis and generate reports. Aggregating

5
data from various sources and formats is a labour-intensive process, which hampers the ability to
quickly assess information.

● Fragmented Data Management: Training records are maintained in a collection of


physical folders and electronic files, often organised into multiple directories. This fragmented
approach makes it difficult to locate specific records quickly. With a large volume of training
sessions and associated data, retrieving historical information or generating reports can be time-
consuming and cumbersome.

● Lack of Integration: The absence of an integrated system means that various aspects of
training management, such as session details, participant information, faculty records, and
schedules, are managed in isolation. This lack of integration prevents a holistic view of the
training activities and complicates the management process.

1.3 Objective
The primary objective of this project is to develop a standalone application that streamlines the
management of CBRN training sessions. The application aims to:
 Centralize Data Management: Provide a unified platform for storing and accessing training-
related information, including sessions, participants, faculty, and schedules.
 Enhance Efficiency: Improve the efficiency of data handling by automating routine tasks, such as
data entry and retrieval, reducing the potential for errors and saving time.
 Facilitate Access and Interaction: Offer a user-friendly interface that allows users to easily
interact with the application, view records, and generate reports.
 Integrate Additional Features: Include a gallery for visual representation of training sessions, a
blog for updates and insights, and a contact page to facilitate communication.
 Extract Insights from Data and Visual Representation: Implement functionalities for
extracting insights from data and visualizing it in forms such as pie charts to help users understand
and analyse the information effectively.
 Generate Schedules: Provide functionality for generating training session schedules based on
existing data.

6
 Store Departmental Books and Faculty Information: Include features to store records of
existing books within the department and maintain up-to-date faculty information.
 Gather and Manage Training Feedback: Implement a system to collect and store feedback
from training sessions to improve future training programs

7
CHAPTER 2
SOFTWARE REQUIREMENT SPECIFICATION

2.1Introduction
The management of CBRN training sessions at the INMAS, DRDO, is currently handled using
traditional methods that involve physical documentation and electronic files stored in folders and
PDFs. While this approach has served its purpose over the years, it presents several challenges
that impede the efficiency and effectiveness of training management. To address these challenges,
this project aims to develop a standalone application designed to streamline the management of
CBRN training sessions. The primary goals of the application are to:
 Centralize training records: Consolidate all training-related information into a single,
accessible platform.
 Automate Schedule generation: Simplify the creation and management of training
schedules through automation.
 Extract data insights and visual representation: Provide valuable insights from training
data with intuitive visualizations. The application includes a pie chart to visualize agency
participation, along with detailed participants data categorized by agency.
 Centralize departmental information:gather and manage essential departmental
information, including book publications, patents, and product inventory.

2.1.1Purpose
The application is designed to streamline the management of CBRN training sessions by
providing centralized training records, automating schedule creation into PDFS, and delivering
insightful data visualization. It also consolidates essential departmental information, including
book publications, patents, faculty members data and product inventory, thereby enhancing the
efficiency and effectiveness of training session organizers.

8
2.1.2Scope
The “Standalone CBRN Integrated Data Management & Analysis Platform” is a Windows-based
application designed to securely manage and analyse data related to CBRN training sessions. The
application ensures the protection of personal credentials, allowingaccess only to authorized
users with valid user IDs and passwords.

2.1.3Definition, Acronyms and Abbreviation


 Training sessions: An organized event where participants receive instruction or training
related to CBRN .
 Faculty: Members of the department or experts involved in organizing and conducting
training sessions.
 Participants: Individuals who attend and take part in the training sessions.
 Agency for trainings:The organisation or agency for which the training is conducted.
 Agency for faculty:The organisation or agency of the faculty.
 Agency for participant:The organisation or agency of the participant.
 Products/ Product inventory: Items or innovations developed by the department, often
related to CBRN research
 Books/ Knowledge Management: Records or publications related to CBRN topics
maintained by the department.
 Gallery: A section of the application that displays folders containing visual content
related to training sessions.
 Data visualization: The graphical representation of data such as pie charts, to facilitate
understanding and analysis.
 Search Bar: A feature that allows users to retrieve data based on criteria such as title,
time period, and agencies.
 Data Visualization: The graphical representation of data, such as pie charts, to facilitate
understanding and analysis.
 Print Functionality: A feature that allows users to generate hard copies of data tables
and reports for offline reference.

9
 Training Detail Page: A page that provides comprehensive information about a specific
training session, including participants, faculty, schedules, financials, feedback, and
attachments.
 Faculty List Page: A page that manages and displays information about faculty
members, including options to add, edit, or delete records.
 Products Page: A page that manages and displays information about products developed
by the department.
 Books Page: A page that manages and displays records of books related to CBRN topics
within the department.
 Knowledge Management: A section or feature dedicated to maintaining and managing
records of books and other knowledge resources.
 Add an Attachment: A functionality that allows users to attach relevant documents or
files to training sessions.
 Generate Schedule: A feature that allows users to create and save schedules of training
sessions in PDF or Word format.
 Feedback: Comments or evaluations provided by participants regarding the training
sessions.
 Export Options: Features that allow users to export data lists to formats such as CSV or
Excel for reporting or offline access.

2.1.4Overview
The sole purpose of the software is to provide an ease in managing training sessions data. The
platform is designed to facilitate the organization and handling of training information, aiming to
reduce reliance on paper-based documentation and improve operational efficiency.

2.2 Project Description


The project encompasses a fully developed application designed to facilitate the efficient
management of training sessions and related data. This comprehensive platform provides secure
login functionality for staff members, enabling them to access and utilize a range of features.
Users can add new training sessions by inputting detailed information about the training,
including the involved faculty, participants, and schedules. The application also supports the

10
generation and printing of training schedules in PDF and Word formats, along with tools for
analysing and visualizing data through pie charts. In addition to managing training sessions, the
platform allows users to add and manage records of published books by the department, track
patents, and maintain product inventory. The gallery feature enhances the platform by allowing
users to upload and manage images and visuals related to training sessions. Each table within the
application includes print functionality, ensuring users can generate hard copies of reports and
records for offline reference. Overall, the application aims to reduce administrative overhead,
minimize paper usage, and provide a centralized solution for managing and analysing training-
related information effectively.

2.2.1Product Perspective
The application is conceived as an integrated solution tailored to streamline the management of
CBRN (Chemical, Biological, Radiological, and Nuclear) training sessions within an
organization. It is designed to replace traditional, paper-based methods of data management with
a digital platform that enhances efficiency, accuracy, and accessibility.

2.2.2 Assumptions and Dependencies


 Assumptions:
o User Proficiency: It is assumed that the users of the application have basic
computer literacy and familiarity with standalone application.
o Data Integrity: It is assumed that the data entered into the system will be accurate
and validated by users to ensure the reliability of reports and analyses generated
by the application.
o Scalability: The application is expected to handle an increasing volume of data
over time. It is assumed that the underlying database and system architecture are
scalable to meet future demands without future degradation.
 Dependencies:
o Software Libraries: The application relies on various python libraries for its
functionality, including libraries for database management, data visualization
(e.g., Matplotlib), and report generation. Updates or changes to these libraries

11
could impact the application’s performance. However, as the application is
packaged, the specific version of Python and the libraries used during
development are bundled with the application, ensuring that updates to Python or
these libraries do not affect its functioning.
o Operating System compatibility: The application assumes compatibility with
common operating systems, Windows for development, deployment, and use.
o Database Management System (DBMS): The application’s data storage and
retrieval functions are dependent on a DBMS, here SQLite.

2.3Specific Requirements

2.3.1 Hardware Requirements:


o Processing power and memory: The application requires a PC or laptop with a
modern processor (e.g., Intel i5 or equivalent) and at least 4 GB of RAM. This
ensures smooth operation, particularly when handling large datasets or running
data visualization tasks.
o Storage: At least 500 MB-700 MB of available disk space is recommended to
accommodate the application, its dependencies, and any data it generates or
manages.
o Operating System Compatibility: The application is compatible with
Windowsoperating systems.
o Display: The application is designed to be compatible with any PC display,
ensuring flexibility and accessibility across various screen sizes and resolutions.
o Peripherals: A printer may be required if the user needs to generate physical
copies of reports or schedules.
2.3.2 Software Requirements:
o Operating System Compatibility: The application is compatible with
Windowsoperating systems.

12
o Packaged python environment: The application includes a bundled Python
environment with all necessary dependencies. This means that users do not need
to have Python installed on their system. The application will run independently
of the system’s Python installation.
o No additional Software required: Since the application is packaged with all
necessary libraries and dependencies, there is no need for users to install
additional software, libraries, or tools to run the application.
2.3.3Functional Requirements:
 Login
o Input data: Username and password
o Valid Input: We have pre-defined username and password
 Username: ‘admin’
 Password: ‘INMAS’
o Invalid input: Any username or password that does not match the pre-defined
credentials will be considered invalid.
o Processing step:
 If the user enters the correct username and password, they will be granted
access to the software.
 If the credentials are invalid, an error message will be displayed, and the
user will be prompted to try again.
 Search bar ( for data visualization and analysis)
o Input data: Agency name, Year-range or specific year of training
o Valid Input:
 Agency name: Must be a valid and recognized agency name stored in the
database. The search will match partial and full agency names.
 Year- range: Must be a valid range of years (e.g., 2015-2020). The range
should be within the scope of the training records stored in the database.
 Specific year: Must be a single valid year (e.g., 2022) that corresponds to
the records in the database.
o Invalid Input:

13
 Agency Name: Any name that does not correspond to an agency in the
database.
 Year- range: A range that is out of scope (e.g., a future year or a negative
range).
 Specific Year: Any year that is out of scope (e.g., a future year or a year
with no records).
o Processing step:
 The search function queries the database for records matching the input
criteria.
 If results are found, they are displayed in a list format with relevant
details (e.g., training name, start date, end date, duration, agency, number
of participants).
 If no results are found, an appropriate message is displayed to the user.
o Additional features:
 The search bar allows for filtering based on multiple criteria (e.g.,
searching by agency name within a specific year).
 Users can export search results to word or PDFformats for further
analysis.
 View Agency analysis page
The view agency analysis page is designed to provide an overview and detailed analysis
of agency participation in training sessions. This page has an option to generate a
printable version of the analysis.
o Filter options:
 Functionality: Allows users to filter the data based on specific year.
o Training Details Overview:
 Functionality: Displays a summary of training sessions organized for each
agency within the selected filter criteria.
 Details included:
 Agency name: The name of agency involved in training.
 Number of training sessions: the total number of sessions each
agency participated in during the selected year or year range.

14
o Pie chart Visualization:
 Functionality: Provides a visual representation of agency participation.
 Details shown:
 Categorization: The pie chart categorizes agencies based on the
number of times they appeared in the selected year or year
range.
 Participants analysis page
The Participants Analysis Page is designed to provide an overview and detailed analysis
of participants in training sessions.This page has an option to generate a printable
version of the analysis.
o Filter options:
 Functionality: Allows users to filter the participant data based on specific
criteria.
 Filters Available:
 Year
 Year range
 Agency
o Participants categorized by agencies:
 Functionality: Displays a detailed breakdown of participants categorized
by the agencies they belong to.
 Details included:
 Agency Name: The name of each agency
 Number of participants: The total number of participants from
each agency within selected filter criteria.
o Pie chart Visualization:
 Functionality: Provides a visual representation of participant distribution.
 Details shown:
 Categorization: The pie chart categorizes participants based on
their agency affiliations.

15
 Visualization: Each slice of the pie chart represents an agency,
with the size of the slice proportional to the number of
participants from that agency.

 Add a new training page


o Input data:
 Title of Course: The name or title of the training session.
 Start Date: The date when the training session begins.
 End Date: The date when the training session ends.
 Duration: The total duration of the training (e.g., in days).
 Agency: The name of the agency responsible for or participating in the
training.
 Budget: The total budget allocated for the training session.
 Number of Participants: The total number of participants expected or
attending the training.
o Valid Input:
 Title of Course: Must be a non-empty string that clearly identifies the
training session.
 Start Date: Must be a valid date in the format (e.g., YYYY-MM-DD) and
should be a past or future date but before the end date.
 End Date: Must be a valid date in the format (e.g., YYYY-MM-DD) and
should be after the start date.
 Duration: Must be a positive number representing the length of the
training. For example, "3”. It is generated automatically based on start
date and end date.
 Agency: Must be a valid agency name.
 Budget: Must be a positive numerical value representing the total
financial allocation for the training session.
 Number of Participants: Must be a positive integer representing the
number of participants expected or attending the training.
o Invalid Input:

16
 Title of Course: Empty or non-descriptive input.
 Start Date: An invalid date format or a date that is not logically before the
end date.
 End Date: An invalid date format or a date that is not after the start date.
 Duration: A negative number or non-numeric input.
 Agency: An invalid or unrecognized agency name.
 Budget: A negative number or non-numeric input.
 Number of Participants: A negative number or non-integer input.
o Processing step:
 Validate the input data for correct formats and logical consistency (e.g.,
ensuring end date is after start date).
 Save the new training session details to the database.
o Output:
 A confirmation message indicating that the new training session has been
successfully added.
 The system redirects the user to the "Add Participants" page where they
can enter details of participants.
 Add participants’ page
o Input data:
 Name: The name of the participant.
 Contact: The contact number of the participant.
 Email: The email address of the participant.
 Agency: The agency to which the participant belongs.
 Designation: The role or title of the participant within their agency.
o Automatic Field Generation:
 The number of participant input fields is auto-generated based on the
"Number of Participants" entered on the "Add a New Training" page.
 Each participant field set (Name, Contact, Email, Agency, Designation) is
generated according to the specified number.
o Valid Input:
 Name: Must be a non-empty string.

17
 Contact: Must be a valid phone number.
 Email: Must be a valid email address.
 Agency: Must be a recognized agency name from the database.
 Designation: Must be a non-empty string representing the participant’s
role.
o Invalid Input:
 Name: Empty or incorrect format.
 Contact: Invalid phone number format.
 Email: Invalid email format.
 Agency: Unrecognized agency name.
 Designation: Empty or incorrect format.
o Processing step:
 Users can enter details for each participant as per the auto-generated
fields.
 Users have the option to skip entering participant details at this stage if
they choose.
 If details are entered, they are saved to the database and linked to the
relevant training session.
 If skipped, the training session is still saved, and participant details can be
added later.
o Output:
 A confirmation message indicating that the new training session has been
successfully added.
 The system redirects the user to the "Add organizing Faculty" page.

 Add organizing Faculty page


o Input data:
 Name: The name of the faculty member.
 Designation: The role or title of the faculty member.
 Institution: The institution or organization where the faculty member is
affiliated.

18
 Contact: The contact number of the faculty member.
 Email: The email address of the faculty member.
o Valid Input:
 Name: Must be a non-empty string (e.g., "Dr. John Smith").
 Designation: Must be a non-empty string representing the faculty
member's role (e.g., "Professor" or "Lecturer").
 Institution: Must be a non-empty string representing the faculty member’s
affiliated institution (e.g., "XYZ University").
 Contact: Must be a valid phone number, typically following a standard
format.
 Email: Must be a valid email address format.
o Invalid Input:
 Name: Empty or contains invalid characters (e.g., "1234" or "@"
symbols).
 Designation: Empty or contains invalid characters (e.g., "1234" or
symbols).
 Institution: Empty or contains invalid characters (e.g., "1234" or
symbols).
 Contact: Invalid phone number format or non-numeric characters
(e.g.,"abcd").
 Email: Invalid email format.
o Processing step:
 Users can add multiple faculty members by clicking the "Add a Faculty"
button to generate additional input fields.
 Users have the option to skip adding faculty details if they choose.
 If faculty details are added, they are saved to the database and linked to
the relevant training session.
 If skipped, the training session is still saved, and faculty details can be
added later.
o Output:

19
 Confirmation message indicating successful addition of faculty details if
entered.
 The system redirects the user to the "Add Schedule" page.

 Add Schedule page


o Input data:
 Date: The date of the training session.
 Start Time: The time when the training session starts.
 End Time: The time when the training session ends.
 Speaker: The name of the speaker or presenter for the session.
 Topic: The topic or subject matter of the session.
o Valid Input:
 Date: Must be a valid date in the format (e.g., YYYY-MM-DD) and
within the training session dates.
 Start Time: Must be a valid time format (e.g., HHAM/PM) and should be
before the End Time.
 End Time: Must be a valid time format (e.g., HHAM/PM) and should be
after the Start Time.
 Speaker: Must be a non-empty string (e.g., "Dr. Jane Doe").
 Topic: Must be a non-empty string describing the session’s subject (e.g.,
"Introduction to CBRN Safety").
o Invalid Input:
 Date: Invalid date format or date outside the training session's date range.
 Start Time: Invalid time format or time that is not logically before the End
Time.
 End Time: Invalid time format or time that is not logically after the Start
Time.
 Speaker: Empty or contains invalid characters (e.g., "1234" or symbols).
 Topic: Empty or contains invalid characters (e.g., "1234" or symbols).
o Processingstep:

20
 Users can add multiple schedule slots by clicking the "Add a Slot" button
to generate additional input fields.
 Users have the option to skip adding schedule details if they choose.
 If schedule details are added, they are saved to the database and linked to
the relevant training session.
 If skipped, the training session is still saved, and schedule details can be
added later.
o Output:
 Confirmation message indicating successful addition of schedule details if
entered.
 The system redirects the user to the page where the list of previous
training sessions appears.

 Previous or upcoming trainings page


The Previous/Upcoming Trainings page serves as a central hub for managing and
viewing training sessions based on their status.
o List of Trainings:
 Display: Shows a list of training sessions categorized as past or
upcoming, depending on the selected tab.
 Details View: Double-clicking on a training session entry opens the
Training Details Page.
o Edit training:
 Functionality: Clicking the "Edit" button allows users to modify training
details.
 Editable Fields:
 Title of Course: Change the name or title of the training session.
 Start Date: Modify the start date of the training.
 End Date: Modify the end date of the training.
 Organizing Agency: Change the agency responsible for the
training.

21
 Number of Participants: Update the number of expected or
registered participants.
 Processing Steps: After making changes, users can save the updated
training details.
o Delete Training:
 Functionality: Clicking the "Delete" button removes the training session
from the list.
 Impact: Deleting a training session also removes related data, including
faculty members, participants, and schedules associated with that training.
 Training Details Page
The Training Details Page offers a comprehensive view and management options for a
specific training session.
o Details Display:
Shows detailed data about the training session, including title, dates, organizing
agency, number of participants, and more.
o Buttons and Functions:
 Show Participants List:
 Functionality: Generates a list of participants for the training session.
 Options: Users can add new participants, or edit and delete existing
participant entries.
 Show Faculty List:
 Functionality: Generates a list of faculty members involved in the
training.
 Options: Users can add new faculty members, or edit and delete
existing faculty entries.
 Show Schedule:
 Functionality: Displays the schedule slots for the training session.
 Options: Users can add new schedule slots, or edit and delete existing
slots.
 Generate Schedule:

22
 Functionality: Allows users to save the training schedule in PDF or
Word format for easy printing and sharing.
 Add an Attachment:
 Functionality: Provides the option to attach documents or files related
to the training.
 Options: Users can upload files from specific folders or directories,
such as PDFs or images, and view the attached files.
 Edit Budget:
 Functionality: Allows users to modify the budget allocated for the
training session.
 Editable Field: Users can update the budget amount to reflect any
changes or corrections.
 Add General Feedback:
 Functionality: Provides a field to input and save general feedback
about the training session.
 Field: Users can enter comments, suggestions, or evaluations of the
training, which can be reviewed later.
 Processing Steps:
 Show Participants, Faculty, and Schedule:
 Generate Lists: Displays the lists with options to manage the data.
 Edit/Delete: Allows users to make changes or remove entries as
needed.
 Generate Schedule and Add Attachment:
 Save: Users can generate a formatted schedule file and add or view
attachments for comprehensive documentation.
 Edit Budget and Add Feedback:
 Update: Users can change the budget details and input feedback
directly into the system.

 Knowledge management/ manage books


o Add a new book:

23
 Functionality: Allows user to enter details about a new book.
 Input fields:
 Book Name: Title of the book (e.g., "Introduction to CBRN Safety").
 Author: Name(s) of the author(s) (e.g., "Dr. Jane Doe").
 Publication: Name of the publishing house or journal (e.g., "ABC
Publications").
 Description: Brief overview or summary of the book’s content (e.g.,
"This book covers fundamental aspects of CBRN safety and
protocols.").
 Processing step: Users complete the form and submit it to add the new
book to the system.
o Edit Selected Book:
 Functionality: Enables users to modify details of an existing book.
 Editable fields:
 Book Name: Update the title of the book.
 Author: Modify the author information.
 Publication: Change the publication details.
 Description: Adjust the book's summary or description.
 Processing step: Users select a book from the list, make changes, and save
the updated information.
o Delete selected Book
 Functionality: Allows users to remove a book from the system.
 Processing step: Users select the book to be deleted and confirm the
deletion, which removes the book and its associated details from the
database.
o Print list of Books
 Functionality: Generates a printable version of the list of books.
 Processing step: Users click the "Print" button to create a downloadable
or printable file of the book list, which includes all current book records.
 Product Inventory Page

24
It is designed for managing and maintaining records of products developed by the
department.
o Add a new product:
 Functionality: Allows users to input details about a new product.
 Input fields:
 Name: The name of the product (e.g., "Advanced CBRN Detection
Kit").
 Researcher: The name of the individual or team responsible for the
product’s development (e.g., "Dr. John Smith").
 Cost: The cost associated with the product.
 Description: A brief description of the product, including its features and
purpose .
o Processing step: Users fill out the form with the product details and submit it to
add the new product to the inventory.
o Edit Selected product:
 Functionality: Enables users to modify details of an existing product.
 Editable fields:
 Name: The name of the product (e.g., "Advanced CBRN Detection
Kit").
 Researcher: The name of the individual or team responsible for the
product’s development (e.g., "Dr. John Smith").
 Cost: The cost associated with the product.
 Description: A brief description of the product, including its features
and purpose .
 Processing step: Users select a product from the inventory, make changes,
and save the updated information.
o Delete selected Product
 Functionality: Allows users to remove a product from the inventory.
 Processing step: Users select the product to be deleted and confirm the
deletion, which removes the product and its associated details from the
inventory.

25
o Print list of Products
 Functionality: Generates a printable version of the product inventory.
 Processing step: Users click the "Print" button to create a downloadable
or printable file of the product inventory, including all current product
records.
 Manage Patent Page
It is designed for managing and maintaining records of patents related to the department’s
work.
o Add a new patent:
 Functionality: Allows users to input details about a new patent.
 Input fields:
 Patent number: The unique identifier assigned to the patent
 Inventor name(s): Names of the individuals who invented the patent
 Grant date: The date on which the patent was granted (e.g., "2023-01-
15").
 Patent title: The official title of the patent
 Processing step: Users fill out the form with the patent details and submit
it to add the new patent to the records.
o Edit Selected patent:
 Functionality: Enables users to modify details of an existing patent.
 Editable fields:
 Patent number: The unique identifier assigned to the patent
 Inventor name(s): Names of the individuals who invented the patent
 Grant date: The date on which the patent was granted (e.g., "2023-01-
15").
 Patent title: The official title of the patent.
 Processing step: Users select a patent from the list, make changes, and
save the updated information.
o Delete selected Patent
 Functionality: Allows users to remove a patent from the records.

26
 Processing step: Users select the patent to be deleted and confirm the
deletion, which removes the patent and its associated details from the
database
o .Print list of patents
 Functionality: Generates a printable version of the list of patents.
 Processing step: Users click the "Print" button to create a downloadable
or printable file of the patent list, including all current patent records.
 Manage Faculty Page
It is designed for managing and maintaining records of faculty members within the
organization.
o Add a new faculty member:
 Functionality: Allows users to input details about a new faculty member.
 Input fields:
 Facultyname: The name of the faculty member.
 Designation:The faculty member’s position or title.
 Department:The department to which the faculty member belongs.
 Contact Number:The contact phone number of the faculty member.
 Email:The email address of the faculty member.
 Research area:The specific area of research or expertise of the faculty
member.
 Processing step: Users fill out the form with the faculty member’s details
and submit it to add the new faculty member to the database.
o Edit Selected faculty member:
 Functionality: Enables users to modify details of an existing faculty
member.
 Editable fields:
 Facultyname: The name of the faculty member.
 Designation: The faculty member’s position or title.
 Department: The department to which the faculty member belongs.
 Contact Number: The contact phone number of the faculty member.
 Email: The email address of the faculty member.

27
 Research area: The specific area of research or expertise of the
faculty member.
 Processing step: Users select a faculty member from the list, make
changes, and save the updated information.
o Delete selected faculty member
 Functionality: Allows users to remove a faculty member from the records.
 Processing step: Users select the faculty member to be deleted and
confirm the deletion, which removes the faculty member and their details
from the database.
o .Print list of faculty members
 Functionality: Generates a printable version of the list of faculty
members.
 Processing step: Users click the "Print" button to create a downloadable
or printable file of the faculty list, including all current faculty records.
 Blog Page
It is designed for managing and maintaining blog postsrelated to the department.
o Add a new blog:
 Functionality: Allows users to create and submit a new blog post.
 Input fields:
 Title: The title of the blog post
 Content: The main content or body of the blog post
 Processing step: Users fill out the title and content fields, then click the
"Submit" button to add the new blog post to the system.
o View existing blogs:
 Functionality: Provides users with access to previously published blog
posts.
 Processing step: Users click the "View Existing Blogs" button to browse
and read the list of current blog posts. This section displays a list of
published blogs with options to read or manage them.
 Gallery Page

28
The Gallery Page is designed to organize and manage visual content related to training
sessions and other relevant activities.
o Add a new folder:
 Functionality: Allows users to create new folders for storing images and
other visual content.
 Details:
 Folder naming: Folders can be named after specific training titles or
relevant events.
 Processing step: Users enter the folder name, click the "Add Folder"
button, and the new folder is created and added to the gallery.
o Replace existing folder:
 Functionality: Provides an option to replace existing folders with new
ones.
 Details:
 Folder naming: Users can rename existing folders to better reflect new
content or update folder names as needed.
 Processing step: Users select an existing folder to replace, enter the new
folder name, and confirm the replacement. The old folder is updated or
replaced with the new one.
o Open and accessfolder:
 Functionality: Allows users to open and view the contents of folders.
 Details:
 Folder Access: Users can navigate into folders to view or manage the
stored images and documents.
o Delete Folder:
 Functionality: Provides options to delete or update folders
 Details:
 Users can select a folder and delete it if no longer needed.

 Backup database Page

29
This page includes options to initiate the backup of all existing tables in the database, which are
then stored in CSV format in the C drive.

2.3.4Logical Database Requirements:

The application utilizes two distinct databases to effectively manage and optimize data handling
for different purposes. The Analysis Database (tms2.db) is dedicated to performing data
analysis and generating reports. It is designed with a schema that supports efficient querying and
data aggregation, allowing for detailed insights and visualizations, such as pie charts illustrating
agency and participant distributions. This database contains cleaned and formatted data, making
it ideal for filtering and analytical operations.

While, the Viewing List Database (tms.db) focuses on managing and displaying detailed lists
of data, including training sessions, participants, and faculty members. Its structure is optimized
for retrieving and presenting data in list format, supporting functionalities like viewing, editing,
and updating records. This database ensures that users can easily access and manage
comprehensive lists of information.

Reason of usage of two databases:The choice to use two separate databases comes from the
challenges posed by the original dataset, which had complex information about many agencies
and wasn’t set up for easy analysis. By splitting the data into two databases, we can handle
different tasks more efficiently. The Analysis Database is used for performing complex data
analysis and creating reports, while the Viewing List Database is focused on managing and
showing lists of data, like training sessions and participants. This separation makes the system
work better and ensures that both data analysis and data management tasks are done effectively.

The schema of tables used is defined in chapter 4.

2.3.5Design Constraints

 Software used:
o Programming language: Python
o Framework: PyQt

30
o Development Platform; Visual Studios Code (VSCode)

Python is the primary language used for development, leveraging the PyQt framework for
building the graphical user interface (GUI). Python is ideal for developing this
application due to its simplicity and versatility, which streamline the development
process. Its clear syntax and extensive standard libraries facilitate rapid development and
ease of maintenance.

 Database used:
o SQLite

SQLite is used for this application due to its serverless architecture and ability to function
without an internet connection. This choice supports the application's requirement for
enhanced security and offline capabilities, ensuring that sensitive data is managed locally
and securely.

2.3.6Software System Attributes

This software is presented and organised in such a manner which appears to be visually
appealing and easy for the users to navigate. It insures the following constraints:

1. Reliability: The software is built to perform consistently and accurately, minimizing


errors and ensuring dependable functionality across different scenarios.
2. Availability: The application is accessible and operational when needed, ensuring that
users can access its features and data without undue delays or interruptions.
3. Security:
a. The application includes a secure login mechanism that requires users to authenticate
with a predefined username and password. This ensures that only authorized
individuals can access the system and its sensitive information.
b. All data is stored locally on the user’s computer, reducing exposure to external threats
and minimizing the risk of unauthorized access through the internet.
4. Maintainability: The software is designed for ease of maintenance, with clear and
modular code structures that facilitate updates, bug fixes, and improvements.

31
5. Portability: The application is compatible with Windows operating system and can be
used with different PC Screen sizes.

32
CHAPTER 3
TOOLS AND TECHNOLOGY USED

The development of the standalone application involved leveraging a range of tools and
technologies. Each component was chosen to address specific needs in the development process,
ensuring a robust, user-friendly, and efficient application. This chapter outlines the key tools and
technologies utilised in the project.

3.1 Python
Python was chosen as the primary programming language for the application due to its versatility.
Python's clear syntax and readability facilitate rapid development, which was crucial for this
project given its scope and timeline. The language’s extensive library support allowed for efficient
integration of various functionalities. Python’s ecosystem includes powerful libraries for database
management, GUI development, and data processing, all of which were essential for building a
comprehensive training management system.

3.2 PyQt5
PyQt5 was employed as the graphical user interface (GUI) framework to design and implement
the application’s user interface. PyQt5 is a set of Python bindings for the Qt application
framework, which provides tools for creating professional-grade graphical interfaces. It offers a
wide range of widgets and design elements, allowing for the development of a highly interactive
and visually appealing user interface. PyQt5 was instrumental in creating intuitive navigation, data
entry forms, and visual representations of training records.

3.3 SQLite
SQLite was chosen as the database management system due to its lightweight nature and ease of
integration with Python. SQLite is an embedded database engine that provides a simple, yet
powerful, solution for storing and managing structured data. It supports SQL queries and

33
transactions, making it suitable for handling the extensive records associated with CBRN training
sessions. SQLite’s file-based architecture eliminates the need for a separate server, streamlining
the deployment and management of the database.

3.4 Matplotlib
Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations
in Python. It is widely used for its versatility and ability to generate high-quality plots, graphs, and
charts with just a few lines of code. Its extensive customization options allow users to tweak
almost every aspect of their plots, ensuring that the resulting visualizations meet their specific
needs. Additionally, Matplotlib integrates well with other scientific libraries like NumPy and
pandas, further enhancing its utility in data science workflows.
3.5 Development Environment
The development environment utilised for this project included several tools to facilitate coding,
testing, and debugging:
training sessions. The application aims to:
 Integrated Development Environment (IDE): Visual Studio Code was used for writing and
managing code. Its features such as code completion, debugging tools, and integrated terminal
facilitated an efficient development workflow. Visual Studio Code’s flexibility and support for
Python extensions enhanced productivity and code quality.
 Version Control System: Git was employed for version control, allowing for tracking changes in
the codebase and collaboration with other team members. Platforms like GitHub facilitated remote
repository management and collaboration.
 Graphic Design Tool: Canva was used for image editing and creating visual content for the
application. Its user-friendly interface and extensive template library made it easy to design and
customize images for the gallery and other visual elements of the application.

34
CHAPTER 4
PROJECT FLOW WITH SNIPPETS

The development of the CBRN training management application involved careful planning and
execution to ensure a seamless and functional user experience. This chapter outlines the project
flow, including the database schema design, frontend design, and the functionalities of different
pages within the application.

4.1 Database Schema Design


The database schema for the application was designed to facilitate efficient storage, retrieval, and
management of training-related data. The schema is composed of several interconnected tables,
each serving a specific purpose:

Training Table: The Training table is the core component of the schema, storing essential details
about each training session. It includes:
T_No A unique identifier for each training session.

Title The name or title of the training

Start_Date The date when the training begins.

End_Date The date when the training ends

Duration The total duration of the training in days.

Agency The organisation or agency for which the training is conducted.

No. of The total number of participants involved.


Participants

Budget The financial budget allocated for the training.

Feedback Comments or evaluations received from participants

35
Participants Table: This table stores information about individuals who participated in the
training sessions:
Name The name of the participant.

Contact The phone number or other contact details.

Designation The job title or role of the participant in their agency.

E-mail The participant’s email address.

Agency The organisation or agency of the participant.

Faculty Table: The Faculty table maintains records of faculty members involved in the training:
Name The name of the faculty member organizing the training.

Contact The phone number or other contact details.

Institution Institution of faculty member.

Designation The institution or organisation with which the faculty is affiliated.

E-mail The faculty’s email address.

Agency The organisation or agency of the participant.

Schedule Table: This table tracks the schedule of training sessions:


Date The date of a particular session or event.

Start Time The starting time of the session.

End Time The ending time of the session.

Speaker The name of the speaker or presenter.

Title Title of the session the speaker will take.

Books Table: This table stores the information of books published by the department.

36
Book id It stores the unique id of book( Auto-generated)

Book Name The name of the book.

Author Author of Book

Publication Book Publisher

Description Any additional information of the book

Products Table: This table stores the information of books published by the department.
Product Name Name of the product.

Researcher Researcher or team responsible for developing the product.

Cost This field records the financial cost of the product.

Description This field provides a detailed explanation or summary of the product.

Organisation Faculty:
Name This field stores the full name of the faculty member.

Designation This field captures the faculty member's job title or rank within the organization.

Department This field records the department or unit within the organization to which the
faculty member belongs.
Contact This field contains the contact number of the faculty member.

E-mail This field stores the faculty member's email address.

Research area This field describes the faculty member's area of research or specialization.

37
4.2 Frontend Design
The frontend of the application is crafted to provide an intuitive and seamless user experience.
The design emphasizes usability and accessibility, with clear navigation and functional interfaces.
Key components include:
Home Page:
The home page serves as the entry point to the application. It features a clean and straightforward
layout with prominent navigation links to the main sections: Trainings, Contact Us, Blog, and
Gallery. The design ensures that users can quickly access the desired functionalities without
confusion.
The home page includes a login button for user authentication and secure access to various
features. The menu comprises the following options:
 Trainings: To maintain and manage training data, including session details, participants, and
schedules.
 Blog: To store and manage blog posts or updates related to the organization’s activities and
insights.
 Gallery: To display visual content, such as images or videos, related to training sessions or
events.
 Knowledge Management Session: To maintain records of books and other educational resources
within the department.

Figure 1: Home Page

38
 Faculty List: To store and manage data related to the organization’s faculty members, including
their names, designations, departments, and contact details.
 Agency List: To keep track of various agencies involved in or associated with the training
sessions.
 Products List: To maintain record of products developed by the department

Figure : Home Page and menu bar

Trainings Page:
This page is divided into three main tabs to manage different aspects of training sessions:
 Past Trainings: Lists all completed training sessions. Users can view details of past events and
access historical data.
 Upcoming Trainings: Displays scheduled future training sessions. This tab helps users keep track
of upcoming events and plan accordingly.
 Add a Training: Provides a form for entering new training sessions. Users can input details such
as the title, dates, and budget to create a new record. Additionally, this tab allows users to:

39
○ Store New Training Information: Enter comprehensive details about the training
session, including participants, faculty involved in organizing the session, and other
relevant information.
○ Add Schedules: Include and manage the schedule for the training session, ensuring that
all logistical details are captured and organized.

Figure 3: Trainings data

Figure 4: Add a new Trainings Page

40
Training Details Page:
This page offers comprehensive information about a specific training session. It includes:
 Participants List:Lists all individuals who attended the training. This section provides options to
manage participant data, including adding new participants, editing existing records, or deleting
entries.
 Faculty List: Displays information about the faculty members involved. Users can manage
faculty data by adding new faculty members, editing existing records, or deleting entries.
 Schedule: Provides the training schedule, including session dates and times. Users can add,
manage, or delete schedules, and generate a day-wise PDF or Word file of the training schedule
data.
 Financial Obligation: Details the budget and financial aspects related to the training.
 Feedback: Shows feedback collected from participants.
 Add an Attachment: Allows users to attach any type of document or file related to the particular
training session

Figure 5:Training Details page

41
The detail page also features four functional buttons:
● Edit: Allows users to modify existing records.
● Add: Facilitates the addition of new entries.
● Delete: Provides the option to remove records.
● Unselect: Allows users to deselect or reset selections.

Figure 6: Add a participant

Contact Us Page:
This page provides contact details of INMAS.
Blog Page:
The blog section enables users to interact with content related to the training and other relevant
topics:

Figure 7: Blog Page

42
 Upload New Blog: A form for submitting new blog posts. Users can enter titles and content to
create new entries.
 View Previous Blogs: A list of existing blog posts. Users can browse through past entries to read
previously published content.
Gallery Page:
The Gallery Page provides a centralized view of folders related to training sessions and other
relevant activities. Its features include:
 Adding and Saving Folders: Users can create and save multiple folders to organize visual
content and documents related to various training sessions and activities.
 Accessing Folders: Users can directly open and access folders to view their contents, which may
include images, videos, and other media related to the training sessions.
 Managing Folders:
o Updating: Modify folder names, descriptions, or other metadata to keep the gallery organized
and relevant.
o Deleting: Remove folders that are no longer needed or relevant, ensuring the gallery remains
uncluttered.

Figure 8:Gallery page

43
DataVisualization:The home page includes a powerful search and analysis functionality
designed to streamline data retrieval and interpretation:
 Search Bar: Allows users to efficiently retrieve data by specifying search criteria such as title,
time period, and agencies. This feature helps users quickly locate relevant training sessions
and associated information.
 Analysis Button: Provides an option to generate visual representations of the retrieved data
through pie charts, aiding in effective analysis and interpretation. Users can select from two
detailed analysis options:
 View Agency Analysis: This option generates a visual breakdown of agency participation
during the specified time period. It displays the percentage and count of times each agency
was involved, allowing users to assess engagement levels and participation trends across
agencies.
 View Participants Analysis: This option presents a visual representation of the number of
participants from each agency within the given period. It provides insights into
theparticipation levels of various agencies, helping users understand their involvement and
contribution to the training sessions.

Figure 10:Agency analysis

Figure 9: Analysis Page


44
Faculty List Page:
The Faculty List Page is designed to manage and display information about the faculty members associated
with the organization. It offers several key features to ensure efficient administration and accessibility:
 Overview of Faculty Members: This page presents a comprehensive list of all faculty members,
including their names, designations, departments, and other relevant details.
 Add New Faculty:
o Form for Entry: Users can add new faculty members by filling out a form with details
such as name, designation, department, contact information, email, and research area.
 Manage Faculty Data:
o Edit Existing Records: Users can update information for existing faculty members,
including modifying contact details, changing designations, or updating research areas.
o Delete Records: Users have the option to remove faculty members from the list if they are
no longer part of the organization or if their records need to be purged.

45
Product Inventory Page:
The Products Page is designed to manage and display information about products developed by the
department. It includes the following features:
 Overview of Products: Displays a comprehensive list of products developed by the
department. Each entry includes essential details such as product name, description, and any
relevant specifications.
 Add New Product:
o Form for Entry: Users can add new products by filling out a form with details such
as the product name, description, development date, and any other pertinent
information.
 Manage Product Data:
 Edit Existing Records: Users can update information for existing products, including
modifying descriptions, adding new specifications, or changing other details.
 Delete Records: Users have the option to remove products from the list if they are no
longer relevant or need to be updated

Figure 12: Product Inventory Page

46
Knowledge Management Page:
Displays a comprehensive list of books available in the department. Each entry includes details such as
book title, author, publication year, and genre.

 Add New Book:


o Form for Entry: Users can add new books by filling out a form with details such as the
book title, author, publication year, ISBN, and any other pertinent information.
 Manage Book Data:
o Edit Existing Records: Users can update information for existing books, including
modifying details such as author, publication year, or genre.
o Delete Records: Users have the option to remove books from the list if they are no longer
available or need to be updated.

Figure 13: Add a book dialog

47
Patent management Page:
The Patents Page is designed for managing and maintaining records of patents related to the department’s
work.

 Add New patent:


o Form for Entry: Users can add new patent products by filling out a form with details such
as the patent number, patent title, inventor name(s) and grant date.
 Manage Book Data:
o Edit Existing Records: Users can update information for existing patents products,
including modifying details such as the patent number, patent title, inventor name(s) and
grant date.
o Delete Records: Users have the option to remove patents from the list if they are no longer
available or need to be updated.

Backup database Page:


The software's backup functionality ensures that all existing tables are stored in CSV format on
the C drive.

Figure 15: Backup database dialog

48
CHAPTER-5
STANDARD OPERATING PROCEDURE

This SOP covers the installation, usage, maintenance, and troubleshooting procedures for
Standalone CBRN Integrated Data Management& Analysis Platform. It is applicable to all users,
administrators, and support personnel involved with the software.

Definitions and Acronyms

 Python: A high-level programming language used to develop the software.


 Standalone CBRN Integrated Data Management& Analysis Platform: The name of
the Python-based application.
 User: Individuals who operate the software.
 Dependencies: External libraries or modules required by the software.
 Environment: The system setup where the software runs, including Python version and
operating system.

Procedure
 Prerequisites:

o Python Installation:
o Ensure Python 3.12.4 is installed on the system.
o Verify the installation by running python --version in a terminal or
command prompt.
o Visual Studio Code (VS Code):
o Installation:
 Download and install Visual Studio Code from VS Code
Download Page.
 Follow the installation instructions specific to your operating
system (Windows, macOS, or Linux).
o Python Extension:
 Open VS Code after installation.
 Go to the Extensions view by clicking on the Extensions icon in
the Activity Bar on the side of the VS Code window or by pressing
Ctrl+Shift+X.
 Search for "Python" in the Extensions Marketplace.
 Install the Python extension by Microsoft, which provides Python
language support and enables features like code linting, debugging,
and code navigation.

Installation Steps of Dependencies:

49
 To install these libraries
 Open terminal and type
o pip install library_name

Python libraries to installed:

 PYQT5( for application UI )


 Sqlite3 (For Database)
 Matplotlib ( For Data analysis )
 Reportlab ( for report generation )
 OS ( for operating system )
 Datetime ( for using date time )
 Docx (for saving file in docx form )
 Json ( fro json file)
 Numpy
 Pandas
 Pyinstaller ( for app packaging)

50
Directory structure( for code raw file) :-

51
CHAPTER 5
FUTURE SCOPE

The future vision for this application includes transitioning it to a web platform hosted on ABC's
own server. This would enable access by other divisions across the country, allowing them to
maintain and manage training data efficiently. Additionally, the application could be enhanced
with more sophisticated designs and functionalities. One planned feature is a mailing system that
automatically sends personal invites to participants when a training session is created, acting as a
reminder to ensure participation. Another enhancement involves developing a recommendation
system that suggests suitable speakers for specific training topics, optimizing the selection process
and improving the quality of training sessions. Additionally, the future scope includes adding a
functionality to request feedback or suggestions from participants via email, with the ability to
store general or frequently mentioned feedback directly in the training window. Moreover, a
certification feature will be implemented, allowing the system to issue training certificates to
participants upon completion of their sessions. These enhancements will further improve user
engagement and add value to the overall training experience.

52
SUMMARY & CONCLUSION
The project involves the development of a standalone application for managing CBRN (Chemical,
Biological, Radiological, and Nuclear) training sessions. Built using Python, the application aims to
streamline the management of training data and enhance operational efficiency through a user-friendly
interface and comprehensive functionality.
Key Features:
 Home Page: Provides a search bar for retrieving data based on title, time period, and agencies.
Users can view visual data representations through pie charts, with options for detailed
analysis of agency participation and participant counts. The page includes a login button and
navigation to major sections such as Trainings, Blog, Gallery, Knowledge Management,
Faculty List, Agency List, and Products.
 Trainings Page: Divided into three tabs:
o Past Trainings: Lists completed training sessions with historical data.
o Upcoming Trainings: Displays scheduled future sessions.
o Add a Training: Allows users to enter new training sessions, including details of
participants, faculty involved, and scheduling information. Users can also generate and
manage training schedules.
 Training Detail Page: Offers detailed information about a specific training session, including
end date, participants list (with options to add, edit, or delete), faculty list (with similar
management options), schedule management, financial details, feedback, and attachments. It
includes functionality to generate day-wise schedules in PDF or Word format and attach
relevant documents.
 Gallery Page: Showcases folders related to training and activities, allowing users to add,
open, delete, and update folders. It includes batch operations for managing multiple folders.
 Faculty List Page: Manages faculty information with options to add, edit, or delete records.
Includes search and filter functionalities, and detailed view access to faculty profiles.
 Products Page: Manages information about products developed by the department. Features
include adding, editing, deleting, searching, filtering, and viewing detailed product
information, with batch operations and data export options.

53
 Books Page: Manages departmental book records, with features for adding, editing, deleting,
searching, and filtering books. Users can view detailed book information and perform batch
operations and data exports.
 Print Functionality: Each table (e.g., Training List, Faculty List, Products List, Books List)
includes print functionality, allowing users to generate hard copies of the data for offline
reference or reporting purposes.
 Data Visualisation: Users can view visual representations of the data through pie charts.
Options for detailed analysis include:
o View Agency Analysis: Displays the percentage and count of times each agency
participated.
o View Participants Analysis: Shows the number of participants from each agency.

This application centralizes data management, enhances efficiency, and provides robust tools for
tracking and analysing CBRN training sessions and related information. Its features support
detailed record-keeping, data analysis, and effective communication within the organization.

54
CONTACT INFORMATION
For further inquiries or support, please contact the developers:
 Akanksha Kumari
Phone: +91-9311836349
 Akshat Singh
Email: aksi5938@gmail.com
Phone: +91-8960999042
 Lavika Khattar
Email: khattarlavika@gmail.com
Phone: +91-8700588188
 Satvik Bhardwaj
Email: satvikbhardwaj2003@gmail.com
Phone: +91-9315125060
 Shelly Garg
Email: shellygarg3522 @gmail.com
 Phone: +91-8588925766

55
REFERENCES

1. Defence Research and Development Organisation (DRDO). (2023). About DRDO.


Retrieved fromhttps://drdo.gov.in
2. Institute of Nuclear Medicine and Allied Sciences (INMAS). (2023). CBRN Training
Programs. Retrieved from https://inmas.drdo.gov.in
3. Matplotlib Documentation. (2023). Matplotlib: Python plotting library. Retrieved from
https://matplotlib.org/stable/contents.html
4. PyQt5 Documentation. (2023). PyQt5: Python binding of the cross-platform GUI toolkit
Qt. Retrieved from https://www.riverbankcomputing.com/static/Docs/PyQt5/
5. Crafting a Standalone Executable with PyInstaller" by Moraneus, available atMedium.
6. SQLite Documentation. (2023). SQLite: Database engine documentation. Retrieved
fromSQLite Documentation

56

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy