Implementing a Professional Services Organization Using ... - CiteSeer

11 downloads 240 Views 159KB Size Report
Implementing a Professional Services Organization Using Type C Scrum. Brent Barton CSM CSM-T. Evan Campbell CSM CISA MBA. Certified Scrum Trainer,.
Proceedings of the 40th Hawaii International Conference on System Sciences - 2007

Implementing a Professional Services Organization Using Type C Scrum Brent Barton CSM CSM-T Certified Scrum Trainer, Managing Consultant SolutionsIQ

Evan Campbell CSM CISA MBA CTO & Vice President of Professional Services SolutionsIQ

[email protected]

[email protected]

Abstract SolutionsIQ’s Professional Services Division dramatically improved project quality and team productivity through the adoption of Scrum and Agile values, principles, and practices. The organization’s original structure was typical of a consulting organization; functional silos (developers, testers, Project Managers) matrixed into project assignments. This model was misaligned with the team-based principals inherent in Scrum and Agile. This misaligned organizational structure created inefficiencies and obstacles (waste) in team and departmental function. In an effort to improve this misalignment, the authors designed and implemented an innovative organizational model based on Type C Scrum. This paper assumes the reader is generally familiar with Agile and Scrum basics, and provides a cursory definition of Type C; an advanced organization-wide extension of the simple Scrum project management wrapper. The paper provides a fairly detailed description of a specific instantiation of Scrum and Agile organizational design in a 400 person services business.

1.

Background and Overview

SolutionsIQ is a 400 person IT services company based in the Pacific Northwest. SolutionsIQ provides technical staffing and outsourced software development services, in addition to targeted consulting offerings (including a selection of Agile, Scrum, and business consulting offerings). SolutionsIQ’s Development Services Practice manages many simultaneous software projects using various technologies, serving many types of customers.

This IT Services company is a very different business and organization compared to software product development and IT organizations. With no similar example to work from, an organizational model that would support Agile and Scrum within the unique requirements of a consulting business had to be adapted from models proven in these other business types. In designing this new organizational structure, Lean and Agile principles guided the organizational model, tempered by the practical realities (defined financial and customer service objectives) of a large-scale consulting organization managing dozens of projects. The resulting organization is more transparent and better aligned to serving all our corporate goals, and is a considerably more gratifying workplace for our team members.

2.

Recognizing the Need for Organizational Change

Prior to the re-organization, the organizational model was similar to that used in most consulting organizations. Project Managers, Developers, testers, and other titles reported into a Functional Manager silo under a manager specialized in the appropriate role, and were assigned or “matrixed” to projects for the duration of that project. This “Functional Dominant Matrixed” organizational model was originally selected to ensure that there were multiple stakeholders in the organizational model monitoring compliance and quality to guarantee that project issues were surfaced quickly, so that management could address them before significant consequences accrued. Through the focused application of better methodology, tools, and technical practices, implemented over a period of two years, the incidence and severity of problem projects had dropped to extremely low levels. We realized greater benefits could be realized by us and our customers if we implemented an organizational model focused on

Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 $20.00 © 2007 1530-1605/07 $20.00 © 2007 IEEE

1

Proceedings of the 40th Hawaii International Conference on System Sciences - 2007

leveraging our strengths: agility, time to market, and early delivery of high impact return on investment. Development Services officially adopted Scrum as its primary project management framework in December 2004. This was a deliberate decision, based upon the results of several successful Scrum projects. By that time, we had hired many experienced Agile team members, Extreme Programming practitioners, and had six Certified ScrumMasters. We migrated from a model in which we used many methodologies on projects, to a model in which we managed all projects with Scrum and had a process integration layer between our Scrum process and our customer’s process. After this commitment to Scrum for all projects, we learned our organizational structure, the functional matrix, did not support our objectives well. As Ken Schwaber says, “Organizations are rarely optimized for productivity.” [1] In the spirit of searching for continuous improvement, we began looking for ways to support Agile values and principles organizationally.

3.

Goals and Objectives

Every organizational model has significant strengths and significant weaknesses. No model is perfect in all ways for any complex organization. An organizational model must be reviewed against business goals and plans to ensure the organizational model is the most advantageous model possible for the organization at any given time. In our case, the ideal model should enhance the organization’s ability to: • maximize customer satisfaction • encourage employee retention • scale up, down, and across large numbers of projects • maximize productivity and quality • encourage predictability and transparency of project results • maintain aggregate utilization targets • support an organizational passion for continuous improvement and learning Would it be possible to improve all of these variables with a change in our organizational model? We decided to try.

4.

Organizational Review

As previously stated, stronger teams, processes, policies and tools had dramatically reduced the incidence and severity of “problem” projects that developed performance issues in the critical dimensions of financial performance, quality, on time delivery, and customer satisfaction. While the positive aspects of the functional matrix model had become less needed, the downside aspects of the model were negatively impacting individual ownership of project goals and results, team alignment to their customers, and individuals’ personal commitment to supporting their project teams. It created obstacles to team cohesiveness, self-organization, and optimization; important factors in our organization’s ability to continuously innovate and improve. We also found this organizational model’s disadvantages were getting worse as the organization was scaling up (the organization is rapidly growing).

5.

Defining a New Organizational Model

The principal change in the new organizational model is the move from a functional-managerdominant reporting alignment, to a project-dominant reporting alignment. Olson and Eoyang define a container as a factor that sets the bounds for selforganization.[2] By changing the dominant “container” for our team members from the functional silo to the project team, we could move the focus of their self-optimizing energy closer to the project and our customer. Further optimization was realized by implementing the organizational design principles based on Type C Scrum. Type C Scrum was first used to characterize overlapping phases of product development in Takeuchi and Nonaka’s “The New, New Product Development Game.” [3] Later, Jeff Sutherland further evolved the term “Type C” to define his company organizing itself around Scrum principles. In his paper, “Future of Scrum: Parallel Pipelining of Sprints in Complex Projects,” [4] Jeff concludes that, “type C Scrum increases speed of development, aligns individual and corporate objectives, creates a culture driven by performance, supports shareholder value creation, achieves stable and consistent communication of performance at all levels, and enhances individual development and quality of life. It also drives functionality out into the marketplace at a pace that can overwhelm competitors and achieve industry dominance.”

Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 $20.00 © 2007

2

Proceedings of the 40th Hawaii International Conference on System Sciences - 2007

Examining our “software factory” as a value stream, we recognized that we had limited control of load coming into the department. We could dramatically improve the allocation of load to teams, however, by implementing a team-based pull model. With the functional matrix removed, project teams actively seek to stabilize their current and future workloads, thus aligning the company goals, customer goals and team goals more closely. As load increased beyond capacity, scaling by adding teams incurred less overhead (waste) than scaling across functional silos. Like many organizations, we found stabilized teams who have worked together longer produce more predictable throughput and quality, and their flow of implemented software increased. Thus our “software factory” could achieve greater throughput and scale with less waste by stabilizing teams. The Organizational Chart (or Reporting View, see item 6, below) is one very conspicuous organizational change, but no organizational model is complete by merely defining who reports to whom. We developed several other views to address important functions of an organization to ensure support for departmental critical success factors (project financial performance, customer satisfaction, innovation, and quality). In this situation where our financial goals are served by carrying a minimum of management overhead and administrative personnel, it is critically important to define what responsibilities are vested in what roles and what structures are in place to support each delegated function, and only accept the costs necessary to deliver the most important functions.

6.

Individual Reporting Structure (Reporting View)

The reporting view is the formal personnel reporting structure. Project teams are led by a Project Leader. Team members report to that Project Leader. The Project Leader (for the scope of that project) reports to the Practice Manager (or Director) who recognizes the revenue and P&L for that project. When it comes down to basic HR organizational functions like hiring and accountability, this is the chain of command. The other oversight views below clarify the organizational support provided to the reporting managers. This support includes, but is not limited to delegation of some activities like employee sourcing, QA oversight and auditing. Final accountability resides with the Practice Managers and Directors for: the outcomes of projects, customer

satisfaction, employee satisfaction/retention, quality, and financial performance.

7.

MetaScrum (Intra-Team/Project Statusing and Coordination Structure)

This organizational structure focuses on the operational excellence of teams delivering customer solutions. It also ensures organizational crossfertilization of team innovation. Obviously as the volume of business increases and the organization grows, dynamic and complex functions like resource allocation, awareness of project impediments and issues, and financial performance must be shared throughout the organization via a structured forum. This view shows the MetaScrum which is a collaborative team of Project Team Leaders and Practice Managers. Resource allocation occurs across practice boundaries, so a cross-practice collaborative (and hopefully fairly transparent) resource sharing model was developed. MetaScrum Über-PO: EC Über-SM:

Avg Project and Team PO: Customer SM:

Large Project Scrum of Scrums PO: Customer Über-SM:

Small Project Team SM:

Small Project Team SM:

Small Project Team SM:

Small Project 1 PO: Customer 1

Small Project 2 PO: Customer 2

Figure 2: The MetaScrum Model The MetaScrum is based upon the six characteristics of managing highly productive teams in “The New, New Product Development Game” [3] and by Jeff Sutherland [4] that propelled Patient Keeper past Siemens and others into the Gartner Magic Quadrant for ability to execute innovative vision. The MetaScrum provides a balanced view that complements the individual reporting structure and provides continuity, oversight and support into the organization. The reporting structure of the MetaScrum outlined in Figure 2: The MetaScrum Model provides a model that induces, “urgency, sharing, communications and honesty behaviors... company wide.” [5]

Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 $20.00 © 2007

3

Proceedings of the 40th Hawaii International Conference on System Sciences - 2007

To optimize team size for Hyper-productivity, each Agile project team is recommended to be 7-9 people. Teams that are smaller than this usually lack some cross-functional skills and do not have enough members to help overcome this. Teams larger than 10 members introduce additional complexity to keep the team coordinated. In order to maintain and improve productivity towards hyper-productivity, a project may need to have two or more teams coordinating their activities via a Scrum of Scrums (a daily Scrum involving the Scrum Masters of each Scrum team).

8.

MetaScrum Agenda

The MetaScrum should focus on actions needed by the organization to support the project teams by creating an “anticipating culture”. The organization and the project teams should leave the meeting with a clear sense of the business opportunities, release planning, project statuses, resource needs and budgets. Any actions from past MetaScrum meetings should have updates as well. The MetaScrum is partitioned into daily 15 minute tactical Scrum of Scrums meetings and Weekly MetaScrum meetings that last up to two hours.

9.

Infrastructure Improvement Team

The Infrastructure Improvement Team is comprised of all personnel not utilized by billable projects. The Infrastructure Improvement Team will work on various projects (as assigned and prioritized by the Product Owner) with one week sprint durations. The Infrastructure Improvement Team Leader will have a special role in resource allocation and candidate screening/hiring to assist the billable project teams in resourcing. The infrastructure improvement team follows the project team model. This team may encounter wildly varying sizes, churn, and partial resources. All projects on this team will run in one week sprints, with sprint reviews on Friday. This team’s sprint schedule will operate as a sort of metronome or heartbeat setting an operational tempo for the larger community of teams to coordinate the movement of resources between teams.

10. Technical Quality and Standards Management Team Transparency has its own set of challenges. According to Senge, “the fundamental ‘information problem’ faced by manager is not too little information but too much information.” [6] Firstly an inspector/auditor, the Quality and Standards Team also operates where possible as an advisor and mentor to project teams. This team has an absolute right to dig into teams’ “private project details” and evaluate/report on compliance with standards. This project team will be tasked with verifying technical quality and policy compliance for all billable projects in process. Project teams will select from the Best Practices repository those practices appropriate to optimally fulfill the project. The Quality Team Leader will be the approver of what best practices and standards are appropriate for any given project, as part of project initiation. This team’s assigned Backlog is maintained in the form of a matrix specifying project teams on one dimension and the applicable quality metrics or standards on the other dimension. Note that not all projects will automatically have identical metrics and standards (some may not be relevant to a given project). Any team issue that is identified as out of compliance will be reported to the MetaScrum as a “blocking issue” preventing completion of the Quality Team’s assigned backlog for that sprint. As with any such issue raised in a scrum meeting, the MetaScrum must address the blocking issue with the offending team, thus removing the Quality Team’s impediment.

11. Managing Consultant Team (Billable Consultants, Internal Consultants, Business Development) The members of this team provide assessment and advice. They may also assist in project intervention and recovery. They will be actively billing in consulting engagements with customers, and assist internal teams as consultants on projects. They are advisors and thought leaders for continuous improvement in all delivery and consulting functions. The Managing Consultant, when not individually billable, is focused on ensuring consistent predictable delivery results for the customer, and ensuring that business opportunities are identified and pursued. When project issues emerge or significant customer

Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 $20.00 © 2007

4

Proceedings of the 40th Hawaii International Conference on System Sciences - 2007

satisfaction issues emerge, one or more individuals on this team will be called in to assess troubled engagements and define recovery plans. They also have an important role in mentoring and counseling project management and consulting skills for project personnel. When not functioning as internal or external consultants they may work on project teams as line contributors working on backlog items until consulting work emerges.

12. Other Important Components of the Organizational Model The organization is well optimized to support strong project leadership and focus, but administrative functions should be delegated from busy operational managers to HR and administrative support entities. There are also larger non-project personnel development functions that logically exceed the span of interest of the project team.

12.1 HR Support In order to optimize the project focus of managers in the reporting structure, the organization requires highly available and conspicuous support from an HR professional. The types of issues handled by the HR professional are those related to general corporate policy, admin and benefits questions, support for benefits issues, HR complaints, and assistance to the division in comp and performance evaluation processing.

12.2 Mentoring Program The organizational design has a reporting structure that can support the setting of goals and objectives, and the measurement of personnel performance. Specific functional development goals and career pathing guidance are provided by senior personnel with those skills and experiences. The mentoring program assigns more senior personnel to mentor 1-4 more junior individuals each. Mentoring pairs are required to meet and discuss development goals and issues at least once monthly. With mutual consent up to two hours per week may be spent working within the pair to deal with short term issues. Issues requiring more time and support are probably reflective of project team issues that should be dealt with in conjunction with the Team Leader and team peers. Mentors and Team Leaders are encouraged to cooperate when an individual team member requires counseling and development. Mentors provide an avenue and viewpoint for support

and advice apart from the project team structure. Mentors participate in reviews of their mentored individuals’ performance.

12.3 Review and Performance Appraisal The new organization is structured on project team oriented evaluations. Since individuals may work on several project teams per year, it is important to be able to support several appraisal groups assessing each individual each year. In summary, the best option is to conduct quarterly reviews among team members, where each person produces an evaluation of all teammates, and is evaluated by all teammates and his mentor. If a person has been on more than one project team in a quarter the project team they spent the most time with conducts the review. Mentors also produce a review of their mentored individuals’ performance.

13. Our Experience to Date This organizational model has now been in place a year. The new responsibilities, teams, and interactions have settled into patterns of selforganized (and mostly self-optimized) behavior. While not perfect, the goals of the model are being realized. Customer alignment is much better, teams feel and behave empowered, innovation and creative energy are being encouraged and are focused to the betterment of customers’ projects. Most important, project results continue to improve, and have reached the point where customer satisfaction issues are very rare indeed, and nearly all quality issues are identified internally before customers are impacted. Several parts of the program, like the mentoring program, need some additional support and focus to fully realize their potential. The review program is being refined with some newly acquired tools, and we’re revising our compensation programs a second time to bring incentives into better alignment with the team-based organization, and our customer service and project performance goals. Type C Scrum behavior is increasingly efficient and productive. Dramatic scaling of the organization has occurred without negatively impacting the benefits accruing from the model. This model has been so effective the administrative and operational support departments are now also using Scrum and elements of this model as a project management wrapper for company initiatives and functions. While we must reiterate that no organizational model is perfect, at this point in the evolution of our consulting company, this organizational model has

Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 $20.00 © 2007

5

Proceedings of the 40th Hawaii International Conference on System Sciences - 2007

produced breakthrough improvements in several critical areas. One of our core organizational principals is constant self-evaluation and improvement, also known as inspect and adapt. Consistent with this principal, SolutionsIQ will never be finished with its organizational improvements, but we have realized great benefits from our innovations to date.

References [1] Schwaber Ken, Agile Project Management with Scrum, Microsoft Press, Redmond, WA, 2004. [2] Olson, Edwin; Eoyang, Glenda, Facilitating Organization Change, John Wiley & Sons, 2001 [3] Takeuchi and Nonaka, “The New, New Product Development Game, Harvard Business Review, 1986 [4] Sutherland, Jeff, “Future of Scrum: Parallel Pipelining of Sprints in Complex Projects”, Agile2005, 2005 [5] Sutherland, Jeff, The A,B,C’s of Scrum, Course at Scrum Gathering, Colorado, Nov, 2005 [6] Senge, Peter, The Fifth Discipline, Currency Doubleday, 1990 [7] Poppendieck, Mary, Poppendieck, Tom, Lean Software Development: An Agile Toolkit, Addison Wesley, 2003 [8] Behrens, Peter (facilitator), et al, Group Discussion “Matrix Organizations - How to structure your Agile Enterprise,” Scrum Gathering, Colorado, Nov, 2005, http://wiki.scrumalliance.org

Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 $20.00 © 2007

6