Upload
saurabh-kumar-gupta
View
514
Download
0
Tags:
Embed Size (px)
Citation preview
1
System Requirement and Specifications
1. Introduction: This document aims at defining the overall software
requirement for ‘Sports Tournament System’. The final product will be
having features /functionalities mentioned in this document and may
have some additional features as per the need.
1.1 Purpose:
This specification document describes the capabilities that will be
provided by the software application ‘Sports Tournament System’.
The system aims at making people updated about their favourite
sport which in our system is Cricket.
1.2 Scope:
The software product ‘Sports Tournament System’ will be an
application that will provide the information regarding a sports
tournament and will provide all the necessary details about that
tournament. Various information like schedule of the matches and
team information can be seen there by the user.
1.3 References:
The name of player participating in the tournament is given by the
official committee organising the tournament.
1.4 Overview:
The rest of the SRS document describes the various system
requirements, interfaces, features and functionalities in details.
2. Overall Description: The ‘Sports Tournament System’ will have capability to maintain
information about the teams participating in the tournament, match
results and various other important terms related to the particular sport.
The software will also keep track of the team performance.
2
2.1 Product Perspective: The application will be window based.
2.1.1 System Interfaces:
None
2.1.2 User Interface:
The software will have a user-friendly and menu based interface.
Following screens will be provided:
1. As the system will start there will be a menu where there will be
some choices for the user about the tournament.
2. Each screen will have the name of the tournament on the top
and the choices for the user can be numeric and will be
alphabetical where he wants the team name only when he is
accessing the team squad.
3. Each screen will have an Exit choice also to exit the system and
also back choice to come back on the main menu.
2.1.3 Hardware Interface:
Screen resolution of at least 800x600 is required for proper and
complete viewing. Higher resolution will not be a problem.
2.1.4 Software Interface:
1. Any window-based operating system (Windows 7/8).
2. Devc++ and Codeblocks for coding/developing the software.
3. Notepad for storing the information for the program.
2.1.5 Communication Interfaces: None.
2.1.6 Memory Constraints: At least 64MB RAM and 100MB space on
hard disk will be required for running of the application
2.2 Product Description: The system is accessed by all users and no user can change the
information and data base of the system. Any information regarding
the change in the database should be made separately by a person
who will do the specific changes in the database as per the
requirement of the system.
3
2.3 User characteristics: Educational level: He should be comfortable with the English
language.
Technical Expertise: Should be comfortable in using the general
purpose application in the computer.
2.4 Constraints: As the system is purely based on C language so less
user friendly interface and the low graphics will be there(if any). All
the inputs will be taken from the keyboard and the system will run on
the command line.
4
Data Flow Diagram (DFD)
DFD Level == 0
0 Sports
Tournament
System
User Input Desired
Output
Team Details Rankings
Schedule
Tournament Details
5
DFD Level == 1
User Choice
Schedule Rankings Tournament
Details
Team
Details
1.1 Get list
of choices
1.2 Get
Schedule
1.3 Get
Rankings
1.4 Get
Tournament
Information
1.5 Get
Team
Information
6
DFD Level == 2 (Get team information)
1.5.1 Get
Team info.
choices
1.5.2 Get
team squad
1.5.3 Get
team
performance Performance
Squad
DFD Level == 2 (Get tournament information)
1.4.2 Get Best
Performance
1.4.1 Get Tournament info. choices
1.4.4 Get
Sponsors
1.4.3 Get News
Sponsors
Tournament
News
Best
Performances
7
Entity Relationship Diagram(ERD)
Tournament Teams
participating
has
name
Squad Performance
name
Sponsors
news
1 M
8
Design of System
Coupling:
main ()
tournament_info ()
team_info () schedule ()
rankings () details ()
file_open ()
information ()
Control Coupling
Control Coupling
Control
Coupling
Control
Coupling
Control
Coupling
Control Coupling
Data
Coupling
Data
Coupling
Data
Coupling
9
Number of functions(8):
1. main
2. details
3. schedule
4. rankings
5. team_info
6. tournament_info
7. information
8. file_open
Coupling Values Calculation :
Di: number of input data parameters
ci : number of input control parameters
do: number of output data parameters
co : number of output control parameters
gd : number of global variables used as data
gc : number of global variables used as control
w : number of modules called (fan-out)
r : number of modules calling the module under consideration (fan-
in)
10
Coupling Table
Coupling Values
Module name Coupling Values
main 0.83
details 0.80
schedule 0.67
rankings 0.67
team_ info 0.80
tournament_info 0.85
information 0.80
file_open 0.83
Coupling
Type
main details schedule rankings team_info tournam
ent_info
informat
ion
file_open
main Control
Coupling
details Control
Coupling
Control
Coupling
Control
Coupling
Control
Coupling
schedule Data
Coupling
rankings Data
Coupling
team_info Control
Coupling
Data
Coupling
tournament_
info
Data
Coupling
information Data
Coupling
file_open
11
Cohesion
Module name Cohesion Type
main Coincidental Cohesion
details Sequential Cohesion
schedule Coincidental Cohesion
rankings Coincidental Cohesion
team_info Logical Cohesion
tournament_info Logical Cohesion
information Sequential Cohesion
file_open Functional Cohesion
12
Testing
Flow Chart of tournament_info ():
1 2 3 4 5
1 2
prints title and show choices
take choice
choice 1
show tournament news
show best performances
show sponsors
show team division
go to main menu
go to choice 1 input
show choices to return
take choice
choice 2
back to previous menu
Go to main menu
Go to choice 2 input
13
Flow Chart of teams_info() :
1 2
Prints title and opens a
file showing team
names
Prints list of choices
and takes input
Choice
Go to information() Go to main menu Go to choice input
14
Flow Chart of information() :
1 2 3
1 2 3
1 2
Prints title and list of
choices
Prints list of choices
and takes choice
Choice 1
Inputs team name
Inputs team name
Go to main menu Wrong choice, go back to choice 1
input
Call to file_open()
Choice 2
Go back to choice 2 input
Go back to previous screen
Go to main menu
Prints list of choices to return
15
Test Cases(Information)(Unit Testing)
Test Cases(team_info)(Unit Testing)
Input Expected Output Output
1 Go to main menu screen Main menu screen
2 Go to information() information()
Any other no. Go to choice input Takes choice input
Test Cases(tournament_info)(Unit Testing)
Input Expected Output Output
1 team_division team_division
2 best performances best performances
3 News News
4 Sponsors Sponsors
Input Expected Output Output
1,india Displays India’s squad India’s squad
2,australia Displays Australia’s performance
Australia’s performance
1,2,1 Go to main menu screen Main menu screen
1,1,2 Go to previous screen Previous screen
16
Cyclometric Complexity
1
2
4 5 6 7
10 9
8
11
12
13
17 18 19
28
14 15 16
20
21 22 23
29
30 31
32
33
34 35 36
24
27 26 25
17
edges (e) = 49
nodes (n)= 36
Cyclometric Complexity of the system is = e – n + 2 = 15
Number regions = 15
Cyclometric complexity is 15
Number of predicate nodes(P) = 14
Cyclometric Complexity = p + 1 = 15
18
System Testing:
Test Cases:
Sr no. Input Desired Output System Output
1. 1 Schedule Schedule
2. 1 1 main menu main menu
3. 2 rankings of the teams rankings of the teams
4. 3 2 Top Performances of the tournament
Top Performances of the tournament
5. 3 1 Teams division Teams division
6. 3 1 6 Wrong choice and ask to enter the choice again
Wrong choice and ask to enter the choice
again
7. 4 2 2 australia performance of the team australia
performance of the team australia
8. 4 2 2 india 2 team information choices
team information choices
9. 4 2 2 asdfadsf prompt saying wrong input
prompt saying wrong input
10. 3 3 tournament news tournament news
11. 3 3 4 prints wrong choice and ask to enter the
choice again
prints wrong choice and ask to enter the
choice again
12. 3 4 List of Sponsors List of Sponsors
13. 7 Wrong Choice Wrong Choice
14. 4 2 3 main menu main menu
15. 4 2 1 sri lanka squad of Sri lankan team squad of Sri lankan team
16. 3 1 1 main menu main menu
19
LAB OBJECTIVES
1 – Calcuate halstead’s equation for a given
program/software/system where,
N1=No. of distinct operators
N2=No. of distinct operands
N3=Total no. of operators
N4=Total no. of operands
Evaluate –
a) Program vocabulary (M) = N1+N2 = 25
b) Program length (N) = N3+N4 = 39
c) Calculated program length = N1log2N1+N2log2N2 = 75.000
d) Volume (V) = Nlog2M = 181.1104
e) Difficulty (D) = N1/2 * N3/N2 = 1.8824
f) Effort (E) = D*V = 340.9137
g) Time required (T) = E/18 = 18.9396
h) No. of delivered bugs (B) = V/3000 or ((E)2/3)/3000 = 0.60368
2 – Compute average no. of live variables per statement in a
program.
Avg. no. of live variables = (Total no. of live variables)/(Total lines of
code) = 0.106227
3 – Compute average life of variables in a program/shell
Avg. life of variables = (Sum of life instances of all var)/(Total lines in
program) = 0.585