Title of The Project: Bachelor of Science (Computer Science)
Title of The Project: Bachelor of Science (Computer Science)
A Project Report
Submitted in partial fulfilment of the
Requirements for the award of the Degree of
By
Rahul Nair
Roll Number - 466
_____________________________________________________
4. Teaching experience of the Project Guide - __4 Years
CERTIFICATE
This is to certify that the project entitled, "Gym Management System ", is bonafied work of
RAHUL NAIR bearing Seat No: 466 submitted in partial fulfilment of the requirements for
the award of degree of BACHELOR OF SCIENCE (COMPUTER SCIENCE) from University
of Mumbai.
External Examiner
This Gym Management Software is a gym and health club membership management
system. You can keep records on your members their memberships, and have quick and
easy communication between you and your members. Gym Management also includes
a booking system, point of sale and has a range of reports that help in the management
of your club. Our Gym Management System provides lots of function such data entry
of customer, keeping record of all the things about customers fees, plan, physical fitness
which help to provide good quality of services to customer from Gym managers . In
this proposed system also provide the total information about machinery and data of
coaches is also stored in it. Services provided by Gym also handled by this system. This
system structure has become very simple to understand because of data flow diagram
provided by us.
The proposed software facilitates the data storage, data maintenance and its retrieval for
the gym in an igneous way. To store the record of the customers, the staff that has the
privileges to access, modify and delete any record and finally the service, gym provides
to its customers. Only the staff has the privilege to access any database and make the
required changes, if necessary. It is an Easy to use software which handles the customer-
staff relationship in an effective manner. It is a user friendly system that requires
minimal user training. Most of features and function are similar to those on any
windows platform.
This system can be used in gyms in order to have a easily accessible software which is
easy to use and which handles the customer-staff relationship in an effective manner.
ACKNOWLEDGEMENT
I am greatly indebted to my project guide for his valuable and timely guidance
along with his wholehearted cooperation, which has played a key role in the successful
completion of the project.
A vote of thanks to all staff members of Guru Nanak Khalsa College, who have
directly or indirectly, contributed towards the completion of the project.
My most sincere vote of thanks to the non-teaching staff of the college for
allowing me to use the laboratory facilities.
I would also like to thank to my friends who helped me to complete the project
successfully.
I am very much thankful to my all teachers to solve all my queries and helped
me to complete my project.
DECLARATION
I hereby declare that the project entitled, “Gym Management System” done at Guru
Nanak Khalsa College, has not been in any case duplicated to submit to any other university
for the award of any degree. To the best of my knowledge other than me, no one has submitted
to any other university.
The project is done in partial fulfilment of the requirements for the award of degree of
BACHELOR OF SCIENCE (COMPUTER SCIENCE) to be submitted as final semester
project as part of our curriculum.
Rahul Nair
TABLE OF CONTENTS
CHAPTER 1: INTRODUCTION
1.1 Background
1.2 Objectives
1.3 Purpose, Scope, and Applicability
1.3.1 Purpose
1.3.2 Scope 1.3.3 Applicability
1.4 Achievements
1.5 Organisation of Report
HTML
JavaScript
Languages used PHP
SQL
Apache
Tools & Adobe Dreamweaver
Technologies used Adobe Photoshop
Wamp Server
Gym
Areas of Application Fitness Centres
CHAPTER 1: INTRODUCTION
Gym Management System is the process of storing member’s details including health
status, payment records, exercise routines etc. who have taken admission to the gym.
Since the emergence of the World Wide Web, owners have sought to stored their user
details in a digital system for easy access and find out every detail when needed.
1.1 Background
Gym Management System allows us to browse through endless possibilities, and access
their customer’s details.
Say 'goodbye' to the days when you use to maintain a register, log book and bill.
This system can store the payment history, generate bill, and store the details of the
customers who have taken admission into the gym and also the exercise routine the
respective member is following from his/her joining date. Payment records can be added
and stored. Various plans of payments can be added with respective validity. The
member enroll to the specific plan are displayed and their respective date of ending of
their plan is also accessible which is fully controlled by the gym owner or the
administrator.
1.2 Objectives
My objective is to design such an application using which one can say 'goodbye' to the
days when you store and maintain records of the users who have taken admission into
the gym. Each and every records of the users are stored in the digital system which is
accessible to the administrator and view the needed contents which saves time and
convenient to use the system.
• Provide a web admin interface to add, view, delete records of all the
customers.
• Provide an admin interface to view the total income from the members
who have taken admission.
1.3.2 Scope
1.4 Achievements
By successfully implementing the project, a substantial knowledge has been acquired
on the implementation of a database system using .net technologies. This knowledge
will be useful in the future in creating any type of desktop application or online database
systems.
• For Management
Gym Management System is primarily designed for providing information
from the data after processing them. This system is designed for supplying
information to the strategic level of management from the operational
control. It includes almost all the functional areas needed like keeping
Member Record and payment Record.
• For User
With this electronic data processing system, the operators will able to
maintain the following task:
2.1 Introduction
In a desktop application like Gym Management System, there is a scope for a large
number of platforms, languages and frameworks to choose from. Before selecting from
this large array of technologies, the following aspects, which are characteristic to
windows based application like this one, have been kept in mind:
• Data validation
• Performance
• Reliability
• Scalability
• Security
• Portability
• Performance
• Time constraint
• Cost constraint
All the data pertaining to transactions or other important entities is kept at central
database from where its attributes can be easily controlled. But, such kind of
technical details are hidden from the standalone User. He just needs to type in correct
details of the given entity and then click the save button with the help of mouse.
However, that central repository of data can be easily accessed if required.
Data Redundancy is no more the problem now. The data modified from one
particular data entry form will reflect the modifications at the other related forms
too. This has thus reduced the chances of data inconsistency in our data storage.
There is no need to manage bulky registers now as data stored in the backend
database can be readily retrieved either from the frontend form itself or directly from
the database.
Effective Search measures are present at each and every data transactional forms
from where by just entering a Unique keyword for that data its whole records can be
readily seen within microseconds. Moreover, Facility of Updating and Deletion of
data through search is also available.
The proposed system has a user friendly Interface for porting of data to server.
The proposed system provides the facility to pull the data from the server using
a key (such as id) and get the desired report.
The proposed system provides the no replication of data.
The various technologies available for consideration in the proposed system for proper
functionality are as follows:
• HTML
• CSS
• JavaScript
• Adobe Dreamweaver
• Adobe Photoshop
• WampServer
2.5 Justification of proposed system
HTML
HTML or Hypertext Markup Language is the standard markup language used to
create web pages.
HTML is written in the form of HTML elements consisting of tags enclosed in angle
brackets (like <html>). HTML tags most commonly come in pairs like <h1> and </h1>,
although some tags represent empty elements and so are unpaired, for example <img>.
The first tag in a pair is the start tag, and the second tag is the end tag (they are also
called opening tags and closing tags).
The purpose of a web browser is to read HTML documents and compose them into
visible or audible web pages. The browser does not display the HTML tags, but uses
the tags to interpret the content of the page. HTML describes the structure of a website
semantically along with cues for presentation, making it a markup language rather than
a programming language.
HTML elements form the building blocks of all websites. HTML allows images and
objects to be embedded and can be used to create interactive forms. It provides a means
to create structured documents by denoting structural semantics for text such as
headings, paragraphs, lists, links, quotes and other items. It can embed scripts written
in languages such as JavaScript which affect the behavior of HTML web pages.
CSS
CSS was first developed in 1997, as a way for Web developers to define the look and
feel of their Web pages. It was intended to allow developers to separate content from
design so that HTML could perform more of the function that it was originally based
on the markup of content, without worry about the design and layout.
CSS didn't gain in popularity until around 2000, when Web browsers began using more
than the basic font and color aspects of CSS.
Web Designers that don't use CSS for their design and development of Web sites are
rapidly becoming a thing of the past. And it is arguably as important to understand CSS
as it is to know HTML - and some would say it was more important to know CSS.
Style sheet refers to the document itself. Style sheets have been used for document
design for years. They are the technical specifications for a layout, whether print or
online. Print designers use style sheets to insure that their designs are printed exactly to
specifications. A style sheet for a Web page serves the same purpose, but with the added
functionality of also telling the viewing engine (the Web browser) how to render the
document being viewed.
PHP:
Instead of lots of commands to output HTML (as seen in C or Perl), PHP pages contain
HTML with embedded code that does "something" (in this case, output "Hi, I'm a PHP
script!"). The PHP code is enclosed in special start and end processing instructions
<?php and ?> that allow you to jump into and out of "PHP mode."
What distinguishes PHP from something like client-side JavaScript is that the code is
executed on the server, generating HTML which is then sent to the client. The client
would receive the results of running that script, but would not know what the underlying
code was. You can even configure your web server to process all your HTML files with
PHP, and then there's really no way that users can tell what you have up your sleeve.
The best things in using PHP are that it is extremely simple for a newcomer, but offers
many advanced features for a professional programmer. Don't be afraid reading the long
list of PHP's features. You can jump in, in a short time, and start writing simple scripts
in a few hours.
MYSQL:
MySQL, the most popular Open Source SQL database management system, is
developed, distributed, and supported by Oracle Corporation.
The MySQL Web site (http://www.mysql.com/) provides the latest information about
MySQL software.
A relational database stores data in separate tables rather than putting all the data
in one big storeroom. The database structures are organized into physical files
optimized for speed. The logical model, with objects such as databases, tables,
views, rows, and columns, offers a flexible programming environment. You set
up rules governing the relationships between different data fields, such as one-
to-one, one-to-many, unique, required or optional, and “pointers” between
different tables. The database enforces these rules, so that with a well-designed
database, your application never sees inconsistent, duplicate, orphan, out-of-
date, or missing data.
The SQL part of “MySQL” stands for “Structured Query Language”. SQL is the
most common standardized language used to access databases. Depending on
your programming environment, you might enter SQL directly (for example, to
generate reports), embed SQL statements into code written in another language,
or use a language-specific API that hides the SQL syntax.
SQL is defined by the ANSI/ISO SQL Standard. The SQL standard has been
evolving since 1986 and several versions exist. In this manual, “SQL-92” refers
to the standard released in 1992, “SQL:1999” refers to the standard released in
1999, and “SQL:2003” refers to the current version of the standard. We use the
phrase “the SQL standard” to mean the current version of the SQL Standard at
any time.
Open Source means that it is possible for anyone to use and modify the software.
Anybody can download the MySQL software from the Internet and use it without
paying anything. If you wish, you may study the source code and change it to suit your
needs. The MySQL software uses the GPL (GNU General Public License),
http://www.fsf.org/licenses/, to define what you may and may not do with the software
in different situations. If you feel uncomfortable with the GPL or need to embed
MySQL code into a commercial application, you can buy a commercially licensed
version from us. See the MySQL Licensing Overview for more information
(http://www.mysql.com/company/legal/licensing/).
CHAPTER 3: REQUIREMENTS & ANALYSIS
Functional Requirements:
• The System must provide following functionalities—
• Keeping records of registration of members.
• Keeping the records of payments.
• Keeping the monthly income.
• Storing the health status of the customer.
Flexible service based architecture will be highly desirable for future extension
Nonfunctional requirements define system properties and constraints It arise through
user needs, because of budget constraints or organizational policies, or due to the
external factors such as safety regulations, privacy registration and so on.
Various other Non-functional requirements are:
1. Security
2. Reliability
3. Maintainability
4. Portability
5. Extensibility
6. Reusability
7. Application Affinity/Compatibility
8. Resource Utilization
Hardware Interface:
HD: - 20 GB or above.
Software Interface: -
The Data Flow Diagram shows the flow of data or information. It can be
partitioned into single processes or functions. Data Flow Diagrams can be grouped
together or decomposed into multiple processes. There can be physical DFD's that
represent the physical files and transactions, or they can be business DFD's (logical, or
conceptual).
The DFD is an excellent communication tool for analysts to model processes and
functional requirements. One of the primary tools of the structured analysis efforts of
the 1970's it was developed and enhanced by the likes of Yourdon, McMenamin,
Palmer, Gane and Sarsen. It is still considered one of the best modeling techniques for
eliciting and representing the processing requirements of a system.
Used effectively, it is a useful and easy to understand modeling tool. It has broad
application and usability across most software development projects. It is easily
integrated with data modeling, workflow modeling tools, and textual specs. Together
with these, it provides analysts and developers with solid models and specs. Alone,
however, it has limited usability. It is simple and easy to understand by users and can
be easily extended and refined with further specification into a physical version for the
design and development teams.
The different versions are Context Diagrams (Level 0), Partitioned Diagrams
(single process only -- one level), functionally decomposed, leveled sets of Data Flow
Diagrams.
Data Store
• Arrows representing the data flows, which can either, be electronic data or
physical items.
• All processes must have at least one data flow in and one data flow out.
• All processes should modify the incoming data, producing new forms of
outgoing data.
• Each data store must be involved with at least one data flow.
• Each external entity must be involved with at least one data flow.
DFDs are nothing more than a network of related system functions and indicate
from where information is received and to where it is sent. It is the starting point in the
system that decomposes the requirement specifications down to the lowest level detail.
The four symbols in DFD, each of which has its meaning. They are given below:
• External entities are outside to system but they either supply input data in the
system or use the system output. These are represented by square of rectangle.
External entities that supply data into a system are sometimes called Sources.
External entities that use system data are sometimes called sinks.
• Dataflow models that passages of data in the system and are represented by line
by joining system components. An arrow indicates the direction of the flow and
the line is labeled by the name of the dataflow.
• Process show that the systems do. Each process has one or more data inputs and
one or data outputs. Circles in DFD represent them. Each high level process may
be consisting of more than one lower level processes. Process will be expanded
in sequent level DFD. A circle or a bubble represents a process that transforms
incoming data flow into outgoing dataflow.
• Receivable process.
• Verifiable process.
• Disposal process.
• File or data store is a repository of data. They contain data that is retained in the
system. Process can enter data into data store or retrieved data from the data
store. An open rectangle is a data store, data at rest.
0-Level DFD:
Fig 3.6.1(a).DFD
1st level DFD for Admin Processes
Entities
Entities are the principal data object about which information is to be collected.
Entities are classified as independent or dependent (in some methodologies, the terms
used are strong and weak, respectively). An independent entity is one that does not rely
on another for identification. A dependent entity is one that relies on another for
identification. .
Relationships
A Relationship represents an association between two or more entities.
Relationships are classified in terms of degree, connectivity, cardinality, and existence.
Attributes
Attributes describe the entity of which they are associated. A particular instance
of an attribute is a value. The domain of an attribute is the collection of all possible
values an attribute can have. The domain of Name is a character string.
Classifying Relationships
Relationships are classified by their degree, connectivity, cardinality, direction,
type, and existence. Not all modeling methodologies use all these classifications.
Degree of a Relationship
The degree of a relationship is the number of entities associated with the
relationship. The n-ary relationship is the general form for degree n. Special cases are
the binary, and ternary, where the degree is 2 and 3 respectively.
Direction
The direction of a relationship indicates the originating entity of a binary
relationship. The entity from which a relationship originates is the parent entity; the
entity where the relationship terminates is the child entity.
The direction of a relationship is determined by its connectivity type .An
identifying relationship is one in which one of the child entities is also a dependent
entity. A non-identifying relationship is one in which both entities are independent.
Existence
Existence denotes whether the existence of an entity instance is dependent upon
the existence of another, related, entity instance. The existence of an entity in a
relationship is defined as either mandatory or optional.
Generalization Hierarchies
A generalization hierarchy is a form of abstraction that specifies that two or more
entities that share common attributes can be generalized into a higher level entity type
called a super type or generic entity. The lower-level of entities become the subtype, or
categories, to the super type. Subtypes are dependent entities.
ER Notation
• Relationships are represented by a solid line connecting two entities. The name
of the relationship is written above the line. Relationship names should be verbs.
• Attributes, when included, are listed inside the entity rectangle. Attributes which
are identifiers are underlined. Attribute names should be singular nouns.
System design is the solution of a “how to approach to the creation of the new system.
It is composed of several steps. It facilitates the understanding and provides the
procedural details necessary for implementation of the system recommended in the
feasibility study. Emphasis is given on translating the performance requirements into
design specification. Design goes through logical and physical stages of development.
Logical design reviews the present physical system; prepares input and output
specification; make editing; security and control specification; details the
implementation plan, and prepare logical design walk through. The physical design
maps out the details of the physical system; plans the system implementation plan and
specifies hardware and software. System design translates the system requirement into
the ways of the system as recommended in the feasibility study. Thus the system design
is the translation from user-oriented document to a programmer or a database personal
oriented document. System design is a highly creative process that can be greatly
facilitated by the following:-
Very careful attention had to be given to input design, which is a major part of
the overall system design. In order to make the data entry as easy, logical and error free
as possible, specific standards had been followed. Validation checks, provided in the
system prevented the user in entering incorrect, erroneous data. This made sure that,
only valid data had been available for data processing. If valid data was entered, then
meaningful error messages had been prompted to enter correct data. The interactive
screen formats facilitate the entry of valid data.
Output, as you probably know, generally refers to the results and information
that are generated by the system. For many end-users, output is the main reason for
developing the system and the basis on which they will evaluate the usefulness of the
application. Most end users will not actually operate the information system or enter
data through workstations, but they will use the output from the system.
When designing output, systems analysts must accomplish the following.
• Determine what information to present
• Decide whether to display, print, or “speak” the information and select the output
medium.
• Arrange the presentation of information in an acceptable format.
• Decide how to distribute the output to intended recipients.
That alignment of information on a display or printed document is termed as layout.
Accomplishing the general activities listed above will require specific decisions, such
as whether to use preprinted forms when preparing reports and documents, how many
lines to plan on a printed page, or whether to use graphics and color.
The output design is specified on layout performs, sheets that describe the
location characteristics, and format of the column headings and pagination. As we
indicated at the beginning of this discussion, these elements are analogous to an
architect’s blue print that shows the location of each component.
Relational Model was proposed by E.F. Codd to model data in the form of relations or
tables. After designing the conceptual model of Database using ER diagram, we need
to convert the conceptual model in the relational model which can be implemented using
any RDMBS languages like Oracle SQL, MySQL etc.
Registration Page
Code efficiency has been achieved through proper validation using various methods in
PHP coding. Fist no data can be added, viewed, edited and d e l e t e d t o database
w i t h o u t l o g i n o r s e s s i o n . For t h i s w e h a v e implanted session tracking
techniques through PHP. Codlings have been used to validate various f o r ms to
ensure correct data should enter in database.
The war between data defenders and data thieves has been described as a cat-and-
mouse game. As soon as the white hats counter one form of black-hat malicious
behaviour, another malevolent form rears its ugly head. "There's been a lot of security
spending over the last several years, and yet the number of records breached in 2015
went up considerably over the prior year," noted 451's Crawford. "That's contributing
to the surge in interest in encryption."
5 emerging security technologies set to level the battlefield
Hardware authentication.
User-behavior analytics.
Data loss prevention.
Deep learning.
The cloud.
TESTING PROCEDURES
• System Testing: System testing is used to verify, whether the developed system
meets the requirements.
• Acceptance Testing: Acceptance is the part of the project by which the customer
accepts the product. The system under consideration is tested for user acceptance
by constantly keeping in touch with the system users at time of developing and
making changes whenever required.
We hope that after the acceptance testing the system will perform the best result for the
organization. When modification will be made, we will use regression testing during
the maintenance of the system.
The Software System delivered to the customer may undergo changes. Changes may be
due to addition of new functional modules or performance enhancement .For this
purpose proper maintenance of the system is must.
Expected outcome : The user should not get register any record
without filling all necessary fields and some error
message follow
The user should not get registered again with
same member id
Expected outcome : The user should not add payment of any one
member’s
payment in another’s payment record. Without
filling all necessary fields and some error message
will be followed.
Software development is never –ending process and continues the life of the
software as per the changing needs of the user from time to time. The project is no doubt
has been developed keeping in mind easy modification and enhancement that may be
required from time to time.
However, there are many scopes to modify this software. As because due to
shortage of time, I here become unable to include many things. I am trying to cover all
their existing system for keeping records of the members enrolls but due to shortage of
time we become unable to include many things. Due to lack of time I here include none
of them and a future scope one can develop these returns which are so much essential.
Only with a little more doing it is possible to design the formats for those returns.
Moreover, an on-line system will be more helpful to the organization. With almost the
same data with only a little modification an on-line system can be designed to fulfill
their demands. All these can be considered to be future scope for this project.
CONCLUSION
It is hoped that this project will help the future developers to modify and
implement the system. After modifying some techniques of the programs, it will give
us the best performance as our requirements. The project will be very useful for the
users.