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

Project on Python

Uploaded by

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

Project on Python

Uploaded by

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

PROJECT ON PYTHON

(SHOPPINGMALL
MANGEMENT)
IN
COMPUTER SCIENCE
SUBMITTED BY

SASE THARAN S
AYYAPPA S
KUMARAN C

2024 -2025
SAI VIDHYALAYA SENIOR SECONDARY
SCHOOL, CBSE

AFFILIATION NO: 1930364


THIRUMANGALAM ROAD, LALGUDI,
TIRUCHIRAPALLI – 621601
PROJECT REPORTON
PYTHON
(SHOPPINGMALL MANAGEMENT)
SUBMITTED BY

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

2024 -2025

SAI VIDHYALAYA SENIOR SECONDARY


SCHOOL, CBSE
AFFILIATION NO: 1930364
THIRUMANGALAM ROAD, LALGUDI,
TIRUCHIRAPALLI – 621601
ACKNOWLEDGEMENT
At this outset, I express my gratitude to the Almighty Lord

for the divine guidance and wisdom showered on me to

undertake this project.

I am immensely grateful to our Correspondent Mr.

P.Sivakumar and our Principal Mrs. S.Anuradha for the

involvement in this project by providing useful inputs and timely

suggestions.

I express my respectful and sincere thanks to Mrs.

AnuradhaSivakumar my Computer Science Teacher ,Mr.Suresh

Nagarathinam and Mrs. Maria Dhivya J for the guidance and

help to make this project a success.

I extend my special thanks to my class students and my

friends who helped to carry out this project in a successful

manner. Hence all deserve my sincere thanks.

My parents also played a key role in shaping up this project

nicely and I convey my special thanks to them as well.


BONAFIDE CERTIFICATE
Certified that this is a bonafide project work done by _____
_____________________________Roll.No ____________ XII,
SAI VIDHYALAYA SENIOR SECONDARY SCHOOL,
CBSE,on the topic _____________________________________________
______________________________________________
during the year 2024 - 2025.

Submitted for AISSCE practical examination held in

COMPUTER SCIENCE at SAI VIDHYALAYA SENIOR

SECONDARY SCHOOL, CBSE, Thirumangalam Road,

Lalgudi.

Date: Internal Examiner

PRINCIPAL Examine External

SER DESCRIPTION PAGE NO


01 ACKNOWLEDGEMENT

02 INTRODUCTION

03 OBJECTIVES OF THE PROJECT

04 PROPOSED SYSTEM

05 SYSTEM DEVELOPMENT LIFE CYCLE (SDLC)

06 PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE

07 FLOW CHART

08 SOURCE CODE

09 OUTPUT

10 TESTING

11 HARDWARE AND SOFTWARE REQUIREMENTS

12 INSTALLATION PROCEDURE

13 BIBILOGRAPHY

INTRODUCTION
A Shopping Mall Management System is
a sophisticated software solution that
automates and manages various operations
within a shopping mall. These operations
include the management of stores,
customers, employees, products, sales, and
transactions. As malls are complex
ecosystems with a diverse range of
businesses, customers, and services, an
automated management system can
simplify and optimize many of these tasks.
By developing such a system using Python,
a versatile, easy-to-learn, and highly
powerful programming language, you can
build an efficient, scalable, and maintainable
solution that caters to the needs of shopping
malls of all sizes.
In today’s highly digital and fast-paced
world, shopping malls need to manage a
wide variety of tasks simultaneously,
including handling inventory, customer
relationships, store operations, employee
management, and sales tracking. Python
offers a set of powerful tools and libraries
that can be utilized to create a robust
management system that keeps everything
organized and running smoothly.
This Python-based Shopping Mall
Management System can offer an
automated, user-friendly, and flexible
approach to managing the day-to-day
operations of a shopping mall, ensuring
efficiency, accuracy, and ease of use.
Core Features of a Shopping Mall
Management System

A well-structured Shopping Mall


Management System would typically
encompass the following key features,
which can be customized to meet the
unique needs of different malls:
1. Store Management
 Add, Update, or Remove Stores: The
system allows mall administrators to add new
stores, update existing store information, or
remove stores that have closed. This helps
maintain an up-to-date list of the stores
operating within the mall.
 Store Details: Information such as store
type (e.g., clothing, electronics, food court,
entertainment), operating hours, contact
details, and tenant leases can be stored and
easily accessed.
 Store Location: The system can track the
exact location of each store in the mall to aid
both customers and staff in finding stores
more efficiently.
2. Product Management
 Product Catalog: The system allows mall
administrators and store owners to manage
the list of products available for sale within
their stores. This includes product details
such as name, description, price, stock
quantity, and vendor information.
 Inventory Management: The system can
track stock levels, notify store owners when
stock is low, and help ensure that the mall
never runs out of popular products.
 Product Category Management: Products
can be organized into various categories
(e.g., electronics, clothing, accessories),
making it easier for both customers and staff
to browse or manage them.

3. Sales and Transaction


Management
 Sales Tracking: The system records and
tracks all sales transactions within the mall.
This includes the details of each sale, such as
the items purchased, quantity, price,
payment method, and date/time of
transaction.
 Invoice Generation: The system can
automatically generate invoices or receipts
for customers, providing a professional and
efficient way to complete transactions.
 Revenue Management: Mall administrators
can access detailed reports on sales
performance, such as total revenue, average
sale per customer, and other important
financial metrics.

4. Customer Management
 Customer Profiles: The system can
store basic customer information (e.g.,
name, contact details) and provide
features like customer login,
membership registration, and loyalty
programs.
 Shopping History: The system can
track a customer’s shopping history,
providing personalized offers,
promotions, or product
recommendations based on their past
purchases.
 Loyalty Programs: The system can
support loyalty programs where
customers earn points or discounts
based on their purchases. This can
enhance the customer experience and
encourage repeat business.
5. Employee Management
 Employee Records: Manage employee
details, including personal information,
role within the mall (e.g., security,
cleaning staff, store employee), and
employment status.
 Scheduling and Attendance: The
system can be used to track employee
schedules, manage working hours, and
even handle time-off requests or
absences.
 Payroll Management: The system can
calculate employee salaries based on
hours worked or fixed wages, and
automatically generate payroll reports.
6. Reporting and Analytics
 Sales Reports: Generate detailed reports on
sales, revenue, and performance. These
reports can be broken down by store, product
category, or time period to identify trends
and opportunities for growth.
 Inventory Reports: Track inventory levels
across all stores and identify which products
are performing well or need replenishment.
 Customer Behavior Analytics: The system
can analyze customer purchase patterns,
preferences, and foot traffic, helping mall
administrators make data-driven decisions
about marketing, store placements, and
promotions.

Technologies and Tools Used


A Python-based Shopping Mall
Management System can be built using a
variety of libraries and technologies. These
include:
 Python: Python is the core
programming language for the
development of the system. It provides
an easy-to-read syntax, a wide array of
libraries, and extensive community
support, making it an ideal choice for
building complex systems efficiently.
 Database: The system relies on
databases to store and manage all data
related to products, stores, customers,
sales, and employees. Popular database
management systems like SQLite (for
lightweight applications), MySQL, or
PostgreSQL (for larger systems) can be
used to store and retrieve data.
 GUI (Graphical User Interface): If a
user-friendly interface is required, a GUI
can be built using Python libraries like
Tkinter (for desktop applications) or
web frameworks such as Flask or
Django (for web-based applications).
These frameworks allow the creation of
interactive, visually appealing interfaces
for users.
 Reporting and Analytics: Libraries like
Matplotlib and Pandas can be used for
generating reports and visualizing sales
data, inventory trends, and customer
analytics.
Benefits of a Python-based
Shopping Mall Management System
1. Scalability: A Python-based system
can grow with the mall. As the number of
stores, products, and customers
increases, the system can handle larger
datasets without significant performance
degradation.
2. Cost-Effectiveness: Python is an
open-source language, which means no
licensing costs. This makes it an
affordable choice for small and medium-
sized malls, while still offering robust
features that meet the needs of larger
organizations.
3. Flexibility: Python’s modular nature
allows developers to build custom
modules or functionalities that are
specifically tailored to the mall's
requirements, ensuring that the system
can be easily adapted as needs evolve.
4. Easy Integration: Python can be
integrated with other third-party
systems, such as point-of-sale (POS)
systems, payment gateways, or external
databases, making it possible to expand
the functionality of the mall
management system.
5. Enhanced User Experience: By
automating tedious tasks and providing
a smooth, user-friendly interface, the
system can significantly improve the
shopping experience for customers and
streamline daily operations for mall
administrators.
OBJECTIVES OF THE PROJECT

The objective of this project is to let the


students apply the programming
knowledge into a real- world
situation/problem and exposed the
students how programming skills helps
in developing a good software.
1. Write programs utilizing modern
software tools.
2. Apply object oriented programming
principles effectively when developing
small to medium sized projects.
3. Write effective procedural code to
solve small to medium sized problems.
4. Students will demonstrate a
breadth of knowledge in computer
science, as exemplified in the areas of
systems, theory and software
development.

5. Students will demonstrate ability to


conduct a research or applied Computer
Science project, requiring writing and
presentation skills which exemplify
scholarly style in computer science.
PROPOSED SYSTEM

Today one cannot afford to rely on the


fallible human beings of be really wants to
stand against today’s merciless competition
where not to wise saying “to err is human”
no longer valid, it’s outdated to rationalize
your mistake. So, to keep pace with time, to
bring about the best result without
malfunctioning and greater efficiency so to
replace the unending heaps of flies with a
muchsophisticated hard disk of the computer.

One has to use the data management


software. Software has been an ascent in
atomizationvarious organisations. Many
software products working are now in
markets, which have helped in making the
organizations work easier and efficiently. Data
management initially hadto maintain a lot of
ledgers and a lot of paperwork has to be done
but now software production this organization
has made their work fasterand easier. Now
only this software has to be loaded on the
computer and work can be done.
This prevents a lot of time and money.
Thework becomes fully automated and any
information regarding the organization can
beobtained by clicking the button. Moreover,
nowit’s an age of computers of and
automatingsuch an organization gives the
better look.
SYSTEM DEVELOPMENT LIFE
CYCLE (SDLC)

The systems development life cycle


is a projectmanagement technique that
divides complexprojects into smaller,
more easily managedsegments or
phases. Segmenting projectsallows
managers to verify the
successfulcompletion of project phases
before allocatingresources to
subsequent phases.
Software developmentprojects
typically include initiation,
planning,design, development, testing,
implementation,and maintenance
phases. However, the phasesmay be
divided differently depending on
theorganization involved.
For example, initialproject activities
might be designated asrequest,
requirements-definition, and
planningphases, or initiation, concept-
development,and planning phases. End
users of the systemunder development
should be involved inreviewing the
output of each phase to ensurethe
system is being built to deliver the
neededfunctionality.
PHASES OF SYSTEM DEVELOPMENT
LIFE CYCLE

INITIATION PHASE
The Initiation Phase begins when a
business sponsor identifies a need or an
opportunity.
The purpose of the Initiation Phase is to:
Identify and validate an opportunity to
improve business accomplishments of
the organization or a deficiency related
to a business need.
Identify significant assumptions and
constraints on solutions to that need.
Recommend the exploration of
alternative concepts and methods to
satisfy the need including questioning
the need for technology, i.e., will a
change in the business process offer a
solution?
Assure executive business and
executive technical sponsorship. The
Sponsor designates a Project Manager
and the business need is documented in
a Concept Proposal. The Concept
Proposal includes information about the
business process andthe relationship to
the Agency/Organization.

Infrastructure and the Strategic


Plan. A successful Concept Proposal
results in a Project Management Charter
which outlines the authority of the
project manager to beginthe project.
Careful oversight is required to
ensure projects support strategic
business objectives and resources are
effectively implemented into an
organization's enterprise architecture.
The initiation phase begins when an
opportunity to add, improve, or correct
a system is identified and formally
requested through the presentation of a
business case. The business case
should, at a minimum, describe a
proposal’s purpose, identify expected
benefits, and explain how the proposed
system supports one of the
organization’s business strategies. The
business case should also identify
alternative solutions and detail as many
informational, functional, and network
requirements as possible.

SYSTEM CONCEPT DEVELOPMENT


PHASE
The System Concept Development
Phase begins after a business need or
opportunity is validated by the
Agency/Organization Program
Leadership and the Agency/Organization
CIO.
The purpose of the System Concept
Development Phase is to:
Determine the feasibility and
appropriateness of the alternatives.
Identify system interfaces.
Identify basic functional and data
requirements to satisfy the business
need.
Establish system boundaries; identify
goals, objectives, critical success
factors, and performance measures.
Evaluate costs and benefits of
alternative approaches to satisfy the
basic functional requirements
Assess project risks
Identify and initiate risk mitigation
actions, andDevelop high-level technical
architecture, process models, data
models, and a concept of operations.
This phase explores potential technical
solutions within the context of the
business need.
It may include several trade-off
decisions such as the decision to use
COTS software products as opposed to
developing custom software or reusing
software components, or the decision to
use an incremental delivery versus a
complete, onetime deployment.
Construction of executable prototypes is
encouraged to evaluate technology to
support the business process. The
System Boundary Document serves as
an important reference document to
support the Information Technology
Project Request (ITPR) process.
The ITPR must be approved by the State
CIO before the project can move
forward.
PICTORIAL REPRESENTATION OF
SDLC:

PLANNING PHASE

The planning phase is the most


critical step in completing
development, acquisition, and
maintenance projects. Careful
planning, particularly in the early
stages of a project, isnecessary to
coordinate activities and manage
project risks effectively. The depth
and formality of project plans should
be commensurate with the
characteristics and risks of a given
project. Project plans refine the
information gathered during the
initiation phase by further identifying
the specificactivities and resources
required to complete a project.
A critical part of a project
manager’sjob is to coordinate
discussions between user,

audit, security, design,


development, and network
personnel to identify and document
as many functional, security, and
networkrequirements as possible.
During this phase, a plan is
developed that documents the
approach to be used and includes a
discussion of methods, tools, tasks,
resources, project schedules, and
user input. Personnel assignments,
costs, project schedule, and target
dates are established.
A Project Management Plan is
created with components related to
acquisition planning, configuration
management planning, quality
assurance planning, concept of
operations, system security,
verification and validation, and
systems engineering management
planning.
REQUIREMENTS ANALYSISPHASE
This phase formally defines the
detailed functional user
requirements using high-level
requirements identified in the
Initiation, System Concept, and
Planning phases. It also delineates
the requirements in terms of data,
system performance, security, and
maintainability requirements for the
system. The requirements are
defined in this phase to alevel of
detail sufficient for systems design
to proceed. They need to be
measurable, testable, and relate to
the business need or opportunity
identified in the Initiation Phase. The
requirements that will be used to
determine acceptance of the system
are captured in the Test and
Evaluation MasterPlan.
The purposes of this phase are to:
Further define and refine the
functional and data requirements
and document them in the

Requirements Document,
Complete business process
reengineering of the functions to be
supported (i.e., verify what
information drives the business
process, what information is
generated, who generates it, where
does the information go, and who
processes it),
Develop detailed data and process
models (system inputs, outputs, and
the process.
Develop the test and evaluation
requirements that will be used to
determine acceptable system
performance.
DESIGN PHASE
The design phase involves
converting the informational,
functional, and network
requirements identified during the
initiation and planning phases into
unified design specifications that
developers use to scriptprograms
during the development phase.
Program designs are constructed in
various ways. Using a top-down
approach, designers first identify
and link majorprogram components
and interfaces, then expand design
layouts as they identify and link
smaller subsystems and
connections. Using a bottom-up
approach, designers first identify
and link minor program components
and interfaces, then expand design
layouts as they identify and link
larger systems and connections.
Contemporary design techniques
often use prototyping tools that
build mock-up designs of items such
as application screens, database
layouts, and system architectures.
End users, designers, developers,
database managers, and network
administrators should review and
refine the

prototyped designs in an iterative


process until they agree on an
acceptable design. Audit, security,
and quality assurance personnel
should be involved in the review and
approval process. During this phase,
the system is designed to satisfy the
functional requirements identified in
the previous phase. Since problems
in the design phase could be very
expensive to solve in the later stage
of the software development, a
variety of elements are considered
in the design to mitigate risk. These
include:
Identifying potential risks and
defining mitigating design features.
Performing a security risk
assessment.
Developing a conversion plan to
migrate current data to the new
system.
Determining the operating
environment.
Defining major subsystems and their
inputs and outputs.
Allocating processes to resources.
Preparing detailed logic
specifications for each software
module. The result is a draft System
Design Document which captures
the preliminary design for the
system.
Everything requiring user input or
approval is documented and
reviewed by the user. Once these
documents have been approved by
the Agency CIO and Business
Sponsor, the final System Design
Document is created to serve as the
Critical/Detailed Design for the
system.
This document receives a rigorous
review byAgency technical and
functional representatives to ensure
that it satisfies the business
requirements. Concurrent with the
development of the system design,
the Agency Project Manager begins
development of the Implementation
Plan, Operations and Maintenance
Manual, and the Training Plan.
DEVELOPMENT PHASE
The development phase involves
converting design specifications into
executable programs. Effective
development standards include
requirements that programmers and
other project participants discuss
design specifications before
programming begins. The
procedures help ensure
programmers clearly understand
program designs and functional
requirements. Programmers use
various techniques to develop
computer programs. The large
transaction oriented programs
associated with financial institutions
have traditionally been developed
using procedural programming
techniques. Procedural programming
involves the line-by-line scripting of
logical instructions that are
combined to form a program.
Effective completion of the previous
stages is a key factor in the success
of the Development phase. The
Development phase consists of:
Translating the detailed
requirements and design into
system components.
Testing individual elements (units)
for usability.
Preparing for integration and testing
of the IT system.
INTEGRATION AND TEST PHASE
Subsystem integration, system,
security, and user acceptance
testing is conducted during the
integration and test phase. The user,
with those responsible for quality
assurance, validates that the
functional requirements, as defined
in the functional requirements
document, are satisfied by the
developed or modified system. OIT
Security staff assess the system
security and issue a security
certification and accreditation prior
to installation/implementation.

Multiple levels of testing are


performed, including:
Testing at the development facility
by the contractor and possibly
supported by end users

Testing as a deployed system with


end users working together with
contract personnel

Operational testing by the end user


alone performing all functions.
Requirements are traced throughout
testing,a final Independent
Verification & Validation evaluation
is performed and all documentation
is reviewedand accepted prior to
acceptance of the system.
IMPLEMENTATION PHASE

This phase is initiated after the


system has been tested and
accepted by the user. In this phase,
the system is installed to support
the intended business functions.
System performance is compared to
performance objectives established
during the planning phase.
Implementation includes user
notification, user training,
installation of hardware, installation
of software onto production
computers, and integration of the
system into daily work processes.
This phase continues until the
system is operating in production in
accordance with the defined user
equirements.

OPERATIONS AND MAINTENANCE


PHASE
The system operation is ongoing.
The system is monitored for
continued performance in
accordance with user requirements
and needed system modifications
are incorporated. Operations
continue as long as the system can
be effectively adapted to respond to
the organization’s needs. When
modifications or changes are
identified, the system may reenter
the planning phase.
The purpose of this phase is to:
Operate, maintain, and enhance the
system.
Certify that the system can process
sensitive information.
Conduct periodic assessments of the
system to ensure the functional
requirements continue to be
satisfied.
Determine when the system needs
to be modernized, replaced, or
retired.
FLOW CHART
SOURCE
CODE
TESTING
Software Testing is an empirical
investigation conducted to provide
stakeholders with information about the
quality of the product or service under
test[1] , with respect to the context in
which it is intended to operate.
Software Testing also provides an
objective, independent view of the
software to allow the business to
appreciate and understand the risks at
implementation of the software. Test
techniques include, but are not limited
to, the process of executing a program
or application with the intent of finding
software bugs.
It can also be stated as the process
of validating and verifying that a
software program/application/product
meets the business and technical
requirements that guided its design and
development, so that it works as
expected and can be implemented with
the same characteristics. Software
Testing, depending on the testing
method employed, can be implemented
at any time in the development
process, however the most test effort is
employed after the requirements have
been defined and coding process has
been completed.

TESTING METHODS

Software testing methods are


traditionally divided into black box
testing and white box testing. These
two approaches are used to describe
the point of view that a test engineer
takes when designing test cases.

BLACK BOX TESTING

Black box testing treats the


software as a "black box," without any
knowledge of internal implementation.
Black box testing methods include:
equivalence partitioning, boundary
value analysis, all-pairs testing, fuzz
testing, model-based testing,
traceability matrix, exploratory testing
and specification-based testing.

SPECIFICATION-BASED TESTING

Specification-based testing aims to


test the functionality of software
according to the applicable
requirements.[16] Thus, the tester
inputs data into, and only sees the
output from, the test object. This level
of testing usually requires thorough test
cases to be provided to the tester, who
then can simply verify that for a given
input, the output value (or behaviour),
either "is" or "is not" the same as the
expected value specified in the test
case. Specification-based testing is
necessary, but it is insufficient to guard
against certain risks

ADVANTAGES AND

DISADVANTAGES

The black box tester has no "bonds"


with the code, and a tester's perception
is very simple: a code must have bugs.
Using the principle, "Ask and you shall
receive," black box testers find bugs
where programmers don't. But, on the
other hand, black box testing has been
said to be "like a walk in a dark
labyrinth without a flashlight," because
the tester doesn't know how the
software being tested was actually
constructed.
That's why there are situations
when (1) a black box tester writes many
test cases to check something that can
be tested by only one test case, and/or
(2) some parts of the back end are not
tested at all. Therefore, black box
testing has the advantage of "an
unaffiliated opinion," on the one hand,
and the disadvantage of "blind
exploring," on the other.

WHITE BOX TESTING

White box testing, by contrast to


black box testing, is when the tester
has access to the internal data
structures and algorithms (and the code
that implement these)
Types of white box testing:-
The following types of white box
testing exist:
api testing - Testing of the application
using Public and Private APIs.
Code coverage - creating tests to satisfy
some criteria of code coverage.
For example, the test designer can
create tests to cause all statements in
the program to be executed at least
once.
fault injection methods.
mutationtestingmethods.
static testing - White box testing
includes all static testing.

CODE COMPLETENESS EVALUATION


White box testing methods can also
be used to evaluate the completeness
of a test suite that was created with
black box testing methods. This allows
the software team to examine parts of a
system that are rarely tested and
ensures that the most important
function points have been tested.

Two common forms of code coverage

are:

FunctionCoverage: Which reports on

functions executed and

StatementCoverage:Which reports on the

number of lines executed to complete the

test.

They both return coverage metric,

measured as a percentage
HARDWARE AND SOFTWARE REQUIREMENTS
I.OPERATING SYSTEM : WINDOWS 10 AND
ABOVE
II. PROCESSOR : INTEL I3
PROCESSOR OR AMD
INTEL(3800+- 4200+ I3)
III. MOTHERBOARD : 4.560 OR 4.530
FOR INTEL ASUS GIGABYTE
8540 4540 PLUS
CHIPSET FOR AMD ATHALON
IV. RAM : 4GB+
V. Hard disk : SATA 1TB OR SSD 256
OR 512 GB
VI. EXTERNAL HDD : (If back
up required)
VII. MONITOR 18.6 or 19 - 21 inch
VIII. Key board and mouse
IX. Printer : (if print is
required – [Hard copy])

SOFTWARE REQUIREMENTS:

I. Windows 10 OS OR ABOVE
II. Python 3.10.7
III. MYSQL DB

EXECUTION PROCEDURE

Install python from the web.


Open python and install it in our system
Create python file and execute
Execute the program.

You might also like