Cricket Management System - TutorialsDuniya

Download as pdf or txt
Download as pdf or txt
You are on page 1of 53

ACKNOWLEDGEMENT

On the successful completion of our project CRICKET FEVER, we would like to


express our sincere gratitude to everyone who helped us in the completion of the
project.

We are sincerely thankful to our principal ma’am Mrs Yamini Aggarwal


software engineering teachers Dr Daljeet singh Bawa sir
for their interest, guidance and suggestions throughout the course of the project.
We feel honored and privileged to work under them. They shared their vast pool of
knowledge with us that helped us steer through all the difficulties with ease. This
project would not have been possible without their guidance.
“Cricket Management System“

A Minor / Major Project Report


Submitted in partial fulfillment of the requirements for the
Award of degree of Bachelor of Computer Applications

Submitted by Guided by
HEMANAY SETIA Dr. Daljeet Singh Bawa
RITIK UPADHAY

BHARATI VIDYAPEETH
(DEEMED TO BE UNIVERSITY)
INSTITUTE OF MANAGEMENT & RESEARCH, NEW DELHI
A-4, Paschim Vihar, New Rohtak Road, New Delhi-110033

2022
STUDENT UNDERTAKING

This is to certify that the project titled <title of the project> submitted to Bharati
Vidyapeeth (Deemed to be University), Pune in partial fulfillment of the
requirement for the award of the degree of Bachelor of Computer Applications is
an original work carried out under the guidance of <name of internal Guide>. The
matter embodied in this project is a genuine work done by me and has been submitted
neither to this University nor to any other University for the fulfillment of the
requirement of the course of study.

Signature

Name of the student

ERPID:

PRN No:
CERTIFICATE FROM INTERNAL GUIDE

This is to certify that the Project titled <Title of the project> is an academic work
done by <Name of the student> submitted in the partial fulfillment of the
requirement for the award of the Degree of Bachelor of Computer Applications
from Bharati Vidyapeeth (Deemed to be University), Pune under my guidance.

Necessary Plagiarism check have been conducted, has been found below 30% and
report of the same have been attached as annexure

To the best of my knowledge and belief the data & information presented by
him/her in the project has not been submitted earlier whether to this University or to
any other University / Institute for the fulfillment of the requirement of any course of
study.

Signature

Name Internal Guide


CERTIFICATE FROM THE DIRECTOR

This is to certify that the Project titled “title of the project” is an academic work done
by <name of the student> submitted in partial fulfillment of the requirement for the
award of the Degree of Bachelor of Computer Applications from Bharati Vidyapeeth
(Deemed to be University), Pune.

The authenticity of the project work will be examined by the viva examiner which
includes data verification, checking duplicity of information etc. and it may be rejected
due to non-fulfillment of quality standards set by the institute.

Dr. Yamini Agarwal

Director-Incharge
TABLE OF CONTENT
Table of Contents

1. SOFTWARE REQUIREMENT SPECIFICATION……….................................1


1.1 INTRODUCTION: .............................................................................................1
1.2 FEATURES…….................................................................................................1
1.3 PURPOSE: ..........................................................................................................1
1.4 SCOPE:................................................................................................................2
1.5 OVERALL DESCRIPTION: .............................................................................2
1.6 PRODUCT PERSPECTIVE: .............................................................................2
1.7 CONSTRAINTS, ASSUMPTIONS AND DEPENDENCIES:..........................3
1.8 SPECIFIC REQUIREMENTS: ..........................................................................3
1.8.1 INTERFACE REQUIREMENTS……..................................................3
1.8.2 FUNCTIONAL REQUIREMENTS……………………………..........3
1.8.3 NON-FUNCTIONAL REQUIREMENTS………………………........4
1.8.4 DESIGN CONSTRAINTS…………………………………………….4
1.9 DATA FLOW DIAGRAMS: ............................................................................ 5
1.9.1 DFD LEVEL 0………………………………………………………...5
1.9.1 DFD LEVEL 1………………………………………………………...6
1.9.1 DFD LEVEL 2………………………………………………………...7
1.10 DATA DICTIONARY......................................................................................8
2. SIZE ESTIMATION AND SCHEDULING ....................................................... 9
2.1 FUNCTION PIONTS ESTIMATION ..............................................................10
2.2 SIZE ESTIMATION ........................................................................................11
2.3 COST ESTIMATION .......................................................................................11
2.4 SCHEDULING .................................................................................................12
3. ARCHITECTURAL DESIGN............................................................................13
3.1 VIEW…………………………………………………………………..14
3.2 RETRIEVE……………………………………………………………..14
4. RISK ANALYSIS ..............................................................................................15
4.1 NEW UNPROVEN TECHNOLOGY.............................................................. 15
4.2 ORGANISATIONAL RISK............................................................................. 15
4.3 PROJECT DELAY……………………………………………………………16
4.4 RISK OF STORAGE AND DATABASE SPACE…………………………...19

5.2 SCREENSHOT OF THE SOFTWARE .......................................................... 24


6. TESTING ............................................................................................................29
7. USERS MANUAL .............................................................................................34
7.1 LOGIN ..............................................................................................................34
7.2 RETRIEVAL.....................................................................................................35
8. CONCLUSION ..............................................................................................37
9. REFERENCES ...................................................................................................38
LIST OF FIGURES

Figure 1: DATA FLOW DIAGRAM LEVEL-0………………………………………………….5

Figure 2: DATA FLOW DIAGRAM LEVEL-1………………………………………………….6

Figure 3: DATA FLOW DIAGRAM LEVEL-2………………………………………………….7

Figure 4: GANTT CHART………………………………………………………………………12

Figure 5: ARCHITECTURAL DESIGN………………………………………………………...13

LIST OF TABLES

Table 1- DATA DICTIONARY………………………………………………………………….8

Table 2- PROJECT ESTIMATORS………………………………………………………………9

Table 3 - FUNCTIONAL POINT ANALYSIS……………………………………………….…10

Table 4 – RISK ASSESSMENT…………………………………………………………………16

Table 5 – RMMM1………………………………………………………………………………17

Table 6 – RMMM2………………………………………………………………………………18
1.Software Requirement Specification

1.1 Introduction

The aim of this project is to provide the complete information of the National and International
statistics. The information is available country wise and player wise. By entering the data of each
match, we can get all type of reports instantly, which will be useful to call back history of each
player. Also the team performance in each match can be obtained. We can get a report on
number of matches, wins and lost.

1.2 Features

The project will enable the user to view:

 Every Cricketer’s Information


 Every Cricketer’s Personal Achievements
 International Travel News
 Upcoming Series
 Every Team’s Information
 ODI and test ranking
 Increment of each ball ,over, run is done automatically
 Commentary of each ball

1.3 Purpose

This document aims to give a brief description about the Cricket Management System Project.
This project is very use for Cricket match broadcasters to get information quickly. Also for
Cricket lovers who are very much interested in Cricket Statistics. In other words this document
will provide a basis for validation and verification.
1.4 Scope

The project is designed very user friendly such that even people who know only the basic
operation of the computer can use this software. So no technical expertise is required to use this
software.

This software is also functional to find out the application of cricket management system and to
provide information and manage the system regarding cricket matches and team training. It also
helps cricket teams to register new members.

1.5 Overall Description

The overall description of our project can be stated as creating and managing the database,
developing a friendly user interface to manipulate the database, provide an authentication
mechanism to safely accomplish tasks mentioned above.

1.6 Product Perspective

With the CMS (Cricket Management System) we will provide them with capabilities and
properties organized neatly. CMS which is an online intranet System will be used by anyone who
wishes to find information for the players and teams.
Admin will basically query and edit the database via CMS. It will also calculate the rank of each
player depending on their Strike Rate and no. of matches played.
1.7 Constraints, Assumptions and Dependencies

Regularity Policies:
Each user must login first to have access to information of players. In other words, each user has
an account created by the Admin.

Hardware Limitations:
There is no limitation in the operating system in which CMS will work. However, the CMS
system and the database will work on a server that needs to be always online.

1.8 Specific Requirements

1.8.1 Interface Requirements

All the users will see the same page when they enter CMS(Cricket Management System).There
will be 2 options: One for the user and one for the admin. The admin is required to login through
an ID and a password so as to make changes in the database or to add new information to it. On
the other hand users can retrieve the information about the different players, along with their
personal details and team details as well after getting logged in to their respective accounts.

1.8.2 Functional Requirements

Requirements which are related to functional aspects of software fall into this category.
According to the CMS we have:
 View option is given to the user to view the details of their favorite players along with
their personal details.
 Retrieve function lets the user to offline download the details of the players and the
teams.
1.8.3 Non-Functional Requirements

Requirements which are not related to functional aspects of software fall into this category. They
are implicit or expected characteristics of the software, which users make assumption of. The
Non-Functional Requirements of CMS are:
 Logging- Both the Admin and the User need to log in to access data from CMS.
 Storage- The information regarding the players and their teams is stored on a database.
The information includes the players’ personal details along with the achievements in
their cricketing career.
 Performance- The CMS satisfies the user requirements and can handle multiple users at
a time, resulting in better performance.
 Cost- The overall cost of the project is minimal which is easily affordable by one and all.
 Flexibility- The CMS is highly flexible as it can be accessed by any person or the
organization without any difficulty.

1.8.4 Design Constraints

 Hardware Requirements

The CMS application will be storing 500 players’ personal data which will roughly
require 500mb of database storage space.

 Software Requirements
1. Since the CMS is an android based application so the user will require mobile
handsets for the deployment of the software.
2. To store and fetch data from the database online i.e. cricdb, the user also requires
an active internet connection for smooth working of the project.
3. The CMS will work properly on any mobile set with android version 4.4 or
higher.
4. Application will run on 256mb or higher of RAM.
5. It requires a space of 2.5mb to deploy onto the machine.
1.9 Data Flow Diagram

Data flow diagrams (also called data flow graphs) are commonly used during problem analysis
A DFD shows the flow of data through a system. It views a system as a function that transforms
the inputs into desired outputs. The agent that performs the transformation of data from one state
to another is called a process (or a bubble). Thus, a DFD shows the movement of data through
the different transformations or processes in the system.

1.9.1 DFD Level 0

CRICKET ADD
VIEW
USER MANAGEMENT STATISTICS ADMIN(ICC)
LOGIN/ REGISTER SYSTEM UPDATE

Figure 1: Data Flow Diagram Level 0


1.9.2DFD Level 1

PLAYER INFO
VIEW
PLAYER
PLAYER
RECORD VIEW
TEAM
TEAM INFO
TEAM
VIEW ANY
RECORD
RECORD USER
RECORD
STATS
ADMIN EDIT
PLAYER STATISTICS VIEW STATS

ACHIEVEMENTS RETRIEVE STATS

TEAM ACHIEVEMENTS
PLAYER RETRIEVE RETRIEVE ANY
PERSONAL ACHIEVE RECORD
DETAILS

PLAYER RANKS RETRIEVE


RANK

Figure 2: Data Flow Diagram Level 1


1.9.3 DFD Level 2

VIEW
PLAYER RECORD
RECORD
PLAYER INFO
RECORD

ADD FETCH
NAMES OF
BATSMEN
BAT_NAME

TEAM
RECORD
TEAM INFO FETCH NAMES OF BOWLERS
BOWL_NAME

STATS
Player ID
ADMIN UPDATE
PLAYER STATISTICS
HIGHEST USER
Team CENTURIES PLAYER
NAME
ID
ACHIEVEMENTS TEAM
ACHIEVEMENTS NO.1
TEAM ID
TEAM

PLAYER ID PLAYER NAME


CALCULATE PLAYER RANKS BEST
PLAYER
PERSONAL
PLAYER PLAYER ID
DETAILS

Figure 3: Data Flow Diagram Level 2


1.10 Data Dictionary

DATA DESCRIPTION

Pid + Pname + DOB + Team + Bat_Style +


Bowl_Style + Strike_Rate +
Record No_Of_Centuries + Tid + Tname + Captain
+ No_Of_Batsmen + No_Of_Bowlers +
Team_Colour + Coach_Name +…

Player Record Pid+ Pname+ DOB+ Team+ Bat_Style +


Bowl_Style+ Strike_Rate+ No_Of_Centuries
+…

Team Record Tid + Tname+ Captain + No_Of_Batsmen+


No_Of_Bowlers + Team_Colour +
Coach_Name+…

Stats Man_Match + Man_Series +


Highest_Centuries

Achievements Won_matches + Lost_matches +


Tie_matches

Player Personal Details Pid + Pname + DOB

Table 1: Data Dictionary


2 Size Estimation And Scheduling
GRADE
VALUE
1. Does the system require reliable backup and recovery? 5

2. Are specialized data communications required to transfer 3


Information to or from the application?

3. Are there distributed processing functions? 4

4. Is performance critical? 0

5. Will the system run in an existing, heavily utilized 5


Operational environment?

6. Does the system require on-line data entry? 5

7. Does the on-line data entry require the input transaction to be 3


built over multiple screens or operations?

8. Are the Master files updated online? 5

9. Are the inputs, outputs, files, or inquiries complex? 2

10. Is the internal processing complex? 1

11. Is the code designed to be reusable? 1

12. Are conversions and installations included in the design? 0

13. Is the system designed for multiple installations in different 5


Organizations?

14. Is the application design to facilitate change and for ease of use by 5
the user?

Table 2: Project Estimators


2.1 Function Points Estimation

Considering the following assumptions:

3-4 INPUTS AS LOW

4-7 INPUTS AS AVERAGE

>7 INPUTS AS HIGH

COUNT WEIGHING FACTOR TOTAL


COUNT

Simple average Complex Simple Average Complex


Number
of 2 2 1 3 4 6 20
internal
inputs
Number
of 3 2 1 4 5 7 29
external
outputs
Number
of 2 2 2 3 4 6 26
inquiries
Number
of 0 0 3 7 10 15 45
internal
logical
files
Number
of
external
1 1 1 5 7 10 22
interfaces

Total 142
FPs

Table 3: Function Point Analysis


Thus, the UNADJUSTED FUNCTIONAL POINTS (UFP) ARE:

UFP = Total I/P + Total O/P + Total ILF + Total EIF + Total Enquiries

= 20 + 29 + 45 + 22 + 26

= 142

Now, COMPLEXITY ADJUSTMENT FACTOR (CAF) IS:

CAF= 0.65 + (0.01 *∑ fi)

= 0.65 + (0.01 *3*14)

= 1.07

So the Functional Points (FP) is:

FP = UFP*CAF

= 151.94

2.2 Size Estimation


Assuming that average productivity for such a system is 6.5 FP/pm i.e. 6.5 functional points per
person month, then the estimates are:

Size=Total FP’s / Average productivity

= 151.94/6.5

= 23.37 pm i.e. 24 person month.

2.3 Cost Estimation


Assuming that the cost is Rs.5000/pm, i.e. 5000 per person month.

Cost=cost per person month * effort

= Rs. (5000*14) = Rs.70,000


2.4 Scheduling

Scheduling is the culmination of a planning activity that is a primary component of Software


project management. When combined with estimation methods and risk analysis, scheduling
establishes a road map for the project manager. The characteristics of the project are used to
adapt an appropriate task set for the work to be done. A task network depicts each engineering
engineerin
task, its dependency on other tasks, and its projected duration.

GANTT CHART

01-Mar
Mar-14 21-Mar-14 10-Apr-14 30-Apr-14 20-May-14 09-Jun-14
09 29-Jun-14

GATHER REQUIREMENTS

UI DESIGN

CODING

UNIT TESTS

SYSTEM TESTS

BUG FIXES

IMPROVEMENTS

FINAL TESTING

RELEASE VERSION

Figure 4: Gantt Chart


3. ARCHITECTURAL DESIGN

CRICKET FEVER

RETRIEVE VIEW

GET_PLAYER GET_TEAM VIEW_PLAYER VIEW_TEAM VIEW_ACHIEVE

GET
TEAM
RECORD
GET ENTER
PLAYER DISPLAY
RANKS DISPLAY
RECORD TEAM ACHIEVEMENTS
DISPLAY INFO
DISPLAY
PLAYER RANKS
PERSONAL

GET
STRIKE
RATE GET
STATS ENTER
PERSONAL
DETAILS

CALCULATE DISPLAY DISPLAY DISPLAY


WON_MATCHES LOST_MATCHES TIED_MATCHES

Figure 5: Architectural design


The architectural design of the software defines every module of the application in detail in a
hierarchical way. The CMS application is mainly divided into two modules:

3.1 VIEW

The VIEW MODULE can view information about the PLAYER RECORD , TEAM
RECORD and ACHIEVEMENTS of the Team.

It will display the personal information about the player and the ranks.
Also , It will also display the won, lost and tied matches.

3.2 RETRIEVE

The RETRIEVE MODULE will retrieve details of the player and the team.
Here the user will enter personal details and statistics of the player by the help of which
STRIKE RATE will be calculated .

The approach used is a top to bottom approach.


PROJECT REPORT
Team Information
The administrator Can Add/Update the teams With the details and the user can view the overall
information of the

the team detail module allows the user to browser The details of the team profile and management.

Team module allows user to browse different teams

where only one team can be selected at a time and get the detail

when selected on a particular team.

This module gives the detail of team such as team logo, team name, team information, team
captain, address, contact no show match details

Player Details
this will come under team information which gives the basic details about the players.

allow the user to have a glimpse of the player’s profile.

it give the personal details of a player with their batting style, bowling style and his position in the
team along with their achievements

Batting Performance
It gives the batsman profile, statistic, and summary of his batting performance in his current and
previous matches that he had played.

Bowling Performance
It gives the bowling profile, statistics, and summary of his bowling performance in his current and
previous matches that he had played.

Results
This module gives the summary that was played.

It also gives the overall detailed result of that particular match that was played.

Detail such as scores scored by both the teams Over’s completed, loss of wickets.
Gallery
it shows the best captured moments, pictures, video etc… That was taken during the course of the
matches.

It will dynamic.

Here the photo is uploaded which was clicked/recorded by the fans during the matches.

The user cannot upload the image here due to censorship issues.
Instead, the user is supposed to e-mail the image to admin and then admin uploads it to the
website.

Administrator
The administrator is allowed to access all the services in the system. The main objective of the
administrator is to add/update the summary of the matches and also to add/update the schedules
of the matches.

Users/Visitors
These users will get the full access of the website but they cannot do any changes on the Online
Score System website, they can enjoy the services provides by the administrator.
#include <stdio.h>

#include <stdlib.h>

void req_rate(float a, float b, float c, float d, float e);

void runs_needed(int a, int b, int c, int d, int e);

void projected_score(int a, int b, int c, int d, float e);

void result(int a, int b, int e, int g, char f, char c[], char d[]);

float curr_rate(float a, float b, float c);

void ball_played(int *a, int *b, int *c, int *d, int *e, int *f, int *g, int *h, int *i, int *j);

int string_comp(char a[], char b[], char c[]);

float curr_rate(float a, float b, float c);

int main(int argc, char *argv[])

{
int wd = 0, nb = 0, lb = 0, b = 0, extras = 0, overs = 0, T_overs = 0, k = 0, balls = 0, T = 0, score = 0,
wickets = 0, target = 0, q = 0, c[11], j = 1, f = 0, s = 0;

float c_rate;

char toss[15], team_1[15], team_2[15], choice, runs;

printf("Match between:\n");

gets(team_1);

printf("versus\n");

gets(team_2);

printf("Toss won by: ");

gets(toss);

printf("Enter B to choose bat first and F to field first: ");

scanf("%c", &choice);

printf("Enter overs to be played by each side: ");

scanf("%d", &T_overs);

system("cls");

T = string_comp(team_1, team_2, toss);

while (overs <= T_overs || overs >= T_overs)

{
do

if (wickets > q)

*(c + wickets) = score;

q = wickets;

system("cls");

printf("\t\t\t%s vs %s (%d-overs match)\n", team_1, team_2, T_overs);

if (T == 1)

if (choice == 'B' || choice == 'b')

printf("%s won the toss and elected to bat first\n", team_1);

printf("\n\n%s %d-%d\t\tovers %d.%d\t\t", team_1, score, wickets, overs, balls);

else if (choice == 'F' || choice == 'f')

printf("%s won the toss and elected to field first\n", team_1);

printf("\n\n%s %d-%d\t\tovers %d.%d\t\t", team_2, score, wickets, overs, balls);

else if (T == 2)

if (choice == 'B' || choice == 'b')

printf("%s won the toss and elected to bat first\n", team_2);

printf("\n\n%s %d-%d\t\tovers %d.%d\t\t", team_2, score, wickets, overs, balls);

else if (choice == 'F' || choice == 'f')

{
printf("%s won the toss and elected to field first\n", team_2);

printf("\n\n%s %d-%d\t\tovers %d.%d\t\t", team_1, score, wickets, overs, balls);

if (overs > 0 && score > 20)

if (overs == T_overs || wickets == 10)

printf("\n");

k++;

break;

c_rate = curr_rate(score, overs, balls);

printf("run rate %0.2f\n", c_rate);

if (balls == 0)

printf("\n");

if (extras > 0)

printf("extras: %d(wd %d,nb %d,lb %d,b %d)\t", extras, wd, nb, lb, b);

if (f > 0 || s > 0)

printf("boundaries: %d fours,%d sixes\n", f, s);

else

printf("\n");

if (overs > 0 && score > 20 && balls == 0)

{
projected_score(score, overs, T_overs, balls, c_rate);

printf("\n");

if (overs == T_overs || wickets == 10)

k++;

break;

ball_played(&balls, &score, &wickets, &extras, &wd, &nb, &lb, &b, &f, &s);

} while (balls < 6);

if (balls == 6)

balls = 0;

if (overs < T_overs)

overs++;

if (k > 0)

break;

printf("\nextras: %d(wd %d,nb %d,lb %d,b %d)\tboundaries: %d fours,%d sixes\n", extras, wd, nb,
lb, b, f, s);

if (wickets > 0)

printf("\nfall of wickets: ");

for (j = 1; j <= wickets; j++)

if (j == 1 || j == 6)
printf("\n");

else

printf("\t");

printf("%d-%d", j, c[j]);

printf("\n\ninnings completed.");

sleep(10);

for (k = 10; k >= 0; k--)

system("cls");

printf("\n\n\n\n\t\t\tINNINGS BREAK...\n\t\t\t\t%d", k);

sleep(1);

target = score + 1, score = 0, overs = 0, k = 0, wd = 0, nb = 0, lb = 0, b = 0, balls = 0, wickets = 0,


extras = 0, j = 1, q = 0, f = 0, s = 0;

while (overs <= T_overs || overs >= T_overs)

do

if (wickets > q)

*(c + wickets) = score;

q = wickets;

system("cls");

printf("\t\t\t%s vs %s (%d-overs match)\n", team_1, team_2, T_overs);

if (T == 1)

if (choice == 'B' || choice == 'b')

{
printf("%s gives target of %d runs to %s to win\n", team_1, target, team_2);

printf("\n\n%s %d-%d\t overs %d.%d\t", team_2, score, wickets, overs, balls);

else if (choice == 'F' || choice == 'f')

printf("%s gives target of %d runs to %s to win\n", team_2, target, team_1);

printf("\n\n%s %d-%d\t overs %d.%d\t", team_1, score, wickets, overs, balls);

else if (T == 2)

if (choice == 'B' || choice == 'b')

printf("%s gives target of %d runs to %s to win\n", team_2, target, team_1);

printf("\n\n%s %d-%d\t overs %d.%d\t", team_1, score, wickets, overs, balls);

else if (choice == 'F' || choice == 'f')

printf("%s gives target of %d runs to %s to win\n", team_1, target, team_2);

printf("\n\n%s %d-%d\t overs %d.%d\t", team_2, score, wickets, overs, balls);

if (overs > 0 && score > 20)

if (overs == T_overs || wickets == 10 || target <= score)

printf("\n");

k++;

break;

c_rate = curr_rate(score, overs, balls);


printf("run rate %0.2f", c_rate);

req_rate(score, overs, T_overs, balls, target);

if (balls == 0)

printf("\n");

if (extras > 0)

printf("extras: %d(wd %d,nb %d,lb %d,b %d)\t", extras, wd, nb, lb, b);

if (f > 0 || s > 0)

printf("boundaries: %d fours,%d sixes\n", f, s);

else

printf("\n");

if (overs > 0 && score > 20)

runs_needed(score, overs, T_overs, balls, target);

printf("\n");

if (wickets == 10 || target <= score || overs == T_overs)

k++;

break;

ball_played(&balls, &score, &wickets, &extras, &wd, &nb, &lb, &b, &f, &s);

} while (balls < 6 && overs < T_overs);

if (balls == 6)

{
balls = 0;

if (overs < T_overs)

overs++;

if (k > 0)

break;

printf("\nextras: %d(wd %d,nb %d,lb %d,b %d)\tboundaries: %d fours,%d sixes\n", extras, wd, nb,
lb, b, f, s);

if (wickets > 0)

printf("\nfall of wickets: ");

for (j = 1; j <= wickets; j++)

if (j == 1 || j == 6)

printf("\n");

else

printf("\t");

printf("%d-%d", j, c[j]);

printf("\n\ninnings completed.");

sleep(10);

for (k = 0; k <= 7; k++)

system("cls");

sleep(1);
printf("\n\n\n");

result(target, score, T, wickets, choice, team_1, team_2);

sleep(1);

getche();

return 0;

float curr_rate(float a, float b, float c)

float d;

if (c == 0)

d = a / b;

else

d = a / (b + (c / 10));

return d;

int string_comp(char a[], char b[], char c[])

int i = 0, ab = 0, j = 0, k = 0;

strupr(a);

strupr(b);

strupr(c);

for (i = 0; i < 3; i++)

if (a[i] == c[i])

j++;

else if (b[i] == c[i])

k++;

else

break;

}
if (j == 3)

ab = 1;

else if (k == 3)

ab = 2;

else

ab = 0;

return ab;

void ball_played(int *a, int *b, int *c, int *d, int *e, int *f, int *g, int *h, int *i, int *j)

char runs;

int t;

scanf("%c", &runs);

switch (runs)

case '0':

*a = *a + 1;

break;

case '1':

*b = *b + 1;

*a = *a + 1;

break;

case '2':

*b = *b + 2;

*a = *a + 1;

break;

case '3':

*b = *b + 3;

*a = *a + 1;

break;

case '4':
*b = *b + 4;

*a = *a + 1;

*i = *i + 1;

break;

case '5':

*b = *b + 5;

*a = *a + 1;

break;

case '6':

*b = *b + 6;

*a = *a + 1;

*j = *j + 1;

break;

case 'w':

case 'W':

printf("enter runs on wide ball: ");

scanf("%d", &t);

*b = *b + 1 + t;

*d = *d + 1 + t;

*e = *e + 1 + t;

break;

case 'n':

case 'N':

printf("enter runs on no ball: ");

scanf("%d", &t);

*b = *b + t + 1;

*d = *d + 1;

*f = *f + 1;

break;

case 'l':

case 'L':
printf("enter runs as leg byes: ");

scanf("%d", &t);

*b = *b + t;

*a = *a + 1;

*d = *d + t;

*g = *g + t;

break;

case 'b':

case 'B':

printf("enter runs as byes: ");

scanf("%d", &t);

*b = *b + t;

*a = *a + 1;

*d = *d + t;

*h = *h + t;

break;

case 'o':

case 'O':

*a = *a + 1;

*c = *c + 1;

printf("enter runs if wicket is runout: ");

scanf("%d", &t);

*b = *b + t;

break;

void result(int a, int b, int e, int g, char f, char c[], char d[])

int h, i;

h = (a - 1) - b;

i = 10 - g;
if ((a - 1) == b)

printf("\t\t\tMATCH DRAWN.");

else if (a > b)

if (e == 1)

if (f == 'B' || f == 'b')

printf("\t\t\t%s won by %d runs\n\t\t\tCONGRATULATIONS TEAM %s!", c, h, c);

else if (f == 'F' || f == 'f')

printf("\t\t\t%s won by %d runs\n\t\t\tCONGRATULATIONS TEAM %s!", d, h, d);

else if (e == 2)

if (f == 'B' || f == 'b')

printf("\t\t\t%s won by %d runs\n\t\t\tCONGRATULATIONS TEAM %s!", d, h, d);

else if (f == 'F' || f == 'f')

printf("\t\t\t%s won by %d runs\n\t\t\tCONGRATULATIONS TEAM %s!", c, h, c);

else if (a < b || a == b)

if (e == 1)

if (f == 'B' || f == 'b')

printf("\t\t\t%s won by %d wickets\n\t\t\tCONGRATULATIONS TEAM %s!", d, i, d);

else if (f == 'F' || f == 'f')

printf("\t\t\t%s won by %d wickets\n\t\t\tCONGRATULATIONS TEAM %s!", c, i, c);

else if (e == 2)
{

if (f == 'B' || f == 'b')

printf("\t\t\t%s won by %d wickets\n\t\t\tCONGRATULATIONS TEAM %s!", c, i, c);

else if (f == 'F' || f == 'f')

printf("\t\t\t%s won by %d wickets\n\t\t\tCONGRATULATIONS TEAM %s!", d, i, d);

void projected_score(int a, int b, int c, int d, float e)

int ab, ba;

ab = (c - b) + (d / 10);

ba = (ab * e) + a;
printf("\nPROJECTED SCORE:\n%d at %0.2f RPO(curr. rate)\n%d at 6 RPO\n%d at 8 RPO\n%d at 10
RPO\n", ba, e, (ab * 6) + a, (ab * 8) + a, (ab * 10) + a);

void runs_needed(int a, int b, int c, int d, int e)

int f, h;

f = (c * 6) - ((b * 6) + d);

h = e - a;

printf("%d runs needed to win from %d balls", h, f);

void req_rate(float a, float b, float c, float d, float e)

float f, g, h, i;

f = e - a;

if (d == 0)

h = c;

}
else

h = (c - 1) + 0.6;

i = b + (d / 10);

g = f / (h - i);

printf("\t req. run rate %0.2f\n", g);

}
4.RISK ANALYSIS
While deploying a project, several risks are always there with different probability of happening
and different consequences. Here we are giving such risks for our project .

4.1 New Unproven Technology

The Cricket Management System is developed on Android Studio. One of the biggest risks
involved with our project is the advancement in technology. As soon as new tools and better
technology will come into play in the near future, the software might become outdated and hence
would not be able to meet the user expectations. Thus, the software will not be able to compete
with other better software available in the market and henceforth will ultimately fail.

4.2 Organizational Risk

Another risk involved with the Cricket Management System is that of the organization of player
info, team info into various tables in the database. Even if there is the slightest possibility that
there exists some ambiguity and inconsistency in the stored information about different
players and teams, this would make it difficult for the users to fetch the information of their
favorite players and would display wrong results too. Thus, the Software would lose its essence
of correctness at the first place. In the longer run, this situation may lead to the complete
removal of the Software from the user market.
4.3 Project Delay

One of the major risks involved with our project is in the project delay that if the project is not
completed within the given deadline, then we have to increase the person hours on our project
which will ultimately lead to an increase in the overall cost of the project. Furthermore, if the
quality software is not delivered on time, it would be of no use to the costumers as well. Thus,
The whole project will not serve any fruitful purpose to the users.

4.4 Risk of storage of database space

What if the company faces the shortage of database space for storing the application database?
Then the CMS application will not work properly. To resolve this, the management has to
redesign the database and some changes to the CMS application which will add cost of the
application to the management. The probability of this to the management is less in short term
and has a little higher risk in the long term.

RISK CATEGORY PROBABILITY IMPACT


(OUT OF 100%) (1-5)
1.Size estimate is Product Size 40% 2
significantly low
2.Large no of users Product Size 30% 3
3.Less Reuse Product Size 20% 2
4.Delivery Deadline Business 20% 4
NotMet Impact
5.Cost Exceeds Cost Risk 50% 4
6.Custom Product Size 45% 3
RequirementChange
7.Freezing Cost Business 35% 2
Impact
8.Lack Of Planning Technology 10% 3
9.Staff In Experience Staff Size
And 10% 2
Experience

Table 4: Risk Assessment


RISK INFORMATION SHEET (RMMM1)

RISK ID: DATE : PROBABILITY: IMPACT:


R01 10-02-2018 60% High

DESCRIPTION:

Organizational Risk (Inconsistent data into tables)


Table 6: RMMM Table 1

REFINEMENT / CONTEXT:

1. Inconsistency of data will lead to the formation of spurious tuples in the database.
2. Incorrect information will be passed on to the users about the players and teams.

MITIGATION / MONITORING:

1. Correct data must be inserted into the database tables by the Admin so that no
spurious tuples are formed.
2. Cricket fans and other users can get accurate and precise information about their
favorite players and teams along with the live scores.

MANAGEMENT / CONTINGENCY PLAN / TRIGGER:

1. Risk Estimation computed to be 5000. Allocate this amount within project


contingency cost.
2. Develop, revise and schedule assuming that high capable server is to be
adopted: allocate staff accordingly.
Trigger: Mitigation steps unproductive as of 20-02-2018

CURRENT STATUS:
05/03/2018: Mitigation steps initiated

Originator: Vrinda Anand Assigned: Riya Goel


RISK INFORMATION SHEET (RMMM2)
Risk ID: DATE: PROBABILITY: IMPACT:
R02 12-02-2018 40% AVERAGE

DESCRIPTION:

New Unproven technology (Obsolete version of Android Studio)

REFINEMENT / CONTEXT:
1. The software will fail if Android becomes outdated and is replaced by some other
Operating System.
2. The software will fail to provide information to the cricket fans about their favourite
players.

MITIGATION/MONITORING:

The software will continue to rule the market if the developers continue to release newer
versions of Android.

MANAGEMENT / CONTINGENCY PLAN/ TRIGGER:


1. Risk Estimation computed to be 40,000. Allocate this amount within project contingency
cost.
2. Develop, revised schedule assuming that high capable server is to be adopted: allocate staff
accordingly.
Trigger: Mitigation steps unproductive as of 22-02-2018

CURRENT STATUS:
07/03/2018: Mitigation steps initiated

Originator: Priya Aggarwal Assigned: Sonakshi Garg


6. TESTING

SOFTWARE TESTING

Testing is done with an objective of finding most errors with minimum amount of time
and effort.
WHITE BOX testing sometimes called glass-box testing, is a test-case design
philosophy
that uses the control structure described as part of component-level design to derive test
cases. Using white-box testing methods, you can derive test cases that :

(1) Guarantee that all independent paths within a module have been exercised at
least once.
(2) Exercise all logical decisions on their true and false sides.
(3) Execute all loops at their boundaries and within their operational bounds.
(4) Exercise internal data structures to ensure their validity.

Basic Path Testing is a White Box testing technique that enables to derive logical
complexity and defines basic test of execution paths. The test cases are prepared so that
each execution path will occur at least once.

_
1-6

F 7 T
12
8-11
F
T

17 13-16

F T

18-21
22-26

27
 Cyclomatic Complexity

Cyclomatic complexity is a software metric that provides a quantitative measure of the


logical complexity of a program. When used in the context of the basis path testing method,
the value computed for cyclomatic complexity defines the number of independent paths in
the basis set of a program and provides you with an upper bound for the number of tests
that must be conducted to ensure that all statements have been executed at least once.

P=3
E = 11
N=9
R=4
WHERE P = NO OF PREDICATE NODES
E = NO. OF EDGES
N = NO. OF NODES
R = NO. OF REGIONS

CYCLOMATIC COMPLEXITY = E-N+2


= 11-9+2
=4

OR
CYCLOMATIC COMPLEXITY = P+1
= 3+1
=4

OR
CYCLOMATIC COMPLEXITY = R
=4
 To Find No. Of Independent Paths

No. of independent paths=Cyclomatic Complexity


=4

 To Determine Independent Paths

1-6,7,8-11,27
1-6,7,12,13-16,27
1-6,7,12,17,18-21,27
1-6,7,12,17,22-26,27

 Test Cases

Independent Paths Inputs Expected O/P Received O/P


1-6, 7, 8-11, 27 S.R=250,TOT_RUNS=3200 rank=’H’; rank=’H’;

1-6, 7, 12, 13-16, 27 S.R=198,TOT_RUNS=2500 rank=’A’; rank=’A’;

1-6, 7, 12, 17, 18-21, 27 S.R=90,TOT_RUNS=1014 rank=’B’; rank=’B’;

1-6, 7, 12, 17, 22-26, 27 S.R=20,TOT_RUNS=500 rank=’L’; rank=’L’;


7.USER MANUAL

The Cricket Management System is an android application. Following are the requirement for
the proper deployment of the software:
1. An android mobile phone is required.
2. The mobile phones must run on android 4.4 or higher version.
3. It has at least 250 MB of RAM and a 20 Mb of the hard disk space.
4. It must have an active internet connection for the smooth functioning
of the software.

7.1 LOGIN

In this section of the project, the user has to login with the credentials of login ID and Password.
Different application layout is there for the admin and other users.
For a new user, only the admin can create a new user using his password
provide the login details to him/her so that no other outsider will violate the security of the
application.
Users can logout from his/her id at any time using the logout
home page.
7.CONCLUSION

We can conclude that the Cricket Management System can be used by people all across the globe
to access the information of various players and teams to retrieve details along with the player
personal details also. It can help in accessing new data and news about favourite players and
teams. It is a modern approach to fetch data of players and teams, along with live scores.

It is based on advanced technology as it is compatible with all mobile sets having android
version 4.4 or higher. Some of the advantages of CMS (Cricket Management System) are as
follows:-

 Can ODI Tournament details on Internet.


 Players, Organizers, Selectors, Fan and Followers can access it from anywhere
and anytime.
 The ODI Tournament can reach thousands of online users and gain major
popularity.
 User-Friendly admin and easy to manage.
 Admin can add and edit information at any point of time and also from any
location.
 Can share ODI Details through Social Media: Comments, posting, etc.
 Latest cricket news updates, ongoing ODI Events information is easy to retrieve.

You might also like