HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
Sample_ Project Report .pdf
1. A
CAPSTONE (Major) Project Report
on
The Little Guardian
at
Carina Softlabs Inc.
Submitted by
Aman Verma
Registration Number – 18MCA10007
Guided by
Mr. Vaibhav Shrivastava Dr K Venkatachalam
Project Manager (Carina Softlabs Inc.) Assistant Professor (Senior)
(External Guide) (Internal Guide)
Submitted in partial fulfillment of the requirement for
the degree of
“Master of Computer Applications”
Submitted to
School of Computing Science and Engineering
VIT Bhopal University
Bhopal (MP) – 466 114
June 2020
2. ii
VIT BHOPAL UNIVERSITY, M P - 466114
SCHOOL OF COMPUTING SCIENCE AND ENGINEERING
CANDIDATE’S DECLARATION
I hereby declare that the dissertation entitled “The Little Guardian" is my own work conducted under
the supervision of Dr K Venkatachalam, Assistant Professor (Senior), School of Computing Science
and Engineering at VIT University, Bhopal.
I further declare that to the best of my knowledge this report does not contain any part of work that
has been submitted for the award of any degree either in this university or in other university / deemed
university without proper citation.
(Aman Verma)
(18MCA10007)
This is to certify that the above statement made by the candidate is correct to the best of my
knowledge.
Date: 1 June 2020
Dr K Venkatachalam
Assistant Professor (Senior)
3. iii
VIT UNIVERSITY BHOPAL, M P – 466114
SCHOOL OF COMPUTING SCIENCE AND ENGINEERING
CERTIFICATE
This is to certify that the work embodied in this Capstone Project Report entitled “The Little
Guardian” has been satisfactorily completed by Mr. Aman Verma. Registration No. 18MCA10007
in the School of Computing Science and Engineering at VIT University, Bhopal. This work is a
bonafide piece of work, carried out under my/our guidance in the School of Computing Science and
Engineering for the partial fulfilment of the degree of Master of Computer Applications.
Dr K Venkatachalam
Assistant Professor (Senior)
Forwarded by Approved by
Dr Kanchan Lata Kashyap Dr Manas Kumar Mishra
Program Chair Professor & Dean
5. v
ACKNOWLEDGEMENT
The internship opportunity I had with Carina Softlabs Inc. was a great chance for learning
and professional development. Therefore, I consider myself as a very lucky individual as I
was provided with an opportunity to be a part of it. I am also grateful for having a chance to
meet so many wonderful people and professionals who led me though this internship period.
I am using this opportunity to express my deepest gratitude and special thanks to the Mr.
Vaibhav Shrivastava and Mr. Ajad Patel at Carina Softlabs Inc., Indore who in spite of
being extraordinarily busy with their duties, took time out to hear, guide and keep me on the
correct path and allowing me to carry out my project at their esteemed organization and
extending during the training.
The satisfaction and euphoria that accompanies the successful completion of any task would
be incomplete without the mention of the people who made it possible. If there is a driving
force that kept use going on in doing this project, it is the constant support of my internal
guide Dr K Venkatachalam. I present my sincere and heartiest thanks to him, for giving
me a patience hearing and clearing my doubts.
I would like to express my profound thanks to Dr Manas Kumar Mishra (Dean of SCSE)
for their support and encouragement towards me at every stage in successful completion of
my project and my degree.
Aman Verma
(18MCA10007)
6. vi
ABSTRACT
Most games have a number of different players and each player plays game which relates
to its own story. Now there are many players playing same type of game. So now the
game needs to be more interesting to attract the players.
This game does the same by creating a storyline and interesting gameplay. We use a
general concept for this purpose. In this game we designed a simple gameplay divided
into 300 or more levels. Player has to clear all levels in order to win game. Different
logics are used to make the game more interesting and easier.
Levels will be auto generated using JSON array coming from database. So, this game
will be infinite based on the algorithm to generate levels. It will be a server sided script
which will generate levels. There are various difficulty levels which increases with the
levels. There will be certain skills which player can unlock using coins and then can
upgrade. There are some upgrades available in the game, which will help user survive
longer. The game contains IAP (In App Purchase) to purchase coins and other stuffs.
The game monetization will be by interstitial and reward ad videos.
7. vii
TABLE OF CONTENTS
Inner first page .........................................................................................(i)
Declaration............................................................................................... (ii)
Certificate................................................................................................. (iii)
Internship Certificate ............................................................................... (iv)
Acknowledgement ....................................................................................(v)
Abstract….................................................................................................(vi)
Table of Contents….................................................................................. (vii)
CHAPTER 1................................................................................................................1
INTRODUCTION........................................................................................................1
1.1. Objective.................................................................................................................1
1.2. Proposed System…………………………………………………………………..1
1.3. Profile of the Problem. Rational/Scope of the Study……………………………...2
CHAPTER – 2 ………………………………………………………………………. 3
ORGANIZATION PROFILE ……………………………………………………….3
CHAPTER – 3 ………………………………………………………………………..5
PROBLEM ANALYSIS ……………………………………………………………..5
3.1. Product Definition............................................................................................................................5
3.2. Feasibility Study...............................................................................................................................5
3.2.1. Technical feasibility.............................................................................................5
3.2.2. Financial feasibility..............................................................................................5
CHAPTER - 4...............................................................................................................6
SOFTWARE REQUIREMENT ANALYSIS............................................................6
4.1. Technologies ...........................................................................................................6
4.1.1. Unity (Game Engine)...........................................................................................6
4.1.2. ASP.NET MVC ...................................................................................................6
4.1.3. C Sharp (C#) ........................................................................................................6
4.2. Tools Used...............................................................................................................7
8. viii
4.2.1. Visual studio ........................................................................................................7
4.2.2. MS-SQL Database ...............................................................................................8
CHAPTER - 5...............................................................................................................9
DESIGN ........................................................................................................................9
5.1. Wireframes .........................................................................................................................................9
5.2. Database Design....................................................................................................12
5.3. Data Flow Diagram (DFD) ...................................................................................15
5.3.1. Zero level ...........................................................................................................15
5.3.2. First Level DFD.................................................................................................15
CHAPTER – 6............................................................................................................16
IMPLEMENTATION ...............................................................................................16
6.1. Process Model Used..................................................................................................................... 16
6.2. Conversion Plan............................................................................................................................. 17
6.3. Post Implementation of Project and Maintenance ............................................................ 17
CHAPTER – 7............................................................................................................18
SYSTEM TESTING ..................................................................................................18
7.1. Testing Strategies.......................................................................................................................... 18
7.1.1. Unit testing.........................................................................................................18
7.1.2. Integration testing ..............................................................................................18
7.1.3. System testing....................................................................................................19
7.1.4. Acceptance testing .............................................................................................19
7.2. Testing Methods ............................................................................................................................ 19
7.2.1. White box testing...............................................................................................19
7.2.2. Black box testing................................................................................................20
7.3. Validation......................................................................................................................................... 20
7.4. Limitations....................................................................................................................................... 20
7.5. Test Results ..................................................................................................................................... 20
7.6. Demonstration/Screenshots...................................................................................21
9. ix
CHAPTER – 8............................................................................................................27
CONCLUSION ..........................................................................................................27
8.1. Current state of the project ........................................................................................................ 27
8.2. Remaining areas of concern...................................................................................................... 27
8.3. Technical and Managerial lessons learnt.............................................................................. 27
8.4. Future Scope ................................................................................................................................... 27
BIBLIOGRAPHY......................................................................................................28
REFERENCE…………………………......................................................................28
10. - 1 -
CHAPTER 1
INTRODUCTION
The game is based on an Arcade game called Pooyan. Storyline is pretty simple concluding as
follows. Once upon a time, there was a family living in woods, and then some monsters and demons,
steal away one of the kids. Father seek to take revenge by clearing the levels and finally freeing the
kid.
This game includes physics-based game mechanics.
1.1. Objective
Below are the objectives that shall be fulfilled post the execution of this project:
1. Target Audience - Make sure you know your customer. It’s an absolute must to have a
knowledge about your customer’s age group, gender etc.
2. Genre - The kind of game that is being developed. If the game targets the female
audience you really cannot make an FPS (First Person Shooter) game. It does not make
sense.
3. Game Mechanics - They form the core of the game. Mechanics are basically how
different components integrated in your game will function.
4. Characters/Story line - If it’s a Role-Playing Game, what characters should be created,
what powers are assigned to them etc.
1.2. Proposed System
This project is aimed at:
To provide attractive design and interesting story.
It has easy game mechanics which allows all age group players to play all levels without
any difficulty.
Providing options for players to upgrade skills, lift, arrows according to their need.
To provide high-end graphics for latest devices
To provide different themes and characters, which maintains the continuous play.
Providing playability on all platforms like Android, iOS, Tablet, Windows, etc.
11. - 2 -
1.3. PROFILE OF THE PROBLEM. RATIONALE/SCOPE OF THE
STUDY
Most games have a number of different players and each player plays game which relates to its
own story. Now there are many players playing same type of game. So now the game needs to
be more interesting to attract the players.
This game does the same by creating a storyline and interesting gameplay. We use a general
concept for this purpose. In this game we designed a simple gameplay divided into 300 or more
levels. Player has to clear all levels in order to win game. Different logics are used to make the
game more interesting and easier.
12. - 3 -
CHAPTER - 2
ORGANIZATION PROFILE
Carina Softlabs Inc. is an Indian based company leveraging the ways in Software, Web, and Mobile
Apps development with Digital Marketing. It mainly looks forward to providing the finest solution
to different client ideas. We assist them in addressing their requirements and hand-over the perfect
customized solution with the understanding of every single aspect of opinion. We also mark our
presence in the field of Game Development. Our focus is to maintain a faithful relationship with our
clients across the world. Our dedication, regular attention to legal standards, undoubtedly our team
support has made us sustain 9 years. Carina is one of the fastest-growing firms in central India
making a debut in “Fortune 100”. We started with 3 employees in a firm and now we are leading up
to having more than 50 employees. We always try to work hard for getting just one gesture of relief
on our client's face, that gesture made our stress and worries disappear. Our client testimonial is our
reward. We rank on the 40th position on the Top Developers list.
History
Carina has built on 3 pillars “Trust” “Intelligence” and “Friendship”. It elaborates on the definition
of friendship. The firm was established in the year of 2011 by two friends “Mr. Mayank Pande” and
“Ms. Pragati Singh Suman”. Starting from a single room to have a well-organized office taught
Carina many things. There were lots of ups and downs in the past 9 years but Carina withstands all
the thunder which has come across. We have always focused on the wellness of our employees and
the people surrounding us.
Corporate Sustainability
Carina is one of those rare firms that deliver the Development and Marketing services together. We
are the only firm that is developing Games in central India. We have provided many services and
the reports we have got are enough to explain our worth. Our reports are the perfect highlighter of
our aim, achievement, and objectives. The recognition we have achieved all around the world and in
our working area is our boost to sustain.
13. - 4 -
Record of Achievements
Nominated for Times of India “Entrepreneur of the Year Award 2019”, and made to
be the 2nd runner up.
Nominated as “Most Innovative Technology company” by an Australian
firm named “Corporate Visions”.
Ranked 2nd in “Leaders of Tomorrow Awards & Conclave 2020”,
Endless support for the IT Industry in the past 9 years.
The biggest achievement we count is having 100+ clients in just 9 years.
It makes us more delighted when we see our local clients using our build software
which helps them to serve their clients in a better way.
The effort of developing around 200+ Websites, 100+ Mobile Applications, 100+
launched games for Mobile and PC.
Enlighten the ways of Digital Marketing for Brand Owners and help 200+
companies to promote their business digitally.
Game Development
Carina Softlabs Inc. has the biggest and most talented team for Game Development in the region.
Our team is capable of working on highly complicated game engines like Unity and Unreal. We are
providing end to end support and assistance to game development and deployment. Our motto is
to provide the games to the people of every age. We have developed the games for the youngsters
which is “Arizona Derby” and Working on making a game for kids “The Little Guardian”.
14. - 5 -
CHAPTER - 3
PROBLEM ANALYSIS
3.1. Product definition
The purpose of this game is to provide players does a storyline and interesting gameplay. A
general concept for this purpose. In this game, it has simple gameplay and mechanics divided
into 300 or more levels. Player has to clear all levels in order to win game. Different logics are
used to make the game more interesting and easier.
3.2. Feasibility analysis
A feasibility study is an analysis used in measuring the ability and likelihood to complete a
project successfully including all relevant factors. It must account for factors that affect it
such as economic, technological, legal and scheduling factors. Project managers use
feasibility studies to determine potential positive and negative outcomes of a project before
investing a considerable amount of time and money into it.
3.2.1. Technical feasibility
All the technology’s that are required are freely available to use like Unity, Visual Studio
2019 along with all the learning materials. Unity is used as an IDE to develop the project
along with C# for dependency injection in the project.
3.2.2. Financial feasibility
All the software used to develop this game is freely available so no cost is spent in the
development process. The software will get free update and new features in the future for
free.
15. - 6 -
CHAPTER - 4
SOFTWARE REQUIREMENT ANALYSIS
4.1. TECHNOLOGIES
4.1.1. Unity (Game Engine)
Unity is a cross-platform game engine developed by Unity Technologies, first
announced and released in June 2005 at Apple Inc.'s Worldwide Developers
Conference as a Mac OS X-exclusive game engine. As of 2018, the engine had been
extended to support more than 25 platforms. The engine can be used to create three-
dimensional, two-dimensional, virtual reality, and augmented reality games, as well as
simulations and other experiences. The engine has been adopted by industries outside
video gaming, such as film, automotive, architecture, engineering and construction.
4.1.2. ASP.NET MVC
It is an open source web development framework from Microsoft that provides a Model
View Controller architecture. ASP.net MVC offers an alternative to ASP.net web forms
for building web applications. It is a part of the .Net platform for building, deploying and
running web apps. You can develop web apps and website with the help of HTML, CSS,
jQuery, JavaScript, etc.
4.1.3. C-SHARP(C#)
C# is a simple, modern, general-purpose, object-oriented programming language
developed by Microsoft within its .NET initiative led by Anders Hejlsberg. This
tutorial will teach you basic C# programming and will also take you through various
advanced concepts related to C# programming language.
C# is a modern, general-purpose, object-oriented programming language developed
by Microsoft and approved by European Computer Manufacturers Association
(ECMA) and International Standards Organization (ISO).
C# was developed by Anders Hejlsberg and his team during the development of .Net
Framework.
16. - 7 -
C# is designed for Common Language Infrastructure (CLI), which consists of the
executable code and runtime environment that allows use of various high-level
languages on different computer platforms and architectures.
The following reasons make C# a widely used professional language –
It is a modern, general-purpose programming language
It is object oriented.
It is component oriented.
It is easy to learn.
It is a structured language.
It produces efficient programs.
It can be compiled on a variety of computer platforms.
It is a part of .Net Framework.
4.2. TOOLS USED
4.2.1. Visual studio
Visual Studio is a source-code editor developed by Microsoft for Windows, Linux and
MacOS. It includes support for debugging, embedded Git control, syntax highlighting,
intelligent code completion, snippets, and code refactoring. It is also customizable, so users
can change the editor's theme, keyboard shortcuts, and preferences. The source code is free
and open source and released under the permissive MIT License. The compiled binaries are
freeware and free for private or commercial use.
Visual Studio brings a premium debugging experience to the Unity game engine. Identify
issues quickly by debugging your Unity games in Visual Studio.
4.2.2. MS-SQL Database
MS-SQL is a fast, easy-to-use RDBMS being used for many small and big businesses. MS-
SQL is developed, marketed, and supported by MS-SQL AB, which is a Swedish company.
17. - 8 -
MS-SQL is becoming so popular because of many good reasons:
MS-SQL is released under an open-source license. So, you have nothing to pay to use it.
MS-SQL is a very powerful program in its own right. It handles a large subset of the
functionality of the most expensive and powerful database packages.
MS-SQL uses a standard form of the well-known SQL data language.
MS-SQL works on many operating systems and with many languages including PHP,
PERL, C, C++, ASP.NET, etc.
MS-SQL works very quickly and works well even with large data sets.
MS-SQL is very friendly to PHP, the most appreciated language for web development.
MS-SQL supports large databases, up to 50 million rows or more in a table. The default
file size limit for a table is 4GB, but you can increase this (if your operating system can
handle it) to a theoretical limit of 8 million terabytes (TB).
MS-SQL is customizable. The open-source GPL license allows programmers to modify
the MS-SQL software to fit their own specific environments.
24. - 15 -
5.3. DATA FLOW DIAGRAM
5.3.1. Zero Level
5.3.2. Level 1
25. - 16 -
CHAPTER – 6
IMPLEMENTATION
6.1. PROCESS MODEL USED: Agile Model
Agile SDLC model is a combination of iterative and incremental process models with
focus on process adaptability and customer satisfaction by rapid delivery of working
software product. Agile Methods break the product into small incremental builds. These
builds are provided in iterations. Each iteration typically lasts from about one to three
weeks. Every iteration involves cross functional teams working simultaneously on various
areas like −
Planning
Requirements Analysis
Design
Coding
Unit Testing and
Acceptance Testing.
Agile model believes that every project needs to be handled differently and the existing
methods need to be tailored to best suit the project requirements. In Agile, the tasks are
divided to time boxes (small time frames) to deliver specific features for a release.
Iterative approach is taken and working software build is delivered after each iteration.
Each build is incremental in terms of features; the final build holds all the features required
by the customer.
The Agile thought process had started early in the software development and started
becoming popular with time due to its flexibility and adaptability.
Agile methods are being widely accepted in the software world recently. However, this
method may not always be suitable for all products.
26. - 17 -
6.2. Conversion Plan
To make this project live, i.e., to publish game in Play Store, follow steps:
1. Download android SDK and install it.
2. Buy an android developer account.
3. In developer console add new app and fill all required details regarding your app.
4. Open Unity and set your android SDK location.
5. Set your minimum android version and also set key store in publishing details.
6. Build APK
7. Upload your APK in Play Store Developer Console.
6.3. Post implementation of project and maintenance
The Post Implementation Review (PIR) is conducted after a project has been completed.
The purpose of the PIR is to evaluate how successfully the project objectives have been met
and how effective the project management practices were in keeping the project on track.
In our project the all objectives met to the requirements and it is more affective as user
wants. According to the user requirements the project functionality and objectives are made
according to this. It is generally found that games that are easy to play, require less data,
saves the time are well received by people.
27. - 18 -
CHAPTER – 7
SYSTEM TESTING
Testing is the process of evaluating a system or its components with the intent to find
that whether it satisfies the specified requirements or not. This activity results in the
actual, expected and difference between their results i.e. testing is executing a system
in order to identify any gaps, errors or missing requirements in contrary to the actual
desire or requirements.
7.1. Testing strategies
In order to make sure that system does not have any errors, the different levels of testing
strategies that are applied at different phases of software development are
7.1.1. Unit testing
The goal of unit testing is to isolate each part of the program and show that individual
parts are correct in terms of requirements and functionality.
7.1.2. Integration testing
The testing of combined parts of an application to determine if they function correctly
together is Integration testing. This testing can be done by using two different methods.
7.1.2.1. Top down integration testing
In Top-Down integration testing, the highest-level modules are tested first and then
progressively lower-level modules are tested.
7.1.2.2. Bottom-up integration testing
Testing can be performed starting from smallest and lowest level modules and
proceeding one at a time. When bottom level modules are tested attention turns to those
on the next level that use the lower level ones they are tested individually and then
linked with the previously examined lower level modules. In a comprehensive software
development environment, bottom-up testing is usually done first, followed by top-
down testing.
28. - 19 -
7.1.3. System testing
This is the next level in the testing and tests the system as a whole. Once all the
components are integrated, the application as a whole is tested rigorously to see that it
meets Quality Standards. 30
7.1.4. Acceptance testing
The main purpose of this Testing is to find whether application meets the intended
specifications and satisfies the client’s requirements. We will follow two different
methods in this testing.
7.1.4.1. Alpha testing
This test is the first stage of testing and will be performed amongst the teams. Unit
testing, integration testing and system testing when combined are known as alpha
testing. During this phase, the following will be tested in the application:
Broken Links.
The Application will be tested on machines with the lowest specification to test
loading times and any latency problems.
7.1.4.2. Beta testing
In beta testing, a sample of the intended audience tests the application and send their
feedback to the project team. Getting the feedback, the project team can fix the
problems before releasing the software to the actual users.
7.2. Testing methods
7.2.1. White box testing
White box testing is the detailed investigation of internal logic and structure of the
Code. To perform white box testing on an application, the tester needs to possess
knowledge of the internal working of the code. The tester needs to have a look inside
the source code and find out which unit/chunk of the code is behaving inappropriately.
29. - 20 -
7.2.2. Black box testing
The technique of testing without having any knowledge of the interior workings of the
application is Black Box testing. The tester is oblivious to the system architecture and
does not have access to the source code. Typically, when performing a black box test,
a tester will interact with the system’s user interface by providing inputs and examining
outputs without knowing how and where the inputs are worked upon.
7.3. Validation
All the levels in the testing (unit integration, system) and methods (black box, white
box) are implemented on our application successfully and the results obtained as
expected.
7.4. Limitations
The execution time for support vector machine is more so that the user may not receive
the result fast.
7.5. Test results
The testing is done among the team members and by the end users. It satisfies the
specified requirements and finally we obtained the results as expected.
30. - 21 -
7.6. DEMONSTRATION/SCREENSHOTS
7.6.1. Home Screen
7.6.2. Main Gameplay
36. - 27 -
CHAPTER – 8
CONCLUSION
8.1. Current state of project
The current status of project is that all screens like home, level select, profile, settings,
leaderboard, high score are completed and their design, coding and testing are done.
The main gameplay
8.2. Remaining areas of concern
There are still, after a lot of efforts, the areas of concern in the project. Once the build
is published in play store, we can review the game based on user responses. In future
we can add more features to the project as per the user needs.
8.3. Technical and managerial lessons learnt
We have learnt a lot of things while developing the project.
Working with Unity.
Working on UI screens and Animations.
Connect database with game using APIs.
Working in a team and co-ordination among them.
Problem analysis and problem solving with the team mates.
8.4. Future scope
As per the current market analysis, there are 40% gamers in the world from all age
groups who love casual games. So, we can develop and publish similar type of games
with different storyline and gameplay for them. So that player interest and game
production is maintained.
37. - 28 -
Bibliography
[1] https://www.unity.com
[2] https://www.aspsnippets.com
[3] https://stackoverflow.com
[4] https://www.c-sharpcorner.com
Reference
1) Professional-Visual-Studio-Bruce Johnson
2) Professional ASP.NET 2.0-by Bill Evjen (Author), Scott Hanselman (Author),
Farhan Muhammad (Author)
3) Introducing Microsoft SQL Server 2014, by Ross
Mistry, Stacia Misner