Project Online-VSTF Integration Boosts Engineering Productivity, Helps Planning March 2014 The following content may no longer reflect Microsoft’s current position or infrastructure. This content should be viewed as reference documentation only, to inform IT business decisions within your own company or organization. Microsoft Enterprise Commerce IT (ECIT) engineers work in a complex environment. Multiple releases occur simultaneously, and projects overlap frequently. Project managers and engineers use different platforms to schedule and track tasks, which reduced productivity. ECIT used the Microsoft Visual Studio Team Foundation Server (TFS) Extensions tool to integrate Microsoft Project Online and TFS to create one task repository and tracking structure. The solution enables data flow between platforms and a shared updated view, which has boosted productivity, and streamlined project tracking and capacity planning. Executive Overview Microsoft Enterprise Commerce IT (ECIT), the volume-licensing unit, linked two server technologies to streamline project oversight and capacity planning in build-and-deploy engineering. ECIT engineers and the project managers (PMs) each use Microsoft technology platforms, TFS and Microsoft Project Server, respectively, to manage their work. However, because neither team uses the other’s platform, managers face obstacles in tracking project status, and identifying and mitigating risks. ECIT implemented the TFS Extensions tool to bridge TFS and Project Online, thereby providing PMs and engineers a common platform for assigning and tracking tasks, and reporting status. The biggest benefit: PMs and engineers could continue using their preferred tools to perform tasks. This solution provides several benefits, including increased productivity, a single task repository, mutually visible tracking mechanisms for tasks and risks, and real-time reporting capabilities. Introduction Enterprise Commerce IT (ECIT) is the Microsoft business unit that manages the entire commercial licensing operation. Previously called Volume Licensing, ECIT performs a business-critical role within Microsoft and generates approximately 47 percent of the company’s annual revenue. ECIT project management, and the software development and engineering environment are highly dynamic and immensely complex. 2 | Article In a given year, ECIT deploys multiple large-scale maintenance updates and new services, and these releases typically comprise numerous individual projects. Additionally, project and deployment schedules overlap frequently. This complexity, in concert with an essentially minimal-downtime product-licensing environment, presents numerous project-oversight and resource-allocation challenges. The build-and-deploy team within ECIT includes more than 50 engineers who use Visual Studio Team Foundation Server (TFS), the Microsoft application-lifecycle management platform and softwareengineering standard. TFS supports agile development practices, and multiple integrated development environments and platforms, locally or in the cloud. It gives engineers tools to manage software development projects throughout the IT lifecycle. The PMs who oversee projects use Microsoft Project Server, a robust platform that enables them to organize workflow, set schedules, and track and communicate task and project status. These two platforms help the engineers and PMs work efficiently, but they typically use their preferred tools in isolation from each other. That means that PMs often must ask individual engineers for status updates, and then provide a customized communication regarding those updates to resource managers and senior management. This largely manual process is labor intensive and inefficient for both PMs and engineers. It also precludes a big-picture view of project progress and resource utilization across multiple projects. Structural, Scheduling Complexity at ECIT ECIT builds and deploys four major quarterly releases, each of which occurs over a nine-month cycle and comprises numerous individual projects. The build-and-deploy team also deploys monthly releases and other stand-alone projects. This creates a complex environment in which the engineers frequently work on several projects simultaneously, and project deadlines often overlap. Furthermore, ECIT engineering encompasses multiple environments—unit testing, early integration, and systems testing—and operates around the clock from locations throughout the world. The ECIT engineering team supports all of the hardware and software, including the more than 80 applications that the Microsoft fast-paced licensing environment uses. However, because license quoting, ordering, and fulfillment are interdependent, the environment cannot sustain much downtime. Therefore, new releases must deploy without interrupting the ordering process, to avoid adverse effects on operations or revenue. Situation and Challenges The fact that the ECIT engineers and PMs used separate platforms to schedule and track day-to-day tasks, and the overlapping nature of product releases, made it difficult for PMs to track tasks. Neither group had the time or the resources to learn each other’s program, which would have facilitated communication. One adverse effect was that the fragmented system prevented senior managers and executives from obtaining a clear picture of overall project status. Additionally, communication between the PMs and the engineers was largely manual and verbal, rather than technologically facilitated. This made the communications hard to track and quantify, and resource managers had difficulty in determining whether engineering resources were being used efficiently. ECIT sought a solution to help address these challenges: Fragmented, inefficient communication PMs had to track down individual engineers repeatedly to obtain a status report on their tasks, and then aggregate and report that information to senior managers. This created considerable churn within the organization. This tedious, disorganized process frustrated the PMs and was stressful for the engineers. They often did not know what they were supposed to be working on or what their deadlines were. Thus, engineers could neither plan their time efficiently nor predict upcoming task flow. 3 | Article Haphazard task allocation and tracking Because the PMs and engineers used different platforms and scheduling systems, and they created tasks in each, it often was difficult to figure out which engineers were handling which tasks. In particular, resource managers could not determine readily which engineers were over-stretched or which ones might be available for new tasks. This, in turn, made it difficult to identify risks to project timelines and reallocate resources to mitigate those risks. Inconsistent schedule-creation methods Within the PM group, individuals used a variety of programs and tools outside of Microsoft Project to create schedules. These ranged from Microsoft Excel spreadsheets, to Microsoft Word documents, to outside resources; and some PMs even used self-styled systems. This patchwork approach precluded schedule consolidation across projects, which would have enabled big-picture planning purposes. Poor capacity understanding and planning Within the context of the fast-paced build-and-deploy environment, the overlapping projects, and an inability to look at all ongoing projects simultaneously, PMs and managers struggled to determine whether resources were adequate and were being used efficiently. The teams’ use of two discrete, uncoordinated scheduling systems also stymied future project planning and prevented executives from gauging overall project performance. Solution To streamline build-and-deployment scheduling, and improve task and project tracking, ECIT took a multifaceted approach over a seven-month period. The key goals were to ensure consistency across scheduling and task allocation, and to devise a way to track, update, and communicate project status. ECIT also wanted to develop a mechanism to identify project risks in a timely, proactive manner, and help mitigate those risks quickly and efficiently. Finally, ECIT sought to improve capacity planning, across the board, for individual and overlapping projects. First, ECIT release managers, with senior leadership support, helped PMs standardize the schedules that they developed by using Microsoft Project. The managers also created templates within Microsoft Project to provide a consistent format across all projects. Both the release managers and PMs had to plan the data structure carefully, because these structures cannot be changed easily after integration is implemented. This relatively straightforward process created a foundation for the next phase of the initiative, which was to use the TFS Extensions to integrate Microsoft Project and TFS. This connector technology enables project managers and software-development teams to use their preferred tools to perform their work and share project information transparently by using Project Online. After IT staff configure the two platforms appropriately, PMs can take tasks they create in Microsoft Project and push them into TFS. Likewise, PMs can pull task-status information into Project Server that the engineers generate in TFS. The connector’s synchronization engine maintains schedule and task data, and updates this data in real time, as the engineers input status changes and PMs add tasks. The connector technology then incorporates the updated information into the master project plan. Then, by using Project Online, PMs, engineers, resource managers, and senior management can view project information easily in a single source. The integrated platform also enables senior managers to generate a broad range of detailed reports in several areas, including task and project completion status, resource allocation and utilization, risks and slippage, and expected capacity constraints. The original objective was to use the integrated environment to plan, track, and view progress on a single release. However, that scope was expanded to enable visibility of overlapping tasks across multiple projects. 4 | Article Planning the Integration ECIT resource managers and technical staff prepared for the integration by ensuring that they accounted for all project-associated variables and components within the organization, and standardized those items accordingly for data-acquisition and reporting purposes. For instance, to allow for seamless synchronization, the managers had to ensure that terminology was consistent. Similarly, the PMs had to devise a consistent methodology for creating and posting schedules, and for defining tasks and deliverables. Additionally, PMs and resource managers had to ensure that all team members understood how to use their tools in the integrated environment, and affirm that they were committed to using them appropriately and consistently. In short, the system would not work as intended, nor would it generate accurate data, if some team members chose to opt out of using it. The entire team had to adopt and embrace this new system for it to benefit the entire team. Before the senior managers proceeded with integration, they researched integration strategies and sought guidance from other Microsoft groups that had used the connector tool to bridge their project-management and engineering platforms. ECIT managers also identified the company resources available to support and facilitate the integration implementation. Finally, the integration leaders in the project management and build-and-deploy groups secured visible support from ECIT executives, which helped underscore the initiative’s importance and spur adoption. After the connection was in place, ECIT moved all the projects in Microsoft Project into Project Online. This provided a single source for web-based access to schedules, status updates, and reports. Results Following the integration, which took approximately seven months to complete, ECIT experienced immediate benefits in several targeted areas, including project task and status tracking, and release oversight. Over time, other, unexpected benefits have accrued as well, especially in engineering productivity, resource management, and job satisfaction. In addition, the robust viewing and reporting capabilities enable ECIT to develop truly data-driven, proactive staffing plans, and to identify root causes when timeline slippage occurs. Both the engineers and the PMs appreciated the fact that the solution enabled them to continue working in their preferred platforms, without learning new ones or substantially modifying their work processes. The initiative’s success has spawned considerable interest among the PMs and engineering teams within ECIT who were not involved in the initial integration, as well as teams in other Microsoft business units. Real-time Task and Project-Status Views The data synchronization between Project Server and TFS occurs automatically, as engineers input status. This gives senior management a real-time view of task and project status, and helps resource managers identify potential risks to meeting project milestones. Executives also use Project Online to review all projects in progress in a single view, and assess and predict resource needs over the release lifecycle or fiscal year. PMs no longer have to call or email individual engineers to obtain task updates, and are instead able to focus on their own duties and management activities. Likewise, engineers can view their tasks and report progress or delays in TFS, without directly contacting individual PMs to convey status information. The ability to view projects in real time also helps reduce potential conflict when resource constraints emerge. Previously, if resource managers were asked to have their teams take on additional work, but the managers expressed concern that the extra load would be unmanageable, the managers’ 5 | Article unwillingness might have been viewed as unhelpful. Now, in the context of a project-team meeting, the managers can use the Project Online view to show the extra work’s potential impact on other deliverables. Increased Engineering Productivity, Job Satisfaction Now that communication, project scheduling, and task tracking are more streamlined, the engineers can focus on their work, be more productive, and plan their workdays more easily. The longer-term, more-detailed view of upcoming tasks and projects in progress also has helped engineers plan their personal and vacation time. As a result, engineers report lower stress and improved job satisfaction. In the year following the Project-TFS integration and task-based release implementation, engineers’ job satisfaction scores increased 55 percent from the previous year’s survey findings. Some engineers attributed their higher satisfaction to project visibility and their ability to plan ahead. Detailed Views, Robust Reporting Capabilities Because ECIT can access detailed data on capacity and average task-time requirements, and compare that to projections, management can spread out work more evenly. From a capacity-planning perspective, this avoids “staffing to the peaks,” as one senior manager describes it. Overall, the buildand-deploy team has been able to increase its work output and departmental productivity, and better assimilate ad-hoc tasks and projects that arise. For example, if the engineering team has 10 deliverables over a 14-week period, management can look at all projects in a single view to identify and fill gaps. Furthermore, ECIT management has been able to pinpoint more accurately the cause of delays or slippage. Through detailed project-status views and engineers’ reports, for instance, ECIT was able to identify problems with the hardware supply chain that prevented on-time completion. Table 1. The images show examples of Microsoft Visual Studio reports in the TFS-Project Online integrated environment. 6 | Article The more robust reporting capability has conferred numerous additional benefits. Management now can generate highly detailed reports in many areas, including: Task-completion times: Helps quantify projected versus actual time required. Task and project-completion rates at milestones: Helps determine projected and actual dates, and delay causes, if applicable. Individual engineer availability over the release lifecycle: Helps identify who has time to take on new tasks. Reporting also identifies consistently under-producing team members, to allow for coaching and improvement plans. Project-delay patterns and causes: Helps determine issues that affect projects, both per project and across projects, and over time. Best Practices and Lessons Learned Based on their experience with the integration, the PMs and resource managers offered the following guidance: Ensure that you secure stakeholder support ahead of time, by pointing to the expected work-flow benefits. Put a good agreement in place for the initiative, and clearly delineate the platform-integration goals. Ensure that, before proceeding to integration, you thoroughly understand your organization, your project structure, and the structure of your applications. Plan thoroughly how you will structure data in TFS, because you cannot change these structures easily after integration. Ideally, you should devise a relatively generic data structure that can accommodate organizational changes and growth. Ensure that the entire team adopts and embraces the new system, to maximize the benefits of integration. Prepare documentation for users that addresses expected questions, and ensure that an experienced user is available to assist with the transition. Conclusion Microsoft ECIT substantially streamlined project tracking, increased build-and-deploy team productivity, and improved resource capacity by integrating TFS and Project Online using synchronization technology. The solution has improved productivity significantly, provides management with a clear, frequently updated view of project status and resource utilization across ECIT, and enables engineers to better plan their workflow. For More Information For more information about Microsoft products or services, call the Microsoft Sales Information Center at (800) 426-9400. In Canada, call the Microsoft Canada Order Centre at (800) 933-4750. Outside the 50 United States and Canada, please contact your local Microsoft subsidiary. To access information via the World Wide Web, go to: http://www.microsoft.com http://www.microsoft.com/microsoft-IT 7 | Article © 2014 Microsoft Corporation. All rights reserved. Microsoft and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. The names of actual companies and products mentioned herein may be the trademarks of their respective owners. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.