|
Private Developer Workspaces: Where the Development Process Meets SCM Process Software configuration management supports the delivery of application code in a reliable, repeatable manner. Having a CM process in place does nothing for the success of your organization unless you have mechanisms in place to develop application code reliably. Proper private workspace are a key element linking your SCM and your Development processes. In this article we discuss why they are important and how you can set up private code workspaces to help your team to be more effective.
|
|
|
High-Quality Processes All of us can think of examples of bad processes. They seem to be indelibly burned into our memories, but it may be hard to think of what a high-quality process looks like, because it feels like we've never seen one. Of course, that's not really true. All of us have experienced good processes; they are the ones that were invisible! Processes that are helpful, efficient and effective also seem to disappear into the background. Unless something draws our attention to them, we may not notice them at all!
|
|
|
What do Enterprise Architecture principles require of Configuration Management? Although we usually think of configuration management in the context of a software development project, CM also exists in the context of an enterprise. I wondered if taking the twenty principles used for an enterprise architecture framework, we could see just how well configuration management stands up to supporting these general architectural principles in an enterprise context.
|
|
|
How can I improve performance on the Application of ClearCase Labels? I am often asked questions like: "Why does it take so long to apply a label to 30,000 elements."
The short answer is "because you are applying a label to 30,000 elements".
|
|
|
How We Got from Version Control to Product Management Version control (VC) has been around long before software. But it wasn't until the late 1960s and early 1970s that it emerged as a common software function. Today, version control is still necessary, but is a much smaller piece of the configuration management (CM) and product management (PM) pictures. While version control is a relatively simple application, configuration management is anything but. No wonder it is embraced with such reluctance. This doesn't have to be the case. The key to adopting a successful CM program is to select tools which help you to automate the complexity without taking short cuts that will lead to problems down the road.
|
|
|
How can I get "True" Keyword Substitution/Expansion" with ClearCase I am often asked why ClearCase does not automatically perform "Keyword substitution or expansion". That I can't answer, but I can say that I was never a big proponent of inserting meta-data into source files that already have the meta-data associated. With ClearCase that is easily readable with cleartool commands like find, ls, desc and others.
|
|
|
Evolving beyond Version Control for Agile Development This article looks at satisfying the principles of Configuration Management with varying degrees of tool support, which we classify from Version Control at one end, to true CM tools (and beyond!). Many agile developers restrict themselves to tools that are more on the version control end, so we aim to highlight the differences, and particularly point out certain features which can make your life a lot easier.
|
|
|
Testing vs. Quality Assurance
"What does your quality assurance group do?" I have asked this question of many executives. Too often they answer, "Quality assurance is responsible for testing our software to ensure it is ready for release." I push, hoping for more, by asking, "Anything else?" Usually, though, the response is little more than, "Well, they manage the defect tracking system. What else would they do?" What more, indeed!
|
|
|
Is Agile Configuration Management Worth the Effort? What is agile CM? If you think it's doing the minimal amount of CM, think again. Instead, it's minimizing and streamlining the work to do all of the CM tasks that are necessary. It adapts to changing CM requirements fairly easily. Agile CM doesn't just happen - it's a combination of good CM process, good CM tools, and CM automation. If you fall short on any of these, your CM process will not be very agile.
|
|
|
Balancing Individual versus Collective Code Ownership The subject of individual -vs- collective code ownership is often the bane of many heated discussions about code change authorization/access and concurrent -vs- serial development. Opponents of collective ownership often claim that it results in "no ownership" of the code and that individual code ownership is better for managing attempts at concurrent changes. Oppenents of individual ownership often counter by saying individual ownership inhibits refactoring and goes against the team ethic of XP and other Agile methods.
|
|