configuration management

Articles

The Largest Case Study of Code Reviews—Ever

In May 2006, we wrapped up the largest case study of peer code review ever published, done at Cisco Systems®. The software was MeetingPlace® — Cisco's computer-based audio and video teleconferencing solution. Over 10 months, 50 developers on three continents reviewed every code change before it was checked into version control. We collected data from 2500 reviews of a total of 3.2 million lines of code.

This article summarizes our findings.

Jason Cohen
Agile SCM: Martial Arts Principles

The authors look at software configuration principles in terms of how they might relate to the martial arts. They discuss ways to learn new skill and master them, how to handle conflict, energy, efficiency, and timing.

Six Ways to Build Reliable Applications

I came across a paper the other day in Better Software titled, "Code Improvement" by Jeff Grover and Zhon Johansen. It's a short, but good article focusing on developing well-designed code. My favorite point was "Start/Finish each task by refactoring". In other words, stop the entropy of expanding your software solution by ensuring that the code is as minimal as necessary to meet the requirements. There are parallels in the CM world that ultimately lead to a reliable CM process and tool support capability. In this article, I'll venture where I don't usually go: inside our own development environment to bring out a few points that may apply equally to general development and to a CM environment.

Joe Farah's picture Joe Farah
The Pros and Cons of Four Kinds of Code Reviews

The authors explore the pros and cons of four other common styles of code reviews—over-the-shoulder, email pass-around, pair programming, and tool-assisted reviews—and see which ones is the most promising candidate for practical peer code reviews.

Jason Cohen
Does Senior Management Really Care About Quality?

"Sometimes," Bob mused, "It seems like senior management doesn't care about the quality of the systems we build. I wonder if they care about quality at all?"

 

"Oh, there is no question in my mind!" Sue assured him. "I know that they don't care. All they care about it hitting a schedule. They couldn't care less about how well the software works!"

 

Meanwhile, in the boardroom:  "What's wrong with your people?" the COO barked at the CIO. "They can never seem to deliver a system the works right. Between the bugs that have to be fixed and the difficulty that people have with figuring out how to use it, I wonder if we might be better off using pencil and paper!"

Alan S. Koch
Seamless Integrated Tops Wishlist for CM/ALM Tool Suites

There are a lot of CM/ALM solutions out there - so where are we headed? In my opinion, the future of CM/ALM will be defined by the level of tool suite integration, more than by any other factor in the 3rd and 4th Generations of tools. And basic "integration" will not cut it. Putting tools together into a single package with some glue and triggers to help the tools interact is helpful, but will fall short of market demand. "seamless integration" will be a requirement. No advance is more important to the next generation of CM tools. What about cost? What about ease-of-use? How about traceability? The answer is simple: first seamless integration, and the rest will follow. If you haven't seen a seamlessly integrated tool suite, you may not fully grasp this statement. But seamlessly integrated tools are the ones that will be dominant in the future. Let's look at why.

Joe Farah's picture Joe Farah
Lightweight Code Reviews A Lightweight Alternative to Inspections

In this article, we explore why almost no one does "proper" inspections and set up the case for lightweight peer code review. Try it. You'll like it!

Jason Cohen
A Bug's Life

The quality of software is directly related to the number and severity of bugs in software when it goes into production. Inspired by the Disney® film of the same name, Lloyd Roden offers a light-hearted, humorous presentation with a serious message-neglect the bugs and they will take over! Learn about novel strategies to detect and fix bugs before they bite you. Find out ways to change your environment to make it less likely to attract bugs and easier to exterminate the ones that do invade your software. Explore the people issues that can cause unnecessary stress and concern for everyone involved in dealing with bugs in the development process. Take back a new attitude about bugs and a new energy to eradicate them in your house.

  • How to find the different types of software bugs
  • The environment where bugs are most likely to live
  • People issues surrounding bugs
Lloyd Roden, Grove Consultants
The Power of Continous Integration with Automated Unit Tests

Better, faster, cheaper-the mantra of many software methodologies and tools. Can it ever be true? Illustrated with examples from Agitar Software's internal development process, Jeffrey Fredrick describes the psychological impact of rapid feedback and how it unleashes the best in people. Find out what continuous integration means in the real world and how it can be coupled with automated developer (unit) tests to reduce the number and cost of failures. Learn about the psychological impact of lava lamps, email notifications, and Web applications as feedback mechanisms and why feedback is not only for developers. Instead of expecting people to act like machines, you can use continuous integration and automated tests to leverage the complementary strengths of each. See how automating integration maximizes the return on your developer testing investment.

  • The impact of continuous integration
Jeffrey Fredrick, Agitar Software Inc
Software Metrics to Improve Release Management

In large organizations with multiple groups or multiple projects, developing consistent and useful metrics for release management is highly challenging. However, when targeted at specific release goals, metrics can help monitor the development schedule and provide both managers and developers with the data needed to improve quality. With nearly eighty products that must be released on the same date, Mathworks has developed a release metrics program with a consistent method to categorize and prioritize bugs based on severity and frequency. Learn how they track progress toward bug fix targets for each category of bugs and monitor them consistently across their product line throughout the release cycle. See examples of metrics reports designed for management and daily use by teams, including historical trending analysis of overall and customer-reported bug counts.

Nirmala Ramarathnam, The MathWorks Inc

Pages

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.