You are on page 1of 25

SOFTWARE REQUIREMENT SY

FITNESS CHALLENGE

Prepared for
ABHISHEK BHATTACHARYA

PREPARED BY
AKHAND PRATAP SINGH CHANDEL, 12313560

0
TABLE OF CONTENT
Chapter 1.............................................................................................
Introduction of Xtreme Fitness ..............................................................................................
Chapter 2 ............................................................................................................................
System Analysis ..................................................................................................................
Android Studio ..............................................................................................................
Firebase .........................................................................................................................
Existing system of Xtreme Fitness: ................................................................................
Proposed system of Xtreme Fitness: ..............................................................................
Requirement ..................................................................................................................
Software Requirement Specification ...........................................................................
Hardware Requirement Specification..........................................................................
Chapter 3 ............................................................................................................................
System design ....................................................................................................................
Working Module ...........................................................................................................
Data Dictionary .............................................................................................................
Use case Diagram ..........................................................................................................
Class Diagram ...............................................................................................................
E-R diagram ..................................................................................................................
Activity Diagram ...........................................................................................................
Dataflow Diagram ........................................................................................................
Chapter 4……………………………………………………………………………………..
Unit Testing……………………………………………………………………………
Integration Testing……………………………………………………………………..

1
Chapter 1 INTRODUCTION
The main objective of the Gym Application is developed to override the problems
prevailing in the practicing manual system. This application is providing a system which is
use to maintaining their health care. It take care of all their fitness and also keeps the data of
everyday’s gym exercise. The purpose of the project is to build an application program to
reduce the time and money. We can easily get the list of all exercise and also we have
complete details for some particular fitness exercise. It can assist the user to concentrate on
their fitness.
The project is completely built at administrative end and thus only the administrator is
guaranteed to access. The application is decreased as much as possible to escape errors while
entering the data. It also provide error message while entering worthless data.
To understanding the requirements and new generation capabilities we have chosen
“Android Studio” as front –end and “MYSQL lite” as back-end. Android Studio is the official
combined development environment for Google’s Android operating system, built on

2
JetBrains IntelliJ IDEA software and designed exactly for Android development. It is
available for download on Windows, macOS and Linux based operating operating systems.
MSQL- an Open-source relational database management system (RDBMS), also the
most popular one. SQLite: a relational database management system which is not client-
server built. It's doesn't need a server to setup and run. Functionalities of GYM application

are as follows:-
A Personalized experience:-When it’s about tracking the user activity and further assessing
the user’s fitness, the application needs to have user’s personal information like, age, height,
gender, and weight.
Integrate geolocation:-This characteristic allows the user to track his walking routes, and to
build them and record workouts.

Push notification system and reminder:-Anyone who is working out daily would never want
to miss a session. However, keeping up with the busy lives; sometimes it, does slips out of
our mind. In such cases a push notification from the app can be very helpfull to remind us of

our workout session.

Gamification :-We all have hard pressed five crunches or pushups the moment gym plays our
favorite song. Moreover, we tend to push ourselves more whenever there is a mark to reach.

Sleep Traker :-This is must add characteristic looking at the busy lifestyle today. The attribute
tracks the time user didn’t get the sound sleep. This specifies the moments he is active during
sleep.

Report of Gym Application :-


It creates the report on Gym, Trainer, Time Slot.
Impart Filter report on characteristic, member, Fitness Class.
You can easily export PDF for the GYM, Time slot, Facility.
Application also creates large export for Trainer, member, Fitness class

Report generation :- 
Balance Report
• Trial Report
• Upgrade Report

3
• Access Control
• Client Database Report
• Calendar Report

Chapter 2
Survey of Technology
2.1 Android Studio

The Android Studio IDE is able to download and use. It has a rich UI development
environment with templates to give new creator a opening pad into Android development.
Developers will find that Studio gives them the tools to build phone and tablet mixture as
well as arrival technology solution for Android.

Android Studio is purposeful to be used by development teams as small as one person or as


big as global teams. The Android Studio IDE can be connected to big teams with GIT or same
version control services for larger teams. Mature Android designer will find tools that are
essential for large teams to deliver solutions rapidly to their customers. Android mixture can
be develop using either Java or C++ in Android Studio. The workflow for Android Studio is
built around the concept of continuous integration. Continuous Integration agrees for teams to
test their code each and every time a developer checks in their work. Issues can be apprehend
and reported to the team immediately. The concept of repeatedly checking code provides
actionable feedback to the developers with the goal of releasing versions of a mobile solution
faster to the Google Play App Store. To finish this, there is rigorous support for LINT tools,
Pro-Guard and App Signing tools.

4
Android Studio was stated on May 16, 2013 at the Google I/O conference. It was in early
approach preview stage starting from version 0.1 in May 2013, then entered beta stage
starting from version 0.8 which was released in June 2014. The first stable build was
launched in December 2014, starting from version 1.0. The current stable version is 3.2.1,
which was released in October 2018.

Features of Android Studio:-


• Gradle-based build support
• Android-specific refactoring and quick fixes.
• Lint tools to catch performance, usability, version compatibility and other problems 
ProGuard integration and app-signing capabilities
• Template-based wizards to create common Android designs and components.

2.1.1FIREBASE:-
Firebase is a mobile and web application development platform developed by Firebase, Inc.
in 2011, then acquired by Google in 2014.As of October 2018, the Firebase platform has 18
products, which are used by 1.5 million apps.

Firebase evolved from Envolve, a prior startup founded by James Tamplin and Andrew Lee in
2011. Envolve provided developers an API that enables the integration of online chat
functionality into their websites. After releasing the chat service, Tamplin and Lee found that
it was being used to pass application data that weren't chat messages. Developers were using
Envolve to sync application data such as game state in real time across their users. Tamplin
and Lee decided to separate the chat system and the real-time architecture that powered it.
They founded Firebase as a separate company in September 2011 and it launched to the
public in April 2012.

Firebase's first product was the Firebase Realtime Database, an API that synchronizes
application data across iOS, Android, and Web devices, and stores it on Firebase's cloud. The
product assists software developers in building real-time, collaborative applications.

2.2 Existing system of Gym Application:


In the existing system the work are done manually but in proposed system we have to
computerize the work using this application

• More man power.

5
• Time consuming.
• Consumes large volume of pare work.
• Need manual calculations.
• No direct role for higher officials.

6
2.3 Proposed system of Gym Application:
The aim of proposed system is to develop a system of improved facilities of the system. The
proposed system can overcome all the limitations of the existing system. The system provides
security and reduces the manual work.

1. Security of data.
2. Better service.
3. Proper control of the higher officials.
4. Minimize manual data entry.
5. Minimum time needed for the various processing.
6. Greater efficiency.
7. Ensure data accuracy’s.
8. Minimum time required.
9. User friendliness and interactive.

7
2.4 Requirement Analysis

2.4.1 Software Requirement Specification


The software requirement specification is produced at the the culmination of the analysis task.
The functions and performance allocated to software as part of engineering system are refined
by establishing a complete information description, a detailed functional and behavioral
description, an indication of performance requirements and design constraints, appropriate
validation criteria, and the other data pertinent to requirements.

The proposed system has the following requirements:


• System needs to maintain quality record.
• System needs to keep the records of Employee.
• System needs to update and delete the record.
• System also needs a search area.
• System needs a security system to prevent data.

Specification
Name of component

Operating system Andriod Version 4.0 and above

Language Java

Database SQLite

Database driver JSON

8
2.4.2 Hardware Requirement Specification

Name of component Specification

Sanpdragon 400 and above, Media tek


Processor P20 and above

RAM 1GB or more

Storage 2GB or more

Display Touch Screen

CHAPTER 3

System Design

9
3.1 Workout Module
The main need for the development this module is to manage of the all workout data. We
provide full workout module to help the user about fitness tips. So all excercise will be
managed by the developer and can see the list of data of all the exercise he/she as done at that
particular day & filter according to the His/Her satisfaction. All the details of each exercise
and how to perform the exercise is been provided by this module

Training Exercise Module for Beginners


• Hip-dominant (deadlifts, hinges, and swings)
• Knee-dominant (squats and lunges)
• Pushing movements (push, and presses)
• Pulling movement (rows and pullups)
• Gait pattern, such as walking and running

Admin Enquiry Module


The main purpose of developing this module is to manage the all enquiry will be managed by
admin and user be able to see the enquiry.

• Admin can manage the all enquiry


• Admin can edit and delete of the enquiry
• Admin can also see the all list of all enquiry
• Users can see enquiry on user side

3.2 Data Dictionary

10
This is usually represented as the data about. It is also termed as metadata some times which
give the all data about the data stored in database .it defines each data term encountered
during the inspection and design of new system. Data elements can report all the files or the
operation. Following some major symbols in the data dictionary

=equivalent to

+ and

[] either/or

() optional entry

Following some vital symbols in the data dictionary which defines the construction of data
dictionary entries:

1. Words should be defined to understand for what they need and not the variable need
by which they may be report in the program.
2. Each word must be different but We cannot have two definition of the same client at
time
3. Aliases or synonyms are permit when two or more enters show the same meaning for
example a vendor number may also be called as customer number
4. A self-defining word should not be decay it means that the reduction of any
information in to subpart should not be decomposed it means that the reduction of any
information in to subpart should be done only if it is really required that it is not easy
to understand directly
5. Data dictionary comprise information such as the Number of records save in the file,
of the frequency of a process will run, security factor like pass word which user must
enter to get excess to in the information

USER DETAILS

Data Type Null Primary Key Description

11
User Id Varchar(20) Not Null Yes Unique name
Password Varchar(30) Not Null No Password
should have
special
character,
number,
capital letter
Phone Int Allow Null No To contact
Number with user
Email Varchar(30) Allow Null No To contact
with user

BMI DETAILS
Data Type Null For Key Description
Height Float Not Null Yes Height of
user
Weight Float Not Null Yes Weight of
user

3.3 Use case Diagram


A use case diagram at its simple to be a representation of a user's interaction with the all
system that shows the relationship between the user and the different use cases in which the
user is involved. A use case diagram can easy to identify the different types of users of in
system and the different use cases and will often be any other types of diagrams as well.

The use case model for any system consists of the “use case”. Use cases represents different
Ways in which the system can be used by the user.

12
Application
While a use case might drill into a lot of detail about every possibility in a use-case diagram
can help provide a higher-level of view of the system. It has been said before that the Use
case diagrams are for your system. They provide the simple and graphical representation of
what the system must be actually do something.

Due to their simplistic nature, use case diagrams can be a good communicating with each tool
for stakeholders. The drawing attempt to the real world and provide a view for the
stakeholder to understand the system is going to be designed. Siu and Lee conducted research
to determine if there was a valid and situation for use case diagrams at all or if they were
unnecessary What was found was that is the use case diagrams conveyed the intent of the
system in a more simple manner to stakeholders and that they were interpreted completely
than class diagram.

The need of the use case diagrams is simple they provide the low level of the vision of
system and convey the requirements in laypeople's terms for the stakeholders. Additional
diagrams and document can be used to be provided by a complete functional and technical
view of the system.

In the use case diagram each use case is represented by an ellipse with the name of use case
written inside the ellipse. The Different users of the system are represented by using stick
person icon.The stick person icon normally referred to as an Actor.The line connecting the
actor and the use cases is called the communication relationship. When a stick person icon
represents an external system it is annotated by the stereo type <<external system>>.

13
Use case diagram of Gym Application

3.4 Class Diagram


In software engineering, a class diagram is the Unified Modeling Language (UML) is a type
of static structure diagram that describes the structure of a system by showing the systems
classes and their attributes operations and the relationships among objects.

14
The class diagram is the main building block of object oriented model It is used for the
general concept of the modeling of the systematically application and for the detailed of
modeling &translating the models into program code to Class diagrams can also be used for
data modeling. The classes use in the diagram represent both the main elements, interactions
& the application classes to be program.

In this diagram the classes are represented with the help of the boxes that contain three
compartments:-

1. The upper level of the compartment contains the name of the class. It is printed in
bold and centre and the first letter is capital.
2. The middle of the compartment contains the various attributes of the class. They are
left aligned and the first letter in lowercase.
3. The lower compartment contains the operations of the class can execute and They are
also left-aligned in the first letter is lowercase

A class with three compartments.

In the design of a system, the number of classes are identified in the grouped together in a
class diagram that helps to determine the static relations between each other. With detailed the
all modeling, the class of the concept to be design are often to split into a number of
subclasses.

In one manner to further describe the behavior of the systems, to be in the class diagrams can
be complemented by the state diagram or UML state machine.

15
Class diagram of Gym Application

3.5 E-R diagram


An entity relationship of the model is usually the result of systematic analysis to be define
and describe what is the important processes in the area of a business. It does not define the
business processes it only presents a business data schema in graphical form. It is usually
drawn in a graphically form as boxes that are connected by lines which express the
associations and dependencies between entities. An ER model can also be expressed in a
verbal form, one building may be divided into two or three apartments, but one apartment can
only be located in one building.

16
Entities may be in the character is not only the relationships but also it is also additional
properties which can be include identifiers it is called as primary keys Diagrams created to be
represent attributes as well as the entities &relationships may be it is called as entity attribute
relationship diagrams, rather than the entity relationship models.

An ER model is typically implementing as a database. In the simple relational database


implement in each row of a table which are shows in one instance of an entity type and each
field in a table represents the attribute of this type. In a relational database in a relation
between entities is implemented by sort sing the first key of the one entity as a pointer or
"foreign key in the table of another entity model of relationship.

There is a tradition for ER diagram data models to be built in two or three levels of
abstraction. Note that the conceptual logical-physical hierarchy below is used in other kinds
of specified and is different from of they are three schema approach to be in software
engineering.

Physical data model


One or many physical Entity Relation models may be developed from each logical ER model.
The physical ER model is normally developed and instantiated as a database. Therefore, each
physical ER model must contain take a detail to produce a database and each physical ER
model is only for based on technology dependent model since each database management
system is any ware any time in different phase.

The physical data model is normally instead in the structure of a database management
system as a relational database management system in objects such as database tables,
database indexes, such as unique key indexes, and data base such as a foreign key constraint
or a commonly in . The ER model is also normally used in to the design modifications
implementation to the relational database objects and to maintain the structural of the
database.

17
Entity relationship Diagram of Gym Application

18
19
3.7 Dataflow Diagram
A data flow diagram data flow diagram is a graphically represented of the flow of data
through the information of the system modeling it’s all process take a time in data flow
diagram A DFD is often used as a first step to create an overview of the system without going
into get all over detail which can later be. Use in Data flow diagram can also be used for the
visualization of data processing structured design

A data flow diagram shows what kind of information will be input and output given from the
system of the DFD. How can I the data will be advance through the system and whenever the
data will be stored. In any system of DFD. It does not show any information about process
timing or other processes will be operate in one manner in parallel or traditional structured
of a flowchart which focuses on control of flow in UML activity workflow diagram, which
presents the both of control data flows as a unified model.

Data flow diagrams are also called as bubble flow of charts. In Data flow diagram is a design
the tool to be used in the down-to upper approach to Systems Design. This Data Flow
Diagram are in next exploded to the produce will be showing that shows some of the detail of
the system being modeled. The data flow diagram shows how the system are divided into any
other system to be connected processes the each of which deals with one or more of the data
flows to or from an internal agent, and which together provide all of the functional in the
system as a whole.to be coroneted It also identification of internal data stores that can be must
be present in one of the system to do its job very well and shows all flow of data between the
any other type of parts of the system.

20
Dataflow Diagram of Gym Application

Chapter 4
Implementation and Testing Phase Code

Login XML file

21
Login Java file

Unit Testing

Unit testing is a method by which individual units of source code are tested to determine if
they are fit for use. A unit is the smallest testable part of an application like functions
procedures, classes, interfaces.

22
Unit tests are typically written and run by software developers to ensure that code meets its
design and behaves as intended.

The goal of unit testing is to isolate each part of the program and show that the individual
parts are correct. Unit tests find problems early in the development cycle.

After the development of all modules, we first go for Unit testing. In Unit testing, we check
that all the modules are working properly as individual. If there is no any error in Unit testing
than we go for Integration Testing.

Unit testing is a level of the software testing process where individual unit/components of a
software/system are tested. The purpose is to validate that each unit of the software performs
as designed.

A unit is the smallest testable part of software. It usually has one or a few input and usually a
single output. In procedural programming a unit may be an individual program, function,
procedure etc. In object-oriented programming, the smallest unit is a method, which may
belong to a base/super class, abstract class or derived/child class.

Unit testing is the process of testing an individual, low-level program in an isolated


environment before testing its integration with other units. Unit testing verifies the code
object matches the technical design, properly handles the data and the available paths through
the software execute reliably. This testing is typically performed on the developers’
workstations, and then repeated on the server-based development environment. Limited
interfacing of components is likely to occur in this phase by a developer.

Integration Testing

Integration testing in the software testing model comes before system testing and after the
unit testing has been done.

The way that integration testing works is by, getting the individual modules that have been
through the unit testing phase and integrating each module into a group. The integration
testing phase will make sure when the modules are being integrated together that any

23
problems, for example errors or bugs, caused due to the integration of the modules are
eliminated

24

You might also like