Documente Academic
Documente Profesional
Documente Cultură
PROJECT REPORT
ON
“HIMALAYAN”
SUBMITTED BY
SAGAR ACHARYA (15070285)
SAROJ TAMANG (15070286)
SUJAN GURUNG (15070292)
TSHERING TAMANG (15070294)
SUPERVISOR
i
Date: 07 Feb. 2018
CERTIFICATE
A Project Report
on
“Himalayan”
Submitted by:
SAGAR ACHARYA (15070285)
SAROJ TAMANG (15070286)
SUJAN GURUNG (15070292)
TSHERING TAMANG (15070294)
Member ------------------------------------
(Name)
HOD, Computer Engineering
Member --------------------------
(Name)
Supervisor
Member ---------------------------------
(Name)
External Examiner
ii
ACKNOWLEDGEMENT
The project would not have been successfully completed without the
whole-heartedly dedication and devotion from each of our project
member. The members were very ardent toward the project and Surrender
their vital time to accomplish the project within the schedule time by
sharing knowledge about different aspect to make the project efficient
and effective to use.
We would like to acknowledge our gratitude towards our seniors and our
honourable teachers who had accelerated and encouraged us during the
development of the project by giving conceptual view for which we had
no experience, also like to thank our Head of Department and other
faculty members of computer in vigorous support and kind guidance. We
wanna thanks all our friends and people who directly or indirectly
assisted us in our work until the completion of our Himalayan Project.
Sagar Acharya
Saroj Tamang
Sujan Gurung
Tshering Tamang
iii
PAGE INDEX
ABSTRACT ................................................................................................................viii
CHAPTER 1 .................................................................................................................. 1
INTRODUCTION ......................................................................................................... 1
1.1 Introduction .............................................................................................................. 1
1.2 Project Background .................................................................................................. 1
1.4 Problem Statement ................................................................................................... 2
1.5 Objectives ................................................................................................................ 3
1.5.1 Main Objective .................................................................................................. 3
1.5.2 Specific Objective ............................................................................................. 3
1.5.3 Project scope, boundaries and limitations ......................................................... 3
1.6 Significance of project ........................................... Error! Bookmark not defined.
CHAPTER 2 ................................................................ Error! Bookmark not defined.
LITERATURE REVIEW ............................................ Error! Bookmark not defined.
CHAPTER-3 ................................................................ Error! Bookmark not defined.
PROJECT METHODOLOGY..................................... Error! Bookmark not defined.
3.1 Introduction ............................................................ Error! Bookmark not defined.
3.2 Project Methodologies ........................................... Error! Bookmark not defined.
3.2.1 Waterfall model ............................................... Error! Bookmark not defined.
3.2.2 Spiral Model .................................................... Error! Bookmark not defined.
3.2.3 Spiral Model and waterfall model Phases ..... Error! Bookmark not defined.
3.3 Gant Chart .............................................................. Error! Bookmark not defined.
3.4 Conclusion ............................................................. Error! Bookmark not defined.
4.2 Functional Requirements ....................................... Error! Bookmark not defined.
4.3 Non-Functional Requirements ............................... Error! Bookmark not defined.
4.4 Application Perspective ......................................... Error! Bookmark not defined.
4.5 Requirements Analysis .......................................... Error! Bookmark not defined.
4.5.1 Use of case diagram ........................................ Error! Bookmark not defined.
CHAPTER 5 ................................................................ Error! Bookmark not defined.
DESIGN AND IMPLEMENTATION ........................ Error! Bookmark not defined.
5.1 Introduction ............................................................ Error! Bookmark not defined.
5.2 System Design ....................................................... Error! Bookmark not defined.
iv
5.3 System Requirement .............................................. Error! Bookmark not defined.
5.4 Technology Choices............................................... Error! Bookmark not defined.
5.5 System Architecture ............................................... Error! Bookmark not defined.
5.6 Deployment diagram .............................................. Error! Bookmark not defined.
5.7 User Interface sketches: ......................................... Error! Bookmark not defined.
5.8 Database Schema ..................................................................................................... 6
5.9.1GYM................................................................................................................... 7
5.10 Implementation ...................................................................................................... 7
5.11 Software and tools................................................ Error! Bookmark not defined.
5.11.1 MySQL database ........................................... Error! Bookmark not defined.
5.11.2 Android.......................................................... Error! Bookmark not defined.
5.11.3 Dalvik Virtual Machine and Android Applications ..... Error! Bookmark not
defined.
5.11.4 Java and XML ............................................... Error! Bookmark not defined.
5.11.5 The Dex File Format ..................................... Error! Bookmark not defined.
5.11.7 Applications .................................................. Error! Bookmark not defined.
5.11.8 Application Framework................................. Error! Bookmark not defined.
5.11.9 Android Runtime ........................................... Error! Bookmark not defined.
5.11.10 Linux Kernel ............................................... Error! Bookmark not defined.
5.11.11Platform-Independent Mobile AD Tools ..... Error! Bookmark not defined.
5.11.12 App Stores ................................................... Error! Bookmark not defined.
CHAPTER-6 ................................................................................................................ 19
TESTING AND DEBUGGING .................................................................................. 19
6.1 Introduction ............................................................................................................ 19
6.2 Purpose of testing ................................................................................................... 20
6.3 Importance of testing ............................................................................................. 20
CHAPTER-7 ................................................................................................................ 21
LIMITATION .............................................................................................................. 21
CHAPTER-8 ................................................................................................................ 23
CONCLUSION ............................................................................................................ 23
v
FIGURE INDEX
vi
TABLE INDEX
vii
ABSTRACT
viii
CHAPTER 1
INTRODUCTION
1.1 Introduction
This chapter introduces to the readers, developers, reviewers and all who involved in
software development idea, motivation, objectives, scope and limitations of
developing a collaborative enterprise project management application for software
projects.
Life is full of science and knowledge produced by the minds of men, The God-given
all these minds of inspirations, sciences and the rule, where the science is the light of
life, and you know the rights of the creator, and how to communicate with users of the
community in the field of engineering, medicine, modern technology and etc.
Nowadays mobile is becoming an important tool, it is no longer limited as a
communication service only, but exceeds its position to provide modern techniques
and many services. Mobile technologies are increasingly growing among years; there
have been several new researches and developments in this space. The mobile
applications allows users to communicate with each other, co-ordinate among
members and there can be different other usage that fulfils the desire of modern
people. The mobile applications users can use and view services of different
categories, and take a services. Using mobile technologies we hope to make the
operation of information share more efficient by saving time and communicate faster.
Himalayan is a mobile application on android that enables users to use and view
services of different categories and shares information within the members.
1.3 Project motivation
To spread usability of smart phones to facilitate people's needs as opportunity
encourage us to make a solution mobile application. Today wide ranges of people are
switching from using computer-based applications towards mobile applications
increasingly, to save time and effort in doing many of their daily activities. The
overall mobile app industry has only seen a 33% increase. The problems of wasting
data written on paper causing need of alternative system to facilitate and save people's
1
data and their time. Especially it was developed to facilitate the Administration
Department of Gym Centre.
1.4.2 Myfitnesspal
Myfitnesspal is a free smartphone app and website that tracks diet and exercise to determine
optimal caloric intake and nutrients for the users' goals. In a Consumer Reports diet rating,
MyFitnessPal was rated the best free program (with 83 points) in overall satisfaction,
"maintenance, calorie awareness, and food variety.
In the modern era there has been a need of portable as well as faster device where we
can make a use our mobile technologies. In the management point of view keeping
record in a hardcopy/paper is such a dizzy work and with having to go through each
record of a very long list is a total headache. Our software allows the gym owner to
store record on his/her phone and present him/her with the outcome, with all work
described by him/her done within the system therefore making his/her work simple.
By analyzing managerial activities and for an attempt to enhance the management
system reducing the effort for the administrator a mobile application for the gym
management was proposed.
2
There are lot of applications that are interested in health, fitness and nutrition, but few
of them are concerning about sustaining management activities that’s the big reason
behind the initiation of the project
1.5 Objectives
The main objective of the project is to develop software that facilitates the
data storage, data maintenance and its retrieval for the gym in an igneous
way.
To store the record of the members. Also, only the administrator has the
privilege to access any database and make the required changes, if necessary.
It makes gym owner as well as members comfortable for managing overall gym
activities.
App usage must be compulsory to all member to take part in discussion and get
important announcement from the gym owner. It also needs Internet for it to run
3
CHAPTER-2
SYSTEM ANALYSIS AND DESIGN
Before we started working for project, we make study about the existing
technology in intrusion detection system and the importance of our project in the
current situation. We analyze about features to be included and also studied about
feasibility of the project.
The scheduled time for the accomplishment of the project was two month and
was enough to finalist the project. However, examination and other activities can
sometimes make us bustle which obstacle on project completion beside of that
project is feasibility on schedule.
4
2.2 System Design & Implementation :
In the design phase the interface designer formally defines the application and
rechecks to ensure all bases are covered, we consider all the parameter
necessary for building a successful application including design concepts,
functionality, and timeline. We create static mock ups of most screens for the
client entering the application development phase. System design is the process
of defining the architecture, components, modules, interfaces, and data for a
system to satisfy specified requirements. After specified all requirements
extreme design relies on test driven development, which design phase still
under users test to reach desired design. After well understood of requirements
Android mobile application Himalayan gym design explain main classes and
their responsibilities and collaborators, after that system architecture designed
for all components until reaching design of user interfaces that frequently
changing under users testing.
The data recording process in this project can be explained using this simple
block diagram for Gym management system
The procedure for data storing about the members and management of the system
can be explained below:
5
can remove those whose time has already terminated and can add the days
if fee is paid.
2.2.1 Members:
This application uses login where both administrator and members after login can be
accessed to different platform. Administrator can see detailed information and can
manage overall activities whereas members only can view their status and others
information as well.
2.2.2 Discussion:
Through the application, user or gym members can have conversation with each other
and can share information related to gym stuffs like diet planning, information related
to proteins, body building programs etc. Members and Gym owner can have
interaction with each other. Beside all this discussion section can also be used as
online chatting.
2.2.3 Information:
In here users can find the information about gym equipments. They can learn how to
use the equipment and they can know where to use it. This apps provide knowledge
about easy use of gym equipment that benefit for beginners who don’t know the
functionality of those equipment.
Entity Relationship Diagram (ERD) is very important and the first step in designing
database after understanding requirements well, we design the ERD which leads to
good mapping.
Name of the table User Table description This table handle the information for the
6
User Attribute Type Example User_idInt 1 First_nameVarchar(50)
sujanLast_nameVarchar(50) sujanUser_nameVarchar(50) sujan Password
Varchar(50) F45h788% Email Varchar(255).
5.9.1 GYM
This table handle the information for the GYM Attribute Type Example gym_idInt 1
Name Varchar(50) Royalfitnees Longitude Float 37.8 Latitude Float 35.9 Primary
Key gym_id
5.10 Implementation
The implementation phase takes the requirements and design phase product and
implements them using appropriate technologies. In the case of validation testing, it is
during this phase that test cases are completed and automated in preparation for
validation testing. Typically, a lot of testing on the early system versions is also
performed during this phase, not only to validate the system, but to validate that there
are no problems with the test cases themselves.
A program will write based upon the algorithm designed in the last phase (design). A
piece of code is written for every module and checked for the output. We will use the
Java for android to develop the software. At this phases must match between the
requirements and the output of the application to determine the verification for it. As
mentioned, the implementation language will be Java because mostly Android
applications are written in it.
2.3.1 Introduction
“In this Section, the functional and non-functional requirements are introduced using
the Unified Modeling Language (UML) which is an open method used to specify,
Visualize, construct and document the artifacts of an object-oriented software-
7
intensive system under development. UML offers a standard way to write a system's
blueprints, including conceptual components.”
Statements of services the system should provide, how the system should react to
particular inputs, and how the system should behave in particular situations.
8
2.3.2.2 Safety Requirement
In this system, the database must be located in a special secure server and must
be backups to other servers directly at specific times to avoid loss and damage
data.
2.3.2.3 Usability Requirement
In the system, the user interface must be familiar to user, so that the user can
easily do his tasks without any training or help.
2.3.2.4 Availability Requirements
The system should be available at all times, meaning the user can access it using
a device application.
2.3.2.4 Flexibility Requirements
The system must be able to add or delete features because it is based on object
oriented concept.
2.2.2.1 Maintainability Requirements
By using the concept of Object Oriented Programming (OOP) that make
us to upgrade of the project and to find the problems easier.
9
4.5.1 Use of case diagram
A use case diagram is a graphic depiction of the interactions among the elements of a
system. A use case is a methodology used in system analysis to identify, clarify, and
organize system requirements.
Himalayan has one main actors including (user), which have many different processes
in integrated system to run the whole system.
The user who is the main actor in Himalayan project, he can do some of the process:
1. Login: Open the project Himalayan ,The project checks if the mobile or PDA that
is supported Android platform connected to the internet or not, if yes open the project
if they are registered or added by the administrator.
2. Register (sing up): Administrator himself will register for the members and send
them the login information via sms.
10
3. View profile: After registration or login steps user can enter and view contents
inside our application.
4. Update profile: Only Administrator is capable of updating the users profile and
validate members membership.
The application will use a database and web servers that can be accessed with
any android device connect with Wi-Fi connection. The users who can use this
application are just the registered users and have password. After registering,
users can see others profiles, can participate in discussion, comment, learn
about equipments etc.
The hard drive containing the project code and documentation crashes (can be
mitigated by keeping multiple backups of all code and documentation).
One of the team members falls ill and cannot work (can be mitigated by
constantly informing each other of what the other is doing.so he may take over
the other's work until the ill team member has recovered).
11
Chapter-3
PROJECT METHODOLOGIES & SYSTEM MODELLING
3.1 Implementation Methodology We follow the MVC design pattern for developing our
system. Model–view– controller (MVC) is a software design pattern for implementing user
interfaces on computers. It divides a given software application into three interconnected
parts, so as to separate internal representations of information from the ways that
information is presented to or accepted from the user.
Model: The model manages the behavior and data of the application domain, responds to
requests for information about its state (usually from the view), and responds to instructions
to change state (usually from the controller).
Controller: The controller interprets the mouse and keyboard inputs from the user,
informing the model and/or the view to change as appropriate.
12
3.2 Models Used
The waterfall model is a relatively linear sequential design approach for certain areas
of engineering design. In software development, it tends to be among the less iterative and flexible
approaches, as progress flows in largely one direction ("downwards" like a waterfall) through the
phasesofconception,initiation, analysis, design, construction, testing, deploymentand maintenance.
The waterfall development model originated in the manufacturing and construction industries;
where the highly structured physical environments meant that design changes became
prohibitively expensive much sooner in the development process. When first adopted for
software development, there were no recognized alternatives for knowledge-based creative
work.
13
A waterfall model begins with requirements analysis and the requirements of the system are
defined in detail. The user is interviewed in order to know the requirements of the system.
When requirements are known, a preliminary design or quick design for the system is created.
It is not a detailed design and includes only the important aspects of the system, which gives
an idea of the system to the user. A quick design helps in developing the prototype. Build
prototype phase Information gathered from quick design is modified to form the first
prototype, which represents the working model of the required system.
Next, the proposed system is presented to the user for thorough evaluation of the prototype to
recognize its strengths and weaknesses such as what is to be added or removed. Comments
and suggestions are collected from the users and provided to the developer.
Once the user evaluates the prototype and if he is not satisfied, the current prototype is refined
according to the requirements. That is, a new prototype is developed with the additional
information provided by the user. The new prototype is evaluated just like the previous
prototype. This process continues until all the requirements specified by the user are met.
Once the user is satisfied with the developed prototype, a final system is developed on the
basis of the final prototype.
5. Design
In the design phase the interface designer formally defines the application and re checks to
ensure all bases are covered, we consider all the parameters necessary for building a
successful application including design concepts, functionality and timeline. We create static
mock ups of most screens for the client before entering the application development phase.
6. Implementation
Application development phase begins with designing the user Interface (UI) and then coding
it in minimum time. The prototypes of the application are subject to client approval on a
regular basis. Server component must be involved, in parallel engage resources to improve
development efficiency. As quality assurance is a critical factor, we deploy several techniques
from code level to usability.
7. Testing
14
Throughout the whole development phase, the project team follows testing process to check
AMAHF application's functionality. They keep in touch with the client during development
phase to facilitate monitoring of the project. They have to healthy competition amongst the
other terms which strives to achieve quality beyond client requirements.
8. Maintenance
After the clients and end users approve the final product, it is fully put into operation. The
most important procedure by this phase is the maintenance process to ensure the software runs
without errors. In addition, we will consider having upgrades and additional feature onto
software. If there are new challenges to be tackled by the software, it is advisable to
incorporate them at the maintenance phase. Whereas there are so many variable along the
software development life cycle, it is, the maintenance phase that ensures the software runs on
new operating systems. Just like in other life cycles, software programs get to their final phase
where they are overhauled in for newer products.
A Gantt chart is a visual representation of a project schedule. A type of bar chart, a Gantt
charts show the start and finish dates of the different required elements of a project. Henry
Laurence Gantt, an American mechanical engineer, is recognized for developing the Gantt
chart. Gantt charts are useful in planning how long a project should take and helping to
sequence the events by laying them out in the order in which the tasks need to be completed.
Planning
Design
Days to
Implementation
Complete
Testing
Deployment
Follow-up
15
Fig 3.3: Gantt Chart
3.4 Conclusion
We introduce the project methodologies which is waterfall model, and define its phases and
what we did in each phase, including its advantages. Finally we added the gantt chart that will
be used in the project process
CHAPTER-4
CODING
The execution phase was developed based upon three phases that are
proposed in the chapter 3 management section. We require few hardware
and software interfaces for implementing these phases.
The software interface which is implemented in this project is done using
Android studio platform running in windows environment. The main aim
of the project is to store members information which is done using MySql
database and php script.
Many computer programs, including web-based programs like blogs, photo galleries
and content management systems need to store and retrieve data. For example, blog
software need to store the posts we write, and retrieve them when a visitor goes to our
site. Similarly, photo galleries store information about their pictures (for example, for
16
sites that allow users to rate the photos, the numerical rating for each picture is stored
in a database). Instead of reinventing the wheel and implementing their own system of
storing and retrieving data, these software simply use the specialized database
programs as mentioned earlier. To make it easy for other programs to access data
through them, many database software support a computer language called "SQL".
SQL was specially designed for such a purpose. Programs that want the database
software to handle the low-level work of managing data simply use that language to
send it instructions. There are many databases that support the use of SQL to access
their data, among them MySQL and PostgreSQL. In other words, MySQL is just the
brand of one database software, one of many. The same goes for PostgreSQL. These
two databases are very popular among programs that run on websites probably
because they are free, which is why we can often see one or both of them being
advertised in the feature lists of web hosts, as well as being listed as one of the
"system requirements" for certain web software.
4.2 Android
4.3 PHP
PHP is a server-side scripting language designed for web development but also used
as a general-purpose programming language. Originally created by Rasmus Lerdorf in
1994, the PHP reference implementation is now produced by The PHP Group. PHP
originally stood for Personal Home Page, but it now stands for
the recursive acronym PHP: Hypertext Preprocessor
PHP code may be embedded into HTML code, or it can be used in combination with
various web template systems, web content management systems, and web
frameworks. PHP code is usually processed by a PHP interpreter implemented as
17
a module in the web server or as a Common Gateway Interface (CGI) executable. The
web server combines the results of the interpreted and executed PHP code, which may
be any type of data, including images, with the generated web page. PHP code may
also be executed with a command-line interface (CLI) and can be used to
implement standalone graphical applications.
Android uses the Java class library to build applications for the Android software
environment. Java on Android makes use of XML for variables such as strings and
integers. XML is used to control the layout and style of an application. This separate
layer convention is similar to Hyper Text Markup Language (HTML) for content and
Cascading Style Sheet (CSS) in style. There are differences because of different
languages and functionalities since HTML is not a programming language as Java is.
However, from a conceptual level, this comparison can be made. As far as practical
aspects are concerned, Java defines the button's functionality, while XML defines the
buttons' text, color, font- weight, and size.
Although the hardware is not mandatory for developing a Himalayan application for
transferring the data from one end to another, HUBs, LAN and Routers are needed for
building the communication media from receiver
Android Studio 3.0.1 is used in the project for developing the application and Java is
used for execution. Xamp server was used for testing.
Model View Controller (MVC) technique was implemented while coding. It was used
18
for developing user interface. This is done to separate internal representations of
information from the ways information is presented to, and accepted from, the user.
CHAPTER-6
Software testing is more than just error detection; Testing software is operating the
software under controlled conditions to verify that it behaves “as specified”; to detect
errors, and to validate that what has been specified is what the user actually wanted.
19
Error Detection: Testing should intentionally attempt to make things go wrong
to determine if things happen when they shouldn’t, or if things don’t happen when
they should.
Validation looks at the system correctness – i.e. is the process of checking that what
has been specified is what the user actually wanted. [Validation: Are we building the
right system?]
In other words, validation checks to see if we are building what the customer
wants/needs, and verification checks to see if we are building that system correctly.
Both verification and validation are necessary, but different components of any testing
activity.
The definition of testing according to the ANSI/IEEE 1059 standard is that testing is
the process of analyzing a software item to detect the differences between existing
and required conditions (that is defects/errors/bugs) and to evaluate the features of the
software item.
1. Software testing is really required to point out the defects and errors that were
made during the development phases.
2. It’s essential since it makes sure of the Customer’s reliability and their
satisfaction in the application.
20
3. It is very important to ensure the quality of the product. A quality product
delivered to customers helps in gaining their confidence.
6. It’s important to ensure that the application should not result in any failures
because it can be very expensive in the future or in the later stages of the
development.
CHAPTER-7
LIMITATION
Every task should have some limitations so that "No software is perfect". However,
we tried to eliminate the problem as possible as we can. Beside of that some
limitations may despite from the project which is listed below:
Some limitations of this project are:
App usage must be compulsory to all member to take part in discussion and
get important announcement from the gym owner.
Internet connection must be available for app usage.
Users cant directly register and make necessary payment by themselves that
makes our app less flexible.
21
22
CHAPTER-8
CONCLUSION
In this 21st century, science and technology advance day by day which made life
simple and faster than ever. Because of that whole world is depends on computerized
and mobile system for personal.
Therefore, we decide to create software that helps to gym hall .This project will help
the gym owner to do register in unique way and also help for user to do post and
discuss on gym information topic as well as gaining information of gym equipment.
We have endeavored our 100% to this project to offer you the best we can. As
mentioned earlier, the hardware required for this project is a desktop computer or
laptop and android phone and the operating system is Microsoft windows XP or
above.
23