Distributed & Outs urced Distributed & Outsourced Software - - PowerPoint PPT Presentation

distributed outs urced distributed outsourced software
SMART_READER_LITE
LIVE PREVIEW

Distributed & Outs urced Distributed & Outsourced Software - - PowerPoint PPT Presentation

Distributed & Outs urced Distributed & Outsourced Software Engineering f E B Bertrand Meyer t d M ETH Zurich Peter Kolb Red Expel Roman Mitin, Martin Nordio (ETH, assistants) ETH course, Fall 2008 1 Course page h


slide-1
SLIDE 1

Distributed & Outs urced Distributed & Outsourced f E Software Engineering

B t d M Bertrand Meyer ETH Zurich Peter Kolb Red Expel Roman Mitin, Martin Nordio (ETH, assistants)

1

ETH course, Fall 2008

slide-2
SLIDE 2

Course page

h // f h h/ h / /d http://se.inf.ethz.ch/teaching/2008-H/dose- 0273/index.html Also see project description: http://se.ethz.ch/dose/ ICSE SCORE competition: http://score.elet.polimi.it/ BTW project description: http://score.elet.polimi.it/projects/fickas.pdf

2

slide-3
SLIDE 3

Tract handed out at entrance to Siemens main site, Munich, May 2004

3

3

slide-4
SLIDE 4

Our goal in this course

We want you to:

Understand the fundamental issues and techniques

  • f software engineering
  • f software engineering

Understand the specificities and technical

challenges of distributed software development, including in an outsourcing context

Know how to organize, participate in and manage an

distributed project distributed project

Understand the effect of the outsourcing

phenomenon on the industry and manage your own career accordingly

4

slide-5
SLIDE 5

Evolution of this course

d l l “ f E

  • Since 2004 and until last year: “Software Engineering

for Outsourced and Offshore Development”

  • First of its kind (as far as we know)
  • First of its kind (as far as we know)
  • Since last year: project participation from other

universities

  • Since this year: Distributed and Outsourced Software

Engineering

  • Project in cooperation with
  • Project in cooperation with
  • Politecnico di Milano (Italy)
  • University of Debrecen (Hungary)

University of Debrecen (Hungary)

  • State University of Nijny Novgorod (Russia)
  • University of Zurich

5

y

slide-6
SLIDE 6

Topics (partial)

h ll f d b d f d l

  • Challenges of distributed software development
  • The outsourcing phenomenon and its evolution
  • Organizing a distributed project
  • Organizing a distributed project
  • The outsourcing phenomenon
  • Requirements
  • Requirements
  • Process models
  • Negotiating with suppliers: Service Level Agreements

g g pp g

  • Quality assurance & testing

6

slide-7
SLIDE 7

A profound transformation

f f d l d l d Massive transfer of development towards specialized suppliers, largely in low-wage countries Outsourcing is not new; offshore development is a major new trend, affecting everyone in the information technology

7

slide-8
SLIDE 8

A profound transformation

d h f Started with manufacturing Then electronic design Then electronic design Then low-level service jobs Then low level service jobs Then call centers, customer support… pp Then implementation-level programming Then…

8

slide-9
SLIDE 9

9

slide-10
SLIDE 10

ETH: Grading

E (l l l f b ) % Exam (last lecture slot of semester, 17 December): 30% Project (due 17 December presentation 10 December): 70% Project (due 17 December, presentation 10 December): 70%

10

slide-11
SLIDE 11

Project

h f h E E Theme: from the ICSE SCORE competition The BTW project The BTW project Done in Eiffel; use ETH’s Traffic system Done in Eiffel; use ETH s Traffic system

11

slide-12
SLIDE 12

Why we are doing this

b d f E h ll Distributed Software Engineering raises new challenges Techniques exist but the skills must be taught Techniques exist, but the skills must be taught You should understand the issues quickly and find solutions You should understand the issues quickly and find solutions This is also a great way to learn by example the benefits g y y p

  • f software engineering principles, e.g. abstraction, API

design, documentation, requirements…

12

slide-13
SLIDE 13

Project principles and roles

Emulate industrial setting, but only where it makes sense

A university is not a company (e.g. money not a factor) Benefits of a controlled setting Benefits of a controlled setting Goal #1 is to learn

All groups created equal g p q

We do not want e.g. one university to specify &

another implement Clear management structure Clear management structure

Central management role, currently at ETH Technology choices imposed; currently Eiffel (as a

y p y language and method) Origo software development platform, Web tools, any others that may be necessary

13

y

Universities invited to contribute, e.g. broadcast own

lectures

slide-14
SLIDE 14

Organization

l b d b d Cluster-based, not process-based

A team includes a few students (2 or 3) from one A team includes a few students (2 or 3) from one

university

A group is a collection of teams, each from a different

g p , university

Each group does full project

E h d f h j

Each team does a part of the project This is a part of the system (“Cluster”), not a part of

the lifecycle the lifecycle

14

slide-15
SLIDE 15

Lessons from first session (Sept-Dec 07)

( l)! ll d d bl ll

Success (partial)! All 3 groups did reasonably well, one

produced a working implementation

It took a few weeks for students to understand what It took a few weeks for students to understand what

this was about, and some more to really get to work

Each group found ways to interact, e.g. regular Skype

meetings, in spite of often bad conditions

All found the project hard All found it extremely enriching learned a lot All found it extremely enriching, learned a lot Understood the great, great, great importance of APIs

15

slide-16
SLIDE 16

Project presentation, December 2007

ll Common to all universities Skype video conference Skype video conference

16

slide-17
SLIDE 17

Four key elements

Strategy Process Technology Technology Communication

17

1

slide-18
SLIDE 18

Today

h ll f d b d d l d l Challenges of distributed development: an industrial experience The outsourcing proposition (part 1)

18

slide-19
SLIDE 19

Reference for this first lecture

d “ d d h f Bertrand Meyer, “Design and Code Reviews in the Age of the Internet”, Communications of the ACM, September 2008.

19

slide-20
SLIDE 20

The context

h d f l Gone are the days of one-company, one-team, one-location projects Today’s ecosystems are multipolar!

Distributed team Flexible assignment of tasks Outsourcing, insourcing, backsourcing Flexibility is key: the world belongs to the nimble

L t f id d il

Lots of ideas, proven and unproven, e.g. agile

methods

What happens in the absence of direct contact?

20

What happens in the absence of direct contact? Universities do not prepare for this!

slide-21
SLIDE 21

An industrial experience

d h ll f h h Lessons and challenges from experience with the ecosystems of a distributed development at Eiffel Software f

21

slide-22
SLIDE 22

Eiffel Software

T h l Technology company Focused on O-O tools, Eiffel approach, Design by Contract Serving the needs of very demanding customers in finance, d f h l h d defense, aerospace, health care, education… Actively involved in standardization (ECMA, ISO) “Eiffel ecosystem”

22

Eiffel ecosystem

slide-23
SLIDE 23

EiffelStudio development

Eiff l S ft i S t B b (C lif ) i 1985 Eiffel Software, in Santa Barbara (Calif.), since 1985 Two-million line code base (almost all Eiffel, a bit of C) Major industry customers, mission-critical applications Open-source license, same code, vigilant user community 6-month release schedule since 2006 My role: more active in past two years My role: more active in past two years Developer group ecosystem:

S

ll ( is b t 10 l )

Small group (core is about 10 people) Most young (25-35) Highly skilled Know Eiffel,O-O, Design by Contract Strong company culture, shared values Know environment, can work on many aspects

23

Know environment, can work on many aspects Distributed Mostly, we live in a glass house

slide-24
SLIDE 24

Rule 1

h f l f d b d d l The first principle of distributed development:

I would not try unless people have previously I would not try unless people have previously worked together in a common location

24

slide-25
SLIDE 25

Rule 2 Email is great, but every team needs contact

Our solution: the weekly one-hour meeting R l d SB l ti ( F id til 2005) Replaced a SB-only meeting (every Friday, until 2005)

25

slide-26
SLIDE 26

How do we organize a meeting?

Santa Barbara: 8 AM Shanghai: 12:00 AM Moscow:19:00 Zurich:17:00 Zurich:17:00 France:17:00

26

slide-27
SLIDE 27

Meeting properties

l h h l d dl Top goal: ensure that we meet the release deadline Tasks: check progress, identify problem, discuss questions

  • f general interest
  • f general interest

Not a substitute for other forms of communication Time is strictly limited: one hour come rain or shine (The meeting challenge: see E. Northcote Parkinson)

27

slide-28
SLIDE 28

Meeting tools: originally

k ( f ll l d l ) Skype (conference call, limited to 9 people) Skype chat window Skype chat window Google docs Google docs

28

slide-29
SLIDE 29

Lessons

ll k b ll f f f Basically it works, but still far from perfect Still too many non semantic communication (see Roman Still too many non-semantic communication (see Roman Jakobson) Audio communication heightens problems, e.g. accents Ability to edit a common document in real time is a critical advantage Need to work after the meeting

29

Documents are key: mix of verbal and written word

slide-30
SLIDE 30

Rule 3

Infrastructure matters

Connection problems are not fun after the third time

30

slide-31
SLIDE 31

Meeting tools: now

b f f ll Webex for conference call management X Lite as a replacement for Skype X-Lite as a replacement for Skype Google Docs Google Docs Wiki site (http://dev.eiffel.com) p Skype: chat window only

31

slide-32
SLIDE 32

32

slide-33
SLIDE 33

Rule 4

Scripta manent

(Or: talk is cheap) (Not a Skype advertising slogan)

33

slide-34
SLIDE 34

Recent addition

C d i Code review Traditional: time-consuming, tedious, value often questioned as compared to e.g. static analysis tools q p g y With the Web it becomes much more interesting! Cl i l t d th k i d

Classes circulated three weeks in advance Comment categories: choice of abstractions, other

aspects of API design,architecture choices, p g algorithms & data structures, implementation, programming style, comments & documentation

Comments in writing on Google Doc page, starting Comments in writing on Google Doc page, starting

  • ne week ahead

Author of code responds on same page M

ti is d t d t s l d iss s

34

Meeting is devoted to unresolved issues

slide-35
SLIDE 35

35

slide-36
SLIDE 36

Lessons

h ld h l b l h h f ld The world has gone global, so has the software world Many difficult issues failure always possible Many difficult issues, failure always possible Solutions exist Solutions exist Many software engineering lessons apply, made even more y g g pp y relevant C i ti i th i Communication is the core issue Infrastructure (network tools ) is critical

36

Infrastructure (network, tools…) is critical

slide-37
SLIDE 37

The software engineering ecosystem

The human factor is at the center of it all Infrastructure is the enabler

37

slide-38
SLIDE 38

Overview

ld d ( b ll $) Worldwide IT services revenue (Gartner, billions $): 2005: 625 2006: 672 2007: 730 (projected) 2008: 779 (projected) Outsourcing “primary source of growth” “Replaces internal IT spending and is often funded

  • utside of IT budgets, so growth in outsourcing is

possible even in the face of flat IT budgets”

38

possible even in the face of flat IT budgets

slide-39
SLIDE 39

IT outsourcing

2002: $162 billion 2007 (expected): $236 billion (Source: Gartner, 2004)

39

slide-40
SLIDE 40

US imports of software and services

d f US Commerce department figures: $77 4 billion in 2003 $77.4 billion in 2003 Up $7.9 billion from 2002 Exports during same period: $131 billion, up $8.4 billion p g p p

40

slide-41
SLIDE 41

Percentage of offshoring

f ff h b d (F ) Percentage of offshoring in IT budgets (Forrester): 2000: 12% 2000: 12% 2003: 28% 2003: 28%

41

slide-42
SLIDE 42

When they say it’s not about the money…

… then it is about the money.

42

slide-43
SLIDE 43

It’s about the money

h b i i i d T In the better economic times, companies outsourced IT to get access to scarce IT talent. But in today’s down economy, saving money has bubbled to the top as one of the primary reasons for making

  • utsourcing deals
  • utsourcing deals

Computerworld, March 18, 2002 Right now, in this economy, cost savings is No. 1 criterion Tim Barry, Senior VP of Application Outsourcing, Keane, 2002 Because of the recent global economic downturn, cost reduction has been the primary driver for outsourcing over the past several years and continues as a strong driver even as economic growth returns g m g Gartner, 2004

43

slide-44
SLIDE 44

The offshoring proposition

l Low salaries Skilled workforce Good university system Good university system Good communication infrastructure Stable political structure Stable political structure Efficient business conditions Entrepreneurial culture (greed?) p g No insurmountable cultural barrier Language skills (Often) exile community in the client country Culture of quality and qualification (CMM, ISO...)

44

slide-45
SLIDE 45

The role of qualification

CMM (the Capability Maturity Model) and its derivatives, CMM (the Capability Maturity Model) and its derivatives, such as CMMI, as well as other standards such as ISO 900X, have been a key enabler to the takeoff of offshore development development

45

slide-46
SLIDE 46

Other relevant aspects

k h Work ethics Language skills Language skills Time zones Time zones

46

slide-47
SLIDE 47

For comparison: US developer salaries

(Source: PayScale, 16 September 2007)

47

slide-48
SLIDE 48

India

Official policy to support

  • utsourcing, IT ministry

University infrastructure, Indian I tit t f T h l 75 000 Institutes of Technology; 75,000 IT graduates a year English widely known Technical salaries: $10 000 to Technical salaries: $10,000 to $25,000 (average 15,600 in 2007, up 18.6%) IT parks (Bangalore ) have IT parks (Bangalore...) have excellent infrastructure Key role of Indian technical diaspora in the US p Strong emphasis on qualification (CMMI, ISO) The reference success story for t i

Software/services exports: $31 billion in 2006-2007, up 32% (industry: $40

48

  • utsourcing

in 2006 2007, up 32% (industry: $40 billion); targeted to $50 billion by 2008 (NASSCOM), 5.2% of GDP

slide-49
SLIDE 49

India

Large software companies: Tata Consulting Services (95,000 employees, $4 ( , p y , $ billion revenue), Infosys (76,000, $3.1 billion), Wipro (68,000, $3.4 billion), HCL ( , , $ ), Technologies, Patni Numerous Western Numerous Western companies have established subsidiaries Increased competition for talent

49

slide-50
SLIDE 50

China

50,000 technical graduates per year Technical salaries: $5,000 to $20,000 I ll l i Intellectual property issues remain I f t t d i j Infrastructure good in major cities Strengths so far: high tech Strengths so far: high tech, consumer electronics, telecom, finance IT outsourcing revenue: $5 billion in 2005, $10 billion in 2006 (50% growth), $27 billion in 2007

50

( g ), (Gartner)

slide-51
SLIDE 51

Russia

Good university system, strong on mathematics and basic science. 3rd largest population of scientists and engineers per capita and engineers per capita Technical salaries: $15,000 to $30,000 Business climate volatile Business climate volatile, bureaucracy Infrastructure: OK in Moscow and

  • Petersburg. Telecoms still

g

  • expensive. Excellent education

system Strengths so far: advanced ft d l t W b software development, Web development, research Significant operations of Western firms: Sun Intel Motorola IT outsourcing revenue: $1 billion in

51

firms: Sun, Intel, Motorola, Alcatel, Siemens 2005, growing 50% a year

slide-52
SLIDE 52

Ireland

Technical salaries: $25,000 to $35,000 Favorable tax structure, $330 million technology-education fund E li h l English language Strengths so far: service centers, ll t (D ll HP Mi ft ) call centers (Dell, HP, Microsoft...) An example of a successful

  • utsourcing infrastructure in a
  • utsourcing infrastructure in a

developed country IT outsourcing revenue from US: $8.3 billion

52

slide-53
SLIDE 53

Challengers

E t E P l d R i B l i C h R bli H Eastern Europe: Poland, Rumania, Bulgaria, Czech Republic, Hungary, Baltic countries (“nearshore” development) Vietnam Thailand Thailand Philippines 15,000 tech graduates/year, labor slightly higher than India, government support government support Ghana Government support, English official language, 10,000 IT grads/yr Mexico Mexico Close to US, NAFTA Brazil Israel Israel South Africa Egypt

53

slide-54
SLIDE 54

54

5

slide-55
SLIDE 55

Effect on US jobs (Forrester)

b h f d ff h b d f 315,000 service jobs shifted offshore by end of 2003 (less than 1% of affected categories) Projected: 3.4 million by 2015

55

slide-56
SLIDE 56

11 May 2004

US state adopts anti-BPO bill

(source: Rediff)

The state of Kansas has adopted a bill seeking to bar outsourcing telephone enquiries about its food stamp program to India and other countries. The Department of Social and Rehabilitation Services signed a contract with eFunds Corp in September 2002 to handle food stamp benefits and take clients'

  • calls. In its 2003 annual report, eFunds said it has two customer call centers in

I di d th t b t 3 100 f it 5 400 l t id th U it d St t India and that about 3,100 of its 5,400 employees are outside the United States. Outsourcing became an issue in the legislature when it was revealed that Kansas' calls about food stamps were answered by workers not in Kansas but in India. $ The measure would require SRS to renegotiate its $1.7 million-a-year contract with the Arizona-based eFunds Corp. The agency said it does not know whether contract costs will increase if calls are answered in Kansas. In March, Senator Mark Taddiken (Republican) persuaded fellow Senators to add a ban on outsourcing of food stamps work to a bill on next fiscal year's budget. Under his proposal, the ban would have taken effect on July 1. But SRS secretary Janet Schalansky told legislators that the ban would raise the cost of eFunds contract by about $640 000 as a centre will have to be set up in Kansas

56

contract by about $640,000 as a centre will have to be set up in Kansas.

slide-57
SLIDE 57

Forms of outsourcing

I l E l

Same country group Offshore

Internal (to lower-cost divisions) External

Operation (e.g. computer facilities) Transfer Specific Business process (BPO) Selective Total Tactical Strategic

vs

Transitional Permanent Client-supplier Partnership (joint venture) nt upp r artn r h p (j nt ntur ) Maintenance New product Development/operation Research

57

Development/operation Research

slide-58
SLIDE 58

Arguments for outsourcing

Cost Access to expertise Access to expertise Focus on core business Speed Business process reengineering (aka change) Control Control Quality improvement

58

slide-59
SLIDE 59

Arguments against outsourcing

f l d d l Loss of control, dependency on supplier Loss of expertise Loss of expertise Loss of flexibility Loss of flexibility Loss of jobs, effect on motivation j

59

slide-60
SLIDE 60

Outsourcing risks

Loss of personnel and expertise Loss of user input and business-related information L k f i t ll t l t Leaks of intellectual property Failure of third party Disappearance of third party pp f p y Changes in business climate not addressed by contract Insurmountable cultural differences, language problems d ff Communication costs, time difference, ... Insufficiently precise contract Contract not covering evolution Contract not covering evolution Rising costs out of modifications Insufficient quality, detected late

60

Privacy issues Security issues

slide-61
SLIDE 61

Plan

h ( E ) 1. The outsourcing proposition (part 2: Exercise) 2 The technical issues

  • 2. The technical issues
  • 3. Management and validation techniques

g q

  • 4. Putting everything in place for successful outsourcing

Plus: an exercise

61

slide-62
SLIDE 62

An exercise: the Valicert case

(by Peter Kolb)

62

slide-63
SLIDE 63

Exercise - 1

Why every job doesn't translate well overseas

Computerworld, March 22, 2004 by Scott Thurm

When sales of their security software slowed in 2001, executives at ValiCert Inc. began laying off engineers in Silicon Valley to hire replacements in India for $7,000 a year. ValiCert expected to save millions annually while cranking out new software for banks, p y g , insurers and government agencies. Senior Vice President David Jevans recalls

  • ptimistic predictions that the company would "cut the budget by half here and hire

twice as many people there." Colleagues would swap work across the globe every 12 hours, helping ValiCert "put more people on it and get it done sooner," he says. The reality was different. The Indian engineers, who knew little about ValiCert's software or how it was used, omitted features Americans considered intuitive. U.S. programmers, accustomed to quick chats over cubicle walls, spent months writing detailed instructions for overseas assignments, delaying new products. Fear and distrust thrived as ValiCert's finances deteriorated and co-workers 14 time zones distrust thrived as ValiCert s finances deteriorated, and co workers, 14 time zones apart, traded curt e-mails. In the fall of 2002, executives brought back to the U.S. a key project that had been assigned to India, irritating some Indian employees.

63

slide-64
SLIDE 64

6

Exercise - 2

Founded in 1996 ValiCert specializes in software to securely exchange information over the Internet

4

Founded in 1996, ValiCert specializes in software to securely exchange information over the Internet. Banks use ValiCert's software to safeguard electronic funds transfers; health insurers use it to protect patient medical records. Although still unprofitable, ValiCert conducted an initial public offering in July 2000, in the dying embers of the dot-com boom. In two months, the stock doubled to $25.25. In 2001, however, sales growth slowed, as corporate customers reduced technology purchases. ValiCert had projected that it would break even with quarterly revenue of $18 million, according to Srinivasan "Chini" had projected that it would break even with quarterly revenue of $18 million, according to Srinivasan Chini Krishnan, founder and, at the time, chairman. Quarterly expenses had grown to $14 million, but revenue was stalled at less than half that figure. Executives began considering shifting work to India. The "motivation was pure survival," says Krishnan, who left the company after the Tumbleweed merger. India was a natural choice because of its large pool of software engineers. Moreover, both Krishnan and ValiCert's then-head of engineering grew up in India and were familiar with large tech-outsourcing firms. ValiCert s then head of engineering grew up in India and were familiar with large tech outsourcing firms. Some, including Jevans, harbored doubts. The Apple Computer Inc. veteran says he preferred "small teams of awesome people" working closely together. Nonetheless, that summer, ValiCert hired Infosys Technologies Ltd., a specialist in contract software programming, to supply about 15 people in India to review software for bugs and to update two older products. With no manager in India, ValiCert employees in the U.S. managed the Infosys workers directly, often late at night or early in the morning because of the time difference. ValiCert also frequently changed the tasks assigned to Infosys, prompting Infosys to shuffle the employees and frustrating ValiCert's efforts to build a team there. Within a few months, ValiCert abandoned Infosys and created its own Indian subsidiary, with as many as y y y 60 employees. Most employees would be paid less than $10,000 a year. Even after accounting for benefits, office operating costs and communications links back to the U.S., ValiCert estimated the annual cost of an Indian worker at roughly $30,000. That's about half what ValiCert was paying Infosys per worker, and less than one-sixth of the $200,000 comparable annual cost in Silicon Valley. 64

slide-65
SLIDE 65

6

Exercise - 3

To run the new office in India ValiCert hired Sridhar Vutukuri an outspoken 38 year old engineer who had

5

To run the new office in India, ValiCert hired Sridhar Vutukuri, an outspoken 38-year-old engineer who had

headed a similar operation for another Silicon Valley start-up. He set up shop in January 2002 in a ground-floor office in bustling Bangalore, the tech hub of southern India. The office looked much like ValiCert's California home, except for the smaller cubicles and Indian designs on the partitions. There were no savings on the rent. At $1 per square foot, it matched what ValiCert paid for its Mountain View, Calif., home offices, amid a Silicon Valley office glut. Mountain View, Calif., home offices, amid a Silicon Valley office glut. Misunderstandings started right away. U.S. executives wanted programmers with eight to 10 years

  • f experience, typical of ValiCert's U.S. employees. But such "career programmers" are rare in

India, where the average age of engineers is 26. Most seek management jobs after four or five

  • years. Expertise in security technology, key to ValiCert's products, was even rarer.

By contrast, Vutukuri quickly assembled a group to test ValiCert's software for bugs, tapping a large pool of Indian engineers who had long performed this mundane work. But the Indian manager heading that group ran into resistance. It was ValiCert's first use of code checkers who didn't report to the same managers who wrote the programs. Those U.S. managers fumed when the team in India recommended in June 2002 delaying a new product's release fumed when the team in India recommended in June 2002 delaying a new product s release because it had too many bugs. By midsummer, when Vutukuri had enough programmers for ValiCert to begin sending bigger assignments to India, U.S. managers quickly overwhelmed the India team by sending a half-dozen projects at once. p j Accustomed to working closely with veteran engineers familiar with ValiCert's products, the U.S. managers offered only vague outlines for each assignment. The less experienced Indian engineers didn't include elements in the programs that were considered standard among U.S. customers. U.S. programmers rewrote the software, delaying its release by months.

65

slide-66
SLIDE 66

6

Exercise - 4

In India engineers grew frustrated with long silences punctuated by rejection Suresh Marur the head of

6

In India, engineers grew frustrated with long silences, punctuated by rejection. Suresh Marur, the head of

  • ne programming team, worked on five projects during 2002. All were either canceled or delayed.

Programmers who had worked around the clock for days on one project quit for new jobs in Bangalore's vibrant market. Of nine people on Marur's team in mid-2002, only three still work for ValiCert. "The first time, people understand," he says of the project's roadblocks. "The second time, people understand. The third time, it gets to be more of a problem." In the U.S., executives lurched from crisis to crisis, as ValiCert's revenue dipped further. Each quarter brought more layoffs. By year's end, the California office, which once employed 75 engineers, was reduced to 17; the India office, meanwhile, swelled to 45. U.S. engineers "felt the sword of Damocles was swinging above their cube," recalls John Thielens, a product manager. Executives knew they could save more money by exporting more jobs But they were developing a keener Executives knew they could save more money by exporting more jobs. But they were developing a keener sense of how critical it was to keep core managers in the U.S. who knew ValiCert, its products and how they were used by customers. "Even if you could find someone" with the right skills in India, says Krishnan, "it wouldn't make business sense to move the job." Frustrations came to a head in September 2002, when a prospective customer discovered problems with the log on feature of a ValiCert program The anticipated purchase was delayed causing ValiCert to miss the log-on feature of a ValiCert program. The anticipated purchase was delayed, causing ValiCert to miss third-quarter financial targets. The India team had recently modified the program, and the glitch prompted U.S. managers to question ValiCert's entire offshore strategy. Relations had long been strained between the U.S. and Indian product teams. John Hines, the Netscape Communications Corp. veteran who headed the tight-knit U.S. product team, thrives on quick responses to customer requests As his team shrank to six engineers from 20 Hines was assigned three engineers in customer requests. As his team shrank to six engineers from 20, Hines was assigned three engineers in

  • India. But he viewed the Indians' inexperience, and the communication delays, as more a hindrance than a
  • help. "Things we could do in two days would take a week," he says.

Vigouroux admits to a touch of "panic" at this point. ValiCert's cash was running low. "We didn't have a lot

  • f time," he says. He conferred with Hines, who said he wanted to be rid of India, even if it meant a smaller

team 66 team.

slide-67
SLIDE 67

6

Exercise - 5

7

Questions on the ValiCert Case

  • 1. Please describe:

What went wrong? What went wrong? What were inappropriate expectations and decisions taken?

  • 2. What would you propose to ValiCert at this stage, based on

what you have learned in the course?

67

slide-68
SLIDE 68

6

Plan

h ( ) 8 1. The outsourcing proposition (part 3) 2 The technical issues

  • 2. The technical issues
  • 3. Management and validation techniques

g q

  • 4. Putting everything in place for successful outsourcing

Plus: an exercise

68

slide-69
SLIDE 69

6

Preparation for Outsourcing

9 (by Peter Kolb)

69

slide-70
SLIDE 70

Preparation for Software Outsourcing and Offshoring

Peter Kolb

70

slide-71
SLIDE 71

Objectives

Thi d l ill bl th ti i t t This module will enable the participant to: Prepare a decision basis for software outsourcing and offshoring Prepare a decision basis for software outsourcing and offshoring.

71

slide-72
SLIDE 72

Content

Categories for Software Outsourcing Strategy for Outsourcing Strategy for Outsourcing Gartner Cost Model for Software Outsourcing Summary

72

slide-73
SLIDE 73

IT Outsourcing Categories (Gartner)

Business process outsourcing (BPO): Business process outsourcing (BPO):

Transaction Management Services Transaction Processing Services Human Resource and Payroll Services

Operations

Human Resource and Payroll Services Finance and Accounting Services (billing, payment) Operations Management Services

Operations

Application development and

maintenance (ADM) Call Center Services

Applications Applications Infrastructure Infrastructure

Infrastructure Services

Data Center Services Network Services Desktop Services Helpdesk Services 73 Asset Management Services Security Management Services Storage Services

slide-74
SLIDE 74

Content

Categories for Software Outsourcing Strategy and Decision for Outsourcing Strategy and Decision for Outsourcing Gartner Cost Model for Software Outsourcing Summary

74

slide-75
SLIDE 75

Strategic Approach to Application Outsourcing

Medium size enterprises act more tactical than large enterprises:

  • 40 % seek intermediate results/benefits through outsourcing

(compared to 30% in large enterprises) p g p

  • 60 % look for long-term payback

(compared to 70% in large enterprises)

Application outsourcing strategies Application outsourcing strategies

  • Technical issues
  • Improve service levels to end users
  • Access to critical technical skills and resources
  • Upgrade applications quality, processes and methods
  • Business issues
  • Reduce cost
  • Ensure scalability of resources to business needs
  • Ensure scalability of resources to business needs
  • Focus on core business

75

Source: Gartner, 2003

slide-76
SLIDE 76

Identify Candidates for Software Outsourcing

ERP integration User interface design Unique ERP integration Report creation User interface design Prototype systems Application management Migration from legacy systems Task features management Customization of products legacy systems Well specified requirements Repeatable Repeatable Low High

76

Level of user interaction

slide-77
SLIDE 77

Application Outsourcing Inhibitors

S

Top three inhibitors to outsource

  • High costs associated with outsourcing
  • Security issues

Source: Gartner, 2003 y

  • Cost savings not realized

Top fear

L f t l d t t

  • Loss of control and cost guarantees

Other things to consider

  • Cultural differences, language

ultural d fferences, language

  • Geopolitical and social instability
  • Intellectual property protection
  • Loss of technical expertise and business knowledge

77

slide-78
SLIDE 78

Vendor Selection

d ifi i f O i C did Identification of Outsourcing Candidates

  • Recommendations

63%

  • Past direct relationships

57%

  • Presence at industry conferences 40%

Vendor Selection Criteria

  • Quality and Cost

Decision makers

  • Medium size enterprises: IT Managers
  • Large enterprises:

group of CIO, IT manager, BU manager, g p g p g g procurement officer

78

Source: Gartner, 2003

slide-79
SLIDE 79

Content

Categories for Software Outsourcing Strategy and Decision for Outsourcing Strategy and Decision for Outsourcing Gartner Cost Model for Software Outsourcing Summary

79

slide-80
SLIDE 80

The Application Development Outsourcing Cost Model

l h h b f Typical questions when searching best resources for a project:

  • Should the enterprise use its own staff or the

staff of an external service provider (ESP)? p

  • Should the staff be located on-site (co-located

ith th t i ) ff it (i th with the enterprise users), off-site (in the same country) or offshore?

  • If offshore, in what countries?

80

slide-81
SLIDE 81

The Application Development Outsourcing Cost Model

I h f t ffi i f ft i d t In search of cost-efficiency of software sourcing, you need to answer to the following questions:

  • Wh sh uldn't the simpl select the ESPs ith the l

est billin rates?

  • Why shouldn t they simply select the ESPs with the lowest billing rates?
  • Do off-site/offshore development realities, like

— geographical distances, — time-zone differences time-zone differences — electronic, rather than face-to-face communication — complicate and, thus, result in less-cost-effective software outsourcing? And if so, to what degree?

  • Can domestic ESPs successfully compete against foreign ESPs from

countries with lower (often much lower) billing rates than are available in your western country?

81

slide-82
SLIDE 82

Driving Inputs to the Application Development Outsourcing Cost Model

82

slide-83
SLIDE 83

The Application Development Outsourcing Cost Model: Realistic Expectations

S i F t

Realistic Expectations

Billing Rates as Saving Factor

(billing and cost of labor in units relative to 1.0)):

  • U S enterprise — 1 0 (reference)

Saving Factors

U.S. enterprise 1.0 (reference)

  • In-sourced

— 1.0 (Indian ESP working in the U.S.)

  • Offshore

— 0.3 (Indian ESP support from India)

Effectiveness factor

(expertise in development project management and business domain): (expertise in development, project management and business domain):

  • U.S. enterprise — 0.46
  • Offshore ESP

— 0.70 (typical for most Indian ESP)

Communication factor (complexity of conducting off-site / offshore development):

Additional Cost Factors

U.S. enterprise — 0.95 In-sourced

— 0.78 (Indian ESP working in the U.S.)

Offshore

— 0.46 (Indian ESP support from India)

83

slide-84
SLIDE 84

Example:

84

slide-85
SLIDE 85

The Realistic Picture of Savings

Fully executed by an offshore ESP Fully executed by an offshore ESP Local ESP involved

Cost of the project if executed by

Savings if executed by an ESP

Cost of the project if executed

Project cost ratio = cost if executed by an enterprise/ cost if

Cost of labor ratio = enterprise's fully loaded cost

  • f labor/ESP developer's

executed by an enterprise

an ESP

executed by an ESP

enterprise/ cost if executed by an ESP

  • f labor/ESP developer s
  • ffshore billing rate

100 percent 43 percent

100 percent – 43 100 percent/57 = 1.75 times less expensive to execute

ESP's offshore billing rate is three times lower than a U.S. 85

percent

percent = 57 percent p with an ESP than to develop

  • n its own

developer's fully loaded cost of labor

slide-86
SLIDE 86

How Effectiveness Compensates for High Billing Rates

Outsourcing to India O t i ithi th U S Increased effectiveness in western countries

86

Outsourcing within the U.S. Increased effectiveness in western countries can outrange cheap labor cost in India

slide-87
SLIDE 87

How to Become More Effective?

T h i l I t Technical Improvements

  • IT education – increase percentage of developers with formal IT

education

  • Software certification – have certified developers, e.g. in Microsoft

p g technologies, Java, …

  • IT training – systematically train your people to keep them up to date

Process Improvement Process Improvement

  • Follow the (software) process improvement models (CMMI, Spice, …)

Management Improvement g p

  • Project leader training
  • Introduction and certification of new roles: configuration manager, quality

manager

87

slide-88
SLIDE 88

Plan

h ( d ) 1. The outsourcing proposition (part: case study) 2 The technical issues

  • 2. The technical issues
  • 3. Management and validation techniques

g q

  • 4. Putting everything in place for successful outsourcing

Plus: an exercise

88

slide-89
SLIDE 89

8

Project Management for Outsourcing

9 (by Peter Kolb)

89

slide-90
SLIDE 90

Project Management Model for Outsourced Pr j cts Peter Kolb Projects

90

slide-91
SLIDE 91

Objectives

Thi d l ill bl th ti i t t This module will enable the participant to: Plan and execute Software development projects with sub Plan and execute Software development projects with sub- contractors Set up the right processes to achieve project success

91

slide-92
SLIDE 92

Content

S ft O t i i th i f S li A t M t Software Outsourcing in the view of Supplier Agreement Management Project Management Overview The Process of Supplier Agreement Management

D fi iti G l d P ti

  • Definitions, Goals, and Practices
  • Sub-goals and Sub-practices and Recommendations for
  • Determine Acquisition Type
  • Select Suppliers

Select Suppliers

  • Establish Supplier Agreements
  • Execute Supplier Agreement
  • Accept, transfer, and integrate the Acquired Product

Summary

92

slide-93
SLIDE 93

Project Management Overview

Acquiring Company Project Planning Plans Re I Risk Project M it i & Supplier A t Outsourcing P t Supplier Progress, Issues vs. Replan What to monitor Identified Risk k Migigation P Monitoring & Control Agreement Management Partner (= Supplier) Supplier Agreement Issues vs. Corrective Actions ks, Plans k Status, Actions Risk Management Risk St Corrective Actio

93

slide-94
SLIDE 94

Supplier Agreement Management – Specific Goals

b l E bl h l Sub-Goal 1 Establish Supplier Agreements Agreements with the suppliers are g m pp established and maintained. Sub-Goal 2 Satisfy Supplier Agreements Agreements with the suppliers are Agreements with the suppliers are satisfied by both the project and the supplier.

94

slide-95
SLIDE 95

Outsourcing = Supplier Agreement Management

l dd h d f Supplier Agreement Management addresses the need of the project to effectively select and manage those portions of the work that are conducted by suppliers p f y pp A Supplier may take many forms: In-house or external organization that develops, tests, or supports products or components that play a role in the delivery to customers in the delivery to customers.

95

slide-96
SLIDE 96

Buyer / Supplier Relationship

Requirements Software Products based on negotiated Internal Organization External Organizations Product Responsible Unit

  • r

IT Organization Users Software and support Requirements Supplier, Outsourcing P t based on negotiated contract IT Organization Users services Partner, Sub-Contractor Software Products based on internal Customers Supplier, Outsourcing Partner, Internal Software Development based on internal agreements Sub-Contractor Units Internal or External Outsourcing:

96

Internal or External Outsourcing: Requires the same Supplier Agreement Management to receive a quality product.

slide-97
SLIDE 97

Supplier Agreement Management: Process Overview

D t i A i iti T

Acquiring Company

Determine Acquisition Type Select Outsourcing Partner (= Supplier) Supplier Performance Records Supplier Skill base Umbrella Agreements (MBA, IPR, ...)

Outsourcing Partner q g p y

Project Establish Supplier Agreement Track Progress / Performance Execute Supplier Agreement SOW, Plan, Requirements Progress Reports Project Management, Project Monitoring and Control, Track Progress / Performance Resolve Changes to SOW, Plan, ... Periodic Reviews with technical team and management Change Requests Review Reports Risk Management, Configuration and Change Management Monitor SQA Activities of sub- contractor Monitor and align SCM activities SQA reports, measurements Configurations, Baselines Acceptance Testing, Integration Accept Acquired Product Released Software, Test reports bug fixes

97

Close Project Evaluate Project Performance

slide-98
SLIDE 98

Determine Acquisition Type

Buy (modified) COTS products or services Have it custom-made through a contracted external company Have it realized by another in-house development unit Obtain components from customers Obtain components from customers Remark: It’s possible to have a combination of the above

98

slide-99
SLIDE 99

Supplier Selection Process

1. From Budgetary plan / Project Plan identify software skills / activities to be

  • utsourced

2. Search for prospective partner profiles (scan existing and potential new partnerships) 3. Evaluate with few selected prospective partners

  • company profile and business data (vendor rating)
  • generic requirements for performing required activities

4. Audit supplier’s competence and processes 5. Collect data in a supplier score sheet and compare with benchmarks (e.g. already existing suppliers) 6. If score exceeds acceptable limits, make umbrella agreements like MBA

99

slide-100
SLIDE 100

Select Outsourcing Partner

l

Item Sub- Sub- Sub-

Supplier Evaluation Criteria

Contractor 1 Contractor 2 Contractor 3 1 Company Reference Items 1.1 Market Reputation 1.2 Infrastructure 1 3 Business focus

Catalog

1.3 Business focus 1.4 Skill profile: Management, Engineering 1.5 Process focus 1.6 Confidentiality 1.7 Performance Records 1.8 Price 1.9 Internal Assessment Project Specific Items 2 Domain Score Rating 2 Domain Score Rating 3 Prior experience on similar 4 Timeline 5 Location/ease of execution 6 Effort ...of subcontractor ...of acquirer 7 Project Cost ... base cost ... taxes and credit ... payment method 8 Guranteed quality

100

8 Guranteed quality 9 Warranty 10 Training and Support 11 Deliverables 12 Risk, deviation sought

slide-101
SLIDE 101

Establish Supplier Agreement (1 of 3)

Establishing and maintaining the supplier agreement provides the supplier with the project needs, expectations, and measures of effectiveness. The supplier agreement typically includes: The supplier agreement typically includes:

Frame Agreement (Master Business Agreement) Statement of work, plans, requirements Terms and conditions List of deliverables, schedule, and budget Defined acceptance process with acceptance criteria

101

slide-102
SLIDE 102

Establish Supplier Agreement (2 of 3)

Agreements for Project Execution

Identify critical dependencies between the project and the y p p j supplier Agree on processes, procedures, guidelines, methods, templates etc that will be followed templates, etc. that will be followed Agree on the form, frequency, and depth of project oversight; and define evaluation criteria to be used in monitoring the supplier’s performance supplier s performance

Agreements for Managing Change

Identify project and supplier representatives responsible and Identify project and supplier representatives responsible and authorized to agree to changes to the supplier agreement Agree on the process for handling requirements change requests from either side

102

requests from either side

slide-103
SLIDE 103

Establish Supplier Agreement (3 of 3)

Agreements for Handling the Product

Identify warranty terms, ownership, and usage rights for the acquired product Identify the supplier’s responsibilities for ongoing maintenance and support of the acquired product and support of the acquired product

103

slide-104
SLIDE 104

Planning for Quality

Time Schedule When/how often: reviews, metrics collection, reporting ? Resources for QA Activities Who will act as reviewer, tester? Which test environment? Reviews and Audits Tests Which tests? (modules, integration, UI and usability, stress and field tests, acceptance …) Who is responsible for each test? How is it planned and documented? How is it planned and documented? Which processes and tools to use for tests? Standards, Procedures and Tools Review Process, Document templates, Coding rules, … Design tools, Development and test environment, Configuration management tools, … g , p , g g , Metrics Which data will be captured and monitored for the project? Deviation Handling How to document and handle deviations in the project? (faults, p j ( , misunderstandings, technical issues, …) Escalation procedure depending on type of deviation (e.g. design mistake found during testing) Quality Records Whi h d t d d t ill b t d f th j t? ( i t

104

Which data and documents will be stored for the project? (review reports, error lists, process audit reports, …)

slide-105
SLIDE 105

Management and Technical Reviews with Supplier

Periodic reviews are conducted between the project’s management team and the supplier’s management team to review progress as defined in the supplier agreement Technical reviews typically cover yp y

Performance of the project (technical, cost, schedule, staffing) Technical issues are communicated and resolved Clarification of the end user or project’s customer needs

105

slide-106
SLIDE 106

Planning for Reviews and Audits

What will be reviewed? (Requirements, architecture, design, process, management plans, …)

Which documents will be reviewed? What is the process of a review?

What will be audited? (configuration audit process audit ) (configuration audit, process audit, …) Who is responsible?

that reviews and audits are carried out? … that reviews and audits are carried out? … that review records and approved documents are collected? (to control that all planned reviews have been performed)

106

slide-107
SLIDE 107

Checks for a Project Status Report

Overview Expected Benefits IP Issues if any IP Issues, if any Performance measures Deliverables in time period Risks O i ti Organization Schedule – plan vs. actual Cost – plan vs. actual Quality – plan vs. activities performed, metrics Q y p p f m , m Documentation – plan vs. actual Issues and concerns

107

slide-108
SLIDE 108

Acceptance Procedure on Supplier Delivery

Acceptance reviews, tests, and configuration audits must be conducted for the acquired products to achieve formal acceptance. Acti ities in detail Activities in detail:

As part of the planning and contract agree at project start on the acceptance procedure and criteria During project execution monitor the progress and fulfillment of requirements (functional, performance, quality, usability) through reviews, functional and physical audits, or prototypes, to avoid , p y , p yp , late surprises At the delivery stage perform agreed acceptance procedure to confirm that the acquired work product satisfies the

108

confirm that the acquired work product satisfies the requirements and commitments.

slide-109
SLIDE 109

Transition of the product to the Acquirer

Monitor the transition of the acquired product from the supplier to the project. Acti ities in detail Activities in detail:

Ensure that the appropriate facilities to receive, store, use and maintain the acquired product are available Ensure that appropriate training is provided to assist in the transition (for using and maintaining the product) Ensure that the storing distribution and use of the acquired Ensure that the storing, distribution, and use of the acquired product is performed according to the terms and conditions specified in the supplier agreement.

109

slide-110
SLIDE 110

Supplier Agreement Management - Summary

S b G l 1 S ifi P ti Sub-Goal 1

Establish Supplier Agreements

Specific Practices

Determine Acquisition Type Select Supplier

S b G l 2

Select Supplier Establish Supplier Agreement

Sub-Goal 2

Satisfy Supplier Agreements

Specific Practices

Execute Supplier Agreement

T k P Track Progress Manage Changes and Configur. Technical/Management Reviews Check Quality Check Quality

Accept Acquired Product

Acceptance Test

110

Transition Product

slide-111
SLIDE 111

Plan

h 1. The outsourcing proposition 2 The technical issues

  • 2. The technical issues
  • 3. Management and validation techniques

g q

  • 4. Putting everything in place for successful outsourcing

Plus: an exercise

111

slide-112
SLIDE 112

Exercise Session 2: ValiCert Case

(by P Kolb B Meyer) (by P. Kolb, B. Meyer)

112

11