Sunteți pe pagina 1din 4

Consulting

Agile Product & Project Management


Agile Product & Project Management

Bracketing Technical Debt


A Tool for CIOs to Balance Development Dynamics with Deployment Imperatives

Preempt the Domino Effect that Puts You at Risk


Do you really govern the software development process or do its uncertainty and unpredictability leave you, your superiors and the business units you support aghast?
Will technical debt play havoc with deployment dates you committed to and keep your software development staff from responding quickly and effectively to customer requests? Are you comfortable your IT Operations staff will be able to absorb a slip in the development schedule? Do you know how much money is required to pay back your softwares technical debt? You will know, and you will have the tools and discipline you need to govern the software development process and align it with IT Operations when you contract Cutter Consortium experts to carry out a Bracketing Technical Debt engagement. In a Bracketing Technical Debt engagement, Cutters Senior Consultants led by Agile Practice Director Israel Gat will not only identify the architecture, design, coding, testing and documentation deficits that constitute technical debt, they will also install the tools and train your technical staff so they can measure those deficits whenever needed. As a result, at any point in time youll be able to answer to the question how much (more) money will you need to pay back the technical debt? Youll gain the insights necessary to align development with operations. The software development process is often tilted toward extrinsic quality producing the functions and features of the software that will generate value for the companys customers and profit for its business units. At the executive level, intrinsic quality is usually inferred through lagging indicators such as defect counts. As important as such indicators are, they cannot give you an insightful enough view of the state of your software, quantify its deficits, and project its readiness for deployment. A so-so situation in software development could easily lead to a very bad situation in IT Operations due to the domino effect. With the information, analysis and tools provided in Cutters Bracketing Technical Debt engagement, youll gain insight into the quality of your code base now as well as at any point in time in the future eliminating most of the uncertainty and unpredictability that so frequently plague the software development process. Upon completion of this engagement, youll have: The data required to develop and implement solid deployment plans based on the actual state of the software under development. A quantitative breakdown of your overall technical debt into five categories: coverage, complexity, duplication, violations, and documentation. An expert assessment of the implication of these kinds of accrued technical debt. Risk assessment, depicted by heat maps of the software under assessment, as well as guidance on how to carry out the fix-it process prior to deployment. The tools required to conduct ongoing technical debt analysis at any time. The tools that will enable you to establish credit limits on the technical debt that an IT project is allowed to accrue; and most importantly: The overall dollar figure required to pay back the technical debt. In addition to these quantitative benefits, youll also have the ability to grade your software as it progresses through its life cycle, assess the quality of your software vis--vis industry norms, and take the steps necessary to get your software costs under control.

Israel Gat

About Israel Gat


Israel Gat is Director of Cutter Consortiums Agile Product & Project Management practice. He is recognized as the architect of the agile transformation at BMC Software where, under his leadership, Scrum users increased from zero to 1,000, resulting in nearly three times faster time to market than industry average and 20%-50% improvement in team productivity. Among other accolades for leading this transition, Dr. Gat was presented with an Innovator of the Year Award from Application Development Trends in 2006. Dr. Gats executive career spans top technology companies, including IBM, Microsoft, Digital, and EMC. He has led the development of products such as BMC Performance Manager and Microsoft Operations Manager, enabling the two companies to move toward next-generation system management technology. Dr. Gat is also well versed in growing smaller companies and has held advisory and venture capital positions for companies in new, high-growth markets. Dr. Gat currently splits his time between consulting and writing. He focuses on technical debt, large-scale implementations of lean software methods, and agile business service management (devops). His recent e-book, The Concise Executive Guide to Agile, explains how the three can be tied together to form an effective software governance framework. Dr. Gat holds a PhD in computer science and an MBA. In addition to publishing with Cutter and the IEEE, he posts frequently at

The Agile Executive and tweets as agile_exec. He can


be reached at igat@cutter.com.

Agile Product & Project Management

Consulting

Our Approach
Cutters Bracketing Technical Debt engagement combines static code analysis with dynamic program analysis to give you x-rays of your companys proprietary software at any desired granularity. This engagement can be applied to most object-oriented and objectbased code bases as well as to COBOL code bases. The engagement is divided into five parts: 1. Instrumenting the software. 2. Running code analytics both static and dynamic. 3. Interpreting the analytics based on industry norms and the data collected by Cutter consultants in various Technical Debt engagements. In particular, implications for deployment dates and support load are provided. 4. Training members of your technical staff in running and interpreting the installed analytical tools.

5. Establishing the governing framework, process and discipline required to bracket technical debt before it affects operations. A sixth part, developing a custom-tailored plan for dealing with the identified technical debt in the context of the technical and business imperatives of your IT organization, can be added to the engagement.

Well have a LOT of crappy systems to fix up 5-10 years from now.
Ed Yourdon, Cutter Fellow
Death March Projects in Todays Hard Times,

What Do You Get?


The Bracketing Technical Debt engagement concludes with a report and/or presentation that provide you with a dollar figure required to pay back the debt. This dollar figure reduces a large number of complex technical considerations to a common denominator that is easily understood by non-technical peers and superiors. It is of particular relevance and importance to members of your IT Operations department.

Boston SPIN conference, 16 March 2010

Fix Software and Process Defects in Tandem


Cutters Bracketing Technical Debt engagement is extremely synergetic with our Agile Assessment, a quantitative and qualitative analysis of an organizations use of agile methods, its software engineering practices, and its project management skills and capabilities. When the two are conducted jointly, Cutter will present your

Figure 1 The Summary Report

team with a composite plan for fixing software quality deficits and software
Cost to reimburse

Debt Ratio
Technical Debt
Duplication Violations Coverage Comments Complexity

process deficits in tandem.

24.0%
$187,851 376 man days

Work to reimburse
Figure 2 The Project Dashboard**

Breakdown by axis
**Figure adapted from the Sonar Technical Debt plug-in.

The Summary Report


A Summary Report (Figure 1) of the assessed projects is presented clearly in table format, giving you an easy-to-understand picture of the quality of your code and the cost of your technical debt. With this information, youll be able to more accurately focus your priorities and investment and prepare deployment plans that are anchored in reality.

Heat Maps
The technical debt assessment produces heat maps which identify your technical risk areas. For example, in the first of our two sample heat maps below (Figure 3), projects P9 and P11 have an unacceptably high level of code duplication. In the second heat map (Figure 4), rules compliance is quite worrisome in project P11. Based on this data, the Cutter consultants would move on to inspect complexity and coverage of project P11 to determine whether P11 is indeed a toxic asset. This being the case, you will probably need to start afresh and redevelop P11 all over again.

The Project Dashboard


A project dashboard, like the one in Figure 2, will provide you with key data. The Dashboard highlights the debt ratio, i.e. the technical debt in the project as a percentage of the total technical debt. It also underscores the work (days) required to eliminate the accrued technical debt, and the cost of this effort (cost to reimburse). The breakdown by axis brings to light the architecture, design, coding, testing, and documentation sins that have been committed along the way. This section graphically depicts how the debt breaks down into the areas of: Coverage which indicates how little/much of your code is being executed by the unit test suite. (A low coverage figure indicates you are flying blind). Complexity which leads to error prone modules and high error feedback ratio. Duplication which undermines stability, adaptability and productivity. Violations (of good coding practices) which cause buggy software; and Comments lack of comments lowers productivity by making it difficult to comprehend the code. Detailed views of each of these areas are generated by clicking on the dashboards indicators.
Figure 4 Heat Map 2

Interpretation of Findings and Operational Recommendations


An interpretation of the findings by Cutter experts accompanies the project dashboard and heat maps illustrated above. The interpretation is conceptually similar to the interpretation that an expert radiologist provides with respect to medical x-rays. In particular, youll get operational recommendations that take into account various qualitative and quantitative factors that characterize your IT organizations software development process. These recommendations will help you make the best decisions about deploying your software in a way that is consistent with its quality. Moreover, by managing software development on an on-going basis through the recommended governance framework, your team will improve its design, coding, testing and project management skills. Ultimately, these improvements are the best antidote against accrual of technical debt and concomitant domino effects in the future. For more details, or to arrange your Bracketing Technical Debt engagement, contact your Cutter Account Executive at +1 781 648 8700 or sales@cutter.com.

Figure 3 Heat Map 1

Cutter Consortium
37 Broadway, Suite 1; Arlington, MA 02474-5552, USA Tel: +1 781 648 8700; Fax: +1 781 648 8707; www.cutter.com; sales@cutter.com

S-ar putea să vă placă și