Solve It Labs Offshore Project Management

19
September 2, 2010 Your Global Applicatio n Developmen t Partner

description

This is presentation how SolveITLabs is using existing project management methodologies to manage offshore teams to delivery software development projects for US clients

Transcript of Solve It Labs Offshore Project Management

Page 1: Solve It Labs Offshore Project Management

September 2, 2010

Your GlobalApplication DevelopmentPartner

Page 2: Solve It Labs Offshore Project Management

Corporate Facts

Financially Rock-solid $7 M in Revenues in 2008 Strong focus on fundamentals

Financially Rock-solid $7 M in Revenues in 2008 Strong focus on fundamentals

Offerings Top-notch services Flexible Engagement

Model

Offerings Top-notch services Flexible Engagement

Model

People Over 200 employees Strong Leadership

People Over 200 employees Strong Leadership

Infrastructure State-of-the-art

& fail safe Disaster recovery

& Business continuity

Infrastructure State-of-the-art

& fail safe Disaster recovery

& Business continuity

Delivery Capability Onsite-offshore model High level of technical skills & Domain competency

Delivery Capability Onsite-offshore model High level of technical skills & Domain competency

Quality ISO 9001:2001

Quality ISO 9001:2001

Founded in 2001 in San Francisco, USA 2 continents, 2 offices, 2 offshore centers

Founded in 2001 in San Francisco, USA 2 continents, 2 offices, 2 offshore centers

Clients Global Leaders: France Telecom, Quest Software,

InterContinental Hotel Group, Protective Life Insurance

Startups and mid-size product companies

Clients Global Leaders: France Telecom, Quest Software,

InterContinental Hotel Group, Protective Life Insurance

Startups and mid-size product companies

Page 3: Solve It Labs Offshore Project Management

Engagement Model

Phase 4Phase 4

Phase 1Phase 1

Phase 3Phase 3

Phase 2Phase 2

CLIENTENGAGEMENT

TEAM

Phase 1 – Assess Client Goals Prepare Set a Baseline Identify Recommend

Phase 2 – Plan/Set Tuning Parameters Goals Time-frame Milestones Resources

Phase 3 – Launch Engagement Execute plan

Phase 4 – Review and Correct

Pilot Project Compare with baselines Adjust team, approach

Page 4: Solve It Labs Offshore Project Management

Project Intranet

• Project Intranet to support information flow and access

Consolidated project status

Access to all project results, documents, interfaces

Collaborative environment for Client and Vendor

Distribution of information between project’s stakeholders (“active” information)

Centralized repository (“passive” information)

• Access – in time, permanent, full volume

• Security

• Information (metrics, reports, documents for entire project areas)

Page 5: Solve It Labs Offshore Project Management

Several factors strengthen the business case for outsourcing services in Russia...

Factor cost differential – Wage costs about 20% of US levels; real estate costs about 30% of

US levels

Time zone advantage – The nearly 11-hour time zone difference between US and Russia

enables ‘follow the sun’ 24x7 coverage

Robust telecom infrastructure – Russia’s telecom infrastructure today is world-class and cost-

competitive, with various long-distance connectivity options, high-bandwidth local loop networks and

high-speed Internet access

Government incentives – Russian government is actively promoting offshore services, by

setting up technology parks and other infrastructure, speeding up investment approvals and

providing attractive tax incentives

Page 6: Solve It Labs Offshore Project Management

Offshore Delivery Model

Users, Customers

Front OfficeCustomer facing

Back OfficeRussia

1s

t lev

el S

up

po

rt

2nd and 3rd Level Support

Front Office

Functional

Responsibilities

Back Office

Functional

Responsibilities

Common tools and Processes

Knowledge Base

Service Management

Quality Management

Technical Infrastructure

Development Center

Of course, the split of work between front and back

offices may change!

Page 7: Solve It Labs Offshore Project Management

US/Offshore Work-Split

1

Client’s Business Users*

Client’s Helpdesk Front OfficeSupport Team

Client’s Systems

US Offshore

2 3

4

Client SolveITLabs US Office

SolveITLabs Development

Center

Log ticket

Ticket assignedTicket assigned

to Support Team

Access Client’s Applications for

Problem Resolution

Periodic face to face meetings Service Delivery Manager monitoring operations

Establish 2-way communication with user and work

collaboratively till the ticket is closed

Manage Contingencies

3

Manage Contingencies

Page 8: Solve It Labs Offshore Project Management

Types of offshore projects

There are 2 main types of offshore projects Fixed-price projects

• Black box for the customer• Well-defined specifications• Not at heart of Customer’s Information System Or highly risky if they are!

Collaborative/Agile projects• Moving specifications• IT teams on both sides

- Possibly developers on both sides- Possibly Architects/QA on one side and development team on the other side

• Minimal project duration required- For processes/tools/communications to set up on place- For people interactions to reach a satisfactory level

• Can tackle complex projects (and with higher satisfaction levels)

Page 9: Solve It Labs Offshore Project Management

Role of Onsite Coordinator

Should take neutral position as much as possible

Handles administrative tasks: Arrival/Departure administration (secure id card, email/access account, intranet account, mailing lists, etc) Organization of visits (identification of requirement, dates, agendas, people) in both directionsVisa handling

Infrastructure for offshore team: Infrastructure coordination + improvements (monitor performances, tune tools) - with help from customer’s IT team

Organizational Role: Weekly technical and management conf calls with all the teams (dev team +Customer team) + follow up from these calls Management Status Meetings Communication facilitating + related communication improvements Crisis escalation investigation + handling Accompany Onsite members during offshore visits, ensuring success of agenda/visit.

Methodology/Expertise: Definition of Project Development Process with “offshore in mind” and continuous improvements (e.g. short iterations introduction, detailed planning, acceptance criteria for code delivery, intranet setup, etc). Work inside the teams to implement the collaborative development process. Quality suggestions + improvements (testing strategy / build improvements for quality + measurements) Continuous build + testing + collaborative development processes Architecture + implementation of regression testing

Page 10: Solve It Labs Offshore Project Management

Offshore Outsourcing - No Micromanagement

LocalProject Lead

DeveloperProjectLead

Developer

Developer

onsite offshore

ProjectManager

Developer

Developer

Developer

onsite offshore

Page 11: Solve It Labs Offshore Project Management

Infrastructure

VPN over

internet

Offshore

firewallfirewall

Onsite

Source

Repository

Continuous

releases

Intranet (Build

results, Issue

tracker)

DMZ reachable from offshore

firewall

Page 12: Solve It Labs Offshore Project Management

Communication Tools

• Travel: Every 2 months• “Word” docs: 1 every month• Phone: 3 calls per week• Intranet: 1 topic modified per day• Email: several times per day• Through builds: every day, 2 times a week• Chat: continuously

Val

ue in

team

kno

wle

dge

shar

ing

Usage frequency

TravelsWord

documentIntranet

Phone

C

Video Conference

Chat

Forum

Email

Page 13: Solve It Labs Offshore Project Management

How to share knowledge ?

Travels in both directionsEspecially before new subjectsFunctional training for Project Leads

Have Project Leads do the business conceptionAs much as possible

Have Project Leads do the detailed design

Open chat channels with functional personsShould have dedicated onsite persons. 1 per team => 1 person per 10 developers roughly.

decrease over the time.

Helpful to have onsite coordinators

Send functional tests along with use casesHave separate team writing scripts and running them

Page 14: Solve It Labs Offshore Project Management

Project Development Approach

P1: Business Proposal

P2: RequirementClarification

P3: Project Planning &

Prioritization

P4: Design and

Prototype

P5: Documentation

P6: Development

P7:Testing &

Quality Assurance

P8: Deploy

Owner: Sponsor

ApprovalProcess

Owner: Product Manager

RequirementApproval

Owner: Project Manager Owner: Project Team

Project Review

Design Review

Code Review

AcceptanceReview

Owner: Project Team

Owner: Project TeamOwner: OperationsOwner: Operations

Page 15: Solve It Labs Offshore Project Management

P7Release Mgmt & QA

Regression Tests

PerformanceTests

P8Operations

P6 - Back-end Development

Integration Testing

• HTML coding• Page Tagging

• Page Validation Test• Compatibility Test

• Implement Biz Logic• Implement Database

• Implement Interfaces• Unit Testing

• Functional Testing

Security Audit

Usability Tests

Portal Validation

Rollout Programs

P9ProjectDebrief

P1Business Proposal

P2RequirementsClarification

P3Planning

P4Design/Prototype

• Conduct TechnicalAssessment

• Review:– Content Quality

– Usability Quality– Operational SLA

• Update P1 through P4 documents

• Refine Project Plan– Time lines– Resources

P5Finalize Product Spec

Remedial Plan

Lessons Learned

OperationProcedures

SLA

PrototypeMockups

Wireframes

BusinessFlowchart

InfrastructureDesign Doc.

FunctionalSpecification

Draft SLA

Document

P6 - Front-end Development

•Define BusinessGoals

•Determine Project Expectations

•Core Competency

•ROI•Time to Market

•Define Critical Success factors

•Review Project Key Players

•Estimate costs•Project Approval

•Identify all Requirements•Define Project Scope,

Objectives, and Budget•Design Business Flow Process

•Evaluate business benefit and Project COST

•Prepare Marketing Docand Plan

•Feature/Benefit•Positioning

•Promotion tactics•Negotiate Contract

•Define User Experience •Conduct User Focus groups

•Project Approval

Create Visual Design•Build:

–UI Prototype–Back-end Prototype

•Finalize Content•Prototype Usability testing

•Design Data Schemas•Detailed Application design

•Identify API’s•Detail Infrastructure design

•Define Data Elements•Define Images

•QA for Content&UI•Create Test Plan and Cases

•Develop Usability testing Protocols

•Develop Use Cases•Develop Conceptual Design

•Infrastructure•User Interface

•Create Project Plan•Document all assumptions

•Define:–Issues

–Milestones–Resources

•Identify Content needs•Create marketing material

•Plan Pilot, if required•Technical Assessment

•Operational Assessment•Alpha

•Beta

Page 16: Solve It Labs Offshore Project Management

Project Iterations

• Fixed iteration delivery dates (Must not be changed, content can change)

• Iterations must list *all* tasks taking ½ day or more To prevent misunderstanding To allow easy progress follow up To generate release notes automatically Done using Issue Driven Development

Page 17: Solve It Labs Offshore Project Management

Offshore/Onsite Testing

Developerworkstations

Dev ServerQA/Staging

ServerProduction

Environment

Development platform

Set up from offshore

- Unit tests (mocks)

- Some integration

tests

- Integration testing

(manual)

- Functional tests by

developers (manual)

- Technical / Functional

tests (manual)

- Performance testing

(manual)

- Functional tests by

end users (manual)

- Client customers

UATEnvironment

Page 18: Solve It Labs Offshore Project Management

Suggestions

Requires good onsite coordinatorsTo solve communication issues due to language and cultural differencesTo act as “harmonizers”, improve communicationTo shield teams from the wearing effect of working from a distance

Requires a lot of travel, communicationHard to work with someone you didn’t see - leads to misunderstandingAt all levels – Project Managers, Team Leads, Architects

Share activities between onsite/offshoreNot just development, but also

− Business Requirements, Architecture Design, System Testing, etcAllow offshore people to participate actively in the development processShare the project knowledge among all project team members

Write functional test cases before development startsHelps transfer business knowledgeHelps to catch misunderstanding earlyCan be automated by QA Developers

Page 19: Solve It Labs Offshore Project Management

Waterfall Development Model

A waterfall model with feedback can be very effective choice to design a system that is clearly described. In this case only a few minor changes can be made in system design or its requirements. Also Waterfall model creates completed results in each phase being done and forever.