Application Management Transformed
The traditional definition of application management is being challenged by recent developments in application technology as well as changes in software development approaches. These challenges require us to broaden the meaning of application management beyond just the operation of a runtime environment.
First, the advent of scaled agile framework (SAFe), microservices architecture, advances in software configuration management, robust test automation tools, and container runtimes allow us to decompose monolithic applications into fine grain services that increase reusability. They also reduce the risk of continuous integration and deployment into production.
Our private cloud infrastructure is quickly becoming containerized in order to allow new cloud features to be delivered to the environment without disruption to running services
In order to achieve these benefits, the complete lifecycle―ideation, requirements, development, test, deployment, and operations―must change. We can no longer think of application management as simply managing a monolithic application at runtime. Moving forward, an application will be a collection of distributed microservices. We must ensure the right microservices are defined through deeper collaboration. This includes business clients on one end of the spectrum and operations teams on the other, thus truly integrating agile with DevOps principles. This includes:
• Transitioning architects from being application-focused to business-domain focused
• Defining best practices to help train developers and ensure microservices provide their desired functionality
• Providing robust development, software configuration, and test automation to achieve continuous deployment into production and reduce time to market
• Implement more robust operations tooling to simplify the management of a more distributed environment and highly decoupled microservices
Second, the growth and acceptance of enterprise class open source communities is another factor impacting application management. We must actively participate in and contribute to these communities to not only ensure our required capabilities are delivered, but also see that the community thrives in order to maximize benefit. Strong DevOps leadership within these communities is necessary to achieve this result.
The open source projects should address the functional needs, as well as application management and operational needs. Quite often that is not the case and we are participating in communities to ensure they are thinking about the runtime environment and operative needs as much as delivering new application functionality. In return, we must integrate planning and delivery cycles to align with the release of open source. We are working with various software development parties to move to more co-create models where we work together to deliver needed capabilities at a lower cost that can be contributed to open source communities.
Third, the maturation of cloud computing has removed much of the operational concerns that traditionally burdened application management. Compute, network and storage infrastructure is increasingly being managed at a larger scale by cloud providers both internally for on-premise clouds, and externally for hosted clouds. These changes provide some relief for those managing applications to allow their focus to shift to the two challenges mentioned above.
We are actively embracing these changes. We are standardizing our microservice platform, tools, and runtimes to achieve the maximum benefit from these changes while continuing to provide robust application management.
Our technology provides a service directory for discovery, automated CI/CD tooling to deploy microservices, and application infrastructures such as web servers, databases and container runtimes. We are building many platform components that are utilized ubiquitously by all applications. As an example, AT&T’s platform includes standard logging which enables a consistent alerting system and the quick identification of the root causes of issues.
Our private cloud infrastructure is quickly becoming containerized in order to allow new cloud features to be delivered to the environment without disruption to running services.
In summary, all application disciplines are fundamentally changing. In today’s multi-faceted, agile-driven, DevOps environment, practicing application management in a manner beyond just the operation of a runtime environment is vital for any businesses success. To achieve success, companies must practice deep cross-functional collaboration to ensure applications are designed, built and managed holistically. Participation in the open source communities is essential to maximize technology benefits and be at the leading edge. By adopting these transformational approaches, companies can increase productivity, reduce time-to-market and rapidly innovate to deliver effortless customer experience.