Presentation is loading. Please wait.

Presentation is loading. Please wait.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.

Similar presentations


Presentation on theme: "Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software."— Presentation transcript:

1 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com1 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]

2 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management 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.com2

3 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com3 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

4 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com4 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

5 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com5 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

6 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com6 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

7 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com7 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

8 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com8 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

9 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com9 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

10 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com10 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

11 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com11 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)

12 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com12 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

13 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com13 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

14 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com14 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

15 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com15 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

16 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management 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.com16

17 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com17 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

18 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management 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.com18

19 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management 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.com19

20 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com20 NameInspection script for use in multiple organizations PurposeTo run a moderated inspection (without a meeting) for a team with members in different organizations SummaryIn an inspection, a moderator leads a team of reviewers in reviewing a work product and fixing any defects that are found. The inspectors are in multiple organizations, so they never meet face to face. Work ProductsInput Work product being inspected Output Inspection log Entry CriteriaA moderator must be selected, as well as team of three to ten people. A work product must be selected, and each team member has read it individually and identified all wording which must be changed or clarified before he or she will approve the work product. Basic Course of Events1.Preparation. The moderator distributes a printed or electronic version of the work product (with line numbers) to each inspector, along with a checklist to aid in the review. Each inspector reads the work product and identifies any defects that must be resolved, compiles those defects into a single document, and returns it to the moderator. 2.Compile the draft inspection log. Each list of defects returned by each inspector must be compared with the others, in order to identify and combine overlapping defects. The moderator compiles a draft of the inspection log that includes all distinct defects found by inspectors. The log does not yet contain any solutions to those defects. 3.Identify conflicts. The moderator searches for any defects reported by different inspectors which contradict each other. For each set of conflicting defects, the moderator holds a discussion (either in person or via teleconference or video conference, or using a collaboration tool like a mailing list or instant message system) between the inspectors who identified those defects, in order to identify the assumptions behind the defects and resolve them into a single defect. The inspection log is updated to reflect the combined defects. 4.Identify solutions. The moderator uses the same means to meet with individual inspectors to identify solutions to the defects and add those solutions to the inspection log. If more than one person identified the same defect, they must all be involved in creating the solution. Inspectors may also identify additional defects which were not originally found, as well as their solutions. 5.Compile and distribute inspection log. The moderator compiles all solutions identified in Step 4 into the inspection log. Any defects which were not resolved are left as open issues to be resolved by the author. The moderator sends the final inspection log to all inspectors for confirmation. When the inspectors have confirmed that the log is correct, it is sent to the author of the work product. 6.Rework. The author repairs the defects identified in the inspection meeting. 7.Follow-up. Inspection team members verify that the defects were repaired. 8.Approval. The inspection team approves the work product. Alternative Paths1.During step 5, if one or more team members find errors in the inspection log, the moderator must address those errors before rework can occur. The script returns to step 2. Exit CriteriaThe work product has been approved. Hold Reviews and Inspections

21 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com21 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

22 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com22 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

23 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management http://www.stellman-greene.com23 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!

24 Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Building an Effective Vendor Management Organization http://www.stellman-greene.com24


Download ppt "Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software."

Similar presentations


Ads by Google