Can development teams and operations teams really work together?

By Roger Lawrence, Chief Technologist, Stategic Enterprise Services - HP South Pacific

 

Over recent years, after significant IT (Development) project failures, we’ve seen the rise of an alternate methodology—Agile. For developers, this is a move toward rapidly creating functional code, and realising requirements that are validated by the business. It means that developers  are allowed to spend more time doing what they’re good at—developing—and less time on “administrivia.”

 

Enterprises today operate with complex systems that were developed over some months or even years.  But technologies and the business eco-system are changing, and complexity often equates to slower operational speed.  Agile represents a more successful method to achieve what the business wants and needs at the end of the project. Traditional methods attempt to capture all of the requirements at the beginning of the project. Validation is performed when the final code is complete—this is known as the Waterfall approach.

 

Agile is great of course. Necessary even. Yet it is doomed to failure in most of today’s enterprises….

 

…because of Operations

 

Functional code and a production system; are two very different things. Adding to the complexity is the fact that the development team and the operations team are usually two very different organisations within a company. They have different goals and different tools, both with totally disparate perspectives. But when the rubber hits the road, it’s true that Operations usually gets it in the neck when an application fails.

 

As a COBOL programmer from the ‘80s, I can tell you that it has ever been this way.

 

Take a look inside your four walls, how’s your organisation doing with collaboration between development (or IT project implementation) and operations? Do you see areas where improvements need to be made? What are your successes?

 

Differing cycles leads to competition or cooperation?

 

Up-to-date development teams are releasing software regularly (in sprints)—sometimes as often as weekly. But, operations teams are still working like they did in the old days, completing UAT, QA, Staging, and releasing to production once the code is “complete”. In other words, at the end of the development cycle.

 

Further adding to the complexity is the fact that the development environment often looks markedly different to the production environment. Cheaper virtualised servers, different storage, even open source databases. This all occurs without a hint of monitoring—or security for that matter.

 

What to do?

 

There are tools, such as the Solutions for DevOps suite; which aligns these two disparate organisations and traces the application through its full lifecycle. These tools allow automated provisioning of development, QA, test, stage and production environments. They even manage “allowable variants” for different environments that are hosted on different platforms. This way your organization can realize the benefits of cloud. Using cloud, public, managed private and private instances, can dramatically reduce the cost of reproducing various environments—as well as accelerate software deployment.

 

But the best thing you can do is to align the teams. Ensure that someone from development works with operations once an application is deployed. They need to understand the operational (rather than the functional) constraints on the system. There are a few key points they need to understand:

  • What piece of the code needs monitoring?
  • How do Ops report on the health of the system?
  • What Network and Host Security standards should you integrate and adopt?

 

Similarly, get someone from Ops to work with the Dev team right from the outset. They can bring insight into their needs for security, monitoring and scale. They can also identify potential operational bottlenecks as the code is being written.

 

How does this work (or not) in your organisation? Do you think Development and Operations can ever work together? 

 

I'd love to hear your stories—whether successful or not. 

Labels: IT Development
Leave a Comment

We encourage you to share your comments on this post. Comments are moderated and will be reviewed
and posted as promptly as possible during regular business hours

To ensure your comment is published, be sure to follow the Community Guidelines.

Be sure to enter a unique name. You can't reuse a name that's already in use.
Be sure to enter a unique email address. You can't reuse an email address that's already in use.
Type the characters you see in the picture above.Type the words you hear.
Search
Showing results for 
Search instead for 
Do you mean 
About the Author
Roger has been trying to get out of Information Technology since programming COBOL on mainframes in the late '80's. But no matter in which c...


Follow Us
The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation