Articles

Establishing Effective Software Metrics for the Measures You Want

The goal of software metrics is to have a rich collection of data and an easy way of mining the data to establish the metrics for those measures deemed important to process, team, and product improvement. When you measure something and publish the measurement regularly, improvement happens. This is because a focus is brought on the public results.

Joe Farah's picture Joe Farah
Lean Metrics for Agile Software Configuration Management

Taking an lean-agile slant on metrics for configuration management, the authors focus on ways to measure the value CM and SCM adds to the project and product and how to measure flow and waste.

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
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
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
Software Configuration Management Patterns

Patterns and pattern languages are tools that can be used to help a team be more effective and agile. They can lead to robust, effective solutions, because the solutions that patterns can lead you to take the environment into account. They also solve problems in a way that makes the system work better. This article will show you how you can use existing patterns to improve your SCM process. It will also help you to understand where existing patterns and pattern languages have gaps.

The Basics of Release Management

In the ever-growing complexity of dependencies amongst products at the build and run time level, there is the challenge of managing increasingly separate items that must work together upon release. This is where the concepts, disciplines, roles, and responsibilities of release management help. Release management focuses on both the engineering disciplines that must bring a specific project release together along with the management of external dependencies across products that must accompany a release.

Mario  Moreira's picture Mario Moreira
Release Management—Making It Lean and Agile

Release management is an awesome responsibility that plays a vital role in the success of a software development project. Releasing is often considered to be an activity that happens near the end of the process—a necessary evil, perhaps, but no more.

Robert Cowham's picture Robert Cowham
Building a Configuration Management (CM) Capability for Test

 

As more test items exist, there is a tendency for them to evolve due to the changes to requirements and code and, therefore, must be managed effectively. When there are an increasing number of test items, this increases the risk of failing to accurately track all test items, particularly when this is done manually. This is where configuration management (CM) can help.

 

Mario  Moreira's picture Mario Moreira
Requirements-Based Development: A Software Configuration Management View

It seems so obvious that we should develop systems based on requirements, and yet it turns out to be rather hard to do and thus many organizations are doing it very badly. From a software configuration management standpoint, we could perhaps leave the whole process of requirements engineering to one side and focus on the management of requirements and thus the aspects of change control and traceability. That would perhaps be unduly ducking the issue, and, of course, we can’t resist giving an opinion anyway!

Pages

StickyMinds is a TechWell community.

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