|
Continuous Staging: Scaling Continuous Integration to Multiple Component Teams This month we will discuss some of the difficulties encountered when attempting continuous integration for multiple component teams working together to develop a large system. We describe the concept of a staging area to help coordinate the teams and stabilize the interdependencies between built versions of components.
|
|
|
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.
|
|
|
Best Practices of Agile SCM There is a good amount of training, discussion and many articles concerning software configuration management (SCM) standards that tell us to implement configuration identification, status accounting, routine auditing, etc. All of this information is good and very important because it helps us understand the overall objectives. Rarely, though, do you find real tangible approaches for "how" to actually implement solutions that accomplish the objectives. This article will discuss a typical SCM Implementation engagement focusing on some practical best practices in order to achieve the objectives of the many CM standards out there. These best practices won't apply to all situations.
|
|
|
Golden Patterns and Symmetries in Concurrent Development Patterns have provided a means of capturing recurring themes in software development and have been successful utilized to describe a number of software configuration management (SCM) practices [1, 2]. This article explores a higher-order pattern in concurrent development - more subtle and potentially powerful because of its applicability at a number of different levels of granularity.
|
|
|
Variation Management in Software Product Lines Configuration management for a software product line is a multi-dimensional problem. In addition to the conventional configuration management problem of managing software variation over time, software product lines introduce the additional problem of managing variation among the different products within the application domain space of the product line. Thus we have a configuration management problem in both time and space.
|
|
|
The Risk of Regression “But it was just a tiny little change! How could we have known it would cause such big problems?” Regression (going backward) is a fact of life in software systems. Even though something worked before, there is no guarantee that it will work after the latest "minor" change. Yes, modular design and sound system architecture can limit the likelihood of unintended effects, but they won't eliminate them all together.
|
|
|
P-P Matrix for panoramic view of Process Compliance ‘It is easy to get success but the challenge is to stay on with it,' the commonly referred quote for personal development, when seen from a business perspective it explains the need for holding on to successes in business and thereon driving growth . In other words it calls for standardization and a smooth flow of activities for running the business.
|
|
|
Using CM to Manage Application Deployment Increasingly application deployment is a focus of the total CM picture. Why should it be? Isn't it something separate? Integration of application deployment with configuration management can both simplify the process and, in the optimal case, permit multiple simultaneous deployments without any additional effort. A goal here might be to allow different users to see a different versions of the application. Or it might be just to automate deployment. In this article, we'll look at the two main trends in deployment : the single point network application deployment and the more traditional deployment for either installation packaging or in-house use.
|
|
|
CM Roles, Responsibilities, Skills, and Job Descriptions What title should we give a CM professional? Various ones are used, such as CM tool administrators, build engineers, release engineers, product installers, and more. It may appear that these roles are somewhat similar, but there are differences in the responsibilities and corresponding skills if you look at the context of the role.
|
|
|
Integrating IT For Productivity Raising the BarIT organizations are looking for new levels of productivity. In an era of relative talent shortages, the ability to seize business opportunities depends on making dramatic increases in productivity. At the same time, the government has raised the bar substantially with governance mandates such as Sarbanes-Oxley. Add to this globalization, outsourcing and distributed work forces that have the effect making even smaller companies manage teams over geographic and time zones. However, the coming whammy is the dramatic loss of talent looming up as baby-boomers retire.
|
|