Articles

The "One Right Way"

For those who believe there has to be one right way to do something, especially in software development - there can be. But that one way isn't likely to come from a single individual. Through collaboration and teamwork, some of the greatest single ideas have evolved.

Lisa Crispin's picture Lisa Crispin
People, Processes and Tools: The Three Pillars of Software Development

Every project is dependent upon people, processes, and tools:  they are how the work gets done. These three essential elements are not equal, though, as each has its own strengths and weaknesses.   Each one provides a different value to our projects.

 

Alan S. Koch
Using Quality Function Deployment for Process Improvement

Organizations are recognizing the need for strong process architecture to manage their operations. Increasing acceptance of International models and practices like CMMI, ITIL, Six Sigma stands testimony to the fact., In such a scenario, it becomes imperative that organizations have a clear strategy when they put in place a process improvement program. In other words, the process for implementing a process improvement program also needs a proper structure. Using Quality Function Deployment (QFD) as a tool for initiating a process improvement program could come in handy.

Balaji OS's picture Balaji OS
Software Development : How Good It Can Be

This article is dedicated to telling you how good developing software can be. Austin Hastings describes many software development practices working together, some of which you don't have. If you like an idea you see here, implement it. After your first implementation steps, you can return here to find yet another idea to implement.

Austin Hastings
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.

Six sigma distribution Is the Grass Greener on the Other Side of the Fence?

We may be creatures of habit—adhering to and promoting processes we know well—but we also habitually look to other work environments that appear capable of nurturing our ideas once an old environment becomes depleted. Ed Weller believes that searching for greener pastures is unnecessary. You just need to learn how to cultivate your managers in order to create an environment that will harbor your ideas. Ed explains why you'll end up grazing fruitlessly if you can't plant your ideas with management.

Ed Weller's picture Ed Weller
Structure Marking

Structure marking is a programming technique that defends data against damage, especially from software bugs. It adds flags to data structures and checks them at each use to detect damaged data immediately.

Tom Van Vleck
Ping-Pong Programming: Enhance Your TDD and Pair Programming Practices

Team player Dave Hoover wants to share a software development practice he enjoys. It emerged from the practices of extreme programming as a competitive yet simultaneously collaborative practice. Dave has found that this practice promotes the flow of knowledge between software developers better than any other practice he has experienced. As you might have guessed from the title of this week's column, this practice is called ping-pong programming, or P3 for short.

Dave Hoover
The Goldilocks Parable: How Much Process Is Just Right

Getting process improvement "just right" is difficult. Go too far in the definition of processes, and it really does get too hot, with the heat coming from the people trying to use the processes. On the other hand process definitions that are too short to contain anything of value will leave users in the cold, and then there will be no improvement in the organization. Ed Weller states that a useful process improvement activity develops a set of process artifacts that meets the needs of the user. This helps the organization capture "tribal lore" and cast it into a set of process definitions that eliminates waste and improves time-to-market.

Ed Weller's picture Ed Weller
test automation Not Your Father's Test Automation

If you think that test automation is mostly about executing tests, then you're missing out on a big opportunity. Or rather, you're missing a lot of small opportunities adding up to a big one. Consider this: stop thinking about test automation as merely executing automated tests, stop thinking about test automation as something you need expensive tools for, and start discovering automation you can implement in a couple of days and usually with extremely inexpensive tools or tools you already have available. In this week's column, Danny Faught and James Bach suggest taking a more Agile approach to test automation.

James Bach's picture James Bach Danny R. Faught

Pages

CMCrossroads is a TechWell community.

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