Upload
aztechcouncil
View
385
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
The Dos and Don'ts of Outsourcing the Design and Development of Software Products
Many companies have traditionally outsourced software development (with mixed results) largely because of the financial benefits that are available through the use of off-shore labor. More and more, it makes sense to consider outsourcing for additional reasons, including:
The need to tap into the increasingly global talent pool The difficulty associated with building a full team and the associated
infrastructure The need to access high-level talent such as design for usability experts,
architects, and program managers
At this Lunch and Learn, Neubloc will cover when (and when not) to consider outsourcing software design and development. We will look at common pitfalls of outsourcing as well as covering best practices. While the emphasis will be on software development, the discussion should be useful with respect to outsourcing in other areas, including hardware development and business practice outsourcing.
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
November 18, 2005
The Dos and Don'ts of Outsourcing the Design and Development of Software Products
Armando ViteriCEO
Bruce HunterDirector of Business Development
Agenda Introductions--Tell us who you are and what you’d like to get out
of todayOverview of NeublocWhy consider outsourcing software design and developmentWhat to look for in a outsourced partnershipWhat to outsource for established companiesAdditional outsourcing pitfallsSummary of best practicesQ&A If Time and Interest: Some Neubloc Portfolio Examples
© Copyright 2008 by Neubloc, LLC. All rights reserved. Phone: (858) 678-0170 | www.neubloc.com
About NeublocWe are a San Diego-based firm that helps other
companies build software products such as Enterprise Applications, Social Media Applications, Mobile Apps, and Embedded Applications
We act as a virtual design and engineering department for a range of software companies (startups to Fortune 500)
© Copyright 2010 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
© Copyright 2010 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Neubloc ServicesProduct Strategy and Design
What is your market? Who are your users? How do increase adoption and reduce training/support? How do you craft the roadmap?
Application Product Development
Architecture Program Management Development Test
Embedded Product Development
Why Outsource Software Product Design?
Leverage specialized expertise during key periods of product development
Usability Experts Graphic and Creative Designers Architects—application level, database level, etc.
Outsourcing product design encourages innovation by allowing for fresh perspectives
3rd party validation of
scope and cost
© Copyrigh 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Why Outsource Software Development? Focus on core business versus engineering management Fast time-to-market by leveraging existing infrastructure
RecruitmentDevelopment infrastructure
Project Management Build System Test System Bug Tracking
Engineering Management
More predictable outcome Talent pool
Access to a global talent pool when local talent is hard to find Ability to leverage global talent pool Labor arbitrage
Companies can flexibly expand their development bandwidth when internal teams are maxed out
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
But offshore projects do go fatally wrong
Outsourced vendors can stumble horribly: Company failure “Double dipping” on resources assigned IP theft
When they are offshore there is little recourse Are you going to chase them through their local court system?
Most of the time the problems are less obvious but still serious
Offshore project management leads to poor implementation or long, costly delays
Offshore companies may not have the ability to get the visas required to get personnel onsite fast.
Using 3rd party firm as staff augmentation versus part of the team
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
What to look for in an outsourced relationship?
Single reliable established vendorUS based headquarters, key management and
project managementPreferably full services
Design Development Maintenance
Critical IP development within the confines of countries with have IP agreements with the US
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
What to outsource for established companies?
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Rapid prototyping of unknown/unproven technologies. This frees resources internally to evaluate results and determine their usability in the Enterprise
Reverse engineering of legacy and/or undocumented applications. Every company has those skeletons in the closet…sooner or later they need to come out.
Code Migrations. This requires an enormous amount of time to analyze cryptic data, set up the transfer process, test and perform the migration. In addition, offshore works great for setting up and cleaning up data to prepare the migration.
Your classic software development projects. Here it is strongly recommended that your offshore partner is part of the team as close as possible to inception. This helps to clearly define the scope of the offshore responsibilities.
Testing and maintenance. These are major areas for effective use of offshore resources.
Source: Erich Kreidler, USC
Additional Pitfalls to Avoid
Hiring a single developer Dependent on him or her to finish the project, and to finish the
documentation before they leave Single person has to fill many roles, including user interface,
application design, database design, and test.Going too long between iterations
Prevents you from having the opportunity to monitor progress and to course correct
Leads to surprisesCreating a rigid relationship by insisting on fixed costs
Stifles innovation Focuses time on contractual issues
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Summary of Best Practices Single reliable established partner Make sure there are stateside project champions
With product development, priorities and features change Global resources not always attuned to U.S. management
style Treat the team like your internal team
Regular project reviews with updates on costs and schedules as well as opportunity to review interim deliverables
Make sure you consider intellectual property Best to deal with U.S. company Make sure they back end development is done in safe
places
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Questions?
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Mobile Check Deposit
Customer: Mitek
End Customers: Banks
© Copyright 2010 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Corporate Learning Management Customer: GeoLearning
End Customers: Corporate Training Departments
© Copyright 2010 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Patent Research and ManagementApplication
Customer: Ibex
End Customers:IP Attorneys
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
RFID Shipping System
Customer: Eggs Overnight
End Customers:Corporate shipping departments
© Copyright 2009 by Neubloc, LLC. All rights reserved. Phone: (619) 578-2873 | www.neubloc.com
Storage Device DevelopmentNeubloc is now integral to all aspects of software
development at a Fortune 500 company providing disk
storage devices. Services provided are firmware
development, quality assurance, development of
testing tools and development of core software.
Technologies used are C/C++.