1 / 24

Applied Software Project Management

Applied Software Project Management. Managing an Outsourced Project [ Modified version of Stellman and Greene’s Chapter 9 slides. Adapted for class use only in the CS 709B course at UNR. Slides updated by Rakhi Motwani and Hema Jayaprakash, 2009 ]. What is Outsourcing.

hiero
Download Presentation

Applied Software Project Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Applied Software Project Management Managing an Outsourced Project [Modified version of Stellman and Greene’s Chapter 9 slides. Adapted for class use only in the CS 709B course at UNR. Slides updated by Rakhi Motwani and Hema Jayaprakash, 2009] http://www.stellman-greene.com

  2. What is Outsourcing • Sub-contracting a project to a third-party • May or may not involve some degree of offshoring • Offshoring is the transfer of an organizational function to another country, regardless of whether the work is outsourced or stays within the same corporation/company http://www.stellman-greene.com

  3. Why Projects are Outsourced • Cost savings (and possibly investing increased profits in growing business opportunities) • Focus on core business • Reduce time to market (boost in productivity due to rapid implementation of new strategies and initiatives) • Access to a larger talent pool • Supplement limited in-house capacity http://www.stellman-greene.com

  4. Why Outsourcing Fails? • No well-defined processes and governance structures in place • Poor project management • No metrics for measuring success • Most organizations are known to be unwilling to invest time at the outset to adequately plan and execute a project • Organizations also wrongly assume they have the internal capabilities to govern an offshore operation http://www.stellman-greene.com

  5. Why Outsourcing Fails? • Gartner’s Report: • Unrealized cost savings • Loss of productivity • Poor commitment and communications • Cultural differences • Lack of offshore expertise and readiness • Most outsourced projects are: • Poorly planned, shoddily implemented & ineffectively managed http://www.stellman-greene.com

  6. Considerations for Deciding to Outsource • Select the right projects to outsource • Select the right vendor • Availability of dedicated personnel for project & human resource management oversight • Offshoring • Manage time zone difference • Invest time for understanding the culture • Resolve work cultural differences • Have clear procedures for both knowledge and process transfer should the outsourcing arrangement not work out http://www.stellman-greene.com

  7. Prevent Project Failure • Outsourcers should figure out their IT process maturity. Mature processes have: • Standardized methodologies • Established mechanisms for managing change • Detailed service-level agreements • Strong skills in project and portfolio management • Weakness in these areas can translate into poor results from outsourcing projects http://www.stellman-greene.com

  8. Don’t be a hands-off client (Get involved) • Get involved in the day-to-day management of the individual team members and their tasks • Do not leave all of the decisions up to the vendor • Do not assume that it's the vendor's responsibility to fix every problem that comes up in a way • "I'm paying the bills, and the vendor will lose my business if they don't get this right, so they have to take care of everything!“ • No SRS document is complete. The vendor does not have enough information to build the software properly http://www.stellman-greene.com

  9. Constantly communicate project goals • Adequately communicate your needs and goals to the vendor • Integrate the outsourced team with your organization to provide context • Keep the team members on track; make sure they understand your organization's needs, and that the tasks they are performing are in line with organization’s goals • Have daily discussions with the team • Spot check work from selected team members to make sure you are getting what you think you are asking for http://www.stellman-greene.com

  10. Estimate the work • Make sure the project is estimated well • “The further away you get from a task, the easier it seems; the devil is usually in the details” • Unrealistic estimates cause projects to fail • Vendors tend to promise things they can't deliver • Meet with the vendor's project team and hold your own estimation sessions, once the project team is assembled http://www.stellman-greene.com

  11. Management Issues • Actively manage the project • Set up a communications plan with the team lead at the vendor • Know all your team members • Collect the daily status of the project (nightly build reports, unit test results, track the lines of code produced on a daily or weekly basis, access the defect tracking system) http://www.stellman-greene.com

  12. Senior Management (own) • Keep them in the loop • Senior managers may or may not have a realistic view of outsourced projects • Make sure your organization's managers understand what it is that you and your outsourced team are accomplishing, and how you are dealing with them on a day-to-day basis • You will need them to support you in case you make any controversial decisions, if you need further funding, or when you need their approval • Provide status reports to them, encourage them to visit with the vendor http://www.stellman-greene.com

  13. The Vendor’s Management • Build a relationship with the vendor’s management • Know who to approach when things go wrong • Establish trust both ways • The vendor should understand your goals • Don’t allow the vendor’s escalation process to interfere with the project (this “escalation” process is usually positive for the vendor, but it might work against you) • Make sure the management at the vendor recognizes and rewards good work • Security and intellectual policies at the client side might need to be modified as well http://www.stellman-greene.com

  14. The Project Team • Build a relationship with the team • A project manager doesn’t have the same kind of relationship with the team that he/she would with a team in his own organization • Understand the needs of each team member; the project manager is the team's only resource for gathering the information • Keep the team motivated • Gain credibility by making good decisions http://www.stellman-greene.com

  15. Collaborate with the Vendor • Tools and techniques for the project phase should be modified • Plan and manage the project scope • The project starts either with • A scope and a budget, or • A scope and a deadline (as opposed to an in-house project, which starts with a scope and set of known resources, from which schedule, budget and due date are estimated) • Plan for knowledge transfer • Done through meetings, documentation, working off-site at the vendor, bringing consultants on-site • Vendor team on-site is less disruptive but has disadvantages http://www.stellman-greene.com

  16. Plan and Manage the Project’s Scope • Going directly to meet the team helps communicate your needs effectively • Knowledge transfer should be covered in the scope and vision document • Include the vendor as project stakeholder • Recognize that success for the project manager and success for the vendor are often two different things http://www.stellman-greene.com

  17. Do your own estimation • Learn about your resources and create a team • Follow one of the estimation methods for the in-house project • Renegotiate the contract or add more resources to meet the deadline • Better to know at the beginning at the project http://www.stellman-greene.com

  18. Maintain your project schedule • Can’t understand the complexities with status meetings • Don’t depend on the vendor to maintain the project plan and project schedule • When a project manager is responsible for the project, he/she must keep track of its status • Know who is doing what and how far they have progressed http://www.stellman-greene.com

  19. Hold reviews and inspections • Identify and fix defects • Inspections as milestones in the project schedule • Discussion groups, mailing lists, log messages from the version control system • No inspection meeting required • Deskcheck to spot check the work • Mentor the team from the vendor http://www.stellman-greene.com

  20. Hold Reviews and Inspections http://www.stellman-greene.com

  21. Design and Programming • Don’t delegate the entire design and programming of the project to the vendor • Establish design constraints early on • If possible, design the software in-house, or in collaboration with the vendor • Monitor the code base using code reviews and project automation http://www.stellman-greene.com

  22. Software Quality • Take responsibility for the quality of the software • Quality is not just another deliverable that can be bought and paid for • Include testing in the scope document and if possible in the contract • Don’t make decisions that undercut the QA team • Ensure that adequate time and budget is allocated for test planning and execution http://www.stellman-greene.com

  23. Don’t Blindly Trust the Vendor • Even though individual team members may have certifications or degrees, it doesn’t mean that they are competent • Just because the vendor’s organization is certified, that doesn’t guarantee that they know better than you do how to run your project • Don’t be intimidated by the vendor’s pedigree. If something on the project looks wrong, it probably is! http://www.stellman-greene.com

  24. Building an Effective Vendor Management Organization http://www.stellman-greene.com

More Related