17 maintenance and release management - 1
DESCRIPTION
TRANSCRIPT
Setting up and Managing Global Software Maintenance Teams:Maintenance & Release Management
Objectives of the Tutorial To
Share with you relevant project / quality management practices of running product maintenance projects
See the applicability of common project management aspects to Maintenance
NOT To Give you any “one-size-fits-all” magic
formula Claim universality of the methods discussed
Maintenance and Release management - 1
2
Agenda for Maintenance and Release Management Session 1: Context of setting up
Global Maintenance Teams Session 2: Organization Structures
and People Issues in Global Maintenance Teams
Session 3: Typical Process Steps and Resource Estimation
Maintenance and Release management - 1
3
Session 1:Objectives Understanding the relevance of
maintenance in a distributed environment Getting aware of the differences and
similarities between maintenance and development from project management perspective
Knowing the steps involved in setting up a global product maintenance team
Setting the context for the next two sessions
Maintenance and Release management - 1
4
Why is Maintenance Important? “Mindtree’s vice-chairman and
president (Europe and Asia-Pacific) says it has enlarged its portfolio of annuity based revenue streams … like maintenance and enhancement and such work contributes to 20-25% of its current revenue”
Harsh Lohit (CEO of Techspan) says the new vision is “to change the customer base by targeting real businesses and tap the maintenance segment”
Maintenance and Release management - 1
5
Source: Business World, February, 2002
Why is Maintenance Important? Downtimes in software and hardware on
PCs in industry costs upwards of $70 Million
Close to 2.5 Million calls are received by the leading computer makers for assistance
70% of broad band users call their service providers spending an average of $15 per call.
Maintenance and Release management - 1
6
Source: SupportSoft, January, 2004
Why Is Maintenance Important?
Maintenance is a good cash cow, fairly insulated from market ups and downs (especially when we don’t have a big local market)
Maintenance has to go on irrespective of whether new development happens or not
Maintenance and Release management - 1
7
Why is Maintenance ImportantIn The Context of Globalization?
Maintenance and Release management - 1
8
Global CustomersWho Want 24x7 Support
Global Products That Require Specialized Knowledge
Global ResourcesTo Leverage Talent
Global EconomyTo Achieve Cost Effectiveness
Maintenance is Important, Yet… It is the most ignored
Very little forums for sharing information Very few journals devoted for this
It is not the most sought after job function Seen as a “stepping stone” to
“development” Not perceived as technically challenging
Maintenance and Release management - 1
9
What is a “Project” in Maintenance? Typically organized around a Version or
a Release Each maintenance project consists of
several bug fix transactions In addition, there are other types of
“Scheduled” Maintenance Projects…
Maintenance and Release management - 1
10
What are the types of Maintenance? Adaptive Maintenance
Porting Moving to new versions of OS, Database… Certification
Preventive Maintenance Database Administration OS Tuning…
Maintenance and Release management - 1
11
Maintenance and Release management - 1
12
Attribute Development projects Maintenance projects
Duration Relatively longer timeframe Shorter timeframes
Continuity Continuous Discrete / Discontinuous
Incremental Nature
Can build on past work and is usually incremental
Seldom incremental
Ownership Usually greater sense of ownership is easier to achieve
More difficult to achieve the sense of ownership
Predictability Amenable to planning Difficult to plan
Nature of work Can be proactive Usually reactive
Development and Maintenance “projects”: Different animals?
Maintenance Projects:Applicability of PM Processes
Maintenance and Release management - 1
13
Project Management Processes
Maintenance and Release management - 1
14
Project Initiation
Project Planning
Project Closure
Project Tracking
–Management Team building
–Scope and high level work allocation
– Mgmt reporting procedures
– Infrastructure group co-ordination
– Team formation
– Planning data from process database
–Success factors
–Risk factors
–Size estimates
–Effort estimates
–Milestones
–Dependencies
–Process tailoring
–Resource allocation
–Scheduling
–Schedule tracking
–Status reporting
–Team meetings
–Conference Calls
–SPMP updates
–Skill data updates
– Actual size/ effort/ schedule spent
–Actual project metrics
–Actual Risks encountered / not encountered
–Actuals Vs Estimates
–Things went right
–Things went wrong
–Lessons learnt
–Update Process Database
© “Managing Global Software Projects” Gopalaswamy Ramesh, Tata McGraw Hill, 2002
Project Initiation and Planning Activities in Maintenance Identifying maintenance requirements
(SLAs) Formulating Work Allocation Strategies Management Team Building Planning for Training, Handholding and
Transition Identifying infrastructure
Maintenance and Release management - 1
15
Project Execution And Tracking Activities For Maintenance Projects Training Period (on the job) with
Development Setting up of necessary infrastructure Handover and parallel run Independent support Taking more ownership
Maintenance and Release management - 1
16
Project Closure Activities For Maintenance Projects Analysis of performance Updating of Metrics Redeployment of resources
Maintenance and Release management - 1
17
How do Global Teams Evolve?
Maintenance and Release management - 1
18
• One team “Directs” what the other team does• The Second team considered as a “Resource”
“Resource” Model
• Teams Specialize in Different Life Cycle Phases• Work Apportioned by Life Cycle Stage
“Life Cycle” Model
• Teams Work In Close Unison• Through All Life Cycles, as Peers
“Integrated Team” Model
© “Managing Global Software Projects” Gopalaswamy Ramesh, Tata McGraw Hill, 2002
How does this apply to Maintenance?
Maintenance and Release management - 1
19
• Dependent, Controlled, “sustaining” maintenance
“Resource” Model
• Independent “last version” maintenance“Life Cycle” Model
• Interdependent Current Version Maintenance
“Integrated Team” Model
Issues to be addressed in Global Maintenance Teams
How to set up teams? (Session 2) How to distribute work across teams? (Session 2) What are the processes involved? (Session 3) How to estimate resources? (Session 3) What is the technology infrastructure required?
(Session 4)
Maintenance and Release management - 1
20
Session 1:Objectives Recap Understanding the relevance of
maintenance in a distributed environment Getting aware of the differences and
similarities between maintenance and development from project management perspective
Knowing the steps involved in setting up a global product maintenance team
Setting the context for rest of the sessions
Maintenance and Release management - 1
21