0% found this document useful (0 votes)
9 views

COMPFinal Report

Uploaded by

Jawad Hussain
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

COMPFinal Report

Uploaded by

Jawad Hussain
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 40

“COMP”

A System for Computing Molecular Properties

Developed by

Abdul Wahab
19FID04956
Mujtaba Ali Noori
19POP00008

Supervisor
Dr. Moiz Uddin Ahmed Siddiqui

Department Of Computer Science (DCS)


Allama Iqbal Open University
H8, Islamabad.
************
2022 - 2023

II
Declaration
I/We hereby declare that this software, neither as a whole nor as a part
thereof has been copied from any source. It is further declared that I/We
developed this software and this report entirely on the basis of my/our
personal efforts made under the sincere guidance of my/our project
supervisor.

If any part of this software proved to be copied or found to be a report of


some other, I/we shall standby the consequences.

No portion of the work presented in this report has been submitted in


support of any application for any other degree or qualification of this or
any other University or institute of learning.

I/We further declare that this software and all associated documents,
reports, and records are submitted as partial requirement for the degree of
BS (CS).

I/We understand and transfer copyrights for these materials to Allama Iqbal
Open University, Islamabad.

I/We shall not sale this software and documents and shall not get any
financial gains from these.

Student Name-1 Signature


Student Name-2 Signature

Project Supervisor Signature

I
II
Abstract.

III
ACKNOWLEDGMENT

IV
Table of Contents
CHAPTER 1 INTRODUCTION.....................................................................................................1
1.1 Introduction.......................................................................................................................1
1.2 Project Background/Overview..........................................................................................2
1.3 Objectives..........................................................................................................................3
1.4 Scope.................................................................................................................................3
1.5 Problem Description.........................................................................................................4
CHAPTER 2 EXISTING SYSTEM ANALYSIS...........................................................................5
2.1 Guss View 6 and 16:.........................................................................................................5
2.1.1 Introduction................................................................................................................5
2.1.2 Flaws..........................................................................................................................5
2.2 ChamDraw:.......................................................................................................................6
2.2.1 Introduction:..............................................................................................................6
2.2.2 Flaws:.........................................................................................................................6
2.3 ChemDoodle:....................................................................................................................6
2.3.1 Introduction:..............................................................................................................6
2.4 Mol Insporation:................................................................................................................7
2.4.1 Introduction:..............................................................................................................7
2.4.2 Flaws:.........................................................................................................................7
2.5 WebMO:............................................................................................................................7
2.5.1 Introduction:..............................................................................................................7
2.5.2 Flaws:.........................................................................................................................8
2.6 nglViewer:.........................................................................................................................8
2.6.1 Introduction:..............................................................................................................8
2.6.2 Flaws:.........................................................................................................................8
CHAPTER 3 REQUIREMENT SPECIFICATION........................................................................9
3.1 Requirement Specification:...............................................................................................9
3.2 Methodology:....................................................................................................................9
3.3 Extreme Methodology:.....................................................................................................9
3.4 Purpose..............................................................................................................................9
V
3.5 Stakeholder......................................................................................................................10
3.6 Scope...............................................................................................................................10
3.7 Intend Audience:.............................................................................................................10
3.8 Intended Use:..................................................................................................................11
3.8.1 User story for student...............................................................................................11
3.8.2 User story for lecturers............................................................................................11
3.8.3 User story for scientist.............................................................................................12
3.9 Functional Requirements................................................................................................12
3.9.1 User Registration and Authentication......................................................................12
3.9.2 Molecular Drawing and Editing..............................................................................12
3.9.3 Molecular Visualization...........................................................................................13
3.9.4 Molecular Property Calculations.............................................................................13
3.9.5 Computational Techniques and Algorithms:...........................................................13
3.9.6 File Import and Export.............................................................................................13
3.9.7 Pro-built Molecular Template..................................................................................13
3.9.8 Save and Retrieve Work..........................................................................................13
3.9.9 Documentation and resources..................................................................................14
3.9.10 Compatibility and Accessibility..............................................................................14
3.9.11 User roles and Permissions......................................................................................14
3.9.12 Collaboration and Sharing.......................................................................................14
3.9.13 Security....................................................................................................................14
3.9.14 System Performance and Scalability:......................................................................14
3.10 Non-Functional Requirements........................................................................................15
3.10.1 Performance.............................................................................................................15
3.10.2 Reliability................................................................................................................15
3.10.3 Security....................................................................................................................15
3.10.4 Scalability................................................................................................................16
3.10.5 Usability and User Experience................................................................................16
3.10.6 Compatibility...........................................................................................................16
3.10.7 Maintainability.........................................................................................................16
3.10.8 Accessibility............................................................................................................16
3.10.9 Data Privacy and Compliance.................................................................................17

VI
3.10.10 Integration............................................................................................................17
3.10.11 Localization..........................................................................................................17
3.10.12 Documentation and Support.................................................................................17
3.11 Change Management:.....................................................................................................17
3.12 Acceptance Criteria:........................................................................................................17
3.13 System Requirement.......................................................................................................18
CHAPTER 4..................................................................................................................................19
4.1 System Design:...............................................................................................................19
4.2 UML Diagram:................................................................................................................19
4.2.1 Use Case:.................................................................................................................19
4.2.1.1 Use Case Diagram for Web-based Application...............................................................20
4.2.1.2 Use Case Diagram for Admin Panel:...............................................................................21
4.2.2 Sequence Diagram:..................................................................................................22
4.2.3 Activity Diagram:....................................................................................................23
CHAPTER 5..................................................................................................................................24
5.1 Methodology:..................................................................................................................24
5.2 Extreme Methodology:...................................................................................................24
5.3 Development Tools:........................................................................................................24
5.3.1 PHP:.........................................................................................................................24
5.3.2 Laravel Framework:.................................................................................................24
5.3.3 Ajax Framework:.....................................................................................................24
5.3.4 Xampp Database:.....................................................................................................25
5.3.5 HTML:.....................................................................................................................25
5.3.6 CSS:.........................................................................................................................25
5.3.7 Bootstrap Framework:.............................................................................................25
5.3.8 Node JS:...................................................................................................................26
5.3.9 JavaScript:................................................................................................................26
5.4 Advantages of Extreme Programming:...........................................................................26
CHAPTER 6..................................................................................................................................27
6.1 Testing:............................................................................................................................27
6.2 Types of Testing:............................................................................................................27
6.2.1 Unit Testing:............................................................................................................27

VII
6.2.1.1 Unity:.............................................................................................................................27
6.2.2 System Testing.........................................................................................................28

VIII
List of Figure
Figure 1 Use case Diagram for Web Base Application.................................................................20
Figure 2 Use Case Diagram For Admin Panel...............................................................................21
Figure 3 Sequence Diagram...........................................................................................................23
Figure 4 Activity Diagram.............................................................................................................24

IX
CHAPTER 1

INTRODUCTION

1.1 Introduction
The field of computational chemistry is gaining increasingly importance in chemistry
research over the past few years. Computational chemistry involves using computer simulations
and modeling to understand, predict the properties and behaviors of chemical systems. In
particular, the ability to calculate molecular properties is crucial for many applications in fields
such as drug discovery, materials science and environmental studies. However, the
computational tools used for these calculations are often expensive and require specialized
expertise to operate. Furthermore, many existing software packages for molecular properties
calculations are desktop-based, which are limited in terms of their accessibility and usability for
researchers and students.

A web-based application called COMP is created for computational and biochemical objectives.
It offers a complete environment for seeing and interpreting molecular architectures, chemical
compositions, and biomolecules. The application is designed to be user-friendly and accessible,
making it appropriate for both chemistry researchers and students. The main goal of COMP was
to provide an easy-to-use interface for altering and exploring molecular structures, thus bridging
the gap between theory and practice in chemistry. Users of COMP can interactively analysis and
investigate chemical molecules to learn more about their characteristics and behaviors. The
abilities of COMP to visualize molecules in three dimensions serves as one of its primary
characteristics. Chemical structures can be provided in a number of formats, including SMILES,
InChI, or PDB, and then visualized in three dimensions. Better comprehension of the molecular
geometry, bond angles, and overall structure is provided by this interactive visualization. For the
purpose of examining chemical properties and reactions, it aids users in comprehending the
spatial arrangement of atoms and bonds. COMP supports the examination of biomolecules.
Users can import DNA, RNA, and other biological macromolecules form the search bar and
analysis it as well as protein structures. Specific functional groups, binding sites, and other
molecular characteristics important to biological processes can be identified using the

1
application. Researchers working in disciplines including biochemistry, molecular biology, and
drug discovery will find COMP useful as a result of this functionality. The COMP project
proposes to address these issues by developing a web-based application for creating molecular
structures and performing calculations of their properties. The system will allow users to both
visualize and calculate the properties of molecules and bonds, all within a single, consolidated
platform. This will make the process of conducting molecular calculations more accessible and
convenient for researchers, students, and lecturers.

1.2 Project Background/Overview


It is possible to trace the origins of the COMP application to the expanding demand for
open-access and approachable tools in the fields of computational and biology. In order to give
researchers, lecturers and students a thorough platform for visualizing, analyzing, and
understanding molecular structures, COMP was created. The knowledge of molecule structures
and their characteristics is crucial to both theoretical and practical chemistry. However,
conventional approaches to learning chemistry can entail tedious and complicated procedures,
making it difficult for students and researchers to fully understand ideas. A tool that could make
the connection between theoretical understanding and real-world application, making chemistry
more approachable and interesting, was clearly needed.

The concept of a web-based application specifically designed for computational and


biochemistry gained popularity as web technology developed. The developers of COMP saw the
potential in such a platform and set out to create a tool that would make molecular structure
visualization and analysis easier while providing a variety of computational resources. Experts in
the fields of application engineering, chemistry, and biochemistry made up the COMP
development team. Their combined knowledge made it possible to develop an application that
not only complied with the technical standards but also catered to the particular requirements of
the chemical community. We are carefully to make sure the application was user-friendly
throughout the development process. They sought to develop a user-friendly interface that would
enable users to edit and examine chemical structures without the need for in-depth expertise in
sophisticated application or programming languages. The intention was to increase chemistry
learning and research by making COMP accessible to both amateurs and seasoned professionals.

2
The development of computational chemistry helped COMP as well because it made it possible
to incorporate strong algorithms and computations. Users were able to study the behavior of
numerous chemical compounds and anticipate molecular attributes by doing various calculations
and simulations. COMP aims to offer a comprehensive platform for visualization and analysis by
incorporating various computational techniques, giving users the ability to obtain a better
understanding of molecular structures and their characteristics.

1.3 Objectives

Following are the main objective of COMP.

 To develop a single consolidated system for simultaneous molecular drawing,


visualization, and computation of molecular properties.

 To develop a system that is web base application no need to install or configure in the
system.

1.4 Scope
The scope of the "COMP" project is to develop a web-based application that will provide
a consolidated platform for drawing, visualizing, and calculation for computing molecular
properties. The system aims to facilitate researchers, lecturers, and students in the field of
chemistry to create molecular structures and perform various calculations related to energy
optimization, and charge. The proposed system will have seven different versions, with the first
version developed for the current degree program.

The system is intended to be a more convenient and portable alternative to existing desktop
applications that are limited in terms of their functionality. By providing a web-based
application, the proposed system will eliminate the need for installation or configuration on
individual systems, making it more accessible and user-friendly. This application can run on
Windows, Linux, and MAC OS operating system. The project is being developed in
collaboration with the Department of Chemistry at Allama Iqbal Open University in Islamabad,
Pakistan, with the goal of providing an efficient and reliable system for molecular properties
calculations. The proposed system will be based on the pattern of existing application used in the

3
department, with the added benefit of being a consolidated system that combines both
visualization and computation modules.

1.5 Problem Description


Existing system is a desktop application and is not a portable version. Due to which
number of installation fix for install application. On paid application 3D rotatable molecule for
visualization. Visualization and calculation used two different applications for molecular
properties computation.

4
CHAPTER 2
EXISTING SYSTEM ANALYSIS

2.1 Guss View 6 and 16:

2.1.1 Introduction
GaussView 6 is a powerful graphical interface for Gaussian 16, providing advanced
molecular modeling and analysis capabilities. It allows users to build, import, and modify
molecular structures, set up and launch Gaussian calculations, and visualize results within the
application. GaussView 6 supports the latest features of Gaussian 16 and offers a comprehensive
molecule building toolkit, symmetry manipulation options, and intuitive parameter modification.
It also provides interactive visualization of spectra and numerical results, enabling efficient
analysis. Overall, GaussView 6 enhances the user experience and facilitates complex
computational chemistry tasks. Users can construct molecules using pre-optimized groups, rings,
amino acids, and DNA bases. It also allows the creation of custom libraries for frequently used
fragments. Structural modifications can be made at various levels, enabling precise adjustments
to atoms, groups, or fragments. Symmetry operations like mirroring, inverting, and symmetrizing
structures can be performed effortlessly.

In summary, GaussView 6 serves as a comprehensive and user-friendly platform for


molecular modeling and analysis, leveraging the capabilities of Gaussian 16. Its intuitive
interface, extensive features for molecule building and manipulation, seamless integration with
Gaussian calculations, and interactive result visualizations make it a valuable tool for researchers
in the field of computational chemistry

2.1.2 Flaws
 The main flaw of the application is first installed and then configure the system for
further work on it.
 Laptop or desktop carry for presentation or work on it at any time or at any place
 Fixed number of installations for working on it.
 The license is very expense for working.

5
2.2 ChamDraw:

2.2.1 Introduction:
ChamDraw is a versatile chemical drawing software designed for creating and editing
chemical structures. It provides an intuitive interface and a wide range of tools for drawing
molecules, reactions, and polymers. ChamDraw supports various chemical file formats, making
it compatible with other software and databases. It also offers features such as structure
searching, property calculation, and data analysis. With its user-friendly design and powerful
capabilities, ChamDraw is a valuable tool for chemists and researchers in the field of chemical
sciences.

2.2.2 Flaws:

 This application is also installed and configure into system.


 Also carry laptop or desktop where this application will be installed.
 The issue in that only 2D structure is can made don’t convert and calculation perform on
it.
 This is paid application.

2.3 ChemDoodle:

2.3.1 Introduction:
ChemDoodle Web Components (CWC) is a JavaScript/HTML5 toolkit developed by
iChemLabs. It offers a lightweight and versatile solution for chemical graphics, structure editing,
and interfaces on the web. CWC uses web standard technologies like HTML5, CSS, and
JavaScript to deliver chemistry-related applications across desktop and mobile platforms. It
supports 2D and 3D graphics, provides cheminformatics algorithms, and allows customization of
visual specifications. CWC aims to replace older plugins by leveraging HTML5 and JavaScript,
ensuring compatibility and eliminating the need for additional installations. It offers advanced
interfaces like a 2D chemical sketcher and a 3D molecular model editor. CWC can be integrated
with other JavaScript libraries to create comprehensive chemistry web applications.
ChemDoodle is a user-friendly application for chemical drawing and visualization. It offers tools

6
to create and edit chemical structures, reactions, and annotations. With 3D visualization and
property calculation features, it is a valuable tool for chemists and researchers.

2.4 Mol Insporation:

2.4.1 Introduction:
Mol Inspiration offers a wide range of cheminformatics software tools for molecule
manipulation and processing. These tools include conversion of SMILES and SDfile formats,
molecule normalization, tautomer generation, molecule fragmentation, calculation of molecular
properties for QSAR, molecular modeling, and drug design. The software also provides high-
quality molecule depiction, database tools for substructure and similarity searches, fragment-
based virtual screening, bioactivity prediction, and data visualization. Mol Inspiration tools are
written in Java, making them compatible with various computer platforms. Additionally, Mol
Inspiration's web services are accessible on touch devices like iPhones, iPads, and Android
phones and tablets. The company supports the internet chemistry community by offering free
online services for calculating important molecular properties and predicting bioactivity scores
for key drug targets. The Molinspiration Molecule Viewer allows visualization of molecule
collections encoded in SMILES or SDfile formats, with support for data display, molecule
selection, substructure search, and export. The viewer is platform independent and can be used
on computers with Java runtime installed. Inspiring drug discovery through natural products. It
integrates biology, chemistry, and computation to discover new drugs by exploring the chemical
space of natural compounds. Accelerates drug discovery and leverages nature's chemical
diversity for optimized therapeutic properties.

2.4.2 Flaws:
 It is not user-friendly platform for create and visualization of the any structure.
 Using database create and visualize structure.
 Here periodic table not present.

7
2.5 WebMO:

2.5.1 Introduction:
WebMO is a web-based interface for computational chemistry that allows users to access
and utilize advanced programs through a standard web browser. It offers intuitive tools for
molecular editing, job submission, result visualization, and user management. With universal
accessibility and a user-friendly interface, WebMO minimizes barriers to using computational
chemistry in teaching and research. It supports collaboration among educators, researchers, and
developers, making it a valuable tool for a wide range of applications in the field.

2.5.2 Flaws:
 Using guest account first providing me the structural formula for visualization on the
molecular structure.
 Don’t modify structure
 Complexed user-interface

2.6 nglViewer:

2.6.1 Introduction:
nglViewer is a JavaScript library for interactive molecular visualization in web browsers.
It supports various file formats, offers multiple visual representations, and provides tools for
manipulation and analysis of molecular structures.

2.6.2 Flaws:
It is only views of the molecular and bio-molecular structure don’t me modify.

8
CHAPTER 3
REQUIREMENT SPECIFICATION
3.1 Requirement Specification:
Requirement specification is a vital process in software development that involves
documenting the needs, functionalities, and constraints of a system. It ensures clear
communication, shared understanding, and guides the design, development, and testing of the
software. It is essential for managing scope, meeting objectives, and delivering a system that
satisfies user needs.

3.2 Methodology:
The proposed system will be developed using agile development methodologies, which
emphasize flexibility, collaboration, and rapid iteration. By using this approach, the project team
hopes to create a system that meets the needs of chemistry researchers, lecturer and students,
while also being user-friendly and easy to maintain.

3.3 Extreme Methodology:


Extreme Programming (XP) is an agile software development methodology that
prioritizes customer satisfaction through continuous collaboration and adaptability. It emphasizes
iterative development, feedback, and practices like pair programming and test-driven
development to deliver high-quality software. XP is used to enhance productivity,
responsiveness, and project success by fostering effective teamwork and customer-centric
development processes.

3.4 Purpose
It is a web-based application, which aims to solve the problem of create, visualization and some
calculation perform of the molecular structure. This idea is assigned by my supervisor of my
FYP. Basically, this project is for the chemistry department of the AIOU. Here is the problem for
create, visualization and calculation of the molecule in desktop application which will be install
in the system. But the desktop application is some time carry difficult when somewhere going to
9
meeting or for class attend by the lecturers or scientist. But in my application don’t need to
install or configure in the system just login on browser (Chrome, Microsoft edge and Firefox)
and start working at any device like (desktop, laptop, tablet and smart phone).

3.5 Stakeholder
Some stakeholders are given below in my construction of my application.
 Supervisor
 Developer
 End users
 Tester
 Management

3.6 Scope
The scope of the Computing Molecular Properties project is to develop a web-based
application that will provide a consolidated platform for drawing, visualizing, and calculation for
computing molecular properties. The system aims to facilitate researchers, lecturers, and students
in the field of chemistry to create molecular structures and perform various calculations related
to energy optimization, and charge. The proposed system will have seven different versions, with
the first version developed for the current degree program.

The system is intended to be a more convenient and portable alternative to existing desktop
applications that are limited in terms of their functionality. By providing a web-based
application, the proposed system will eliminate the need for installation or configuration on
individual systems, making it more accessible and user-friendly. This application can run on
Windows, Linux, and Mac OS operating system. The project is being developed in collaboration
with the Department of Chemistry at Allama Iqbal Open University in Islamabad, Pakistan, with
the goal of providing an efficient and reliable system for molecular properties calculations. The
proposed system will be based on the pattern of existing application used in the department, with
the added benefit of being a consolidated system that combines both visualization and
computation modules.

10
3.7 Intend Audience:
The Computing Molecular Properties programmer was created with a wide range of users in
mind, including students, researchers, educators, chemical industry experts, and science
enthusiasts. It offers a user-friendly platform for exploring and visualizing molecular structures,
allowing students to more effectively learn chemistry principles, researchers to carry out
complex calculations on molecular properties, teachers to improve classroom instruction, experts
to examine chemical compounds, and science enthusiasts to become involved in the field of
chemistry. A wide range of people interested in the study and investigation of molecular science
can benefit from Computing Molecular Properties extensive toolkit.

3.8 Intended Use:


Computing Molecular Properties is designed to be a flexible tool for a variety of
molecular science-related tasks. Its main function is molecular exploration and visualization,
enabling users to build, modify, and study molecular structures. It acts as a teaching tool for
chemistry students by giving them a platform to improve their comprehension of chemical ideas
through interactive visualization. Computing Molecular Properties can be used by researchers to
do complex computations and analyze molecular characteristics. For compound analysis and
research, professionals in the chemical sector can benefit from its skills.

3.8.1 User story for student


As a student using the COMP application, I have found it to be an invaluable tool for our
studies in computational chemistry. With its user-friendly interface and web-based accessibility,
I can easily design and explore molecular structures, gaining a better understanding of their
characteristics and behaviors. The visualization capabilities allow me to comprehend the spatial
arrangement of atoms and bonds, while the computational features enable me to calculate
various properties and anticipate molecular attributes. The COMP system has become an
essential part of my learning journey, providing me with a comprehensive platform that bridges
the gap between theory and practice in chemistry, ultimately enhancing my knowledge and skills
in the field.

3.8.2 User story for lecturers


As a lecturer utilizing the COMP application, I have found it to be an invaluable tool for
enhancing my chemistry lectures and research. The user-friendly interface and consolidated

11
system allow us to easily design and modify molecular structures, as well as compute various
properties such as energy, optimization, and frequency. The ability to quickly demonstrate these
concepts to our students during lectures and provide examples for assignments and exams is
highly beneficial. The availability of pre-built molecular templates and the option to save and
retrieve work further streamline the process. The robust and easy-to-use nature of the COMP
system significantly improves my capacity for computational chemistry research and teaching,
enabling us to engage students and facilitate their understanding of complex chemical concepts.
To store the information of structural data into the database for view in later through admin panel
and also check the research and practice of our students.

3.8.3 User story for scientist


As a scientist utilizing the COMP application, I have found it to be an indispensable tool
for my research in computational chemistry. The ability to design and visualize molecular
structures with interactive 3D representations is invaluable in understanding the spatial
arrangement of atoms and bonds. The computational capabilities of the COMP system allow me
to perform complex calculations and simulations, enabling me to study the behavior of various
chemical compounds and anticipate molecular properties. The flexibility to adjust input
parameters and access a range of computational techniques and algorithms ensures accurate and
reliable results. The system's efficiency and dependability free me from technical constraints,
allowing us to focus on our research goals and objectives, ultimately advancing our
understanding and contributing to scientific discoveries in the field of chemistry. To store the
information of structural data into the database for view in later through admin panel and also
check the research of our workers in the lab.

3.9 Functional Requirements

3.9.1 User Registration and Authentication

 Users should be able to create and account and securely log in to the application
 Authentication mechanism such as username/password.

3.9.2 Molecular Drawing and Editing

 Users should be able to create and edit molecular structures using intuitive drawing tools.

12
 The application should support the addition, deletion and modification of atoms, bonds,
and functional groups.
 Users should be able to specify bond types (single, double, triple) and bond angles

3.9.3 Molecular Visualization


 The application should provide 3D visualization capabilities for created molecular
structures.
 Users should be able to rotate zoom in and zoom out the molecule for better visualization.
 Different display modes (wireframe, Ball-and Stick, Space-Filling, and line) should be
supported.

3.9.4 Molecular Property Calculations


 Users should be able to perform various calculations to determine molecular properties,
such as Lucent, Energy optimization, Bond dipoles and Charge.
 The application should provide calculation results.

3.9.5 Computational Techniques and Algorithms:


 The application should incorporate a range of computational techniques and algorithms to
perform molecular property calculations.
 Users should have the ability to select and customize the computational methods
according to their requirements.

3.9.6 File Import and Export


 The application should support the import of molecular structures form various file
formats. Such as SMILES, InChl, or PDB from different databases.
 Users should be able to export the created molecular structures and calculation results in
standard file formats for further analysis or sharing.

3.9.7 Pro-built Molecular Template


 The application should provide a library of pre-built molecular template for users to
easily create complex structures.
 Templates for common functional groups, biomolecules (DNA, RNA and proteins), and
chemical Compounds should be available.

13
3.9.8 Save and Retrieve Work
 Users should be able to save their work and retrieve it later for further editing or analysis.
 The application should provide a storage system to securely store user-created molecular
structures and calculation results.

3.9.9 Documentation and resources


 The application should offer comprehensive documentation and resources on molecular
modeling, computational chemistry, and the usage of the COMP system.
 Tutorials, user guides, and examples should be provided to assist users in understanding
and utilizing the application effectively.

3.9.10Compatibility and Accessibility


 The COMP application should be compatible with major web browsers and accessible on
different platforms (Windows, macOS, Linux) without the need for additional
installations.
 The application should be responsive and optimized for both desktop and mobile devices.

3.9.11 User roles and Permissions


 The application should support different user roles, such as students, lecturers, and
researchers, with appropriate permissions and access levels.
 Administrators should have additional privileges for managing user accounts and system
settings.

3.9.12 Collaboration and Sharing


 Users should have the ability to collaborate and share their work with other users through
features like sharing files.

3.9.13 Security
 The application should implement necessary security measures to protect user data,
including encryption of sensitive information and secure communication protocols.
 User authentication and authorization mechanisms should be in place to ensure data
privacy and prevent unauthorized access.

14
3.9.14 System Performance and Scalability:

 The application should be designed to handle a large number of users and concurrent
calculations efficiently.
 Performance optimization techniques, such as caching and parallel processing, should be
implemented to minimize computation time.

3.10 Non-Functional Requirements

3.10.1Performance

 The application should be highly responsive, providing real-time feedback and smooth
interaction with molecular visualization and calculations.
 Molecular property calculations should be performed efficiently, ensuring reasonable
response times for complex structures and computational methods.
 The application should be able to handle a large number of concurrent users without
significant degradation in performance.

3.10.2Reliability

 The COMP system should be reliable and stable, minimizing downtime and ensuring
continuous availability for users.
 It should be capable of handling errors and exceptions gracefully, providing informative
error messages and recovering from failures without data loss or corruption.
 Regular backups and data recovery mechanisms should be in place to safeguard user data
and work.

3.10.3Security

 The application should implement robust security measures to protect user data, including
encryption of sensitive information, secure data transmission, and secure storage of user
credentials.
 User authentication and authorization mechanisms should be in place to prevent
unauthorized access to the system and its functionalities.

15
 Regular security audits and vulnerability assessments should be conducted to identify and
address potential security risks.

3.10.4Scalability

 The COMP system should be designed to handle increasing user loads and growing data
volumes without compromising performance.
 It should be scalable, allowing for easy addition of computational resources.

3.10.5Usability and User Experience

 The application should have an intuitive and user-friendly interface, requiring minimal
training and technical expertise for users to navigate and utilize its features.
 Clear and concise instructions and tooltips should be provided to guide users through the
molecular drawing, visualization, and calculation processes.
 The user interface should be aesthetically pleasing, visually appealing, and responsive
across different screen sizes and devices.

3.10.6Compatibility

 The COMP application should be compatible with a wide range of web browsers,
ensuring consistent performance and functionality across different platforms.
 It should comply with web standards and specifications to ensure proper rendering and
functionality on various operating systems.

3.10.7Maintainability

 The application should be designed and implemented using modular and well-structured
code, facilitating ease of maintenance and future enhancements.
 Documentation, including user manuals, should be provided to aid in system
maintenance, and future development.

3.10.8Accessibility

 The COMP system should adhere to accessibility standards, making it usable by


individuals with disabilities.

16
 It should support screen readers, keyboard navigation, and other assistive technologies to
ensure equal access for all users.

3.10.9Data Privacy and Compliance

 User data should be handled securely and only used for legitimate purposes as defined by
the privacy policy.

3.10.10 Integration

 The COMP system should allow for integration with other relevant tools and services
used in the field of computational chemistry, enabling seamless data exchange and
collaboration.

3.10.11 Localization

 The application should support multiple languages and provide localization options to
cater to users from different regions and language preferences.

3.10.12 Documentation and Support

 Comprehensive documentation, including user guides, FAQs, and tutorials, should be


provided to assist users in understanding and effectively utilizing the application's
features.
 Responsive and knowledgeable technical support should be available to address user
inquiries, issues, and provide assistance when needed.

3.11 Change Management:


Change management in Computing Molecular Properties is the process of effectively managing
and implementing changes in the application. It involves identifying, planning, and
implementing changes while minimizing disruptions and ensuring user satisfaction. The goal is
to maintain stability and reliability while incorporating necessary updates and improvements
based on user feedback and technological advancements.

17
3.12 Acceptance Criteria:
 As a user, I want to be able to import molecular structure files in various formats (e.g.,
PDB, MOL, SDF) so that I can visualize different molecular structures.
 As a user, I want to be able to manipulate and rotate the molecular structure in 3D space
for a better view.
 As a user, I want to be able to apply different rendering styles to the molecular structure
to enhance visualization.
 As a user, I want to be able to select and highlight specific atoms or groups of atoms in
the molecular structure.
 As a user, I want to be able to measure distances and angles between atoms in the
molecular structure.
 As a user, I want to be able to export the visualized molecular structure in a shareable
format.
 As a user, I want the application to be responsive and performant, even with large and
complex molecular structures.

3.13 System Requirement


 Minimum 2GB of Ram.
 Processor Quad-core 1.3 GHz.
 Windows Operating System.
 Stable internet connection

18
CHAPTER 4

System Design

4.1 System Design:


System design is the process of creating a detailed plan and structure for a software system. It is
necessary for the project report as it outlines how the system will be built and organized,
including its components, interactions, and overall architecture. System design ensures a clear
roadmap for development, facilitating efficient implementation and effective communication
with stakeholders.

4.2 UML Diagram:


UML (Unified Modeling Language) diagrams are graphical tools used for visualizing and
documenting software systems. They provide a standardized notation to represent different
system elements, such as classes, objects, and relationships. UML diagrams help in conveying
system structure, behavior, and interactions in a concise and understandable manner. They are
widely used in software documentation to facilitate communication, analysis, and design
discussions among project stakeholders.

UML diagrams with respect to Extreme Programming given below..

 Use Case Diagram


 Sequence Diagram
 Activity Diagram

4.2.1 Use Case:


A use case diagram is a visual representation in UML that shows the relationships between
actors (users) and the system, illustrating the various actions or use cases performed by the
actors. It helps in documenting system requirements, identifying user interactions, and
understanding the system's overall functionality.

19
4.2.1.1 Use Case Diagram for Web-based Application

Figure 1 Use case Diagram for Web Base Application

20
4.2.1.2 Use Case Diagram for Admin Panel:

Figure 2 Use Case Diagram For Admin Panel

21
4.2.2 Sequence Diagram:
A sequence diagram is a visual representation in UML that illustrates the interactions and order
of messages exchanged between objects or components within a system. It shows the flow of
control and the timeline of events, helping to understand the dynamic behavior of the system and
how different components collaborate to achieve specific functionalities.

22
Figure 3 Sequence Diagram

23
4.2.3 Activity Diagram:
Activity diagram is a visual representation that depicts the flow of activities and actions within a
system or process. It shows the sequence of tasks, decision points, and concurrent activities,
providing an overview of the workflow. Activity diagrams are commonly used in software
development to analyze and design complex systems, ensuring a clear understanding of the
process and facilitating effective communication among stakeholders.

Figure 4 Activity Diagram

Who do we write software design details using xp.

24
CHAPTER 5

System Implementation

5.1 Methodology:
The proposed system will be developed using agile development methodologies, which
emphasize flexibility, collaboration, and rapid iteration. By using this approach, the project team
hopes to create a system that meets the needs of chemistry researchers, lecturer and students,
while also being user-friendly and easy to maintain.

5.2 Extreme Methodology:


Extreme Programming (XP) is an agile software development methodology that
prioritizes customer satisfaction through continuous collaboration and adaptability. It emphasizes
iterative development, feedback, and practices like pair programming and test-driven
development to deliver high-quality software. XP is used to enhance productivity,
responsiveness, and project success by fostering effective teamwork and customer-centric
development processes.

5.3 Development Tools:


In our project the following development tools are used in given below.

5.3.1 PHP:
We choose PHP to for the development of our Computing Molecular Properties. PHP is a
server-side scripting language designed for web development but also used as a general purpose
programming language. We have used PHP in Computing Molecular Properties. System for
backend i.e., to save data to the server.

5.3.2 Laravel Framework:


We choose Laravel Framework to for development of our Computing Molecular
Properties admin panel. Laravel is a server-side scripting language that is design for web
application. We have to used Laravel Framework in Computing Molecular Properties for
backend to save and retrieve the data form database on admin panel.

25
5.3.3 Ajax Framework:
The programmer has chosen Ajax Framework for the development of our Computing
Molecular Properties. An Ajax framework is a framework that helps to develop web applications
that use Ajax, a collection of technologies used to build dynamic web pages on the client side.
Data is read from the server or sent to the server by JavaScript requests. However, some
processing at the server side may be required to handle requests, such as finding and storing the
data. This is accomplished more easily with the use of a framework dedicated to process Ajax
requests. The goal of the framework is to provide the Ajax engine and associated server and
client side functions. The programmer has used Ajax Framework for the retrieve of the record
without refreshing the page which result in faster data entry and also fast data retrieval.

5.3.4 Xampp Database:


Xampp is a widely used open-source relational database management system (RDBMS)
that uses Structured Query Language (SQL) for managing data. It is designed to handle large
amounts of data and is commonly used in web applications and data warehousing. MySQL is
known for its reliability, ease of use, and flexibility. It can be used to store and retrieve data in a
variety of formats, including text, numbers, and dates. It's a popular choice for web developers
and businesses that rely on data-driven applications. We have used MySQL Database for our
Computing Molecular Properties to store our website data like images, formula, systematic name
etc. The whole data of our website is stored in Xampp database.

5.3.5 HTML:
HTML stands for Hypertext Markup Language. It is a standard markup language used to
create web pages and other information that can be displayed in a web browser. HTML uses tags
and attributes to define the structure and layout of a web page, as well as to provide information
about the content on the page. HTML is used in the Computing Molecular Properties to give
layout to the resources like text, images etc. on a web page.

5.3.6 CSS:
CSS stands for Cascading Style Sheets. It is a style sheet language used for describing the
presentation of a document written in a markup language. CSS is used to control the layout, font,
and color of elements on a web page, and allows developers to separate the presentation of a
website from its structure and content. This separation makes it easier to maintain and update the
appearance of a website, as the same HTML code can be used with different CSS styles. CSS
provides a wide range of styling options such as background color, font-size, margin, padding,
and positioning. CSS is used to style web page in Computing Molecular Properties. Different
styling is applied to the html elements by CSS using CSS features like flexbox and grid.

26
5.3.7 Bootstrap Framework:
Bootstrap is used for responsive layout. Through bootstrap the programmer achieved a
great milestone to show the web pages on small screen like mobile and tablets as their screen
width. Different design is also applied in bootstrap framework for buttons, texts etc.

5.3.8 Node JS:


An open-source, cross-platform runtime environment for JavaScript is Node.js. It is a
popular tool for practically every project kind. Without starting a new thread for each request, a
Node.js application operates in a single process. Blocking behavior in Node.js libraries is the
exception rather than the rule since libraries in Node.js are typically created using non-blocking
paradigms and because Node.js includes a set of asynchronous I/O primitives in its standard
library that prevent JavaScript code from blocking. Instead of interrupting the thread and
spending CPU time waiting for an I/O action, such as reading from the network or accessing a
database or disc, Node.js will continue its work once the response has been received. This
eliminates the complexity of managing thread concurrency, which might be a substantial source
of errors, and allows Node.js to manage thousands of concurrent connections with a single
server.

5.3.9 JavaScript:
JavaScript is a programming language that is commonly used to add interactivity and
other dynamic features to websites. It is a client-side scripting language, which means that the
source code is written in a plain text file and then interpreted by the web browser on the user's
computer, rather than on a server. JavaScript allows you to create things like image sliders, pop-
ups, and interactive forms, among other things.

5.4 Advantages of Extreme Programming:


Extreme Programming (XP) methodology include improved team collaboration and
communication, rapid feedback cycles for continuous improvement, increased flexibility to
accommodate evolving project requirements, early and frequent delivery of functional software,
and the ability to adapt to changing project needs. XP can help us effectively manage the
development process, mitigate risks, and ensure a successful outcome for our project. It
promotes a customer-focused approach, encourages active involvement of stakeholders, and
fosters a collaborative and productive team environment.

27
CHAPTER 6

Testing and Evaluation

6.1 Testing:
Testing is an essential process in software development that involves executing test cases to
evaluate the system's functionality, performance, and reliability. It helps identify defects,
validate requirements, and enhance the overall quality of the software. By systematically
verifying the software against different scenarios, testing ensures a reliable and satisfactory end
product.

6.2 Types of Testing:


There of some test cases for our project.

 Unit Testing
 Integration Testing
 System Testing
 Acceptance Testing
 Performance Testing

6.2.1 Unit Testing:


Testing is an essential process in software development that involves executing test cases to
evaluate the system's functionality, performance, and reliability. It helps identify defects,
validate requirements, and enhance the overall quality of the software. By systematically
verifying the software against different scenarios, testing ensures a reliable and satisfactory end
product.

6.2.1.1 Unity:
Testing is an essential process in software development that involves executing test cases to
evaluate the system's functionality, performance, and reliability. It helps identify defects,

28
validate requirements, and enhance the overall quality of the software. By systematically
verifying the software against different scenarios, testing ensures a reliable and satisfactory end
product.

6.2.2 System Testing

29

You might also like