Category: DevOps at IBM

  • IBM InterConnects DevOps & Systems of Record/Systems of Engagement

    IBM InterConnects DevOps & Systems of Record/Systems of Engagement

    There are many planes and points-of-view from which to examine how DevOps changes development. One way to look at it is to cut an application down the (more or less) middle, dividing it between its system of engagement and its system of record. Briefly, the system of engagement interfaces with the customer while the system of record engages with the backend systems that contain the data stores that the application leverages for the benefit of the customer. These two systems must interoperate smoothly and intuitively with each other internally, and with the systems and people they interact with external to the app.

    DevOps affects the entire workflow as development, testing, and operations work together to better build their apps. “This is a big part of what IBM InterConnect  is about,” says Mike Fulton, IBM DevOps for Enterprise Systems CTO, and blogger, https://makingdeveloperslivesbetter.wordpress.com/. DevOps really defines how enterprises pull systems of record and systems of engagement together more cohesively while enabling people from different components of the development-operations / CD process to communicate to and learn from each other more quickly and efficiently, speeding the arrival of deployable software. DevOps connects workflows into this learning process even as workflows enable efficiency improvements. IBM tools surrounding development workflows participate in that process.

    IBM Tools

    “IBM provides a series of tools to help you move through each unique state of the development lifecycle,” says Fulton. IBM’s Rational Team Concert (RTC, http://www-03.ibm.com/software/products/en/rtc) is an ALM targeted to DevOps team work for teams of several developers, testers, and operations professionals working with application building workflows. IBM’s UrbanCode Deploy (UCD, http://www-03.ibm.com/software/products/en/ucdep) helps teams deploy apps onto different systems and to a variety of test tools.

    “You can build pieces in IBM Worklight Studio to use for building a system of engagement,” says Fulton. IBM tools make it easier for teams taking a DevOps approach to create code more efficiently and precisely, reaching a higher standard of quality, while getting it out to the customer for quicker feedback sooner so the teams can figure out how they need to further innovate the app for the better.

    “Whether you’re using IBM’s tools or anyone’s, the notion of having well-defined processes for building apps is important,” says Fulton. IBM’s RTC can track workflow for the pieces going through the system to get developers to work on the code and to check the workflow so that the system hands code over to testers while making sure there are no regressions. This intertwines with the build process in UCD so builds start seamlessly with the most appropriate timing.

    When DevOps teams have good, clear communications and processes for how to build an app, they can optimize for speed while making the process and the app better. This is a result of learning while using workflow tools. “If you don’t have these processes in place, you will struggle with how to build apps quickly and efficiently,” says Fulton.

    Forward-Looking Questions

    IBM InterConnect attendees looking forward to Mike Fulton’s talks should ask themselves the following questions in preparation to absorb and thoroughly benefit from these sessions. “One of the talks on enterprise devops focuses on the systems of record side. One of the questions you should ask yourself is, ‘how can I improve my process so that I can become more agile and be able to respond more quickly to customers’ demands?’” says Fulton. And that is potentially a multitude of questions since the answers will vary widely from customer to customer.

    “Come into these sessions and IBM InterConnect as a whole ready to talk about specifics. Come with the thought of where and how you think you can improve the entire process you use to build your apps at your business,” says Fulton. Attendees can discuss their answers and more questions with Fulton and with each other, talk about their experiences as these relate to others experience with IBM UrbanCode and with other tools.

    “One key is to have an understanding of what you have in your application development environment, where it is today, in order to know where you want to go with it,” says Fulton.

    Get ready to enjoy a rewarding IBM InterConnect.

  • Enterprises using mobile dev to dive into DevOps

    Enterprises using mobile dev to dive into DevOps

    As increasingly more enterprises investigate how to begin their DevOps transformations, many of them are finding mobile development (mobile dev)  a perfect test bed for instituting continuous delivery practices. While speed-of-delivery has become top-of-mind for most IT applications today, it is paramount for success in the world of mobile apps.

    “The rapid pace of how quickly OSes are evolving, as are the number of different devices and form factors are all a driving force across a lot of different disciplines and businesses,” says Stephanie Trunzo, chief operating officer for mobile design and development firm Pointsource. “I would say that one of the driving forces to mobile is time-to-value and acceleration to market. It’s kind of an incubator for changing processes overall—we’ve seen that again and again.”

    In her role, Trunzo has worked with companies to rapidly develop new mobile capabilities using DevOps and Agile principles. In many cases, it goes against the grain of their traditional development and operations modus operandi, but they’re willing to make exceptions for these mobile projects that require faster lifecycles due to the business drivers.

    “When they see it’s working and we gain some credibility, then it’s like ‘Why aren’t we doing everything this way?’” says Trunzo, who next week at IBM InterConnect will present an example of how DevOps can help enterprises quickly scale their mobile development efforts.

    Together with Pointsource client, Primerica, Trunzo and her team were able to help the insurance and financial planning giant to push a key business mobile app to a workforce of 95,000 insurance representatives in just five months from concept to delivery. Tom Swift, executive vice president of field technology for Primerica will join Trunzo in presenting the case study at the show.

    “Traditionally, in-house development projects could see up to an 18-month release cycle, but Primerica knew they needed to accelerate to shift the business to include the mobile focus,” Trunzo explained. However, acceleration is exactly what the business needed in order to retain sales talent.

    According to Trunzo, Primerica found that it needed a mobile app to help educate and engage with competitive representatives and was able to deliver one that gamified sales objectives. In addition, it offered very practical tools for representatives to present pertinent information to clients when visiting at their kitchen tables.

    “It’s been a great experience,” she says. “Their numbers and results are fantastic and that’s a story we’re going to be telling on stage at InterConnect.”

  • Reaching Millennials with new Mainframes and agile technology

    Reaching Millennials with new Mainframes and agile technology

    “I’ve been with IBM for 25-years and been with the mainframe. We hear either that the mainframe is dead or that it will be retired in one or two years,” says Mike Fulton, IBM DevOps for Enterprise Systems CTO, and blogger at https://makingdeveloperslivesbetter.wordpress.com/. But IBM and Fulton have built bridges from the largely new and improved mainframe to the new IT professional, making access easier and more inviting.

    IBM has made it easier for Universities teaching about the mainframe to build and use very high quality education programs in order to educate students about the mainframe and about application development for the mainframe.

    “One of the neat things University folks have done is to create free MOOCs so that students and others globally can learn the mainframe and log on to a real mainframe from the Internet to develop their skills,” says Fulton.

    Reaching the Millennials

    In Fulton’s session about reaching Millennials with the mainframe, he starts with the realization that they address the mainframe differently than he would. Where everything used to be a green screen on a dumb terminal, now it is web based.

    “I see people facing challenges in how to adapt to the workforce of people coming in who have this different approach to work and life. The key thing is to focus on the people expertise and on training the millennials on the business side and the technology side related to apps and not so much on the kinds of tools used to access the mainframe,” says Fulton.

    People whose work and lifestyles are mobile with remote working can work from the Internet and access the same applications on the mainframe to accomplish the same business tasks. DevOps has led to improvements allowing people to move on to these new tools including web tools for systems of record and web tools for systems of engagement.

    IBM is reaching out to the millennials. “We partner with Universities for this,” says Fulton. Customers with mainframes and massive apps should look beyond next quarter and into the future to how to train the new batch of people taking over on how to use these web tools to accomplish mainframe tasks.

    Security

    Securing the data is one of the big challenges for Millennials and anyone working with information systems today. People can engage Millennials with how secure the mainframe is. “Fundamentally if you are building any app of interest today, security has to be at the top of the list and it is important if you are a millennial or anyone else because you can easily destroy your business with one security slip up,” says Fulton.

    IBM bakes security into the mainframe so it is natively secure without additional security configurations. “Additional configurations give you the opportunity to make mistakes,” says Fulton. But an app designed to work on Java using sockets on the z/OS will automatically be locked down and secure because it will use TLS, which IBM uses by default, explains Fulton. The customer doesn’t have to code all this manually and IBM knows that it is fundamental regardless of what technology you use that you must be aware of security vulnerabilities in order to address them, says Fulton.

    The mainframe is an obvious choice for security because IBM has been baking security into it for 50-years now, says Fulton. “It’s easier to guarantee security on the mainframe where it is native than it is on systems where people are still adding security in after the fact,” exclaims Fulton.

    The mainframe and its security are based on a proprietary, closed-system approach. You would have to be one of the few people who know even one of the internal subsystems, then you would have to be able to get into the mainframe and use that knowledge to get from one system to another, which requires another type of proprietary expertise.

    The System z memory architecture keeps any one application from gaining any access to the data or processes of any other application. IBM’s user authentication and authorization software also keeps individual applications from accessing other areas of memory. The mainframe further offers more encryption than other platforms. When it comes to security, the mainframe has a strong feature set that makes it attractive.

  • Inside the mind of a true DevOps evangelist

    Inside the mind of a true DevOps evangelist

    IBM InterConnect is imminent. Next week more than 20,000 people will descend on Las Vegas and take over the north end of the strip for IBM’s massive event. One of the primary topics attendees will be focusing on is DevOps. IBM’s Rosalind Radcliffe—a respected evangelist for DevOps—will be there to share her passion and knowledge as well.

    Rosalind Radcliffe is a Distinguished Engineer, in Rational currently responsible for the driving the System z and Power Systems aspects for the Jazz foundation and Jazz foundation based products—or so her LinkedIn profile indicates. Really she’s just a very smart person who loves to help customers solve problems.

    At InterConnect Radcliffe will be talking about DevOps. She is hosting a number of workshops for DevOps for enterprise systems. She will also be engaging in panel discussions with clients to discuss things like how an organization can transform its current environment and the part that DevOps plays.

    I had an opportunity to speak with Rosalind recently, and gain some insight into her perspective on DevOps and what it means for IBM enterprise customers. Two themes seemed to come up repeatedly: breaking down silos, and finding a common ground.

    Radcliffe stressed that top-down support from executive management is crucial to a smooth transition. “At a business level [executives] understand DevOps is necessary. They know the value and they want to do it,” she explained. The challenge is how to adapt and make that transformation without disrupting business.

    Where do you begin? If you’re Rosalind Radcliffe you start by finding common ground. All the way from the business perspective to deployment and across all platforms it’s important for all parties to see the same point of view and work toward a common goal.

    That’s not always easy to do when you’re dealing with different teams using different tools and platforms, and with separate political agendas. The first step is breaking down silos. Rosalind told me, “Everyone says that, but that’s really what has to happen.”

    She explained that customers don’t have to throw out the organizations structure or retool the teams themselves necessarily. It’s about redefining how the teams interact and work together, not about reorganizing the teams.

    Radcliffe is passionate about DevOps, but her real drive is helping customers achieve their goals. DevOps is hot now, but it’s just an evolution of the tools and processes businesses use to find a competitive advantage. DevOps may pass, but the need to streamline processes and accelerate delivery will live on.

    “A few years from now we won’t be using the word DevOps,” said Radcliffe. She told me that DevOps is just the Agile principle taken to the full enterprise. It provides a more comprehensive end-to-end perspective that enables enterprise-scale transformation.

    The reality, according to Radcliffe, is that customers need to come up with an enterprise strategy, but it helps to start small. She works with customers to find those initial baby steps that help them gain momentum that eventually allows them to make the bigger transformation.

    Vegas isn’t really her scene, but she’ll be there next week for IBM InterConnect. She can do without the flashing and dinging of the slot machines or the Vegas shows. But, she’s driven to engage with and help enterprise customers, so she’ll brave the busy Vegas environment to share her passion for DevOps.

  • Comparing DevOps to traditional IT: Eight key differences

    Comparing DevOps to traditional IT: Eight key differences

    You can make the argument that in the Software Delivery Life Cycle (SDLC) value is created in two places.  First, when the software is created (development) and second, when the software is delivered to the customer and feedback received.  The rest is transportation.  The faster one can move code from the hands of the developer to the customer and receive feedback, the more value can be realized by both.  Don’t get me wrong, there is benefit to various “transportation” activities (testing, QA, staging etc.).  But those are not value creating activities, they are risk mitigating processes.

    A DevOps organization understands this value equation.  They focus on the processes that add value, organize themselves around those actions and do the best to minimize the risk.  Traditional IT gets it too – at least conceptually.  However they treat all stages in the SDLC with equal importance or worse emphasize the wrong stage(s).

    In general, when comparing DevOps organizations to traditional IT, DevOps will have policies and practices that differ from those of traditional IT along the following eight key dimensions,

    mustafa

    Planning & Organization

    1. Batch Sizes: Go from Big to Mirco

    Traditional IT has a bias for going big and for good reason.  First, most development shops grew out of the waterfall method which by its inherent nature takes a lot of time.  Second, since releases are costly and disruptive, operations allows developers only a few windows a year to release software.  And third, its simply not sexy – doing big is how you get promoted.  As a result, development organizations maximize productivity, by planning big projects, that involve a lot of code, bundled (hastily at times) into a release, and jammed into production.

    A DevOps organization takes the opposite point of view and believe that small is beautiful.  They understand that large batch sizes are inherently complex, risky (since there are so many moving parts), and hard to coordinate.  Small batches sizes, on the other hand, are simple, easy to understand and test rigorously, and less risky.  If things go wrong the impact is minimal and it is much easier and faster to fix.  In other words, by going small organizations are able to perform more frequent releases and become more responsive to the customer. 

    1. Organization: From Skill Centric Silos to Dedicated Cells

    Traditional IT is organized around skill centric silos.  For the most part silos work, they band like skills together, drive greater utilization, and benefit from economies of scale.  However, where these “cost optimized” silos break down is at the hand offs.  In a typical IT environment, a new feature has to go through at least 3 – 4 silos before the customer gets it.  It is not uncommon for an idea / code to spend 80% of its time waiting or ping-ponging back and forth between silos.

    A DevOps organization also operates in a silos but at a different cross section.  Here teams are arranged in “cells”, consisting of dedicated cross functional teams, and focused on only one application.  By creating this self-sufficient cell that consists of developers, testers, business analysts, and operators, an idea can move from one stage to another without hand offs, promotes cross-training / understanding (key to collaboration), focuses the team on the end goal, and encourages the “shift left” thinking.  As for utilization and scale benefits, the rules for response states that for every ¼ reduction in cycle time, productivity will improve 2x, and operating costs by 20%.

    1. Scheduling: Centralize to Decentralize & Continuous

    Efficient scheduling is at the heart of a Traditional IT organization.  Since resources are pooled, projects are usually clamoring for access to SMEs and / or infrastructure.  To get around this, enterprises have invested in sophisticated scheduling planning systems.  And while these systems are quite sensitive, they are inherently inaccurate, take up to much time to manage, and in some cases become the very bottleneck that they are trying to alleviate.

    In a DevOps organization scheduling is pushed to the local cell level.  The combination of smaller batch sizes, dedicated teams, and automated processes makes scheduling more simpler to operate. How? First, forecasting is limited to the very near future (2 – 3 weeks) where the teams have better insight.  Second, there is no fighting for people’s time since it is a dedicated team.  Third, there is no waiting for infrastructure since it has already been defined and automatically provisioned.  And fourth, it eliminates time consuming loop backs to management for escalations and decisions.

    Performance & Culture

    1. Release: Turn a High Risk Event to a Non Event

    In a Traditional IT organization, releasing software into production is a high risk proposition.  It is fraught with issues, escalations, and constant fire-fighting.  The process is tightly managed, governed from the highest levels, and requires participation from all parts of the organization.  It is not uncommon for IT to set up war rooms staffed 24×7 for weeks before and after the release.

    DevOps organizations, on the other hand, make the release of software into a non-event much as possible.  They reduce risk by daily integrating code into the trunk, automating testing, ensuring all environments are in sync, reducing batch sizes (as mentioned above) etc.  In other words, they only promote code from one stage to another after they are confident that it will work in production.  Thus eliminating all the hoopla about release windows and they are able to move new functionality into production at a much faster clip.

    1. Information: Focus is on Dissemination vs. Actionable

    Both types of organizations generate and share a ton of data.  The difference lies in how the teams uses data.  In Traditional IT, information is generated by specialists (e.g. operations team), bundled together with other data into a massive report, goes through management approval, is then shared with other managers, who then send it out their specialist (testers, developers etc.).  In most cases the report goes unread, simply because there is too much data, not timely enough, and / or not the right data.  In other words, information is shared but poorly consumed, and rarely used to take any actions.

    Within a DevOps organization, it’s the team cell that gather and creates the data.  Since the data is to be consumed locally they only collect the data (also automated) that the team deems is necessary.  And since the data is processed within the team, it eliminates the time lag of creating lengthy reports, manager approvals, and queue time (sitting in some ones email box).  As a result, the team is quickly able to read and react to the data – resulting in faster feedback time.

    1. Culture: Do Not Fail vs. Fail Early

    Traditional IT is fundamentally a risk averse organization.  A CIO’s first priority is to do no harm to the business.  It is the reason why IT invests in so much red tape, processes, approvals etc.  All focused on preventing failure.  And yet despite all these investments, IT has a terrible track record – 30% of new projects are delivered late, 50% of all new enhancements are rolled back due to quality issues, and 40% of the delay is caused by infrastructure issues.

    A DevOps organization is risk averse too but they also understand that failure is inevitable.  So instead of trying to eliminate failure they prefer to choose when and how they fail.  They prefer to fail small, fail early, and recover fast.  And they have built their structure and process around it.  Again the building blocks we have referred to in this article – from test driven development, daily integration, done mean deployable, small batch sizes, cell structure, automation etc. all reinforce this mindset.

    Measure

    1. Metric: Cost & Capacity to Cost, Capacity, & Flow

    Silos work for Traditional IT because they are directly tied to its measurement model – cost and capacity.  IT is measured on how much can it get done (capacity) for the least amount of money (cost).  It is no wonder that cutting cost, while trying to keep capacity constant, has been all the rage in IT over the last two decades.  It’s one of the reasons why outsourcing became so popular.

    And while this model works great for stable legacy applications, the newer “system of engagement” applications require an additional metric – the element of time.  DevOps organization understand this paradigm shift and have added “flow” as an additional metric.  Flow forces an organization to take a look at its end to end cycle time, identify areas of waste, calculate true productive time, quantify quality, and focus on activities that add the most value.

    1. Definition of Done: “I did my job” vs. “it’s ready to deploy”

    Another source of measurement difference is in how the two types of organizations define done.  In Traditional IT, done is defined as the specialist doing “just” their part and handing it off.  In essence, their done is more focused on meeting the hand off deadline vs. making sure what is done is deployable.  This varying definition leads to some bad habits such as sub-par work, quality loss, finger pointing, and an overall sub-optimized process.

    To get way from the finger pointing mentality is another reason why a DevOps organization prefers to create a dedicated cross functional team.  With every member of the various parts of IT represented in this “cell” structure and all of them being held accountable for one and only one thing, they all end up having just one definition of done – bring quality software to market.

    If you would like to learn more about this topic, please join me at IBM InterConnect 2015.  I will be hosting several workshops on DevOps.


    About the Author/Mustafa Kapadia

    Mustafa KapadiaMustafa Kapadia is the Service Line Leader for IBM’s DevOps practice, a business advisory practice focused on helping large enterprises transform their software & application delivery.  He has over 17+ years of experience in the tech. space, both as a service provider and a management consultant.

    Prior to joining IBM, Mustafa was a management consultant with Deloitte’s Strategy & Operations practice. He lives in San Francisco Bay Area, is an avid blogger (when time permitting), a speaker, and adviser to start ups.

    Connect with Mustafa LinkedIn| Twitter

  • Mapping out your DevOps journey

    Mapping out your DevOps journey

    I am writing this on a flight from Washington, DC to Austin, TX. How long does it take me to get to Austin, you may ask? The flight is 3 hours and 3 minutes long. The time it takes me, however, is much longer as I do not live at the airport (although it surely feels like it). How long a journey takes depends on where you start.

    A question I get asked often is how long will it take my organization to adopt DevOps? First of all, one does not just adopt DevOps. One starts a journey of adopting the capabilities that make up DevOps (more on that soon). Adopting DevOps is not a one-time thing – it is an ongoing thing. That said, even when it comes to adopting a single capability of DevOps, say Continuous Delivery, how long it takes you depends on where you start.

    It’s a journey

    Adopting DevOps is not a “one-and-done” project. It is adopting a mindset, a culture. It is a commitment to a journey of continuous improvement by adopting a set of capabilities and practices that are based on Lean principles. IBM has identified a set of six capabilities to adopt in this DevOps journey:

    1. Continuous Business Planning
    2. Collaborative Development
    3. Continuous Testing
    4. Continuous Release and Deploy
    5. Continuous Monitoring
    6. Continuous Feedback and Optimization

    Adopting DevOps requires process improvement, automation of the processes using tools, and organizational change to enable a DevOps culture.

    Where to Start?

    The question then becomes – where does one start? This requires knowing ‘Point B’ where you want to go – what business goals do you want DevOps to help you achieve? And it requires knowing the ‘Point A’ of your journey – where you are today – and how mature you are when it comes to practicing these capabilities today. Once you know Points A and B, you can chart out an adoption road map. Starting from a level of immaturity where you don’t even have good source code management practices, and wanting to get to ‘no downtime’ deployment, is going to be a long journey.

    The IBM DevOps pipeline Value Stream mapping workshop

    At IBM, we help our customers get started by conducting a ‘DevOps pipeline Value Steam Mapping workshop’. This strategic workshop is a 1-day (usually 6 hour) executive workshop designed to enable IBM to understand your business and IT goals (Point B) and to help you identify gaps in your existing DevOps capabilities (Point A) that IBM can help you address. We identify ‘Point A’ by mapping out your end-to-end Application Delivery pipeline, and identifying areas of inefficiencies in the pipeline.

    The result of the workshop is a prioritized list of DevOps Capabilities and an adoption ‘roadmap’ to start your DevOps adoption journey.

    ‘Get Mapped’ at IBM InterConnect

    During IBM InterConnect, The Premier Cloud and Mobile Conference in Las Vegas, February 22-26, I am conducting condensed versions of these workshops, right there on-site. These are 2-hour sessions during which IBM DevOps SMEs will work with you to map out your application delivery pipeline and identify your key ‘bottlenecks’ or inefficiencies. We can then schedule a follow-up at your site to jointly develop a DevOps adoption roadmap so you can address these bottlenecks using the relevant DevOps capabilities – along with process improvement, tool adoption for automation, and organizational change.

    Space is very limited for dedicated workshops (“DevOps Transformation Workshops”) – contact your IBM rep about nominating your company for one of the sessions. If none are available, sign-up for either the “Innovation Workshop” or “DevOps Technical Workshop,” which are similar, but will have multiple companies participating.

    For more information about IBM InterConnect 2015 DevOps Workshops and how to sign-up please visit: 

  • IBM InterConnects Intuitive Themes to DevOps Challenges

    IBM InterConnects Intuitive Themes to DevOps Challenges

    IBM DevOps Evangelist, Eric Minick will leverage his slots at IBM InterConnect 2015 to help you surmount continuous delivery and automated deployment DevOps challenges, three of which include: balancing a continuous delivery pipeline; deployments in hybrid cloud scenarios; and, fitting in trickier deployments.

    devopsy.kinsta.cloud spoke with Eric about these challenges and the central themes that will bubble to the top as he speaks to each one. If you attend Eric’s sessions, see if you can connect the dots between these challenges and themes.

    The CD Pain Point Domino Effect, Cloud Deployment Conundrums, and Deployment Complexities

    The first challenge Eric will address is balancing the continuous delivery pipeline. When maturing that pipeline, does development, IT ops, and the business really fix continuous delivery pain points or simply redistribute them? With every attempt to fix a weak link in the continuous delivery chain, whether that link is builds, tests, or deployments, each newly strengthened point in the pipeline reveals another that is resultantly more vulnerable.

    “If we have slow manual builds, for example, and we fix that with a continuous integration tool, I guarantee you that you will then have a problem where your deployment process is pained because you’ve given yourself a lot more stuff to deploy,” says Eric Minick, IBM DevOps Evangelist.

    The second challenge is deployments in hybrid cloud scenarios. As much as DevOps benefits from the cloud, the cloud can also add complexity to deployments. In hybrid cloud scenarios, the organization must ask, if we’re updating infrastructure in our deployments, how does that change when we’re in multiple clouds?

    “What if some of the stuff we want to put into a test environment is traditional apps that we would normally build in-house and some of it is platform-as-a-service bits that need to change?” asks Minick.

    Finally, it can be difficult to deploy trickier elements such as database bits together with more straightforward aspects such as static content even though the organization has tested and passed them in the same pre-production, staging environment.

    Recurring Themes

    There are two central themes that run through these discussions. The first is that organizations should deploy or promote components to production at the same level of granularity that they test them at. There are benefits to deploying these elements together. The detriments of promoting them separately include broken software.

    If the organization is testing a set of interconnected web applications that have dependencies from one application to the next and they all pass, then the enterprise should promote all that to production because they tested it together and it functions well together.

    “In the same way, if you’re testing a single sub-system and it passes, you should promote that into a production environment just like the one you tested it in,” says Minick.

    If the development team deploys one of several components that work well together into an older production environment that it did not test that piece of software in, it will likely produce errors at the very least.

    The second theme is that organizations can align their decisions about what to automate and what not to automate based on the recognition that the strength of people is creative problem solving while the strength of computers is that they follow directions well.

    “So anything that requires fancy decision-making is probably best left to people to handle where as anything that is simply a list of instructions to repeat is probably something the organization should automate,” says Minick.

    Each of these themes carries particular benefits for DevOps. The benefit of deploying and promoting components together at the same level of granularity that you test them at is that you avoid the risk of something breaking in production because that comprises an untested environment for that component or sub-system. So if the organization tested a grouping of components and they worked well together, the enterprise should deploy them all together.

    “In such cases, deploying separately results in errors and downtime and all sorts of ugliness and bad behavior. To avoid that, you would have to try to track the relationships between every code change in every sub-system and how these might impact each other,” says Minick, “which is a hugely expensive and very painful thing to do.” That’s why it makes sense to test things together that are going to production together.

    The benefit of the organization separating what it should automate from what it shouldn’t is that anything the company can hand over to computers, those computers will do it more quickly and cheaply and on more machines simultaneously. “Handing over tedious tasks to machines keeps the developer’s job more interesting too,” says Minick. And automation means the enterprise’s capacity to deliver changes to the marketplace increases.

  • Healthcare information provider streamlines deployment with DevOps

    Healthcare information provider streamlines deployment with DevOps

    Streaming music and online shopping are just two of the ways technology and the Internet have changed our way of life. One of the other major shifts in culture has been the ability to research symptoms and self-diagnose medical conditions. One online healthcare information provider recently teamed up with IBM and embraced DevOps to streamline development and deployment of features and information for customers.

    In a case study titled A healthcare information provider cuts deployment time down to minutes, IBM details how this healthcare information provider—which remains anonymous—used IBM UrbanCode Deploy to get products to market faster. While the name of the company is not disclosed, IBM does reveal that it is a United States company that employs approximately 1,500 people, and develops and maintains more than 200 applications.

    The case study describes a scenario that is probably common across many companies regardless of industry:

    The organization’s existing deployment solution combined tools designed for other purposes, such as administration or content management, and strung them together with custom scripts. The process also involved many manual steps, which introduced the potential for human error. Developers and quality assurance (QA) teams were bogged down with the numerous administrative steps required to request a new deployment. And the company’s web operations team was spending much of its time deploying production and QA environments.

    “In many ways they are a classic DevOps story for a mid-sized organization (1,500 people) with a heavy tech component,” stated Eric Minick, DevOps evangelist for IBM. Minick explained that development at the organization had shifted to agile, and that applied pressure downstream on operations. The natural evolution from there to keep up with development and continue to meet business needs was to automate aggressively and improve collaboration between developers and IT operations. In other words: embrace DevOps.

    Minick told me, “The medical element almost doesn’t matter here—except that this is a place where I would go to get health information to make decisions that impact the well-being of my kids. They trade in trust.”

    An outage would have financial consequences as it would for any company that engages with customers over the Web, but the more crucial issue for this company is its reputation—and the need to earn and maintain the trust of its customers. “In a lot of ways, this is the same fundamental challenge that banks have. You have to be consumer facing, compete with new money transfer startups that move fast, but if people can’t deposit their paycheck in time to make rent, you lose customers quickly,” said Minick.

    For US Health insurers, the past couple years have been very interesting. The Affordable Care Act has forced the health industry to shift from thinking of the insured as a secondary customer (the employer being the primary) to really shifting into a business-to-consumer (B2C) business model. The change in perspective makes their systems of engagement more critical to the business, and being able to experiment and rapidly deliver has become more important.

    Minick stressed, “At the same time, they have significant regulatory burdens requiring them to have strict controls, and security protections. Meanwhile, operating efficiency has become even more important as overhead / profit is capped as a percentage of premiums. This nets out to a requirement to be able to change more quickly, without additional risk or cost.”

    A vice president from the healthcare information provider shared some thoughts on the benefits of working with IBM and embracing DevOps. “The fact that we had development, QA and ops engineers all in the same room choosing the tool, that process and the standards really created a sense of collaboration and let everyone walk in the other person’s shoes, understanding the challenges others face. To me that’s what the DevOps culture is about: breaking down the walls and letting staff understand everyone’s challenges. Everyone benefits from using tools and processes like this.”

  • #IBMInterConnect CrowdChat

    #IBMInterConnect CrowdChat

     

    alan_facebook (1)

     

    Date: Wednesday, February 11th, 2015

    Time: 3pm eastern standard time

    (NO REGISTRATION REQUIRED*) 
    CrowdChats are FREE. To participate in a CrowdChat LIVE, 
    a Twitter Profile is required

     

  • Variable Speed DevOps

    Variable Speed DevOps

    I was lucky enough to be the host of a Google Hangout last week with some very smart folks who will be speaking at IBM InterConnect 2015. One of the topics that we discussed was Two-speed IT or as Carmen DeArdo of Nationwide called it, variable speed DevOps.

    What is meant by this term is the realization of the fact that different parts of an organization, even different parts of an IT team move at different speeds. Rather than forcing everyone to move at one speed, how can you use DevOps to allow these different size gears to mesh into one smooth functioning machine?

    Constraints and bottlenecks pop up when one part of the process is allowed to proceed untethered only to either be constrained from a lack of resources or data from a pre-requisite or to be wasted as the output then has to sit and wait around for another part of the process to proceed.  It is almost right out of The Goal by Goldratt.

    How do we achieve a “just in time” method of IT? This is a problem that agile has tried to tackle in the development world, but what about the larger canvas of IT? That is variable speed DevOps.

    Perhaps nowhere is this variable speed issue as visible then when talking about legacy mainframe systems working with modern cloud architectures. Yes IBM’s z/system team has numerous examples of exactly this taking place.  But don’t be fooled into thinking that this is about making old stuff work with new stuff, for it is not.

    I have discussed this with Sanjeev Sharma of IBM as well regarding a follow on panel on this subject that both he, Carmen and Rosalind Radcliffe will be participating in this month at the InterConnect 2015 event in Las Vegas (Mobile to Mainframe Experts: DevOps Best Practices for Systems of Engagement and Systems of Record, Session DEM-4399, Monday 2PM).

    The real key to a successful DevOps implementation is recognizing the variable speeds of the different parts of the organization operate at. Yes automate, yes do more faster, yes, yes, yes. But at the end of the day some processes move like Cheetahs, others like Sloths.  A Sloth is never going to be a Cheetah. The trick is making sure the Cheetah is not wasted behind the Sloth.

    To be successful in DevOps, you cannot focus on one process or part of the story without a keen understanding of the big picture, the whole story. That is part of what I like about DevOps. It is a big picture, big goal game. While it is easy for any one of you to focus in on one piece or gear of the machine, it is the machine that counts.  Machines have big gears and little gears, slow gears and fast gears. Getting them to function like clockwork is the key.

    I think too many people try to get all of these gears to function at the same speed. In most cases this is a strategy destined to fail. Understanding the variable speeds of the people and parts of the process is necessary to cook the perfect dish.

    So next time someone tells you that DevOps is about getting things done faster, remind them that we all can’t be the Cheetah. Sometimes speed kills. In real life we all move at variable speeds. So do different parts of the IT stack. Orchestrating them to be most efficient is really where DevOps wins.