Atharva Gujar Project Report
Atharva Gujar Project Report
At
By
Seat No : 2490
Submitted To
I hereby declare that the project titled “Femex House Keeping”, is an original piece of work carried
out by me under the guidance of Dr. Rupali Dahake. All the necessary information, facts and
figures contained herein has been collected from genuine and authentic sources. The information
provided herein below is true and correct to the best of my knowledge and belief and nothing has
been falsely stated or concealed therein. The work has been submitted in partial fulfillment of the
University.
Sarvadnya Pawar
Place: Pune
Date:
ACKNOWLEDGMENT
We are the student of MCA Second year. Here by we express our thanks to
our project guide for allowing us to do the project . This project work has been
the most exciting part of our learning experience which would be an asset for
our future carrier. I thank Dr. Manisha Kumbhar, HOD, MCA Department for
her continuous support and help .I would like to thank Dr. Vidya Gavekar,
Prof. Anagha Sawant & Prof. Apurva Patil, project coordinators for their
support. Also we would like to thank our guide and mentor Dr. Rupali Dahake,
work and examples push us to limits of our capability and encourage us daily.
Thank You
Sarvadnya Pawar
INDEX
Digital Task Force is a one-of-a-kind andflagship company which is among India's 10most
popular cyber security and forensicorganizations.
Intoduction
Digital Task Force is unique and Flagship Company which isamong the top 10 Cyber Security
& Forensic companies inIndia.
Digital Task Force is presenting first of its kind flagshipProfessional Certificate Courses &
Diploma in the field of CyberSecurity & Cyber Crime Investigation, Digital Forensic,
BitCoin,Block Chain, Penetration Testing and Cyber Laws.
We devise curriculum and assist Sr. Police officials, the CID,Judicial Officers, Public
Prosecutors, and Senior GovernmentOfficials, leading banks, insurance companies,
Universities,Corporate giants and End Users. In short there is no vertical,where our Professional
Expertise are not being delivered.
About
Digital Task Force is recognized as one of themilestones in Cyber Security & Forensics
andInvestigation industry which includes Team ofyoung and dynamic Solutions Specialists.
Asan organization we have worked on more than20,000 individuals and corporate clients in
thelast 15 years. We have also chaired anddelivered keynote addresses to variousGovernment
and Corporate forums.
We are on the panel of various Universities andGovernment panels, in matters related toCyber
Security, Cyber Forensics and CyberLaw.
2
Inspiration
Mr. Rohan Nyayadhish is one of India's renowned DigitalForensics, Cyber Security, and Fraud
Investigation Expert.Through his specialized aptitude in the industry, he leads theway with grit,
enthusiasm, and a never-ending passion drivenby his accrued professional experience of over
15+ years. Withhis team, he has successfully consulted more than 20,000Individual and
Corporate Clients across the globe through hisunique ventures.
Cloud Computing,
• Rohan Nyayadhish
• Founder & CMD
• CISA & Lead Auditor
• Forensic Examiner
• Cyber Crime Investigator
3
Company Goals
• Vision
Your Digital Security is our Priority . We shall do our utmost toensure this.
• Mission
The rate of cyber-attacks has surged considerably, primarily dueto lack of knowledge of the
existing vulnerabilities in anenterprise's digital architecture. The current circumstances
havebrought in additional demands to protect and secure the digitalassets from cyber attackers.
Thus, with the aim of addressing this dire crisis, we seeourselves at the frontiers defending our
esteemed customers by helping them to protect their digitalassets at all the times.
Digital Task Force’s mission is to be a global solution provider forDigital and Cyber security
requirements for enterprises and helpthem secure their digital assets. We strive to be
uniquelypositioned to address our clients digital security and forensicsrequirements by virtue of
our expertise, experience, innovativecomprehensive solutions and exclusive partnerships.
DTF Offerings
4
• Insurance Claim Investigation
• Information Security Audit
• IT/ ITES Security ConsultingServices
• Vulnerability Assessment &Penetration Testing
• Cyber Advocacy
• Expert Witness & TestimonyServices
• All types of Litigation services andsupport including Civil, Criminal,Corporate,
Family, IntellectualProperty Rights, etc.
5
Drafting & Implementation of IS Polices
Specialized Service
• Cyber Crime Investigation
• Social Engineering Services
• Incident Response & Malware Analysis
• Managed Security Service
• SOC as a Service
• Forensics as a Service
• Enterprise Application Development
• Virtual CISO, CIO, CTO
• Fraud Investigation and Management System
6
1.2 Abstract
This abstract presents a comprehensive overview of the website development project tailored
for Femex Housekeeping Material Management. The project aims to provide a user-friendly
platform for ordering housekeeping materials, incorporating features such as user
authentication, product management, order processing, and administrative functionalities.
Key Features:
• User Authentication and Registration: The website enables users to securely register and
log in, allowing them to access personalized features and maintain account information.
• Shopping Cart and Order Management: Users can conveniently add desired items to
their shopping cart, review their selections, and proceed to checkout for order placement.
Order management tools facilitate real-time tracking of order status and history.
• Secure Payment Processing: Integration with trusted payment gateways enables users to
make secure payments using various methods, ensuring a seamless checkout experience.
• Invoice Generation and PDF Creation: Upon order completion, the system automatically
generates invoices detailing the purchased items and transaction details. Admins can
download invoices in PDF format for record-keeping and financial reporting purposes.
7
• Order Tracking and Delivery Management: Admins can track the status of all orders in
real-time, from processing to delivery. They can efficiently manage logistics and
coordinate with delivery personnel to ensure timely order fulfillment.
The Femex Housekeeping Material Website development project offers a robust solution for
facilitating the procurement of housekeeping materials, catering to both user needs and
administrative requirements. By incorporating advanced functionalities and user-centric design
principles, the website aims to streamline operations, enhance customer satisfaction, and drive
business growth for Femex.
8
1.3 Existing System and Need for System
• Existing System:
Currently, Femex relies on manual processes for housekeeping material procurement and
management. Customers may place orders via phone calls or emails, which are then manually
processed by staff members. This manual approach leads to inefficiencies, such as delays in
order processing, errors in order fulfillment, and difficulty in tracking order status. Additionally,
there is limited visibility into inventory levels and sales data, making it challenging for
management to make informed decisions.
• Automation and Efficiency: The existing manual processes are time-consuming and
prone to errors. Implementing an automated system will streamline operations by
automating tasks such as order processing, inventory management, and invoicing. This
will improve efficiency and accuracy while reducing the workload on staff.
• Inventory Management: With an automated system, Femex will have better visibility
into inventory levels and product availability. This will enable more effective inventory
management, reducing instances of stockouts and ensuring timely replenishment of
housekeeping materials.
• Order Tracking and Transparency: The new system will provide customers with real-
time updates on the status of their orders, improving transparency and reducing the need
for customers to follow up with inquiries. Admins will also have access to
comprehensive order tracking features, allowing them to monitor order progress and
ensure timely delivery.
9
• Administrative Control: Admins will have access to a centralized dashboard where they
can manage products, update inventory, track orders, and generate invoices. This
centralized control will improve administrative oversight and facilitate better decision-
making.
10
1.4 Scope of System
Scope of System:
• Inventory management tools enable admins to track stock levels and receive alerts for
low inventory.
11
• Invoice generation and management functionalities are provided.
• Reporting and Analytics:
• Reporting tools provide insights into sales data, order trends, and inventory turnover.
• Admins can generate reports to analyze user behavior, product performance, and
financial metrics.
• Communication and Notifications:
• Email notifications are sent to users for order confirmation, payment status updates,
and delivery tracking.
• Admins receive notifications for new orders, low inventory alerts, and other relevant
updates.
• Customer Support:
• Helpdesk or support ticket system enables users to reach out for assistance or inquiries.
• FAQs and user guides are provided to address common queries and concerns.
• Security and Data Privacy:
• The system employs robust security measures to protect user data and ensure secure
transactions.
• Compliance with data privacy regulations such as GDPR or CCPA is ensured.
• Scalability and Future Enhancements:
• The system is designed to be scalable to accommodate future growth and expansion.
• Additional features and functionalities can be added based on user feedback and
business requirements.
The scope outlined above encompasses the key features and functionalities of the website
development project for Femex housekeeping material management, aimed at providing a
seamless and efficient user experience while facilitating effective administrative control and
management of housekeeping materials
12
1.5 Operating Environment - Hardware and Software
Hardware Requirements:
• Web Server:
• Processor: Dual-core or higher
• RAM: 4GB or higher
• Storage: Sufficient disk space for storing website files, databases, and backups
• Network Interface: Stable internet connection for hosting the website
• Database Server:
• Processor: Dual-core or higher
• RAM: 4GB or higher
• Storage: Adequate storage space for housing the database
• Database Software: MySQL or other relational database management system
(RDBMS)
• Client Devices:
• Desktops, laptops, tablets, and smartphones with modern web browsers such as
Google Chrome, Mozilla Firefox, Safari, or Microsoft Edge
• Stable internet connection for accessing the website
• Software Requirements:
Operating System:
• Web Server: Linux (e.g., Ubuntu, CentOS) or Windows Server
• Database Server: Compatible with the chosen operating system
• Web Server Software:
• Apache or Nginx for serving web pages
• PHP support enabled for server-side scripting
• Database Management System:
13
• MySQL or MariaDB for storing and managing website data
• Development Technologies:
• HTML (HyperText Markup Language) for creating web page structure
• CSS (Cascading Style Sheets) for styling and layout
• JavaScript for client-side interactivity and dynamic content
• PHP (Hypertext Preprocessor) for server-side scripting and backend logic
Development Tools:
• Text editor or integrated development environment (IDE) for writing and editing code
(e.g., Visual Studio Code, Sublime Text)
• Version control system (e.g., Git) for managing source code and collaborati
14
1.6 Brief Description of Technology Used
This system will use encrypted cloud data with multiple keys, in which the DO and each QU
all hold their own different keys, and do not share them with each other.
PHP
• PHP started out as a small open-source project that evolved as more and more people
found out how useful it was. Rasmus Lerdorf unleashed the first version of PHP way
back in 1994. PHP is a recursive acronym for "PHP: Hypertext Preprocessor".
• PHP is a server-side scripting language that is embedded in HTML. It is used to manage
dynamic content, databases, session tracking, even build entire e-commerce sites.
• It is integrated with a number of popular databases, including MySQL, PostgreSQL,
Oracle, Sybase, Informix, and Microsoft SQL Server.
• PHP is pleasingly zippy in its execution, especially when compiled as an Apache module
on the Unix side. The MySQL server, once started, executes even very complex queries
with huge result sets in record-setting time.
• PHP supports a large number of major protocols such as POP3, IMAP, and LDAP. PHP4
added support for Java and distributed object architectures (COM and CORBA), making
n-tier development a possibility for the first time. PHP is forgiving: PHP language tries
to be as forgiving as possible.
• PHP Syntax is C-Like.
15
HTML/CSS
• HTML (the Hypertext Markup Language) and CSS (Cascading Style Sheets) are two of
the core technologies for building Web pages. HTML provides the structure of the page,
CSS the (visual and aural) layout, for a variety of devices. Along with graphics and
scripting, HTML and CSS are the basis of building Web pages and Web Applications.
• HTML is the language for describing the structure of Web pages. authors the means to:
Publish online documents with headings, text, tables, lists, photos, etc. Retrieve online
information via hypertext links, at the click of a button.
• Design forms for conducting transactions with remote services, for use in searching for
information, making reservations, ordering products, etc. Include spread-sheets, video
clips, sound clips, and other applications directly in their documents. With HTML,
authors describe the structure of pages using markup. The elements of the language label
pieces of content such as ―paragraph, ‖ ―list, ‖ ―table, ‖ and so on. HTML is the
foundation of web development and is essential for creating web pages and applications.
It is often used alongside CSS and JavaScript to create interactive and visually appealing
websites. There are numerous online resources and tutorials available to learn HTML,
and it's an excellent starting point for anyone interested in web development.
What is CSS?
• CSS is the language for describing the presentation of Web pages, including colors,
layout, and fonts. It allows one to adapt the presentation to different types of devices,
such as large screens, small screens, or printers. CSS is independent of HTML and can
be used with any XML-based markup language. The separation of HTML from CSS
makes it easier to maintain sites, share style sheets across pages, and tailor pages to
different environments. This is referred to as the separation of structure (or: content)
from presentation.
16
• CSS is a powerful tool for web developers, allowing them to create visually appealing
and responsive web pages. It works in conjunction with HTML and JavaScript to create
dynamic and interactive web experiences. Learning CSS is crucial for anyone involved
in web development, and there are numerous resources available online for learning and
mastering CSS.
JavaScript
VS Code IDE
17
editing, debugging, testing, and version control integration. Here is some information
about Vs Code IDE:
• Features: Vs Code IDE offers a wide range of features to enhance the development
process. Some of the key features include:
• Code editing with features like syntax highlighting, code completion, and code
templates.
• Built-in debugger for step-by-step code debugging Integrated testing and profiling tools
for performance analysis. Version control integration with popular systems like Git,
Subversion, and Mercurial. Plug-in architecture that allows extending the functionality
with a vast ecosystem of plugins. Project management and build automation tools.
Support for multiple programming languages through language- specific plugins.
My SQL
18
CHAPTER 2:
PROPOSED SYSTEM
19
2.1 Study of Similar Systems
A study of similar systems can provide valuable insights and best practices for the website
development project for Femex housekeeping material management. Here are some examples
of existing systems that share similarities with the proposed project:
Amazon.com:
• Amazon offers a comprehensive e-commerce platform where users can register,
browse products, add items to their cart, and make payments.
• Users can create wishlists, track orders, and receive personalized recommendations.
• Admins have access to tools for adding products, managing inventory, and tracking
orders. They can also generate invoices and track deliveries.
eBay:
• eBay allows users to register, list products for sale, and browse listings.
• Users can add items to their cart, make payments, and track orders.
• Admins can manage product listings, monitor sales, and handle order fulfillment.
Shopify:
• Shopify is a popular e-commerce platform that enables users to create online stores.
• Users can register, browse products, add items to their cart, and complete purchases.
• Admins have access to a dashboard for managing products, orders, and customers.
They can also generate invoices and track shipments.
• User Experience (UX): Prioritize creating a seamless and intuitive user experience to
facilitate easy navigation, product discovery, and checkout process.
• Mobile Responsiveness: Ensure the website is optimized for mobile devices to cater to
users who prefer shopping on smartphones and tablets.
20
• Payment Gateway Integration: Offer multiple payment options and integrate with
trusted payment gateways to facilitate secure and convenient transactions.
Order Management: Implement robust order management functionalities for users to track
orders and for admins to manage order processing and fulfillment efficiently.
Inventory Management: Develop tools for admins to manage product listings, track inventory
levels, and receive alerts for low stock items.
Reporting and Analytics: Incorporate reporting and analytics features to provide insights into
user behavior, sales performance, and inventory turnover, empowering admins to make data-
driven decisions.
21
2.2 Feasibility Study
1. Technical Feasibility:
• Skills and Expertise: Femex needs to ensure that they have or can hire the technical
expertise required to develop and maintain the website using HTML, CSS, JavaScript,
PHP, and database management systems like MySQL
• Technology Stack: The chosen technology stack (HTML, CSS, JS, PHP) is widely used
and supported, making it feasible to find resources, tools, and documentation.
• Integration: The feasibility of integrating payment gateways, PDF generation libraries,
and other third-party services should be assessed to ensure compatibility and ease of
implementation.
2. Economic Feasibility:
• Cost of Development: Femex needs to consider the costs associated with website
development, including hiring developers, purchasing domain and hosting services, and
any third-party integrations.
• Return on Investment (ROI): The potential increase in sales and operational efficiency
resulting from the website should outweigh the development and maintenance costs over
time.
• Budget Allocation: Femex should allocate a budget for ongoing maintenance, updates,
and improvements to ensure the long-term success of the website.
3. Operational Feasibility:
• User Adoption: Femex needs to assess the willingness of users to adopt the online
platform for purchasing housekeeping materials. User training and support may be
necessary to facilitate adoption.
• Operational Processes: The website should complement existing operational processes
and workflows for order processing, inventory management, and customer support.
22
• Scalability: The website should be scalable to accommodate increasing traffic,
transactions, and product offerings as Femex grows.
4. Schedule Feasibility:
• Compliance: Femex needs to ensure compliance with relevant laws and regulations
governing e-commerce, data protection, and online payments in their jurisdiction.
• Terms of Service and Privacy Policy: Femex should draft and publish clear terms of
service and privacy policy documents outlining user rights, responsibilities, and data
handling practices.
• Conclusion:
• Overall, the feasibility study indicates that developing a website for Femex
housekeeping material management is technically feasible, economically viable,
operationally feasible, and compliant with legal and regulatory requirements. With
careful planning, budgeting, and execution, Femex can successfully implement the
website to enhance customer experience, streamline operations, and drive business
growth.
23
2.3 Objectives of Proposed System
24
Implement features for users to track the status of their orders in real-time.
Enable admins to monitor order progress, track deliveries, and ensure timely fulfillment.
Ensure flexibility to accommodate new features, integrations, and updates based on evolving
business needs and technological advancements.
By achieving these objectives, the proposed system will enable Femex to streamline
housekeeping material management, enhance user satisfaction, and drive business growth
through efficient online operations.
25
2.4 Users of System
• Customers:
➢ Registered Users: Customers who have created accounts on the website to access
personalized features and maintain order history.
➢ Guest Users: Visitors who browse the website and make purchases without creating
accounts.
➢ Buyers: Users who browse products, add items to their cart, make payments, and track
order status.
➢ Administrators:
➢ Product Managers: Admins responsible for managing product listings, including
adding new products, updating existing listings, and removing outdated items.
➢ Inventory Managers: Admins tasked with monitoring inventory levels, receiving alerts
for low stock items, and managing stock replenishment.
➢ Order Managers: Admins responsible for processing orders, generating invoices, and
coordinating order fulfillment and delivery.
➢ Financial Managers: Admins who oversee financial aspects such as payment
processing, revenue tracking, and financial reporting.
➢ System Administrators: Admins responsible for overall system maintenance, security,
and performance optimization.
➢ Roles and Responsibilities:
• Customers:
➢ Registering and logging in to the website.
➢ Browsing products, adding items to a wishlist, and adding items to the cart.
➢ Proceeding to checkout, making payments, and reviewing order history.
➢ Downloading invoices and tracking order status.
➢ Administrators:
26
➢ Adding new products to the system and updating existing product listings.
➢ Monitoring inventory levels, receiving notifications for low stock items, and managing
stock replenishment.
➢ Processing orders, generating invoices, and managing order fulfillment.
➢ Overseeing financial aspects such as payment processing, revenue tracking, and
financial reporting.
➢ Maintaining the overall system, ensuring security, and optimizing performance.
➢ Interactions with the System:
• Customers:
➢ Interact with the website to browse products, add items to the cart, and complete
transactions.
➢ Access their accounts to view order history, update personal information, and manage
preferences.
➢ Receive email notifications for order confirmations, shipping updates, and other
relevant information.
➢ Administrators:
➢ Log in to the admin dashboard to access various management functionalities.
➢ Add new products, update inventory levels, and manage product listings.
➢ Process orders, generate invoices, and track order status.
➢ Monitor system performance, address technical issues, and ensure data security and
compliance.
➢ By catering to the needs and responsibilities of both customers and administrators, the
system ensures smooth and efficient management of housekeeping materials for Femex,
enhancing user satisfaction and operational effectiveness.
27
CHAPTER 3:
ANALYSIS AND DESIGN
28
3.1 System Requirements
Web Server:
• Apache or Nginx web server software.
• PHP (Hypertext Preprocessor) support enabled for server-side scripting.
• MySQL or MariaDB database management system for storing website data.
Client Devices:
• Desktop computers, laptops, tablets, and smartphones with modern web browsers
such as Google Chrome, Mozilla Firefox, Safari, or Microsoft Edge.
• Responsive design for optimal viewing on different screen sizes and resolutions.
Development Technologies:
• HTML (HyperText Markup Language) for creating web page structure.
• CSS (Cascading Style Sheets) for styling and layout.
• JavaScript for client-side interactivity and dynamic content.
• PHP for server-side scripting and backend logic.
29
3.2 Entity Relationship Diagram (ERD)
1. **Entity**: Represents a real-world object or concept with attributes that describe its
properties. Entities are depicted as rectangles with the entity name written inside. For
example, in a university database, entities could include "Student," "Course," "Professor,"
etc.
5. **Cardinality**: Describes the maximum number of instances of one entity that can be
associated with a single instance of another entity. It is represented using notation such as
"1" (one), "M" (many), or specific numeric values.
30
7. **Foreign Key**: Represents an attribute in one entity that refers to the primary key of
another entity, establishing a relationship between them. Foreign keys are depicted as
dashed lines connecting the attribute in one entity to the primary key in another entity.
ERDs help database designers and developers to visualize the structure of a database and
understand the relationships between different entities. They are used during the database
design process to model the data requirements of a system, ensuring that the database
design is efficient, normalized, and meets the needs of the application. ERDs are also
valuable for communicating the database structure to stakeholders and for documenting
the database schema.
31
32
3.3 Table Structure
33
2. Table Name- Product
34
3. Table Name- Categories
35
4. Table Name- Sub-Categories
36
5. Table Name- Orders
37
6. Table Name- Cart
38
3.4 Use Case Diagrams
A use case diagram is a type of behavioral diagram in the Unified Modeling Language
(UML) that represents the functionality or behavior of a system from the perspective of its
users. It provides a high-level view of the system's functionalities and the interactions
between users (actors) and the system itself. Here's a detailed description of the key
elements typically found in a use case diagram:
2. **Use Case**: Represents a specific functionality or behavior that the system provides
to its users. A use case describes a sequence of actions performed by the system in
collaboration with one or more actors to achieve a specific goal. Use cases are depicted as
ovals inside the system boundary, with a name describing the functionality they represent.
39
6. **Extend Relationship**: Represents a relationship between two use cases, indicating
that one use case extends the behavior of another use case under certain conditions. It is
typically used to model optional or exceptional behavior that may occur under specific
circumstances. Extend relationships are depicted as dashed lines with an arrow pointing
from the extending use case to the extended use case.
40
Use Case Symbol & Their Meaning
41
Global Use Case:
42
Use Case Description :-
Detail This use case diagram describes the whole website system of the
Description procedure.
Main Flow User can edit, delete and profile and view, select, add to cart,
wishlist
and order product
43
Login Use Case
44
Use Case Description :-
Detail User and Admin both can login into the system
Description
45
Registration Use Case:
46
Use Case Description :-
Actors User
Detail This use case diagram describes the registration flow for an User
Description
Main Flow User has rights of registration . Valid information can be filling in
form
Post condition All the users are get their Mail id and password
47
Add New Product Use Case :
48
Use Case Description :-
Actors Admin
Detail This use case diagram describes the how to add new product from
Description admin panel
Main Flow
After successful login admin can manage the products
49
Add Category Use Case :
50
Use Case Description :-
Actors Admin
Detail This use case diagram describes the how to add new category from
Description admin panel
Main Flow After login admin and add , update , delete category
51
Add sub category :
52
Use Case Description :-
Actors Admin
Detail This use case diagram describes the how to add new sub category
Description from admin panel
Main Flow After login admin and add , update , delete subcategory
53
Add to Cart Use Case :
54
Use Case Description :-
Actors User
Detail User can first login in the system and then they can able to add
Description product in add to cart
Main Flow After login user can add product in cart and then able to buy it
55
Order Use Case
56
Use Case Description :-
Actors User
Detail User must be login in the system then he/she can select product and
Description add in the cart and checkout . Payment option selection is compulsory
for buying product
Pre-condition User have an own account for ordering product
Main Flow Add to cart product and order the product and make payment
57
Payment Use Case
58
Use Case Description :-
Detail User can login and buy product and make payment
Description
Main Flow Add to cart product and order the product and make payment
59
Forget Password Use Case
60
Use Case Description :-
Actors User
Detail User can reset password via reset password link revied on email
Description
Post condition After reset password user can login with new password
61
Invoice Use Case
62
Use Case Description :-
Detail User can login and buy product and print invoice
Description
Main Flow Add to cart product and order the product and make payment and
then print invoice
Post condition After making payment user can print invoice
63
3.5 Class Diagram
Certainly! A class diagram is a type of static structure diagram in the Unified Modeling
Language (UML) that represents the structure and relationships of classes within a system.
Here's a description of the key elements typically found in a class diagram:
1. Class: The primary building block of a class diagram. It represents a blueprint for
creating objects with similar properties and behaviors. A class is depicted as a
rectangle with three compartments: the top compartment contains the class name,
the middle compartment lists the class attributes (data members or fields), and the
bottom compartment shows the class methods (operations or functions).
2. Association: Represents a relationship between two or more classes, indicating that
objects of one class are connected to objects of another class. Associations are
depicted as solid lines connecting the classes involved, with optional arrowheads
indicating the direction of the relationship.
3. Multiplicity: Specifies the number of instances of one class that are related to a
single instance of another class. It is represented near the association line using
notation such as "1", "*", "0..1", etc., indicating one, many, zero or one, etc.
4. Inheritance (Generalization): Represents an "is-a" relationship between classes,
where one class (subclass or child class) inherits attributes and behaviors from
another class (superclass or parent class). Inheritance is depicted using a solid line
with a hollow arrowhead pointing from the subclass to the superclass.
5. Interface: Represents a contract that specifies a set of methods that a class must
implement. Interfaces are depicted similarly to classes but with a stereotype
"<<interface>>" and dashed lines connecting them to the implementing classes.
6. Dependency: Represents a weaker form of relationship between classes, where one
class relies on another class. Dependencies are depicted as dashed lines with an
arrowhead pointing from the dependent class to the independent class.
7. Aggregation: Represents a "has-a" relationship between classes, where one class is
composed of other classes. Aggregation is depicted as a solid line with a hollow
diamond at the aggregate end.
8. Composition: Similar to aggregation but with stronger ownership semantics,
indicating that the composed objects cannot exist without the container object.
Composition is depicted as a solid line with a filled diamond at the composite end.
64
65
3.6 Activity Diagram
2. **Initial Node**: Represents the starting point of the activity diagram. It is depicted as
a solid circle with an arrow pointing to the first activity.
3. **Final Node**: Represents the end point of the activity diagram. It is depicted as a
solid circle surrounded by a hollow circle.
4. **Action**: Represents a single step or atomic task within the process. Actions are
depicted as rectangles with rounded corners and labels describing the task.
6. **Decision Node (Decision)**: Represents a point in the process where the flow can
take different paths depending on certain conditions. It is depicted as a diamond shape with
one incoming flow and multiple outgoing flows, each labeled with a condition.
7. **Merge Node**: Represents a point where multiple alternative flows converge back
into a single flow. It is depicted as a diamond shape with multiple incoming flows and one
outgoing flow.
66
8. **Fork Node**: Represents a point where the flow splits into multiple parallel paths,
indicating that multiple activities can be performed concurrently. It is depicted as a bar
with one incoming flow and multiple outgoing flows.
9. **Join Node**: Represents a point where multiple parallel flows converge back into a
single flow after being forked. It is depicted as a bar with multiple incoming flows and one
outgoing flow.
10. **Object Node (Data)**: Represents data or objects flowing through the activities. It
is depicted as a rectangle with a horizontal line at the bottom, and it can be used to show
input/output data or objects associated with actions.
Activity diagrams help to visualize the flow of activities and decision points within a
system or process, making it easier to understand and analyze complex workflows. They
are widely used in business process modeling, software development, and system analysis
to capture and communicate the behavior of a system.
67
Global Activity Diagram
68
Login Activity Diagram
Home
Login
verify
Valid
69
Invoice Generation activity diagram
Success
70
Registration Activity Diagram
Home
Signup
Enter Details
Invalid
validate
Valid
Store Details
71
Add New Product Activity Diagram
Home
Admin Login
Select category
Select
Subcategory
Enter New
Product Details
Notavailable
is
Available
Upload/Add Product
Show error
msg
72
Add to Cart Activity Diagram
Success
Home Login valida
Fail to login
View
73
Category Activity Diagram
Successful login
Fail to login
Enter Select
Details
Exit
74
Manage Orders Activity Diagram
Successful login
Home valid
Order Order
Exit
75
Payment Activity Diagram
Success
COD
CC
76
3.7 Collaboration Daigram
5. **Return Message**: Represents the response message sent by an object back to the
sender. It is depicted as an arrow returning from the recipient object to the sender object,
typically labeled with the name of the operation being performed.
77
7. **Collaboration Use**: Represents the use of one collaboration diagram within
another. It is depicted as a dashed arrow pointing from the using collaboration to the used
collaboration, indicating the reuse of the behavior defined in the used collaboration.
78
3.8 Sequence Daigram
A sequence diagram is a type of interaction diagram in the Unified Modeling Language
(UML) that illustrates the interactions and order of messages exchanged between objects
or components within a system over time. It emphasizes the chronological flow of
interactions, making it particularly useful for understanding the sequence of events and the
dynamic behavior of a system. Here's a detailed description of the key elements typically
found in a sequence diagram:
1. **Lifeline**: Represents the lifespan of an object or participant within the system. Each
lifeline is depicted as a vertical dashed line, typically labeled with the name of the object
or participant it represents. The lifeline shows the period during which the object exists
and participates in interactions.
5. **Return Message**: Represents the response message sent by an object back to the
sender. It is depicted as an arrow returning from the recipient object to the sender object,
typically labeled with the name of the operation being performed.
79
7. **Interaction Use**: Represents the use of one sequence diagram within another. It is
depicted as a dashed arrow pointing from the using sequence diagram to the used sequence
diagram, indicating the reuse of the sequence of interactions defined in the used diagram.
80
Global Sequence Diagram
Login/re
station()
Authentication()
ProductDetail()
4,Request()
6.Response()
SendProduct
Addtocart()
7.Order()
Paymentonline()
Authenticate()
10.SendDetails()
11. Uservalidate()
12. Payment()
13. Payment offline
14.Generate slip
15.Payment
16.print
Confirm
81
Login Sequence Diagram
:User :Server
1.LoginDetails ()
Authentication()
Login()
4.Authentication()
82
Register Sequence Diagram
: User :Server
Registation()
Authentication()
3.Login()
4.Authentication()
83
Forget Password Sequence Diagram
:User :Server
1.forgetpassword ()
2.Authentication()
3.EnterNewpassword()
4.Authentication()
84
Add Product to cart Sequence Diagram
Registation()
Authentication()
Productdetails()
4.request()
5.response()
6.SendProduct
Details()
7.addtocart()
8.Updatecart()
85
Add New Product Sequence Diagram
1.Login ()
2.Authentication()
3.AddNewProduct()
4.request()
5.response()
6.SaveNewproduct ()
86
Add New Category Sequence Diagram
Login ()
Authentication()
AddNewCategory()
request()
response()
6.SaveNewCatagory ()
87
Add New Sub- Category Sequence Diagram
1.Login ()
2.Authentication()
3.SelectCategory()
4.AddNew SubCategory( )
request()
response()
6.SaveNewCatagory ()
88
PaymentSequence Diagram
Login/regi
station()
Authentication()
3.ProductDetail() 4.Request()
Response()
SendProduct()
Addtocart()
7.Order()
8.Paymentonline()
9.Authenticate()
10.SendDetails()
11.PaymentConfirm()
89
Invoice Sequence Diagram
Login/register()
Authentication()
5.Response()
SendProduct()
Addtocart()
8.Order()
9.Paymentonline()
10.Authenticate()
11.SendDetails()
Uservalidate()
Payment
14.Payment offline
15.Generate slip()
Pri
Invoice()
Confirm()
90
3.9 Sample Input and Output Screens
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
CHAPTER 4:
CODING
127
4.1 Algorithms
• Here are some algorithms that could be implemented in the website
development project for Femex housekeeping material management:
128
• Monitor inventory levels and send notifications to admins when stock
reaches a predefined threshold.
• Invoice Generation Algorithm:
• Retrieve order details from the database and format them into an invoice
template.
• Use a PDF generation library in PHP to convert the invoice data into a
downloadable PDF file.
• Order Tracking Algorithm:
• Allow users to track the status of their orders by querying the database for
order status updates.
• Display the current status of each order to the user, such as "Order
Placed," "Payment Received," "Order Shipped," etc.
• Admin Product Management Algorithm:
• Provide admins with a form to add new products or update existing
product listings.
• Validate input data and store product details in the database.
• Admin Order Management Algorithm:
• Allow admins to view a list of all orders, filter orders by status, and
update order status as needed (e.g., mark as shipped, delivered).
• Provide functionality for admins to generate invoices and download them
as PDF files.
• Delivery Tracking Algorithm:
• Integrate with a delivery tracking service or API to retrieve real-time
delivery status updates for each order.
• Display the delivery status to admins and users on the website.
129
4.2 Code
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_GET['action']) && $_GET['action']=="add"){
$id=intval($_GET['id']);
if(isset($_SESSION['cart'][$id])){
$_SESSION['cart'][$id]['quantity']++;
}else{
$sql_p="SELECT * FROM products WHERE id={$id}";
$query_p=mysqli_query($con,$sql_p);
if(mysqli_num_rows($query_p)!=0){
$row_p=mysqli_fetch_array($query_p);
$_SESSION['cart'][$row_p['id']]=array("quantity" => 1, "price" => $row_p['productPrice']);
}else{
$message="Product ID is invalid";
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>FEMEX-Om Industries</title>
130
<!-- Customizable CSS -->
<link rel="stylesheet" href="assets/css/main.css">
<link rel="stylesheet" href="assets/css/orange.css">
<link rel="stylesheet" href="assets/css/owl.carousel.css">
<link rel="stylesheet" href="assets/css/owl.transitions.css">
<!--<link rel="stylesheet" href="assets/css/owl.theme.css">-->
<link href="assets/css/lightbox.css" rel="stylesheet">
<link rel="stylesheet" href="assets/css/animate.min.css">
<link rel="stylesheet" href="assets/css/rateit.css">
<link rel="stylesheet" href="assets/css/bootstrap-select.min.css">
</head>
<body class="cnt-home">
<div class="full-width-slider">
<div class="item full-width-slider" style="background-image:
url(https://i.postimg.cc/C1dRngrt/Background.jpg);">
</div><!-- /.item -->
</div><!-- /.full-width-slider -->
</div>
</div><!-- .col -->
</div>
</div><!-- .col -->
</div>
</div><!-- .col -->
</div><!-- /.row -->
</div><!-- /.info-boxes-inner -->
?>
<div class="product">
<div class="product-image">
<div class="image">
<a href="product-details.php?pid=<?php echo htmlentities($row['id']);?>">
<img src="admin/productimages/<?php echo htmlentities($row['id']);?>/<?php echo
htmlentities($row['productImage1']);?>" data-echo="admin/productimages/<?php echo
htmlentities($row['id']);?>/<?php echo htmlentities($row['productImage1']);?>" width="180"
height="300" alt=""></a>
</div><!-- /.image -->
134
<div class="product-price">
<span class="price">
Rs.<?php echo htmlentities($row['productPrice']);?> </span>
<span class="price-before-discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?> </span>
?>
135
<div class="product">
<div class="product-image">
<div class="image">
<a href="product-details.php?pid=<?php echo htmlentities($row['id']);?>">
<img src="admin/productimages/<?php echo htmlentities($row['id']);?>/<?php echo
htmlentities($row['productImage1']);?>" data-echo="admin/productimages/<?php echo
htmlentities($row['id']);?>/<?php echo htmlentities($row['productImage1']);?>" width="200"
height="300" alt=""></a>
</div><!-- /.image -->
<div class="product-price">
<span class="price">
Rs.<?php echo htmlentities($row['productPrice']);?> </span>
<span class="price-before-discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?></span>
</div>
</div>
<?php if($row['productAvailability']=='In Stock'){?>
<div class="action"><a href="index.php?page=product&action=add&id=<?php echo
$row['id']; ?>" class="lnk btn btn-primary">Add to Cart</a></div>
<?php } else {?>
<div class="action" style="color:red">Out of Stock</div>
<?php } ?>
</div>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</div>
137
<!-- ============================================== TABS
============================================== -->
<div class="sections prod-slider-small outer-top-small">
<div class="row">
<div class="col-md-6">
<section class="section">
<h3 class="section-title"></h3>
<div class="owl-carousel homepage-owl-carousel custom-carousel outer-top-xs owl-
theme" data-item="2">
<?php
$ret=mysqli_query($con,"select * from products where category=4 and subCategory=4");
while ($row=mysqli_fetch_array($ret))
{
?>
<div class="item item-carousel">
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
<a href="product-details.php?pid=<?php echo htmlentities($row['id']);?>"><img
src="admin/productimages/<?php echo htmlentities($row['id']);?>/<?php echo
htmlentities($row['productImage1']);?>" data-echo="admin/productimages/<?php echo
htmlentities($row['id']);?>/<?php echo htmlentities($row['productImage1']);?>" width="180"
height="300"></a>
</div><!-- /.image -->
</div><!-- /.product-image -->
<div class="product-info text-left">
<h3 class="name"><a href="product-details.php?pid=<?php echo
htmlentities($row['id']);?>"><?php echo htmlentities($row['productName']);?></a></h3>
<div class="rating rateit-small"></div>
<div class="description"></div>
<div class="product-price">
<span class="price">
Rs. <?php echo htmlentities($row['productPrice']);?> </span>
<span class="price-before-discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?></span>
</div>
</div>
<?php if($row['productAvailability']=='In Stock'){?>
<div class="action"><a href="index.php?page=product&action=add&id=<?php echo
$row['id']; ?>" class="lnk btn btn-primary">Add to Cart</a></div>
<?php } else {?>
<div class="action" style="color:red">Out of Stock</div>
<?php } ?>
</div>
138
</div>
</div>
<?php }?>
</div>
</section>
</div>
<div class="col-md-6">
<section class="section">
<h3 class="section-title"></h3>
<div class="owl-carousel homepage-owl-carousel custom-carousel outer-top-xs owl-
theme" data-item="2">
<?php
$ret=mysqli_query($con,"select * from products where category=4 and subCategory=6");
while ($row=mysqli_fetch_array($ret))
{
?>
<div class="item item-carousel">
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
<a href="product-details.php?pid=<?php echo htmlentities($row['id']);?>"><img
src="admin/productimages/<?php echo htmlentities($row['id']);?>/<?php echo
htmlentities($row['productImage1']);?>" data-echo="admin/productimages/<?php echo
htmlentities($row['id']);?>/<?php echo htmlentities($row['productImage1']);?>" width="300"
height="300"></a>
</div><!-- /.image -->
</div><!-- /.product-image -->
<div class="product-info text-left">
<h3 class="name"><a href="product-details.php?pid=<?php echo
htmlentities($row['id']);?>"><?php echo htmlentities($row['productName']);?></a></h3>
<div class="rating rateit-small"></div>
<div class="description"></div>
<div class="product-price">
<span class="price">
Rs .<?php echo htmlentities($row['productPrice']);?> </span>
<span class="price-before-discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?></span>
</div>
</div>
<?php if($row['productAvailability']=='In Stock'){?>
<div class="action"><a href="index.php?page=product&action=add&id=<?php echo
$row['id']; ?>" class="lnk btn btn-primary">Add to Cart</a></div>
<?php } else {?>
<div class="action" style="color:red">Out of Stock</div>
139
<?php } ?>
</div>
</div>
</div>
<?php }?>
</div>
</section>
</div>
</div>
</div>
<!-- ============================================== TABS : END
============================================== -->
<!-- Our Best Clients -->
<center>
</div>
</div>
<?php include('includes/footer.php');?>
<script src="assets/js/jquery-1.11.1.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-hover-dropdown.min.js"></script>
<script src="assets/js/owl.carousel.min.js"></script>
<script src="assets/js/echo.min.js"></script>
<script src="assets/js/jquery.easing-1.3.min.js"></script>
<script src="assets/js/bootstrap-slider.min.js"></script>
<script src="assets/js/jquery.rateit.min.js"></script>
<script type="text/javascript" src="assets/js/lightbox.min.js"></script>
<script src="assets/js/bootstrap-select.min.js"></script>
<script src="assets/js/wow.min.js"></script>
<script src="assets/js/scripts.js"></script>
<!-- For demo purposes – can be removed on production -->
<script src="switchstylesheet/switchstylesheet.js"></script>
<script>
$(document).ready(function(){
$(".changecolor").switchstylesheet( { seperator:"color"} );
$('.show-theme-options').click(function(){
$(this).parent().toggleClass('open');
return false;
});
});
140
$(window).bind("load", function() {
$('.show-theme-options').delay(2000).trigger('click');
});
</script>
<!-- For demo purposes – can be removed on production : End -->
</body>
</html>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
// Code user Registration
if(isset($_POST['submit']))
{
$name=$_POST['fullname'];
$email=$_POST['emailid'];
$contactno=$_POST['contactno'];
$password=md5($_POST['password']);
$query=mysqli_query($con,"insert into users(name,email,contactno,password)
values('$name','$email','$contactno','$password')");
if($query)
{
echo "<script>alert('You are successfully register');</script>";
}
else{
echo "<script>alert('Not register something went worng');</script>";
141
}
}
// Code for User login
if(isset($_POST['login']))
{
$email=$_POST['email'];
$password=md5($_POST['password']);
$query=mysqli_query($con,"SELECT * FROM users WHERE email='$email' and
password='$password'");
$num=mysqli_fetch_array($query);
if($num>0)
{
$extra="my-cart.php";
$_SESSION['login']=$_POST['email'];
$_SESSION['id']=$num['id'];
$_SESSION['username']=$num['name'];
$uip=$_SERVER['REMOTE_ADDR'];
$status=1;
$log=mysqli_query($con,"insert into userlog(userEmail,userip,status)
values('".$_SESSION['login']."','$uip','$status')");
$host=$_SERVER['HTTP_HOST'];
$uri=rtrim(dirname($_SERVER['PHP_SELF']),'/\\');
header("location:http://$host$uri/$extra");
exit();
}
else
{
$extra="login.php";
$email=$_POST['email'];
$uip=$_SERVER['REMOTE_ADDR'];
$status=0;
$log=mysqli_query($con,"insert into userlog(userEmail,userip,status)
values('$email','$uip','$status')");
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']),'/\\');
header("location:http://$host$uri/$extra");
$_SESSION['errmsg']="Invalid email id or Password";
exit();
}
}
?>
142
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Meta -->
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<meta name="description" content="">
<meta name="author" content="">
<meta name="keywords" content="MediaCenter, Template, eCommerce">
<meta name="robots" content="all">
</head>
<body class="cnt-home">
144
<!-- ============================================== TOP MENU : END
============================================== -->
<?php include('includes/main-header.php');?>
<!-- ============================================== NAVBAR
============================================== -->
<?php include('includes/menu-bar.php');?>
<!-- ============================================== NAVBAR : END
============================================== -->
</header>
<div class="form-group">
<label class="info-title" for="exampleInputEmail2">Email Address <span>*</span></label>
<input type="email" class="form-control unicase-form-control text-input" id="email"
onBlur="userAvailability()" name="emailid" required >
<span id="user-availability-status1" style="font-size:12px;"></span>
</div>
<div class="form-group">
146
CHAPTER 5:
TESTING
147
5.1 Test Strategy
Test Strategy for Femex Housekeeping Material Management Website:
1. Scope of Testing:
• Testing will cover all aspects of the website, including functionality, usability,
performance, security, and compatibility across different devices and browsers.
• Both manual and automated testing techniques will be employed to ensure
thorough coverage.
2. Testing Types:
• Functional Testing: Verify that all features such as user registration, login,
product browsing, cart management, payment processing, admin functionalities,
and order tracking work as expected.
• Usability Testing: Evaluate the user interface for ease of navigation, clarity of
content, and overall user experience.
• Performance Testing: Assess the website's speed, responsiveness, and scalability
under different load conditions to ensure optimal performance.
• Security Testing: Identify and mitigate security vulnerabilities such as SQL
injection, cross-site scripting (XSS), and data breaches.
• Compatibility Testing: Ensure that the website functions correctly across various
devices (desktops, tablets, smartphones) and web browsers (Chrome, Firefox,
Safari, Edge).
• Regression Testing: Conduct regression tests to verify that new features or
updates do not introduce defects or break existing functionality.
3. Test Environment:
• Set up separate environments for development, testing, and production to avoid
interference and ensure a stable testing environment.
• Use testing tools and frameworks such as Selenium for automated testing and
tools like JMeter for performance testing.
4. Test Data:
• Create a comprehensive set of test data to cover various scenarios, including
different user roles, product categories, payment methods, and order statuses.
• Utilize both valid and invalid test data to verify proper error handling and
validation mechanisms.
148
5. Testing Process:
• Unit Testing: Developers will conduct unit tests for individual components and
functionalities to ensure code correctness and reliability.
• Integration Testing: Test the integration of different modules and components to
verify seamless interaction and data flow between them.
• System Testing: Perform end-to-end testing of the entire system to validate
business workflows and user journeys.
• User Acceptance Testing (UAT): Engage actual users or stakeholders to perform
UAT and gather feedback on the usability and functionality of the website.
6. Defect Management:
• Use a defect tracking system to log, prioritize, and manage reported issues
throughout the testing process.
• Ensure timely resolution of defects by assigning them to appropriate team
members and monitoring their progress.
7. Documentation:
• Maintain detailed documentation of test cases, test scenarios, test results, and
any identified defects for future reference and audit purposes.
8. Continuous Improvement:
• Continuously evaluate and refine the testing process based on lessons learned,
feedback from users and stakeholders, and industry best practices.
149
5.2 Unit Test Plan
Unit Test Plan for Femex Housekeeping Material Management Website:
1. Objective:
• The objective of unit testing is to verify the correctness and functionality of
individual components, modules, and functions of the Femex Housekeeping
Material Management website.
2. Scope:
• Unit testing will cover all server-side and client-side components implemented
in HTML, CSS, JavaScript, PHP, and any associated frameworks or libraries.
3. Components to be Tested:
• User Authentication: Register, login, logout functionalities.
• Product Management: Add, update, delete product listings.
• Cart Management: Add, remove, update items in the cart.
• Payment Processing: Integration with payment gateways, handling payment
transactions.
• Order Management: Place orders, track order status, generate invoices.
• Admin Functionality: Add, update, delete products; manage inventory; track
orders.
• PDF Generation: Create PDF invoices from order data.
• Order Tracking: Display order status to users and admins.
• Delivery Tracking: Integration with delivery tracking services to monitor order
delivery status.
4. Testing Approach:
• White-box testing techniques will be used to test each component's logic,
functionality, and error handling.
• Test cases will cover both positive and negative scenarios, including valid
inputs, invalid inputs, edge cases, and error conditions.
5. Testing Tools:
• PHPUnit for server-side (PHP) unit testing.
• Jasmine or Mocha for client-side (JavaScript) unit testing.
150
• Browser Developer Tools for manual testing and debugging of client-side
components.
6. Test Cases:
• User Authentication:
• Verify successful user registration with valid inputs.
• Verify proper error handling for invalid registration inputs.
• Test user login functionality with correct credentials.
• Test user login failure with incorrect credentials.
• Verify logout functionality.
• Product Management:
• Test adding a new product with valid details.
• Test updating an existing product's information.
• Test deleting a product from the database.
• Cart Management:
• Verify adding items to the cart.
• Verify removing items from the cart.
• Verify updating the quantity of items in the cart.
• Payment Processing:
• Test payment processing with valid payment information.
• Test handling of invalid payment information.
• Verify successful completion of payment transactions.
• Order Management:
• Test placing a new order with valid product selections.
• Verify generation of order confirmation and invoice.
• Test tracking order status.
• Admin Functionality:
• Verify adding a new product as an admin.
• Test updating product details.
• Test deleting a product from the inventory.
151
• PDF Generation:
• Verify generation of PDF invoice from order data.
• Order Tracking and Delivery:
• Test displaying order status to users.
• Verify tracking order delivery status for admins.
7. Execution and Reporting:
• Test cases will be executed by developers during the development phase and
by quality assurance (QA) testers during the testing phase.
• Test results, including pass/fail status and any defects found, will be
documented in a test report.
By rigorously testing each component in isolation, Femex can ensure the reliability,
functionality, and quality of the Housekeeping Material Management website, ultimately
delivering a seamless and satisfactory user experience.
152
5.3 Acceptance Test Plan
1. Objective:
• The objective of the acceptance testing is to verify that the Femex Housekeeping
Material Management website meets the specified requirements and satisfies the
needs of stakeholders.
2. Scope:
• Acceptance testing will focus on testing end-to-end user workflows, including
user registration, login, product browsing, cart management, payment
processing, admin functionalities, order management, and PDF invoice
generation.
3. Testing Approach:
• Acceptance testing will be conducted from the perspective of end users to ensure
that the website functions as expected and provides a satisfactory user
experience.
• Test cases will cover both positive and negative scenarios to validate the
website's functionality, usability, and performance.
4. Testing Environment:
• The website will be tested in a staging environment that closely resembles the
production environment to simulate real-world usage conditions.
• Various devices (desktops, tablets, smartphones) and web browsers (Chrome,
Firefox, Safari, Edge) will be used to ensure compatibility.
5. Test Cases:
User Registration and Login:
• Verify that users can register for an account with valid information.
• Test user login functionality with correct credentials.
• Verify proper error handling for invalid login attempts.
Product Browsing and Ordering:
• Test browsing product categories and listings.
• Verify that users can add items to the cart and proceed to checkout.
153
• Test different payment methods (e.g., credit card, PayPal) for completing
transactions.
Admin Functionality:
• Verify that admins can add, update, and delete product listings.
• Test inventory management functionalities such as stock updates and low-stock
alerts.
• Verify that admins can generate PDF invoices and track order status.
User Experience and Usability:
• Evaluate the website's overall user interface, navigation, and responsiveness.
• Test accessibility features to ensure usability for users with disabilities.
• Verify that error messages and notifications are clear and informative.
Performance and Scalability:
• Test the website's performance under different load conditions to ensure
responsiveness and scalability.
• Verify that the website can handle concurrent user sessions and transactions
without significant slowdowns.
6. Execution and Reporting:
• Acceptance tests will be executed by QA testers following predefined test
cases and scenarios.
• Test results, including any defects found and their severity, will be documented
in a test report.
• Test reports will be reviewed by stakeholders for validation and sign-off.
7. User Acceptance Testing (UAT):
• Engage actual users or stakeholders to perform UAT and provide feedback on
the website's functionality, usability, and overall satisfaction.
• Address any issues or concerns identified during UAT and incorporate
necessary changes or improvements.
8. Review and Feedback:
• Test results and feedback from stakeholders will be reviewed by the
development team to prioritize and address any issues or defects.
• Necessary fixes or enhancements will be implemented, and acceptance tests
will be rerun to verify resolution.
154
By conducting comprehensive acceptance testing, Femex can ensure that the Housekeeping
Material Management website meets stakeholders' expectations and delivers a seamless and
satisfactory experience for users and administrators alike.
155
5.4 Test Case / Test Script
156
order
placement
TC_010 Payment COD Select one option Expected Pass
UPI payment As
Cc/dc/
TC_011 Order History - User: Rutuja Walje User's previous Expected Pass
View previous orders are As
orders displayed
TC_012 Track Order - Order ID: #1458967 Order status and Expected Pass
Check order tracking info are As
status and shown
tracking
information
TC_013 Update Name: Rutuja Walje, Account Expected Pass
Account Info - Contact No.3452435333 information is As
Successful updated
update successfully
TC_014 Reset Password: rutuja@ Password is reset Expected Pass
Password - Confirm Password:rutuja@ successfully As
Successful
password reset
157
User Module
158
.Product Module
159
Add Cart Module
160
.Checkout Module
161
CHAPTER 6:
LIMITATIONS OF
PROPOSED SYSTEM
162
• Security Risks:
Despite implementing security measures, such as encryption and secure authentication, the
system may still be vulnerable to cyber threats such as hacking, data breaches, and phishing
attacks. Continuous monitoring and updates are necessary to mitigate these risks.
Maintaining and updating the system requires technical expertise in HTML, CSS, JavaScript,
PHP, and database management. Femex may face challenges in finding qualified personnel or
outsourcing support services, leading to potential downtime or delays in addressing technical
issues.
• Scalability Challenges:
As the user base and product catalog grow, the system may face scalability challenges in
handling increased traffic, transactions, and data volume. Upgrading infrastructure and
optimizing performance may be necessary to accommodate growth.
• Compatibility Issues:
The system may encounter compatibility issues with certain web browsers, devices, or operating
systems, affecting user experience and functionality. Regular testing and updates are needed to
ensure cross-platform compatibility.
• Regulatory Compliance:
Ensuring compliance with data protection regulations, such as GDPR or CCPA, requires
ongoing monitoring and adherence to legal requirements regarding user privacy, data handling,
and consent. Non-compliance could result in legal consequences and reputational damage for
Femex.
Encouraging users to adopt the online platform for purchasing housekeeping materials may
require promotional efforts and user training initiatives. Resistance to change or unfamiliarity
with online shopping may slow down user adoption rates.
163
• Limited Customization Options:
The system's features and functionalities may be limited by the capabilities of the chosen
technologies (HTML, CSS, JS, PHP). Customization options may be restricted, impacting
Femex's ability to tailor the system to specific business requirements or user preferences.
Integrating with third-party payment gateways incurs transaction processing fees for each
transaction, which can add up over time and impact Femex's profitability. Negotiating favorable
terms or exploring alternative payment solutions may help mitigate these costs.
The user interface may become complex or overwhelming for some users, especially those who
are less tech-savvy or have limited experience with online shopping. Designing a user- friendly
interface and providing clear instructions can help mitigate this limitation.
164
CHAPTER 7:
PROPOSED
ENHANCEMENTS
165
➢ Proposed Enhancements for Femex Housekeeping Material Management Website:
Personalized Recommendations:
• Use machine learning algorithms to analyze user behavior and preferences, enhancing
the shopping experience and increasing sales.
• Enable users to share product listings, wishlists, and purchases on social media
platforms such as Facebook, Twitter, and Instagram.
• Integrate social login options to streamline the registration and login process for users.
• Integrate a live chat feature to provide real-time assistance and support to users.
• Allow users to ask questions, receive product recommendations, and resolve issues
directly through the website.
166
• Enhance the search functionality with advanced filters such as price range, brand, size,
and material.
• Allow users to refine search results based on specific criteria to find relevant products
more efficiently.
Subscription Services:
• Enable users to leave reviews and ratings for products they have purchased, helping
other users make informed decisions.
• Display average ratings and reviews prominently on product pages to increase trust
and credibility.
Gamification Elements:
• Introduce gamification elements such as loyalty points, badges, and rewards for user
engagement and interaction.
• Encourage users to complete actions such as making purchases, writing reviews, and
referring friends to earn rewards.
167
Voice Search Integration:
• Incorporate voice search functionality to allow users to search for products using voice
commands.
• Utilize speech recognition technology to accurately interpret user queries and retrieve
relevant search results.
• Expand the analytics and reporting capabilities to provide admins with deeper insights
into user behavior, sales trends, and marketing effectiveness.
These proposed enhancements aim to further elevate the Femex housekeeping material
management website, enriching the user experience, increasing customer engagement, and
driving business growth. By embracing innovative technologies and user-centric features,
Femex can stay ahead of the competition and continue to deliver exceptional value to its
customers.
168
CHAPTER 8:
CONCLUSION
169
In conclusion, the website development project for Femex housekeeping material management
presents a comprehensive solution to streamline operations, enhance user experience, and drive
business growth. By leveraging technologies such as HTML, CSS, JavaScript, and PHP, the
proposed system empowers both users and administrators with a range of functionalities, from
browsing and ordering housekeeping materials to managing products, processing payments, and
tracking orders.
Through user registration and authentication mechanisms, customers can create accounts,
access personalized features, and maintain order history. The intuitive interface allows users to
seamlessly browse products, add items to their cart, and make secure payments through
integrated payment gateways. Additionally, features such as wishlists and order tracking
enhance user engagement and satisfaction.
Administrators benefit from robust tools for product management, inventory control, order
processing, and delivery tracking. They can efficiently add, update, and manage product
listings, monitor inventory levels, generate invoices, and track order status to ensure timely
fulfillment. The system's reporting and analytics capabilities provide valuable insights into sales
trends, user behavior, and inventory turnover, enabling data-driven decision-making and
optimization of business strategies.
While the proposed system offers significant advantages, it is essential to acknowledge potential
limitations such as security risks, scalability challenges, and compatibility issues. Proactive
measures, including regular maintenance, security updates, and user training initiatives, are
necessary to mitigate these risks and ensure the system's long-term success.
Overall, the website development project for Femex housekeeping material management holds
promise for revolutionizing the way housekeeping materials are procured, managed, and
delivered. By prioritizing user satisfaction, operational efficiency, and technological
170
innovation, Femex can establish itself as a leader in the industry, providing customers with a
seamless and convenient shopping experience while optimizing internal processes and driving
business growth.
171
CHAPTER 9:
BIBLIOGRAPHY
172
Creating a bibliography for a website development project like Femex housekeeping material
management involves citing various sources of information, including documentation, tutorials,
articles, and research papers related to web development, e-commerce, and user experience
design. Here's an example bibliography:
2. Provides comprehensive tutorials and references for HTML, covering topics such as
markup language syntax, tags, and elements.
4. Offers detailed documentation and examples for CSS properties and selectors,
essential for styling web pages.
6. Covers fundamental JavaScript concepts, syntax, and best practices, including DOM
manipulation and event handling.
10. Bootstrap documentation provides guidance on using the Bootstrap framework for
responsive web design and UI components.
11. Nielsen Norman Group. (n.d.). E-Commerce User Experience. Retrieved from
https://www.nngroup.com/topic/ecommerce/
12. Offers research-based articles and reports on e-commerce user experience design
principles and best practices.
173
13. Smashing Magazine. (n.d.). UX Design. Retrieved from
https://www.smashingmagazine.com/category/ux-design/
14. Provides articles, case studies, and tutorials on user experience (UX) design principles,
methodologies, and techniques.
16. Offers comparisons, reviews, and guides for selecting and using e-commerce
platforms, including features and functionalities.
19. IEEE Xplore Digital Library. (n.d.). Research Papers on Web Development. Retrieved
from https://ieeexplore.ieee.org/Xplore/home.jsp
20. Access to academic research papers and journals on topics related to web
development, e-commerce, and user experience.
174
CHAPTER 10:
COMPETITION
CERTIFICATES
175
176