managing distributed agile project · juha sadeharju 22 february 2006 managing distributed agile...
TRANSCRIPT
22 February 2006Juha Sadeharju
Managing Distributed Agile ProjectPractical Observations
T-76.5612 Software Project Management, TKK 22.2.2006If viewed offline and without presenter, this powerpoint should be treated as a stub.
22 February 2006Juha Sadeharju
Agenda
• Introduction• Case Tecnomen NGM 5.x• Challenges• Solutions• Conclusion• Q&A
22 February 2006Juha Sadeharju
Presenter
• Juha Sadeharju– Project Manager, NGM 5.x– Group Manager, NGM Application Development
22 February 2006Juha Sadeharju
Company Factsheet
22. helmikuuta
2006
Juha Sadeharju 4
• 1978: established in Finland• 2005: Sales 68 MEUR• Product lines:
– Messaging– Charging
• Approximately 370 employees• Deliveries to over 80 customers worldwide• Presence in Europe, Asia Pacific, Middle East,
Africa and the Americas • Listed on the Helsinki Exchange (since 2000)
22 February 2006Juha Sadeharju
Tecnomen operates in 13 locations worldwide and has supplied its products to operators in over 50 countries.
Europe• Telenor (NOR)• TeliaSonera (FIN)• Vodafone Ireland (IRL)• Elisa (FIN)• O2 (UK)
Latin America• Americel (BRA)• Telemig Celular (BRA)• Telet (BRA)• Amazonia Celular (BRA)• Digitel (VEN)• Digicel (VEN) • Nuevatel (BOL) • Conecel (ECU) • Telgua (GUA) • PCS Digital (NIC)• Boatphone (CAR) • CTI Móvil (ARG)• ATL (BRA)• TESS (BRA) • Brasil Telecom (BRA)• CTE El Salvador (SAL)
Asia & Middle East• Chunghwa Telecom (TWN)• CELCOM (MAL)• Indosat (IND)• MTC (KUW)• STC (KSA)• CellC (RSA)• DTAC (Thailand)• etc.
•Swisscom (CH)• TDC Mobil (DK)• Omnitel (LIT)• Mobilkom Austria (AU)• LuXcommunications (LUX)
• MTT (RUS)• Finnet (FIN)• A.S.T.R.I.D. (BEL)
22 February 2006Juha Sadeharju
Internet Mobile
Voice Messaging
Unified Messaging
Multimedia Messaging
2.5G
2G
1G
3G
2004 Tecnomen launches Video Mail2003 Tecnomen celebrates its 25th anniversary
Tecnomen launches Next Generation Messaging Platform2002 World’s first commercial MMSC interconnection enabling
subscribers to send multimedia messages between different networks in Finland.
2002 Tecnomen Messaging forms a complete 3G messaging system enabling voice services, unified messaging and multimedia messaging.
2000 Tecnomen eZONER service concept launch1999 1st introduction of WAP to unified messaging1999 Unified messaging system delivered to TDC (former Tele Danmark)
to handle 1 million new subscribers (mobile fixed)1998 1st delivery of unified messaging system in the world to
Telenor Mobil1998 1st prepaid system delivered to Americel, Brazil1995 Multimessaging system delivered to CELCOM, Malaysia1992 Voice mail system for TDC’s (former Tele Danmark)
NMT and GSM networks1988 1st mobile voice messaging system in the world delivered to
mobile operators 1984 1st paging system delivered1980 1st telecommunications system delivered
6
Tecnomen has over 25 years of experience in the telecommunications industry, and a solid track record with many industry firsts. We are an expert in carrier-grade solutions with strong technology know-how. Our strength is
our flexibility in serving our customers
22 February 2006Juha Sadeharju
Next Generation Messaging
• All-IP• Open Standards• Commodity HW• Single Storage• Rapid
Application Development
22. helmikuuta
2006
Juha Sadeharju 7
Application
Servers
Infra Servers
Application LayerAccessLayerTelco Server
SAN Storage
StorageLayer
VoiceXML IMAP
SNMP
System Server /Operation & Maintenance
SQL
Proxy Servers
HTTP
HTTP
22 February 2006Juha Sadeharju
Open Standards, All IP
SNMP
IMAP4 / SQL
HTTP / T37
JMX / SNMP
SIP / H.323
SS7SNMP
22 February 2006Juha Sadeharju
Case Tecnomen NGM 5.x
22 February 2006Juha Sadeharju
Case Tecnomen NGM 5.x
• I’m not going to talk too much about management processes (or anything you can find directly from books)
• Most of the ground was covered by previous presenters
• But I am going tell you what methods we successfully used in the project, i.e. the practical stuff– Concentrating in requirement mgnmt and communication in a
mixed on/offshore software project
22 February 2006Juha Sadeharju
Tecnomen NGM 5.x• Product Release Project
– Project Organization of roughly 80 professionals
– Offshoring used in several parts of organization
– 80% of budget goes to resourcing
• PM as the hub of activities and Facilitator
• Traditional responsibility assignments from umbrella process (i.e. Training Lead)
• Includes offshore teams managed by Offshore PM in Tec premises.
22 February 2006Juha Sadeharju
Tecnomen NGM 5.x• Tight schedule• New Product, New
Architecture• Complex Product, Complex
Requirements• Offshore team not well aware
of Tecnomen product domain• No room for Error (Telco grade
deliveries) - Quality Management!
22 February 2006Juha Sadeharju
Communication
22 February 2006Juha Sadeharju
It’s All About Communication!
• Why? Few examples.. – Misunderstanding requirements leads to false
estimates and sometimes even faulty deliverables– Interpretation of requirements is always subjective
– People seldom bring forth their issues but try to tackle them on their own, or just move to next item
– Leads to crisis in the end of the project
– Offshore distance is always an issue– …
22 February 2006Juha Sadeharju
It’s All About Communication!
• Steps we’ve taken to ensure good communication– Recurring status meetings for stakeholders– Common collaboration tools, online
– Reports, progress and requirements viewable anytime
– Daily communication between teams– Periodical visits to Tecnomen and to Offshore– Methodologies chosen to enforce the above
22 February 2006Juha Sadeharju
Project Communication 1/3• Weekly one-to-one Meetings by PM w/ Subject Leads
and Managers– 1-3 times per week– Problem Solving, counseling
• Weekly Project Team Meeting– Subject Leads and Managers– Status Reporting and Escalation
• Tri-weekly Meetings with Steering Group– Project status, budgeting, etc..
22 February 2006Juha Sadeharju
Project Communication 2/3 • Wiki used extensively for collaboration by
– PM for publishing weekly reports and task progress– Subject Leads for publishing artifacts and information– Developers as design and communication tool– Email notifications of changed items
• Issue Tracking for– Requirement Management– Development planning and implementation– Project Planning and follow-up– Email notifications
22 February 2006Juha Sadeharju
Project Communication 3/3• Mailing lists used by
– Product Development for– Sprint Team Communication– Automated Build Success / Failure Messages– Announcing internal demonstrations (Sprint Reviews)
• Additionally Sprint Teams use– Skype, Messenger and IRC– Tele/Videoconferencing
– For daily Scrum of Scrums
22 February 2006Juha Sadeharju
Development Daily Communication
Scrum Team A Scrum Team B Scrum Team C
Offshore Scrum Team A Offshore Scrum Team B Offshore Scrum Team C
Daily Scrums
Daily Scrums
ScrumMastersCustomers
Daily ScrumOfScrums
Offshore ScrumMasters
22 February 2006Juha Sadeharju
Swift Communication is Crucial
• Example:– In an environment of tens of distributed developers
using continuous integration with a single repository, one Build failure stops everyone’s work.
– With automated communication these pauses in development can be made short
– ...
22 February 2006Juha Sadeharju
Example”Build Failed” EmailSent to all devs to trigger actions
22 February 2006Juha Sadeharju
On and Offshore Development Practices
• Tecnomen Scrum– Modified version of Scrum (Schwaber)– Some additions from Crystal Clear (Cockburn)– Tecnomen Architects as Proxy Product Owners for
Offshore Sprint Teams– Test Driven Development– Continuous Integration– User Stories
22 February 2006Juha Sadeharju
Working Environment
• Shared open space a must• Mirror roles and interaction in physical layout
– Architects in center– Teams as satellites
• Conducive to mixing of ideas
• Similar organisation at Offshore location• ...
22 February 2006Juha Sadeharju
22 February 2006Juha Sadeharju
Requirement Management
22 February 2006Juha Sadeharju
Requirement Mgmt 1/4• Our conventional requirement docs in MS Word• Not very usable for our offshore activities
– Assumes 1. Communication via documentation2. Offshore team to be subject matter experts (in Tecnomen product
domain) when they’re not (see 4.)3. Requirements do not change (or go back to 1. which is slow)4. All requirements can explicitly be conveyed via one document5. ..
– Leads to1. Misunderstood requirements, followed by delays in delivery2. Someone always having old deprecated version of doc3. ..
22 February 2006Juha Sadeharju
Requirement Mgmt 2/4• Introduce User Stories
– A high-level definition of a requirement
– ”As a student, I want to obtain latest seminar schedule from web, so I won’t be late.”
• Introduce Scrum Product Owners– Detailed definitions by interacting
with Spring Team– Continuously available for Scrum
team’s perusal– Strong presence in Sprint Planning
and Review– Periodical chance to steer scope
towards correct direction
22 February 2006Juha Sadeharju
Requirement Mgmt 3/4
• Accept that Requirements can be Dynamic– With deeper subject understanding requirements usually change
-> Change Mgmt
• Introduce Requirement Management Tool– Same tool Sprint Teams use for Sprint Task management– Contains the whole product lifecycle from idea to requirement to
individual tasks (with a granularity from severals months to hours.)
– Used via web browser, accessible to all parties
22 February 2006Juha Sadeharju
Requirement Mgmt 4/4
• Enforce Requirements– Introduce Automated Acceptance Tests to build cycle– Story is not considered ”done” unless tests pass
22 February 2006Juha Sadeharju
Progress Followup
22 February 2006Juha Sadeharju
Following Progress• Project Team Meetings• RM/Issue Management Tool
– Requirement Completion– Documentation, Training, etc .. – RM/Issue Management Tool– Development
– Tecnomen Scrum offers various tools (RM/Issue Management Tool, daily scrums, demos, burndowns, resolution graphs, nag emails ... )
• Milestones ..
• No, we don’t use MS Project.
22 February 2006Juha Sadeharju
Tecnomen NGM Release Process
• Umbrella for smaller processes and methodologies
• Defined Critical Milestones– Ready for Productization– Ready for Sales– Ready for Pilot – ...
RequirementsAnalysis & Design
Implementation
Deployment
Planning Config. & ChangeManagement
Environment
Evaluation
Test
Business Modeling
InitialPlanning
22 February 2006Juha Sadeharju
Stories, Tasks and Dependies
22 February 2006Juha Sadeharju
Burndown Graphs
22 February 2006Juha Sadeharju
Sprint Demos• An open gathering for all
stakeholders• All teams present their results• Videoconferencing• Desktop sharing• Customers can steer the
requirements
• The one true measure of completion
22 February 2006Juha Sadeharju
Conclusion
• ”So, you got all these nice methods and tools, so if I just copy those to my project, will I succeed?”– No.
• One key aspect of successful project management is ability to address known issues effectively. These issues differ from project to project, and are usually known by stakeholders.