Modern, DevOps-enabled application lifecycle management means supervising software applications well beyond initial development, and requires involvement from developers and product owners as well as the IT operations, platform and infrastructure staff. DevOps organizations see this wide-ranging team of people develop, implement and then further tune software to fit additional and changing needs over time.
ALM best practices begin with understanding the needs of the software project -- while also understanding that these needs may be somewhat nebulous. Then, the team must determine the best architecture and underlying resources, deployment method, update schedule, technologies for monitoring application performance and more. These articles delve into the heart of the subject and offer in-depth analyses and evaluation advice for application hosting, management and monitoring technologies.
1Get the application reqs right-
ALM best practices from the start
The ALM process changes with the move from Agile to DevOps. What started as a system narrowly concentrated on feature reqs morphs into one that considers system reqs as well. Whether gathering requirements or planning the software build, development teams will feel DevOps introduce a shift in ALM best practices.
When there's a need for new software, it can be purchased in pieces and adapted, or built in totality in-house. The choice relies upon budget and available time, as well as some less-obvious but important factors. Continue Reading
Most cloud services offer essentially the same thing, but with different app platforms. Choosing the right platform as a service for a project requires research with both the service costs and application in mind. Continue Reading
2Why a hosting platform matters-
The host with the most
Several decisions around ALM relate to where an application will reside. The hosting resources for an application affect risk tolerance, uptime and management, among other factors. Delve into the issues around application hosting on cloud services verses on-premises servers, migration decisions and how to host legacy applications.
Four knowledgeable perspectives come together to weigh the pros and cons of cloud and on-premises application hosting. Continue Reading
Hosting all applications on the same virtualization platform ensures consistent error logs and data backups, replication processes and security compliance. It can significantly increase the efficiency of IT departments, with these tangible benefits. Continue Reading
Some providers make a sharp distinction between infrastructure and platform as a service offerings, whereas others tend to blend them. So, what's the most cost-effective and efficient option? Continue Reading
A successful app migration to the cloud requires a thought-out plan, including a proof-of-concept pilot, among other steps. Continue Reading
Event-driven apps practically cannot waste resources, by nature, but that doesn't make them the best fit for everything. Existing apps will need a full rewrite and reimagining -- provided the app can be translated to begin with. Continue Reading
3Speaking of ALM-
Terminology for better ALM discussions
Improving one's knowledge about ALM is about more than just weighing the pros and cons of Agile and DevOps, or of the cloud. It's equally important to understand all the terminology being tossed around, to be sure that no nuance is lost. These are some key terms to brush up on.
4App delivery and deployment-
Deployment choices for resilient, reliable apps
Deploying applications takes a dedicated testing space, but where? Consider on-premises servers or one of a small collection of cloud options, including the use of multiple clouds simultaneously. There are benefits and drawbacks to each choice for testing, as well as for staging and deployment of complex applications.
The cloud does not have to be an all-or-nothing scenario. For an app that's remaining on premises, consider going to a public cloud provider for the development phase -- being sure to take into account its subsequent real-world environment. Continue Reading
While no two deployments are identical, an easily followed and flexible process goes a long way to ensure that application deployment and support teams know what to do and how to do it. Continue Reading
The scale and nature of a given application sways the decision on how to roll out updates. To make this process as smooth and bug-free as possible, try these advanced rollout strategies. Continue Reading
Microservices and multicloud -- two trends in modern IT -- seem made for each other. When using multiple clouds, carefully plan out the location and purpose of each microservice to protect against inefficiency, security risks, and unnecessary cost. Continue Reading
5Watch over any app-
All eyes on the application
Once an application is deployed and active, the DevOps team must monitor it to catch bugs, resource starvation and other problems before they affect users. This requires not only the right tools for the type of application and deployment, but also a suitable methodology. The best course of action possible requires ALM best practices and savvy tool choices.
Boosting IT reliability starts by opening up the process to users for self-service tests, and asking both developers and operations to share support responsibilities. Continue Reading
IT professionals know that no monitoring tool functions unilaterally and instead amass a collection of tools. Enter integrated system management software to aggregate the data from these tools into digestible output. Continue Reading
BizDevOps and DPM create a situational awareness system for IT -- bringing business management and developers together for better application performance. What does this mean? Probably a reimagining of developmental culture. Continue Reading