DevOps powers some of the most successful global technology companies.
By bringing development and IT operations together through the entire software lifecycle - from design and development to production – DevOps (development operations) is accelerating the pace and quality of innovations delivered to customers. Embracing this culture and process can help every business stay ahead of the competition.
While many developers think of Java, Python or Ruby when they hear about DevOps success stories, the same methodology of agile development can transform the way you develop your Natural applications. In fact, the rapid build-test-deploy cycles that define DevOps can bring major business benefits to the mainframe as well, where you least expected.
For every business that runs Natural on a mainframe or on Linux, UNIX, Windows platforms, I strongly encourage you to use NaturalONE, an Eclipse-based integrated development environment that lets developers code and test business-oriented applications using the Natural programming language. When you embrace the DevOps approach you can develop new applications and modernize existing Natural applications faster, to better meet changing business requirements and reduce application development costs.
Some of the leaders of DevOps, such as Google and Amazon, make changes to live apps at a rate of 20,000 deployments per day. While this breakneck speed isn’t realistic for your business- and mission-critical applications, you can benefit from many of the principals of DevOps - such as repository-based team development and continuous integration - and get to a state where you can deploy on a weekly basis.
From my experience in working with NaturalONE, there are four main steps necessary to implement DevOps and achieve speed and responsiveness as a Natural development team:
- Develop in parallel by working with a source code repository. It’s a major change in mindset to have a source code management system like Git take the lead over the source code, but it enables development teams to take advantage of parallel development. A source code repository gives you a history and full track of all changes - and enables teams to merge branches after testing, rather than locking modules during the whole process. Continuous integration ensures the application can be built with the changes incorporated into the shared development environment.
- Embrace continuous integration. Continuous integration is a cornerstone of DevOps, a technique that continually merges source code updates from all developers on a team into a shared mainline. By using a centralized server to continually pull in all new source code changes as developers commit them, the team receives notifications of any failures that must be fixed before making any additional code changes. In practice this focuses the development team on a singular stability metric: a working automated build of the software.
- Automate testing to accelerate delivery. When complex applications are delivered at speed, software testers can be the bottleneck that determines if a DevOps initiative fails or succeeds. True DevOps automates the testing process to happen continuously. Fortunately, there are a number of tools that can make this possible. NaturalONE can establish and automate unit tests for developers using Natural. All modules can be continuously tested to ensure quality; even Natural programs can be fully tested using tools that ensure your components meet the business and performance requirements as well as the code coverage of your unit tests is sufficiently high.
- Collaborate on project and change management. Every DevOps activity should support an existing task: every source code change, every build, every deployment should be tracked and fully automated, which also provides full transparency into the whole development lifecycle of your organization. To facilitate this, NaturalONE integrates with open source and third party tools to manage your projects, including all tools with Eclipse plugins such as Atlassian Jira® and Redmine, an open source tool.
To bring DevOps to your organization, NaturalONE is the recommended development environment for Natural because it’s fully integrated with the DevOps tool chain, which will be familiar to Java developers. They’ll also appreciate NaturalONE’s familiar GUI and wizards. NaturalONE is Eclipse-based, so you can standardize on a single platform across all program languages. You can efficiently cross-train personnel to deploy resources where they’re most needed—and at a moment’s notice. Any company dealing with the generational change of Natural developers will also find it easier to recruit new programmers who appreciate the collaborative DevOps support of NaturalONE for agile development and continuous integration.
It is interesting to note that Natural applications running on a mainframe can also very successfully run on Linux, UNIX or Windows platforms which are leveraged by approximately 50% of all customers globally. If you’re thinking about re-hosting Natural applications off the mainframe, your DevOps approach is fully transferable to a server environment. Arguably, DevOps is even a valuable first step in this direction.
For every organization looking to bring its Natural into the DevOps conversation, I highly recommend you take a closer look at NaturalONE. It helps you manage the complete DevOps lifecycle from a single environment so you can modernize and deploy new applications faster, at higher quality, to immediately satisfy your customers. Read about an insurance company’s experience with NaturalONE.