Download presentation
Presentation is loading. Please wait.
1
Process Patterns For Software Outsourcing How to customize MSF, RUP, XR, etc. for distributed teams ? Vladimir L Pavlov Andrey A Terekhov vpavlov@microsoft.com andreyte@microsoft.com
2
2 Agenda Introduction Organizational Patterns Process Patterns
3
3 About The Authors Vladimir L Pavlov (Microsoft, Russia) D&PE Lead Microsoft Endorsed MSF Practitioner, MCSD for.NET, MCSD, MCDBA, (ex-)MCT, CompTIA Certified IT Project+ Senior Member of IEEE, member of PMI, ACM and IEEE Computer Society Andrey A Terekhov (Microsoft, Russia) Academic Programs Manager PhD in Computer Science Microsoft Endorsed MSF Practitioner, MCSD, (ex-)MCT, IEEE Certified Software Development Professional Member of ACM, IEEE and IEEE Computer Society This presentation is mostly based on experience gained by authors prior to joining Microsoft, when authors worked as chief executives of several large Russian/Ukrainian software outsourcing companies We had a chance to look at outsourcing projects from both sides of the ocean This presentation does not represent an official Microsoft point of view on the discussed topic
4
4 What Is a “Process Pattern”? A Pattern is a description of a general solution to a common problem or issue from which a detailed solution to a specific problem can be determined A Process Pattern is a specific Pattern created for, employed within or defined in terms of Software Process Engineering domain Software Process Engineering is a knowledge area concerned with the definition, implementation, assessment, measurement, management, change, and improvement of the software engineering process itself
5
5 In This Presentation We will use MSF in our examples. To understand these examples one does not need to know MSF. However some experience in one of the modern IT management methodologies/frameworks (RUP, MSF, CDM etc.) is required The Microsoft Solutions Framework (MSF) is a collection of Microsoft's proven practices on managing successful IT projects Similar to Windows or any other product, MSF evolves and matures as new versions are released. Initially Microsoft made MSF available in 1994. The latest version of MSF is 3.0 The new version of the MSF (MSF 4.0) will become available in a few months
6
6 Software Outsourcing: Typical Models There are different approaches to adapting modern software development management methodologies and frameworks to offshore outsourcing projects Russia / UkraineUS / Europe Development company Development office Mediator company Main office Client development office provides SERVICE client gets PRODUCT or service
7
7 How Many Borders Do We Have? Europe / US offshore office US/Europe office Client Language barrier time shift cultural differences Ukraine / Russia
8
8 Single-Site Development a strategy an organizational structure business processes
9
9 Distributed Development US / EuropeRussia / Ukraine
10
10 Agenda Introduction Organizational Patterns Process Patterns
11
11 Software Outsourcing: Typical Models There are different approaches to adapting modern software development management methodologies and frameworks to offshore outsourcing projects Ukraine / RussiaEurope / US Development company Development office Mediator company Main office Client development office provides SERVICE client gets PRODUCT or service
12
12 Software Outsourcing: the “Broken Phone” Game US / Europe When a technical person speaks to a business person, some information is often lost or misinterpreted When two specialists from different countries speak over the ocean, some information is often lost or misinterpreted So, imagine what happens when a technical person speaks to a business person over the ocean… Russia / Ukraine “Business” people “Technical” people Client
13
13 MSF Team Model Advocacy Solution Delivery Development Test Release / Operations User Experience Product Management Program Management Architecture Solution Design Solution Definition Solution QualitySolution Usability Solution Construction Solution Deployment
14
14 MSF Team Model for Software Outsourcing Projects Europe / USUkraine / Russia Development Test Release / Operations User Experience Product Management Program Management Architecture
15
15 Our Solution: In Software Outsourcing Projects All Functional Areas Should be Covered on Both Sides US / Europe Program management Development Test User Experience Product Management Program management Development Test Release Management User Experience Product Management Release Mngmnt Russia / Ukraine Architecture
16
16 MSF Team as a Matrix Organization An MSF team is structured as a team of peers. In this model, the Program Management role takes a highly facilitative approach to managing the functions within its responsibilities. As such, the MSF team would organizationally be structured similarly to what is referred to in the PMBOK as a Matrix Organization. These are cross-functional teams that combine the skills and foci from difference areas of the organization into a single team assembled for the project Additionally, the MSF team, as a team of peers, would most closely resemble a Weak Matrix Organization, in its purest form, as described in the PMBOK. Here, “weak” refers to the level of decision-making clout of the project manager and not the quality or capabilities of the team
17
17 Organizational Type Project Characteristics Project Manager’s Authority % of Organization's Personnel Assigned Full-time Project Manager’s Role Common Titles for Authority PM’s Role Functional Matrix Strong Matrix Projectized Project Manager’s Administrative Staff Little or None Virtually None Part-time Project Coordinator/ Project Leader Part-time Limited 0-25% Part-time Project Coordinator/ Project Leader Project Manager/ Project Officer Weak MatrixBalanced Matrix Low to ModerateModerate to High High to Almost Total 15-60%50-95%85-100% Full-time Project Manager/ Program Manager Project Manager/ Program Manager Part-timeFull-time PMI PMBOK Matrix Organizations
18
18 Functional Organization Chief Executive Functional Manager Functional Manager Functional Manager Staff Project Coordination
19
19 Project Organization Chief Executive Project Manager Project Manager Project Manager Staff Project Coordination
20
20 Weak Matrix Organization Chief Executive Functional Manager Functional Manager Functional Manager Staff Project Coordination
21
21 Balanced Matrix Organization Chief Executive Functional Manager Functional Manager Functional Manager Staff Project Manager Project Coordination
22
22 Strong Matrix Organization Chief Executive Manager of Project Managers Functional Manager Functional Manager Project Manager Staff Project Manager Staff Project Manager Staff Project Coordination
23
23 Our Solution: MiniMax Pattern for Geographically Distributed Matrix Organizations If a matrix organization is geographically distributed over number of offices/countries/time zones So it becomes 3D matrix Each function should be present on as many sites as possible However, for offshore development some functions (i.e. sales) may not make sense on some sites Each project should be allocated to as few sites as possible This is an extension to the known approach called “collocation” However, for offshore development each project will be allocated to at least two sites
24
24 Agenda Introduction Organizational Patterns Process Patterns
25
25 MSF Risk Management Discipline Risk Statement Risk Database, Risk Concepts and Processes Identify Learn Control Track and Report Plan and Schedule Analyze and Prioritize Risk Assessment Document Top n Risks
26
26 Risk Management for Software Outsourcing Projects Europe / US Risk Statement Risk Database, Risk Concepts and Processes Identify Learn Control Track and Repor t Plan and Sched ule Analyz e and Prioriti ze Risk Assessme nt Document Top n Risks Risk Statement Risk Database, Risk Concepts and Processes Identify Learn Control Track and Repor t Plan and Sched ule Analyz e and Prioriti ze Risk Assessme nt Document Top n Risks Russia / Ukraine
27
27 Our Solution: One Transparent Risk Management Process for All Sub-Teams US / Europe Risk Statement Risk Database, Risk Concepts and Processes Identify Learn Control Track and Report Plan and Schedule Analyze and Prioritize Risk Assessment Document Top n Risks Ukraine / Russia
28
28 IBM Rational Unified Process Phases Management Environment Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter. #1 Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Configuration Mgmt Requirements ElaborationTransitionInceptionConstruction
29
29 Russia / Ukraine RUP Disciplines For Software Outsourcing Projects Europe / US
30
30 Ukraine / Russia Our Solution: RUP Disciplines For Software Outsourcing Projects US / Europe ElaborationTransitionInceptionConstruction
31
31 Project Postmortem Russia / Ukraine Europe / US POSTMORTEM A postmortem is a procedure whereby project team summarizes a project's history and analyzes its positive and negative aspects. The goal of a postmortem is to draw meaningful conclusions to help project team learn from past successes and failures POSTMORTEM
32
32 Our Solution: “Big Postmortem” For All Project Stakeholders Unfortunately, it is not a common practice for offshore outsourcing projects today Ukraine / Russia US / Europe POSTMORTEM
33
33 One Of The GRASP Design Patterns: Polymorphism Problem: How to handle alternatives based on type? How to create pluggable components? Solution: When related behaviors vary by type, assign responsibility for the behavior to types using polymorphism PRO: Extensions (new variations) easy to add New implementations can be introduced without affecting clients CON: Avoid “future-proofing” if variation is unlikely to occur Adds additional effort to design
34
34 General style and coding standard Our Solution: Inheritance Helps Minimize Bureaucracy Traditional approachOur approach Total 64 pages Total 34 pages Java coding standard C++ coding standard C coding standard Java coding standard C++ coding standard C coding standard
35
35 US/Europe Office Public Domain Russian/Ukrainian Office Our Solution: Define Your Process Architecture Using Inheritance Europe / US Policy Russia / Ukraine
36
36 MiniMax pattern helps organize work within geographically distributed matrix organizations All functional areas should be covered in all sites Every discipline should cover all sub-teams One transparent risk management process for all sub-teams “Big postmortem” for all project stakeholders Define your process architecture Inheritance helps minimize bureaucracy There are many more process patterns out there… Summary
37
37 See Also: Process Patterns http://hillside.net/http://hillside.net/ (English) http://www.ambysoft.com/processPatternsPage.htmlhttp://www.ambysoft.com/processPatternsPage.html (English) Microsoft Solutions Framework http://www.microsoft.com/msfhttp://www.microsoft.com/msf (English) http://www.microsoft.com/rus/msfhttp://www.microsoft.com/rus/msf (Russian) IBM Rational Unified Process http://www.rational.com/ruphttp://www.rational.com/rup (English) PMI Project Management Body Of Knowledge http://www.pmibookstore.org/PMIBookStore/productDetails.aspx?itemID=110&varID=1 (English)http://www.pmibookstore.org/PMIBookStore/productDetails.aspx?itemID=110&varID=1 http://www.pmi.org/info/PP_PMBOK2000Excerpts.asphttp://www.pmi.org/info/PP_PMBOK2000Excerpts.asp (English)
38
38 See Also: “Using MSF for Software Outsourcing” by V.L.Pavlov and A.A.Terekhov http://nl.itsmportal.net/binaries/MSF_for_software_outsourcing.ppthttp://nl.itsmportal.net/binaries/MSF_for_software_outsourcing.ppt (English) http://www.ukrsoftpro.com.ua/Pavlov_Terekhov_Kiev2003.ziphttp://www.ukrsoftpro.com.ua/Pavlov_Terekhov_Kiev2003.zip (Russian) “Mining MSF for Process Patterns: a SPEM-based Approach” by V.L.Pavlov and D.Malenko http://www.vlpavlov.com/pmpe/articles_en.html#2004_September_18_Uppsalahttp://www.vlpavlov.com/pmpe/articles_en.html#2004_September_18_Uppsala (English) “How To Become An Effective IT-Manager” by V.L.Pavlov and A.A.Terekhov (Russian) http://www.computerra.ru/offline/2003/503/28749 http://www.vlpavlov.com/pmpe/articles_en.html#2003_August_19_Computerra "Software Process Improvement in Russian Company: a Case Study” by V.Kiyaev, A.A.Terekhov http://users.tepkom.ru/ddt/articles/SPI_in_Russia.htmlhttp://users.tepkom.ru/ddt/articles/SPI_in_Russia.html (English) http://www.nsda.ru/home.asp?artId=129http://www.nsda.ru/home.asp?artId=129 (Russian) “Formalization and Automation of Global Software Development Processes” by V.Kiyaev, I.Sobolev, A.A.Terekhov, B.Fedotov http://users.tepkom.ru/ddt/Articles/DistributedDevelopment.htmlhttp://users.tepkom.ru/ddt/Articles/DistributedDevelopment.html (English) http://users.tepkom.ru/ddt/Articles/DistributedDevelopment_rus.htmlhttp://users.tepkom.ru/ddt/Articles/DistributedDevelopment_rus.html (Russian)
39
39 Alexandr Zverintsev (http://www.nokia.com)http://www.nokia.com Alexandr Zhuykov (http://www.isd.dp.ua)http://www.isd.dp.ua Andrey Filev (http://www.muranosoft.com)http://www.muranosoft.com Andrey Nizovsky (http://www.waveaccess.ru)http://www.waveaccess.ru Anna Tiunova (http://www.lanit-tercom.com)http://www.lanit-tercom.com Dmitry Bednyak (http://www.dr.dp.ua)http://www.dr.dp.ua Irina Mozgovaya (http://www.dsu.dp.ua)http://www.dsu.dp.ua Nikita Boyko (http://www.starsoftlabs.com)http://www.starsoftlabs.com Sergey Alpaev (http://www.isd.dp.ua)http://www.isd.dp.ua Sergey Goryainov (http://www.isd.dp.ua)http://www.isd.dp.ua Sergey Troshin (http://www.lanit-tercom.com)http://www.lanit-tercom.com Symon Moldavsky (http://www.uaswd.org.ua)http://www.uaswd.org.ua Victor Churilov (http://www.softcomputer.com)http://www.softcomputer.com Vladimir Ufnarovsky (http://www.lanit-tercom.com)http://www.lanit-tercom.com Yuri Gubanov (http://www.lanit-tercom.com)http://www.lanit-tercom.com Yury Us (http://www.softcomputer.com)http://www.softcomputer.com Thank You:
40
40 This presentation was delivered on October 28, 2005 in Moscow on the First Software Engineering Conference in Russia – SEC(R) 2005 You can download this presentation from http://www.secr.ru or http://www.vlpavlov.comhttp://www.secr.ru http://www.vlpavlov.com
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.