Se Prac Joshi
Se Prac Joshi
Se Prac Joshi
Practical 1
Introduction
Software project planning management is the clear need nowadays. A plan is like a road map.
Software engineering is a discipline for developing high quality software for computer-based
systems. It is all about the quality focus, process, methods, and tools that are used in software
development process. The software development process defines a framework that includes
different activities and tasks. We can say the process defines what different activities and
tasks are to be carried out during software development. (Or method of developing the
software). The software planning management provides the technical way starting how to
implement the software methods that include Communication, Requirement Analysis,
Analysis and Design modeling, Program construction, Testing, and support. Software
development life cycle SDLC is the systematic approach to complete the software
development process within the time and maintain quality of the software. It uses the step-
bystep approach to complete the software development process. If the process is strong, then
the end product will also be strong, and project can get success.
While developing a good software product the developers that are directly or indirectly
included in this process should keep the following points in their mind :
• A quality focus
• Process
• The software development life cycle is all about.
• Understanding the problem. i.e. (problem domain).
• Decide a plan for solution. i.e. (solution domain).
• Coding the planed solution. Maintain the product.
1
210410107047
2
210410107047
Advantages:
1. Easy to understand.
2. Define before design.
3. It is used for project with simple and strict deadlines.
Disadvantages:
1. Idealized.
2. Problems remain uncovered until testing.
3
210410107047
Advantages:
1. Early visibility.
2. Higher outputs.
3. Cost reductive.
4. Client can actually feel with the system, i.e feedback. V. Early design.
Disadvantages:
5
210410107047
Advantages:
Disadvantages:
Incremental Model
Incremental Model is a process of software development where requirements are divided into
multiple standalone modules of the software development cycle. In this model, each module
goes through the requirements, design, implementation, and testing phases. Every subsequent
release of the module adds function to the previous release. The process continues until the
complete system is achieved.
6
210410107047
1. Requirement analysis: In the first phase of the incremental model, the product
analysis expertise identifies the requirements. And the system functional requirements
are understood by the requirement analysis team. To develop the software under the
incremental model, this phase performs a crucial role.
2. Modeling: In this phase of the Incremental model of SDLC, the design of the system
functionality and the development method are finished with success. When software
develops new practicality, the incremental model uses style and development phase.
4. Deployment: Deployment phase consists of deploying the end product to the clients
and getting their feedback for any particular changes. If any change is required, then
the entire working cycle is repeated.
progressively on their component or prototype. The most important aspect for this model to
be successful is to make sure that the prototypes developed are reusable.
Advantages:
Disadvantages:
8
210410107047
Parameters
Usability Basic Medium Medium Initial Initial
Cost Low High Low Expensive Very High
WATERFALL MODEL
The Waterfall model is selected for the Sports Management System in software engineering
because:
• Clear and Stable Requirements: The project requirements are well-defined and
unlikely to change significantly.
9
210410107047
• Predictable Timelines and Costs: Waterfall provides upfront project timelines and
cost estimates, aiding resource allocation and planning.
• Limited Scope Changes: The project scope is expected to remain relatively stable,
discouraging frequent changes.
Practical 2
10
210410107047
Prepared By:
Meet Joshi
Hetansh Desai
Dhruv Patel
11
210410107047
Table of Contents:
1. Introduction
1.1 Purpose
1.2 Scope
1.3 Product Overview
1.4 Acronyms
2. Overall Description
2.1 Product Perspective
2.2 Product Functions
2.3 User Classes and Characteristics
2.4 Operating Environment
2.5 Design and Implementation Constraints
2.6 User Documentation
2.7 Assumptions and Dependencies
3. External Interface Requirements
3.1 User Interfaces
3.2 Hardware Interfaces
3.3 Software Interfaces
3.4 Communications Interfaces
4. System Features
4.1 System Feature 1
4.2 System Feature 2 (and so on)
5. Other Nonfunctional Requirements
5.1 Performance Requirements
5.2 Safety Requirements
5.3 Security Requirements
5.4 Software Quality Attributes
5.5 Business Rules
6. Other Requirements
7. Conclusion
12
210410107047
1. Introduction
1.1 Purpose
The Sports Management System (SMS) project aims to provide a comprehensive and user-
friendly platform for efficiently managing and organizing various aspects of sports activities
within an organization or institution. This Software Requirements Specification (SRS)
document outlines the requirements, functionalities, and constraints of the SMS to guide its
development.
1.2 Scope
The scope of the SMS is to streamline and enhance the management of sports-related tasks,
such as scheduling events, managing player registrations, tracking game scores, and
maintaining player statistics. It serves as a centralized hub for both administrators and
participants, facilitating the smooth operation of sports activities.
The system targets sports clubs, educational institutions, and organizations with an interest in
sports management, enabling them to manage their sporting events, teams, players, and
associated data more efficiently and effectively.
The Sports Management System is designed to be an all-inclusive solution for sports event
planning, coordination, and management. It offers various features, including event
scheduling, team and player management, real-time score tracking, and comprehensive
statistical analysis. By centralizing these functions, the SMS aims to reduce the
administrative burden and improve the overall sports experience for users.
1.4 Acronyms
2. Overall Description
Core Functions
Additional Functions
2. Notification System: The SMS offers a notification system to keep users informed
about upcoming events, score updates, and important announcements.
14
210410107047
15
210410107047
16
210410107047
17
210410107047
4. System Features
The Sports Management System (SMS) is equipped with a range of features designed to
streamline sports event management, player and team administration, and statistical analysis.
This section provides an in-depth technical description of some of the core system features:
Event Creation: Administrators can create new events, specifying event types (e.g.,
matches, tournaments, practices), event names, dates, times, and venues through the
user interface.
Event Editing: The system provides an interface to modify event details, including
rescheduling, venue changes, or event cancellation.
Participant Assignment: For team-based sports, administrators can assign teams and
players to events, ensuring that participants are scheduled for the appropriate matches
or practices.
This feature empowers administrators to register, manage, and assign players and teams to
specific events. The technical aspects include:
User Registration: The system offers a user registration interface for players and
coaches, enabling them to create accounts with personal details and credentials.
Player Profiles: Registered players have individual profiles where they can update
their personal information, including contact details and player statistics.
Team Registration: Administrators can register teams, providing team names, logos,
and other relevant information. Team profiles are created in the system.
Event Assignment: Players and teams are assigned to specific events via the event
management interface, ensuring their participation is accurately tracked.
18
210410107047
Team Management: Coaches have access to manage their respective teams, adding
or removing players and monitoring team performance.
Real-time score tracking is a critical component of the SMS. It allows authorized users to
input and update scores for ongoing matches. The technical implementation includes:
Score Input Interface: The system provides a score input interface, which can be
used by referees, administrators, or designated individuals to enter scores during
matches.
Scoring Rules: The system enforces scoring rules defined for different sports,
ensuring accurate score calculation and representation.
Real-time Updates: As scores are entered, they are immediately reflected on the user
interfaces of participants, providing up-to-the-minute information on ongoing
matches.
Historical Score Data: All score data is stored in the database for historical analysis,
including win-loss records, player statistics, and team performance trends.
Data Collection: The system collects data on events, including scores, player
statistics, and game outcomes, and stores it in the database.
Data Analysis Algorithms: The SMS employs data analysis algorithms to generate
various statistics, such as player averages, team rankings, and historical performance
trends.
Visualization Tools: Users can access graphs, charts, and tables that visually
represent the statistical data, making it easier to interpret and analyze.
Export Functionality: Data can be exported for further analysis or reporting purposes
in common formats such as CSV or PDF.
Each of these system features plays a crucial role in ensuring the effective management of
sports events, participant data, and statistical insights within the SMS. Technical
considerations are paramount to ensure the system's reliability and performance.
19
210410107047
In addition to the core functional requirements, the SMS has specific nonfunctional
requirements that are critical to its successful operation and adoption. These requirements
encompass various aspects, including performance, safety, security, software quality
attributes, and adherence to business rules.
Response Time: The SMS shall respond to user interactions within a maximum of 2
seconds for most operations. Score updates and real-time event notifications shall
have a response time of less than 1 second.
Concurrent Users: The SMS must support at least 500 concurrent users during peak
usage periods without significant performance degradation.
Data Backup: The system shall regularly back up all data, including event schedules,
player and team information, and scoring data, to prevent data loss in case of system
failures.
Error Handling: The SMS must include error handling mechanisms to gracefully
handle and report errors to users without system crashes. Error logs should be
maintained for debugging.
User Authentication: The system must employ secure user authentication methods,
including strong password encryption and storage. It shall support multi-factor
authentication for administrator accounts.
Data Encryption: All sensitive data, including user credentials and personally
identifiable information, shall be transmitted over the network using HTTPS
encryption to prevent data interception.
Role-Based Access Control: The SMS must implement role-based access control to
ensure that users only have access to the features and data relevant to their roles (e.g.,
administrators, players, coaches).
Compliance: The system shall adhere to data protection regulations, such as GDPR
or HIPAA, where applicable. Compliance with relevant standards and regulations
shall be maintained.
20
210410107047
Reliability: The system must be highly reliable, with an expected uptime of 99.9%.
Failures and system downtimes should be minimized and promptly resolved.
Usability: The SMS shall provide an intuitive user interface, with clear navigation
and user-friendly features. A user satisfaction survey shall be conducted annually to
gather feedback for usability improvements.
Maintainability: The system shall be designed with modular and maintainable code.
Updates and bug fixes shall be easy to deploy without disrupting system operations.
Registration Fees: Participants shall pay a registration fee for events. The fee
structure shall be based on event type and must be configurable by administrators.
These nonfunctional requirements are vital to ensure the performance, safety, security, and
quality of the Sports Management System (SMS). They also establish the rules and guidelines
that govern the operation and behaviour of the system, aligning it with business needs and
regulatory compliance.
21
210410107047
6. Other Requirements
Data Privacy: The SMS shall comply with all applicable data protection and privacy
laws and regulations, including but not limited to GDPR, HIPAA, or regional data
protection laws.
Intellectual Property: All software components and content used in the SMS must
respect intellectual property rights, and licensing terms shall be documented.
Time Zone Settings: Users shall have the option to customize their time zone settings
to ensure accurate event timing and notifications.
Custom Reporting: The system shall allow administrators to generate custom reports
and analytics based on user-defined criteria and data filters.
Export Formats: Reports and analytics shall be exportable in common formats, such
as PDF, CSV, and Excel, for further analysis and sharing.
22
210410107047
Budgetary Constraints: The project shall operate within the budgetary constraints
outlined in the project plan. Any deviations from the budget shall be documented and
approved by project stakeholders.
Timeline Constraints: The project timeline shall adhere to the established project
schedule, with milestones and deadlines closely monitored and reported.
Resource Availability: The project shall be executed with the resources available,
including human resources, hardware, and software tools. Any resource constraints
shall be promptly communicated to project stakeholders.
7. Conclusion
23
210410107047
Practical 3
Objectives:
The basic and primary purpose of the functional point analysis is to measure and
provide the software application functional size to the client, customer, and the
stakeholder on their request.
Types of FP Attributes:
Measurements Examples
Parameters
24
210410107047
Features:
- Variations such as “source lines of code”, are used to set out a codebase.
- LOC is frequently used in some kinds of arguments.
- They are used in assessing a project’s performance or efficiency.
COCOMO Model:
Cocomo(Constructive Cost Model) is a regression model based on LOC, i.e number
of Lines of Code. It is a procedural cost estimate model for software projects and is
often used as a process of reliably predicting the various parameters associated with
making a project such as size, effort, cost, time, and quality. It was proposed by
Barry Boehm in 1981 and is based on the study of 63 projects, which makes it one
of the best-documented models.
The key parameters which define the quality of any software products, which are
also an outcome of the Cocomo are primarily Effort & Schedule:
25
210410107047
The characteristics pertaining to different system types are mentioned below. Boehm’s
definition of organic, semidetached, and embedded systems:
1. Organic: A software project is said to be an organic type if the team size required is
adequately small, the problem is well understood and has been solved in the past and
also the team members have a nominal experience regarding the problem.
1. Basic Model:
E = a(KLOC)^b
Time=c(Ef fort)^d
Person required=Ef fort/time
The above formula is used for the cost estimation of for the basic COCOMO model, and
also is used in the subsequent models. The constant values a,b,c, and d for the Basic Model
for the different categories of the system:
Software Projects a b c d
26
210410107047
Cost estimation using LOC, COCOMO and FP model of your current semester project.
LOC:
An estimate of 150 lines of code is there in the project.
FP:
Assuming all factors to be Average
External Inputs (EI): 80
External Outputs (EO):50
External Inquiries (EI):35
Internal Files (ILF):06
External Interfaces (EIF):04
COCOMO:
E = a(KLOC)^b
=3(300)^1.12
=3(594.80)
=1784.4
D=c(E)^d
=2.5(1784.4)^0.35
=2.5(13.741)
=34.35
27
210410107047
Practical 4
System Design using procedural approach: Structure chart, physical DFD, User interface
(I/O) designing, component level design for current semester project.)
28
210410107047
29
210410107047
ER Diagram
30
210410107047
DFD level-0
Tournament
Players
Request Owner
Request
0-Level
Response Response
STMS
Response
Database
Admin
Level 1 DFD
If n o
Admin
1.1
Login 1.1.3
to m
anag
e Manage all
data
If
ye
login s
1.1.1
Logout
Approve 1.1.2
tournament and
Player Upload News
tournament
news
31
210410107047
2.1.2
Registration
Tournament 2.1.5
no
If
View register
If yes Team
2.1.4
2.1
If yes
2.1.3
login Create Manual 2.2
te
ra match
ene
G scheduling
Manage score
2.1.2
tona_match
Create Auto
match 2.1.2.1
scheduling
View all match match_score
Detail
Level 3 Player
3.2
Search 3.1.1
tona Tournament
3.1
Registration in
the Tournament Logout
no
Player If
3.1.2
3.1 view/
manage
Login profile
player
3.1.3
login If yes
view team
request 3.1.3.1
Approve team
request
t_player
4.1 view/
manage
Login profile
login
player
Practical 5
34
210410107047
Class Diagram
35
210410107047
Sequence Diagram
36
210410107047
37
210410107047
38
210410107047
registration
login
create match
upload score
logout
Practical 6
40
210410107047
Software testing using testing tools: Demonstrate any one software testing tool with testing
of your project.
Testing
Admin:
41
210410107047
Player Login
TC- Verify of User leaves the System prompts the System Pass
3 blank field email-id and message prompts the
message
password Blank “Please fill in this “Please fill in
field” this field”
42
210410107047
Tournament Login
TC- Verify of User leaves the System prompts the System Pass
3 blank field email-id and message prompts the
message
password Blank “Please fill in this “Please fill in
field” this field”
43
210410107047
Player registration
Testing of Player
TC TC Description Expected O/P Actual Test
ID Name
O/P Resul
t
TC-1 Verify User enters System verifies all System verifies Pass
form all fields field and system all field and
according to system prompts
detail format. prompts message message “You
“You have have successfully
register”
successfully register”
TC-2 Verify User enters System prompts with System prompts Pass
incorrect field invalid the message at that with the message
detail filed “Please match
format for the requested format” at that filed
registration “Please match the
requested format”
TC-3 Verify of User leaves System prompts with System prompts Pass
blank filed and the message at that with the message
field filed “Please fill in
click to this filed” at that filed
submit button respectively. “Please fill in this
filed” respectively.
44
210410107047
Tournament registration
Testing of Tournament
TC TC Description Expected O/P Actual Test
ID Name
O/P Resul
t
TC-1 Verify User enters System verifies all System verifies Pass
form all fields field and system all field and
according to system prompts
detail format. prompts message message “You
“You have have successfully
register”
successfully register”
TC-2 Verify User enters System prompts with System prompts Pass
incorre field invalid the message at that with the message
ct detail filed “Please match
format for the requested format” at that filed
registration “Please match the
requested format”
TC-3 Verify User leaves System prompts with System prompts Pass
of filed and the message at that with the message
blank filed “Please fill in
field click to this filed” at that filed
submit button respectively. “Please fill in this
filed” respectively.
45
210410107047
Team registration
Testing of Team
TC TC Description Expected O/P Actual Test
ID Name
O/P Resul
t
TC-1 Verify User enters System verifies all System verifies Pass
form all fields field and system all field and
according to system prompts
detail format. prompts message message “You
“You have have successfully
register”
successfully register”
TC-2 Verify User enters System prompts with System prompts Pass
incorre field invalid the message at that with the message
ct detail filed “Please match
format for the requested format” at that filed
registration “Please match the
requested format”
TC-3 Verify User leaves System prompts with System prompts Pass
of filed and the message at that with the message
blank filed “Please fill in
field click to this filed” at that filed
submit button respectively. “Please fill in this
filed” respectively.
46
210410107047
Result Analysis
47
210410107047
Result Analysis
Sr Module Load Time Accuracy
No.
(sec) (%) Status
Advantages
Our application is useful for Admin and player. It will reduce paperwork for Tournament
Organizer. System will provide match scheduling. It also provides notification to player.
48
210410107047
Practical 7
AIM: Software Development tools and techniques (CASE)
49
210410107047
CASE Tools
The essential idea of CASE tools is that in-built programs can help to analyse developing
systems in order to enhance quality and provide better outcomes. Throughout the 1990,
CASE tool became part of the software lexicon, and big companies like IBM were using
these kinds of tools to help create software.
Various tools are incorporated in CASE and are called CASE tools, which are used to support
different stages and milestones in a software development life cycle.
CASE tools are set of software application programs, which are used to automate SDLC
activities. CASE tools are used by software project managers, analysts and engineers to
develop software system.
50
210410107047
Practical 8
CASE STUDY: study of software quality assurance (SQA) standards. SQA Activities, ISO,
CMM, Six-Sigma standards.
Quality Assurance
Quality Assurance in Software Testing is defined as a procedure to ensure the quality of
software products or services provided to the customers by an organization. Quality
51
210410107047
assurance focuses on improving the software development process and making it efficient
and effective as per the quality standards defined for software products. Quality Assurance is
popularly known as QA Testing.
Software Reliability
Software Reliability means Operational reliability. It is described as the ability of a system or
component to perform its required functions under static conditions for a specific period.
Software reliability is also defined as the probability that a software system fulfills its
assigned task in a given environment for a predefined number of input cases, assuming that
the hardware and the input are free of error.
Software Reliability is an essential connect of software quality, composed with functionality,
usability, performance, serviceability, capability, installability, maintainability, and
documentation. Software Reliability is hard to achieve because the complexity of software
turn to be high. While any system with a high degree of complexity, containing software, will
be hard to reach a certain level of reliability, system developers tend to push complexity into
the software layer, with the speedy growth of system size and ease of doing so by upgrading
the software.
52
210410107047
c. Development Phase
SQA promotes the use of coding standards and guidelines to maintain code
quality.
Code reviews and inspections are conducted to detect and rectify coding errors.
d. Testing Phase
A comprehensive testing strategy is implemented, including functional,
performance, and security testing.
Automation testing is employed to enhance test coverage and reliability.
e. Post-Deployment Phase
SQA monitors the live system for any issues and gathers feedback from users.
Continuous improvement processes are initiated based on user feedback.
Leadership
Leaders at all levels establish unity of purpose and direction and create conditions in which
people are engaged in achieving the quality objectives of the organization.
Engagement of People
It is essential for the organization that all people are competent, empowered and engaged in
delivering value. Competent, empowered and engaged people throughout the organization
enhance its capability to create value.
Process Approach
Consistent and predictable results are achieved more effectively and efficiently when
activities are understood and managed as interrelated processes that function as a coherent
system.
Improvement
Successful organizations have an ongoing focus on improvement.
Evidence-based Decision Making.
Decisions based on the analysis and evaluation of data and information are more likely to
produce desired results.
Relationship Management
For sustained success, organizations manage their relationships with interested parties, such
as suppliers
b. Process Areas
Specific process areas, such as Requirements Management, Configuration
Management, and Supplier Agreement Management, are addressed to enhance
project management and product quality.
Benefits
As a result of implementing SQA activities and standards, XYZ Software Solutions observes
the following benefits:
Improved software quality and reliability.
Enhanced customer satisfaction and reduced defect rates.
Better project management and resource utilization.
Increased process efficiency and reduction in costly rework.
Alignment with international standards and regulatory requirements.
55
210410107047
Industry Benchmarking
Regularly benchmark processes and performance against industry standards and best
practices to identify areas for further improvement and innovation.
Participate in industry forums and conferences to stay informed about the latest trends
and developments in software quality assurance and development.
Conclusion
RAP Software Solutions' commitment to software quality and the implementation of SQA
activities, ISO, CMM, and Six Sigma standards has yielded significant improvements in its
software development processes. The company continues to strive for higher levels of quality,
efficiency, and customer satisfaction through ongoing process improvement initiatives.
Practical 9
Study of any two Open-source tools in DevOps for Infrastructure Automation, Configuration
Management, Deployment Automation, Performance Management, Log Management.
Monitoring. (Behat, Watir, Chef, Supergiant, SaltStack, Docker, Hudson etc)
Ansible
56
210410107047
Key Features:
Infrastructure as Code (IaC): Ansible enables organizations to define infrastructure
and application configurations as code, facilitating version control and making it
easier to manage and maintain these configurations over time.
Idempotent: Ansible follows the idempotent principle, ensuring that multiple runs of
the same playbook produce the same system state. This reduces the risk of unintended
changes and simplifies maintenance.
Use Case:
Ansible is commonly used in various scenarios, including:
- Configuring servers and network devices.
- Automating the deployment of applications.
- Managing infrastructure resources.
- Ensuring consistent system states across multiple environments.
Prometheus
Key Features:
Data Collection: Prometheus uses a pull-based model to collect data from
instrumented applications, servers, and other systems. This approach allows it to
actively retrieve metrics from targets.
Metrics Format: Prometheus employs its own simple text-based data format for
metrics, which makes it easy to expose data for monitoring. This format is highly
efficient and straightforward to work with.
Grafana Integration: Prometheus is often paired with Grafana, a widely used open-
source dashboard and visualization tool. This integration provides rich and
customizable dashboards for visualizing the collected metrics.
Use Case:
Prometheus is suitable for a wide range of monitoring and log management tasks,
including:
- Monitoring the performance and health of applications and infrastructure.
- Visualizing and analyzing metrics in real-time.
- Setting up alerting mechanisms to proactively respond to issues.
- Supporting container orchestration platforms like Kubernetes.
- Serving as a central component in microservices architectures for comprehensive
observability.
58