Articles

Please enter an article title, author, or keyword
ABCs of BPD (Build, Package, and Deploy)

Many in the software engineering world consider build, package, and deploy the core areas of configuration management (CM). To highlight this, many CM jobs are titled “build engineer” or “release engineer” with responsibilities that focus on the tasks of building, packaging, and deploying releases.

Mario  Moreira's picture Mario Moreira
Aircraft Carrier Called the "CM"

In the past, I had a window view of the Boston Harbor from my office. I could see boats coming in an out, including numerous tour boats, whale watch boats, and sail boats. Occasionally, I got the chance to see the large ships including the tankers, battleships, tall ships (e.g., elegant large sailing ships), and the rare site of an aircraft carrier. The aircraft carrier is a floating runway for jets. Imagine the infrastructure needed to get those incredibly fast jets ready and flying.

 

Mario  Moreira's picture Mario Moreira
Moving Dependency Tracking Into The CM Process

Last month I spent a bit of time describing how a CM tool could support the creation and comparison of builds, to support the building of multiple variants, etc., based on a single baseline. This month, I will focus on how the CM tool can simplify the build process, moving the process out of "Make" files while supporting the creation of reusable, layered software.

Joe Farah's picture Joe Farah
CM: The Nerve of Your Life Cycle Management

Most CM professionals, I think, would agree that the CM database is not just another component of Application Life-Cycle (ALC) management, it's really at the heart of the matter. I'd like to say that the CM function shares the same stature - it's not just another component of your ALC management - it's the nerve. In fact, I'd like to go one step further and say that the integration of CM and Data Management (DM) capabilities, when done properly, can transform your ALC management environment into a next generation engine that will empower each component of your environment.

Joe Farah's picture Joe Farah
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
Release Management

The first thing that comes to mind about release management is how frequently releases are made and their levels, i.e. full release or patches. A common understanding of Release Management is that it is the management of introducing controlled items into a production (live) environment. But in reality release management is much more than this. “Release management is the process of planning, building, testing and deploying hardware and software, the version control and storage of software.” (British Educational Communications and Technology Agency, release management, Retrieved from http://www.becta.org.uk/tsas/index.cfm?refsect=ntss&bcsect=default§=release&id=tt5281 ) release management is not just what goes into production but also how something goes into production. It is the complete management of your production environment.

TechWell Contributor's picture TechWell Contributor
Taking the Complexity out of Release Management

CM is complex enough without having to worry about managing releases! Release management, however, isn't just part of CM, it should be driving your CM solution.

Release management deals with defining, using and managing the set of deliverables (the Build), for all of your customers. This includes the creation of records to subsequently identify release contents, the creation of variant builds, patch releases, incremental releases, and the support of parallel streams of releases (older product releases, current release(s) and future releases). It also deals with the ability to know what’s in a release and to compare one release (e.g. one being sent to a customer) to another (e.g. the one the customer currently has so that the customer is well aware of the changes being made to his environment and how they match up against his requirements). In an end-to-end product management environment, release management spans the entire spectrum from requirements management through to product retirement.

Joe Farah's picture Joe Farah
App. Infrastructure Configuration Management Keeps Good Apps from Going Bad

For any good developer, applications are like children. You spend countless hours nurturing them and preparing them for the real world. Sometimes they frustrate you, other times they give you tremendous pleasure. And in the end, you’re just downright proud.

TechWell Contributor's picture TechWell Contributor
Source Control Checkins

This month, I will explore the various situations wherein a repository is modified, starting with the simplest case of a single developer making a change to a single file.

Editing a Single File

Consider the simple situation where a developer needs to make a change
to one source file.  This case is obviously rather simple:

TechWell Contributor's picture TechWell Contributor

Pages

Upcoming Events

Jun 02
Sep 22
Oct 13