Part 3. Integration and release management

With part 3 of this book, we leave the functional aspects of Agile ALM and dive into the more technical aspects. This part is about integration management and (technical) releasing. It details strategies and introduces tools to integrate software artifacts and create releases. Additionally, this part covers productive development environments and advanced continuous integration.

In chapter 5, we’ll discuss Maven’s core features, particularly its dependency management concepts. You’ll learn how to orchestrate tools to run component repositories in different flavors. We’ll also explore a real-world use case for (technical) releasing of software.

Chapter 6 examines strategies to create productive development environments. Major aspects include strategies and tools for working with artifacts in isolated environments—for example, on developers’ desktops. This workspace management involves using congruent build systems in order to provide fast feedback.

Chapter 7 delivers recipes and tools for advanced continuous integration. This chapter reviews the basics and presents scenarios that show how you can integrate different languages and platforms and how to unify toolchains. We’ll also look at staging releases without rebuilding, performing continuous inspections, and integrating different version-control systems to enable feature branching.