Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 15

Software Process Improvement

BS(SE)-VI

Dr. Assad Abbas

Department of Computer Science


COMSATS University Islamabad, Islamabad Campus
assadabbas@comsats.edu.pk
Outline

n Team Software Process (TSP)

May 15, 2024 2


Managing Software Projects with Team Software
Process (TSP)
n Software engineering is progressively becoming a
collaborative activity as it relies on the knowledge, expertise
and experience of an ample and frequently dissimilar group of
individuals.
n Although individuals can develop some software products, it is
no longer practical for one person to do most software
development jobs because the scale and the complexity of
the systems have increased and the demand for short time-
to-deliver is high.
n System development is a team activity, and the quality of the
software products are largely determined by the effectiveness
of the team coordination. Yet, to be effective, teams must
work in a trusting and supportive environment

May 15, 2024 3


Managing Software Projects with Team Software
Process (TSP)
n The Team Software Process (TSP) was developed in 1996 by
Watts Humphrey, the founder of the Software Process Program at
the Software Engineering Institute (SEI) at Carnegie Mellon
University, United States.
n TSP began as an attempt to make the Personal Software Process
(PSP) a consistent practice for software engineers.
5 The first version of TSP, TSP0, was created in 1996. It was simple,
was tested using two teams and ultimately helped engineers do the
work associated with their discipline.
5 TSP0 included additional guidance necessary to teams regarding its
processes. This initial trial indicated the importance of wider
management support to TSP implementation.
5 The enhanced version of TSP0, TSP0.1, provided extra information
on process improvements and was tried using a larger number of
teams
5 Within 3 years after TSP0.1 was released, another nine versions of
TSP were gradually developed, beginning with TSP0.2
May 15, 2024 4
Managing Software Projects with Team Software
Process (TSP)
n TSP, which is a collection of PSP components taken from individual
software developers’ work processes and supplemented with
selected engineering functions, was an excellent software process
standard for use at the team level.
n The Capability Maturity Model (CMM), which was developed earlier
at the SEI, indicates organizational best practices for software
development and can be efficiently adopted using TSP.
n The TSP is a prescriptive process for implementing projects
consisting of a set of process scripts, forms, standards, procedures,
methods and tools for project teams to produce high-quality
software products on schedule and within pre-agreed budget
constraints
n It provides clear and concise guidance on software development
processes, with emphasis on mutual support and leadership among
software project team members

May 15, 2024 5


Managing Software Projects with Team Software Process
(TSP)
n TSP can be adopted by teams of 2 to 150 members However, it is
especially advisable to split teams of more than 15 to 20 members into
smaller sub-teams for better management and team coherence
n There are three variations of TSP:
5 Multi-team TSP (TSPm)
g Meant for teams whose members are in different locations or teams under
separate management
5 Functional TSP (TSPf)
g Functional TSP (TSPf) is for teams in which each member usually works
independently.
g It modifies the basic TSP process for use by functional organisations that do not
have a project structure. It is typically used when there is no project organisation
present, usually for on-going activities such as maintenance of multiple products
and product support.
g Maintenance project teams are a good example of where TSPf could be adopted,
as each member normally handles separate features of a product enhancement
that require them to work on their own.

May 15, 2024 6


Managing Software Projects with Team Software
Process (TSP)
5 TSP+
g TSP+ on the other hand, extends core TSP and TSPm
by including additional process scripts designed to
improve compliance of TSP with the CMMI process
improvement model.
n TSPm, TSPf and TSP+ are not in the public domain.
They are proprietary to the SEI and provided under
license to SEI partners only.

May 15, 2024 7


TSP Process and Structure
n Team Software Process (TSP) provides clear and concise guidance for
software development processes and emphasizes mutual support and
leadership among software project team members.
n Its purpose is to build an effective team through collaborative and
disciplined work within a productive environment in which everyone knows
their roles and responsibilities. The outcome is well-defined and well-
planned work processes.
n TSP builds on the Personal Software Process (PSP); individual members
must be familiar with PSP skills and knowledge before becoming part of a
TSP team.
n PSP training helps individual software engineers assume a structured and
disciplined approach in writing software and particularly in planning,
tracking, measuring and managing the quality of their own work. It is vitally
important for each team member to know and understand the principles
underlying the TSP process to build a cohesive TSP team
n TSP teamwork, on the other hand, involves daily engineering practices
related to project development that require mutual cooperation and
precise supervision.
May 15, 2024 8
TSP Process and Structure
n Principal Components of TSP Process

May 15, 2024 9


TSP Process and Structure
n TSP Team Launch and Process Flow
5 Each TSP project begins with a team
launch.
5 TSP team launch is a four-day planning
process led by a trained launch coach, and
TSP launch scripts are used to drive the
launch activities.
5 The launch consists of nine development
team meetings, with management and/or
marketing/ customer representatives at the
first and ninth meeting. During the launch,
the team members work together to develop
strategies, processes and detailed plans for
their project.
5 The overall project plan will be presented for
management approval during a management
review meeting before the team proceeds
with the project development process.
5 The plan is updated and refined at periodic
launch sessions known as ‘re-launches’ that
take place every three to four months so that
the plans remain accurate
May 15, 2024 10
TSP Process and Structure

May 15, 2024 11


TSP Process and Structure
n In TSP, each team member is a manager, and everyone is assigned a
specific managerial role based on his or her specific skills.
n The management positions include team leader, customer interface
manager, design manager, implementation manager, test manager,
planning manager, process manager, quality manager and support
manager.
n Each role has its own set of goals and responsibilities.
n An overall project schedule in TSP is estimated using a top-down
approach based on overall project size and average team productivity.
n A Work Breakdown Structure (WBS) is first produced by the team based
on the conceptual design. The WBS is a list of product components
grouped into small groups of similar items. Once assembled, it provides a
list of major products and indicates the order in which they should be built.

May 15, 2024 12


TSP Process and Structure

May 15, 2024 13


ADOPTING TSP TO MINIMIZE AND AVOID SOFTWARE PROJECT
FAILURE
n Software projects hardly ever fail for just one or two factors. In fact,
most failures are due to several combinations of people, project,
process, and technical factors.
n Among the most common failure factors that were reported by
several articles and surveys are:
5 Vague requirements and specifications
5 Unclear objectives and goals
5 Unrealistic schedules and budgets
5 Lack of support from top management
5 Lack of user and client involvement
5 Ineffective communication and feedback
5 Poor reporting of the project’s status
5 Ineffective project monitoring and control
5 Unclear assignment of roles and responsibilities
5 Sloppy project management skills and methodologies

May 15, 2024 14


Source
n Software Process Improvement and Management:
Approaches and Tools for Practical Development,
Shukor, S. Fauzi, H. N., Nuraminah R., Sahibuddin,
S., IGI Global, 2011. (Ch. 7)

May 15, 2024 15

You might also like