It is a known fact that a number of users; and many IT specialists while talking about software development, primarily mean the creation and debugging of application code. In the past, these ideas were somewhat close to the agreed fact. However, the modern application development not only comprises of writing code but of other processes as well, both immediately preceding programming and following it. In this article, we will consider the concept of product lifecycle management, and determine the relationship of this approach with application lifecycle management.
The definitions ALM and PLM, and their relationship
- PLM (Product Lifecycle Management) is a concept, methodology, and approach that provides the management of all information about the product and related processes throughout its entire life cycle, from design and production to decommissioning.
Thus, PLM is more about physical products, goods, spare parts and details that have a clearly defined life cycle determined by technical specifications. The approach itself works on the concept of integrated data. In other words, all product data is integrated into a single system, following the example of something similar to ERP, and thus responsible persons get instant access to all the information that is needed to control processes.
“Data integration for better and faster management has become the number one priority for both manufacturing and digital businesses”, – says the CEO of the online writers rating review website. Using flexible data to manage products and applications, it is possible to obtain greater efficiency in any business with a significant reduction in cost.
- ALM (Application Lifecycle Management) provides a clear understanding of the embedded software development process and represents it as one of the business processes of the product life cycle.
Such an approach should introduce the discipline of management into development, considering the creation of a software product as a business process and taking into account its cyclical nature. In accordance with the idea of ALM, work on any software solution does not end at the stage of its commissioning; the system is modernized and improved, new versions are released, which every time initiates the next round of the application life cycle.
Thus, ALM and PLM are correlated as general and particular. In this case, PLM is general, and ALM is a particular part of a general concept.
The current situation of the integration system
Today there are new requirements for ALM, and the decisive role in this is played by the widespread adoption of agile development methods. Several years ago, Jeff Sutherland, the creator of one of the best-known Scrum rapid techniques, announced the upcoming total adaptation of rapid development ideas. This seemed to be an exaggeration, but the forecast turned out to be correct.
Developers apply fast methods and transfer the product to operation, which does not take into account the realities of fast development. And this, in turn, creates serious obstacles to the speed of response of working applications to changes in business requirements and, consequently the agility of the business itself.
Awareness of the severity of the problem and the tendency to search for means to solve it gave rise to the relatively new term DevOps, used to refer to concepts and technologies for improving the interaction between development and operation. The main hopes for the implementation of these ideas are placed by analysts on the next-generation ALM environment, which in fact, and not, in theory, will ensure the integration of key stages of the application life cycle. To manage the life cycle, the ALM environment must support various development environments and runtime platforms, as well as provide the ability to control the source code, licensing, and development status of external application components.