DevOps – what and why?

Let’s talk about software and service design, development/engineering and maintaining.

Traditionally, software development has meant a team who first designs the software, then they give the specification to another team who does the hands-on programming and testing the software. These phases have been thought of being the ”project” state and the project manager has been doing his/her job using a waterfall project management approach: design – develop – release.

After releasing the software there’s usually been a supply team who takes care of the software and pretty much makes use of ITIL®’s Service Operations best practices. It’s also notable that the past waterfall-styled projects have often been pretty big in terms of the project scope.

Think about this: Wouldn’t it be good if your product or service would be developed in a controlled way, piece by piece and you could be certain your production and development do the things together, hand in hand?

Silos

Traditional moffice-875695_640odel of software project development has been widely critized for causing silos. Silos are the infamous grey area where responsibilities are unclear, often ending up in the situation where somebody didn’t do anything, because he/she/they thought that someone else did something and finally nobody did nothing.

In practice this means that a) when the Design team has finished the specifications, they don’t care about helping developers get into the speed, but they just hand out the specs pages and think their job is done. Then b) developers do the programming according to the specs and c) throw the release to the services team for support & maintenance. And then after a while there will be a new version ready for release and to be maintained.

Silos are the infamous grey area where responsibilities are unclear, often ending up in the situation where somebody didn’t do anything, because he/she/they thought that someone else did something and finally nobody did nothing.

Problems with silos

What if the specs are somehow inadequate? Coders code and the result is something else than it should have been? What if the production environment where the software is supposed to be run and maintained differs greatly from the test environment where the product was developed? Whose responsibility is to make sure these kind of issues won’t get in the way?

ITIL has addressed this dilemma at least a little bit. There are notions that Service Operations should be involved early in the process. For example in ITIL’s Service Transition life cycle, in transition planning and support there’s a question if the plans have been agreed and authorized by all relevant parties (customers, users, operations, and support staff)? The idea is clearly to get all the relevant parties – including naturally Service Operations people – involved early enough in the new/changing services.

But according to my experience ITIL doesn’t cover all the possible silos there are. I was once discussing with a Canadian guy who was the responsible for the project management department  in a big German-based transportation & logistics company and he told me he hates ITIL because in his opinion ITIL didn’t do anything good but was cannibalising the software projects.

I believe that’s true up to some point. Even though ITIL is not a project management method, it lacks a credible way of linking the project management and service management.

He told me he hates ITIL because in his opinion ITIL didn’t do anything good but was cannibalising the software projects.

And that’s what the DevOps is bringing on: better co-operation between the different parties involved!

Definitions of DevOps

There are probably as many definitions about DevOps as there are organisations involved with it. But the following AgileAdmin’s definition of DevOps is the best I’ve seen: ”DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support.”

To simply put, the idea is to enforce and empower co-operation and participation between the different parties.

The IT industry is evolving and changing rapidly. There’s an ever-growing need to improve products’ time-to-market, so there’s no space for silo-focused thinking any longer. Designing, developing, operations and retiring the product must happen as quickly and smoothly as possible. That’s where DevOps enters into the game.

There’s an ever-growing need to improve products’ time-to-market, so there’s no space for silo-focused thinking any longer.

It’s also worth noticing, that there’s a big difference between the Agile methods and more traditional project management methods. In the Agile world the idea is to build the product or service piece by piece, little by little. When following the Agile method it’s not clearly known what the final product or service will be or how it will look. Development is done in small steps and there won’t be too many new features implemented at the same time. Developmental phases, so-called “sprints” are usually measured by days and in some cases even in hours.

In the more traditional software development there’s usually a fixed specification which describes how the product or service will look like when finished. There’s usually a somewhat-fixed budget to cover all the expenses of the project. The project itself can be gigantic and the time frame can be anything from months to years.

Responsibilities in DevOps

Let’s face it: in the old world there was a number of people supporting and maintaining the systems. In the new DevOps world there’s no need for so many pairs of hands, because the idea is to automate processes as much as possible. DevOps should steer the operations of products and services to the new normal were the manual routine work is no longer needed in a large scale.

There are also many things in development phase that have been previously made manually and will be automatised. Theagileadmin.com says the following: ”In the DevOps world there’s been an explosion of tools in release (jenkins, travis, teamcity), configuration management (puppet, chef, ansible, cfengine), orchestration (zookeeper, noah, mesos), monitoring, virtualization and containerization (AWS, OpenStack, vagrant, docker) and many more. While, as with Agile, it’s incorrect to say a tool is “a DevOps tool” in the sense that it will magically bring you DevOps, there are certainly specific tools being developed with the express goal of facilitating the above principles, methods, and practices, and a holistic understanding of DevOps should incorporate this layer.”

So DevOps combines a number of different tools under the DevOps umbrella.

In my opinion it’s absolutely great that many boring prone-to-error routine-tasks will be handled automatically by a bunch of tools. But it would be a lie to claim there wouldn’t be any impact on the number of personnel involved in the developing phase. Of course it does! There will be less demand for i.e. people doing module- and performance testing, (manual) configuration management and so on. Many things like application performance monitoring and continuous integration have been automated to a greater extent etc.

I have pretty often come across a claim that ”now they (developers and operations people) have more time to focus on developing and continual improvement activities”. While this is of course true to some people, there are and will be people who simply don’t have any meaningful tasks to do any more. That’s the way it goes.

In my opinion it’s absolutely great that many boring prone-to-error routine-tasks will be handled automatically by a bunch of tools. But it would be a lie to claim there wouldn’t be any impact on the number of personnel involved in the developing phase.

Then there are also (bad) examples on how Dev(elopers) have been forced to take over the responsibilities of Op(eration)s people. That leads to a bad situation. Mr. Jeff Knupp has addressed this problematic in his writing very clearly.

He discusses about the Totem Pole and he expresses an idea that there’s a hierarchy of usefulness of technology roles in an organization and that Developer is at the top, followed by sysadmin and DBA. QA teams, “operations” people, release coordinators and the like are at the bottom of the totem pole. He states that each role can do the job of all roles below it if necessary.”

Forcing developers do all kinds of tasks leads to the situation where developers get frustrated and they cannot show or use their best abilities. So even though I completely understand that in a startup company people end up doing almost everything, I totally agree with Jeff Knupp that not every company is a start-up and that whenever possible “let developers write code!”.

office-875693_640

 

I personally really, truly like the idea to bring people to work closer together. It surely helps tackling silos away, improves transparency and most probably shortens development-cycles and thus shortens time-to-market of a product or service. I believe in DevOps in that sense and I’m sure when correctly utilized, DevOps can keep its promise.

 

But then again, if you think of introducing DevOps in your organization because of cost optimization, be sure not make the mistakes Jeff Knupp addressed.

 

Pictures are from Pixabay.

ITIL® is a Registered Trade Mark of AXELOS Limited.

 

SIAM – toolwise considerations (reporting)

Tools in the multi-supplier environment

I was watching a video ”Talking ITSM & SIAM in different languages” on Cherwell web pages with PhD Ms. Tuuli Sutinen as a guest and AllthingITSM’s Simone Jo Moore, Kirstie Magowan, and James Finister were the other participants. They were discussing about various things, but what I paid attention to was Tuuli’s notifications about SIAM and the question of different tools in the multi-supplier environment.

I think Tools is one of the most essential things that make a difference between success and failure in SIAM.

Why’s that?

Let’s assume you are the SIAM Operator, responsible for delivering end-to-end services to the customer. Everything is ready: customer knows what they are doing and why, their business requirements have been carefully considered, and all the SLA contracts and underpinning contracts with suppliers and other stakeholders have been agreed on. Just like discussed in my previous blog text SIAM – The Good, The Bad and The Ugly.

Customer reporting

The Governance model says you are reporting to the customer once a month, and it’s time for you to prepare the very first service level reports. In order to simplify the issue a little, let’s focus on the idea of reporting about services performance.

Now, what do you actually do?

Suppliers deliver the reports to you. As this is the first time you haven’t probably managed to agree about the common design and layout, not to mention the details just yet and you will receive reports with different styles with different number ratios, dimensions, charts etc. etc.

Ok, you probably manage to collect the reports and manually edit a slideset which will somewhat satisfy the customer’s needs. And the numbers are good, of course, it helps here. J

As this is the first time you haven’t probably managed to agree about the common design and layout, not to mention the details just yet and you will receive reports with different styles with different number ratios, dimensions, charts etc. etc.

balance-sheet-241711_640

At the same time you know that this practice has absolutely no future whatsoever. You can not be editing n pieces of different reports templates on Excel, and/or PowerPoint or KeyNote every single month. There’s no way you could do it and neither makes it any sense.

Improving reporting

A quick win might be to agree with suppliers to deliver the reports on templates you have provided them. That might help a little bit and at least those different reports might be of the same style, so your manual reports compiling work might go down ~ 80%.

Now that’s a lot better and you could maybe live with the situation.. No, you don’t want to settle with that arrengement.

A Finnish IT Company Tieto has stated it quite clearly: ”Good SIAM (Service Integration and Management) tools support the wide range of SIAM processes in a multivendor environment. Because the integration layer needs to support all vendors, present and future, industry-standard interfaces are a must.”

I’d recommend make the necessary integrations between your reporting tool and the suppliers’ systems. Don’t think about ”saving money” here!

Reporting relies heavily on the ITSM tool in order to gain necessary ticket data. In addition to that you most probably need another tool (hopefully integrated with the ITSM tool) or a comprehensive add-on with extensive data analysis capabilities to be able to report an overall situation of the services to the customer.

I’d recommend make the necessary integrations between your reporting tool and the suppliers’ systems. Don’t think about ”saving money” here!

Don’t forget about the status of the other services: You might also need reports about server/services availability, information security, response time of your services etc.

You might actually drown into the river of ever-growing reports. That’s why I would try to agree with the customer about 4-6 the most important reports and make sure those will always be handled, while the other reports might be stashed into the nice-to-know pile.

Customer’s dashboard?

But how about customer’s view? Should your customer have an own view on the tool to be able to check the situation every now and then – and ask questions about their observations?

What’s your opinion?

[ ] Yes!!! Of course they should! They could monitor the situation whenever they want to and they might notice something the SIAM Operator doesn’t.

[ ] Why not. Who would it hurt?

[ ] They don’t need it because they can always ask about the current situation from their SIAM Operator.

[ ] Absolutely not. Customer doesn’t even want it.

What is the correct answer? I don’t know! There are some issues I can address, though. Customer has decided to go with the SIAM model, so you can jump to the conclusion they don’t want to be actively monitoring the situation all the time. They rely on their SIAM Operator. Then on the other hand, I wouldn’t be too surprised if your customer would some time want to see or check out something, so maybe categorically denying the possibility might not be a correct answer either.

grid-817366_640

There’s no clear-cut simple answer. If your customer wants the view on the dashboard, that can probably be arranged, but if they hate the idea, they have the right to do just that.

Please note: I was only discussing about reporting –related tools here. There are much more into it than this, for example CMDB tools, Asset Management, centralized Event Management, Capacity, Demand and Licence Management tools. I might write about them someday.

Recommendations

So you have read all the way down here and I haven’t told you what is the best tool money could possibly buy? Sorry to tell you, but it depends on so many things it would be impossible to list all the available reporting tools let alone the situation factors here. I would, however, lean on to Remedy’s ITSM tools, or maybe ServiceNow toolset, and power them with some rock solid BI-reporting tool. But what suits for me might not suit for somebody else.

However, one thing is for sure: Tools themselves won’t do the job for you, but without proper tools you are doomed to fail. So don’t underestimate the importance of tools!

Pictures are from Pixabay.

SIAM – The Good, The Bad and The Ugly

Preface

Lately I’ve been writing about Cost Optimization in my blog, see 7 ways to improve your Cost Optimization and Cost Optimization .. continues posts.

I haven’t said anything about SIAM (Service Integration and Management) yet. So now it’s about time, because one of the reasons why organizations choose the SIAM model is – surprise surprise – Cost Optimization or ”being more Cost Effective”, which in my opinion means pretty much the same thing: making certain adjustments to optimize the costs to correspond with the business like I stated. Naturally there are other factors behind that as well.

economy-437509_640

While SIAM is getting more and more popular, there are some issues to deal with when implementing it, and in fact a number of things must be clarified already in the early phase of planning.

Characteristics of SIAM

Jan Vromant, Product Manager at Fruition Partners has stated the characteristics of SIAM very nicely as follows. Quotation: “The main goal of SIAM is to coordinate internal and external suppliers and their services in a cost-effective way to achieve the end-to-end service levels needed to support the goals of the business functions.

 

SIAM is a layer between the suppliers and the IT functions that supports and enables the integration of the services offered by multiple (internal and external) service providers.”

 

It’s been said SIAM enables a true end-to-end service/supply chain and hides all the mess from customers’ sight. That’s what customers love so much and rave about. What would be better than being truly able to focus on the core business areas and let someone else handle all the supportive IT processes behind the scene? And it works at least theoretically. I also personally like the idea, but let’s take a closer look inside the characteristics of SIAM. Are you ready?

That’s what customers love so much and rave about. What would be better than being truly able to focus on the core business areas and let someone else handle all the supportive IT processes behind the scene?

SIAM – The Good

Customer: It’s great to have someone taking care of the end-to-end daily basis IT –related issues. Now we can finally focus on our core business areas. We can also be sure our business requirements are seriously taken into account.

SIAM Operator: We can add value to our customers’ business by taking care of all IT burden, end-to-end. We will work on our customer’s best interests and achieve the agreed SLAs. At the same time we can also seek to grow our business by examining all the areas of our customer’s business where we can be of assistance.

Suppliers: We are happy there is only one customer interface to be dealing with and they are good at what they do (hopefully!).

That sounds like a deal made in heaven. Unfortunately it’s not that simple, keep on reading:

SIAM – The Bad

Customer: this costs us money. Are we benefiting from this or not? Where are we now? Are the suppliers now developing things according our roadmap and in co-operation with our business? How to measure what and/or how much we are gaining from this? How to be sure this was the right decision?

SIAM Operator: There is vast number of different – small and big – players on the ice. They all seem to have different contracts, different SLA’s, different expectations from customer’s business organization and vice versa. It’s not clear if the customers’ objectives are met.

It’s not clear if the customers’ objectives are met.

Suppliers: We are not being heard anymore. We are just been told to do this-and-this and there’s no real negotiation with our customer. We cannot help customer’s business development with our solutions and we cannot get more business for ourselves either.

SIAM – The Ugly

Customer: We don’t trust anyone. We are questioning our SIAM Operator’s activities and we are establishing new direct communication channels with our suppliers aside, one by one.

SIAM Operator: Customer seems to make very questionable actions and operations; they are spending more and more money but they are not involved enough on this. At the moment they are implementing an overlapping Governance model and bypassing us when dealing with suppliers and other stakeholders.

Suppliers: We don’t want to co-operate with other suppliers, because we are competing against them. We make everything we can to bypass the SIAM Operator and get our customer buy Services from us. We need to refresh our fruitful, direct co-operation with customer’s business department.

Doesn’t sound like a stellar, bullet-proof success story anymore, huh? It’s the same old story: if everything goes well, it’s like a walk in a park on sunny Sunday afternoon. But when things go bad, all the hell may break loose.

How to make sure things don’t start going on wrong direction?

I know I’m a bit boring person because I have a bad habit of always starting with the absolute basics. And exactly that I’m doing right now.

if everything goes well, it’s like a walk in a park on sunny Sunday afternoon. But when things go bad, all the hell may break loose.

Preparations

Have you ever heard of an athelete who won the Olympic Championship gold medal on Javelin with a zero preparation prior to the contest? Me neither.

Have you heard about the equestrian who came third in the US Nationals some ~ 15 years ago? She also never trained. Me neither.

Have you heard that a few weeks ago a random drunken woman won the poker game against a local well-known semi-pro poker player? They say it was a lucky shot and I believe that.

Have you heard of an Organization who decided to go to SIAM model with a zero preparation? Maybe they think they can shoot the lucky shot. Would you support the idea? Me neither.

 team-720291_640

Preparation starts at day one. Customer’s executives must go through a comprehensive determination of their intent:

  • Are we ready to open up major elements of our core business to external Organization (the SIAM Operator, that is)?
  • What’s our own Organization’s mental condition, are we ready, able and willing to let go steering the IT Support Services and relying it to some other party to carry out?
  • Do we know what we are doing – and most importantly why we are doing it?

If there’s any hesitation, it’s better take a time-out and go through all the issues in detail before making any moves forward.

  • Do we know what we are doing – and most importantly why we are doing it?

If the answer is clear ”Yes” then the Customer can proceed to the next step and start planning implementation of SIAM. I’m on the opinion, that you should make a long-term contract with your SIAM Operator. I know it’s like taking a leap of faith, but I would suggest making at least a five (5)-year contract to provide enough time to enable build a true partnership. The SIAM Operator is in my opinion the one single most important supplier from Customer’s point of view.

Bear in mind to bring SIAM into use comprehensively. If you want to achieve the cost effectiveness, there’s no room for overlapping governance models let alone unclear duties and responsibilities. In other words: Implement SIAM totally or don’t do it at all.

 

Planning phase

Be sure to involve all the required parties into the planning phase from day one. That includes the people from your own business organization, your internal IT department, your suppliers and vendors, including obviously your chosen SIAM Operator.

  • Confirm the requirements from your business.
  • Review all your underpinning contracts as well as OLA’s.
    • Investigate the potential gap.
    • Make all the actions you can do to narrow the gap; re-check the business requirements, re-negotiate contracts if/when possible etc.
  • Design a comprehensive and complete governance model. Don’t underestimate the effect of good Governance!
  • Plan a solid communications plan along with the governance model.
  • Keep on mind potential resistance of change and act accordingly.
  • Give your BEST support to your chosen SIAM Operator. There must not be any ambiguity regarding the Governance model and command relationship.
    • It’s your SIAM Operator who will very soon be responsible for running the daily basis end-to-end IT operations.

Give your BEST support to your chosen SIAM Operator. There must not be any ambiguity regarding the Governance model and command relationship.

Implementation

There are many ways to implement SIAM, but I’ll share some ideas how I’d carry out the implementation phase:

  • Big Bang approach: Keep the transition phase as short as possible.
  • Intensive communication: follow the communication plan and remember to inform rather too much than too little especially at the starting phase.
  • Invest some extra effort into the starting phase in order to pursuit quick wins and ensure good customer experience from the very beginning.

Remaining issues

Putting a number of suppliers under the governance of another supplier can be .. well, not in the best interest of the suppliers. Think about it: different suppliers might be positioned into competitive status with each other and they might not be too willing to co-operate under the governance of a new supplier.

It’s also worth noting that while implementing SIAM model, it’s easy to lose the link between the customer’s business unit and suppliers. Why would the SIAM Operator make an effort to boost supplier’s business with the customer? What if the SIAM Operator itself has interests to crab some of the business to itself from different vendors?

On the other hand, it’s most certainly one of customer’s most remarkable interests: to make sure there are suppliers developing their stuff in co-operation with the business!

I would suggest establishing a development steering group with the customer’s business and the key suppliers. That might not solve all the problems, but it would at least help maintain the link between the customer’s business units and suppliers.

I would suggest establishing a development steering group with the customer’s business and the key suppliers.

Here are two pictures illustrating the change:

1 The old world: Customer’s IT Dept works as an interface between the business and suppliers.

Old_World

 

 

2 The gallant new powered-by-SIAM world: SIAM Operator orchestrating the ensemble.

IT Dept’s role has shrunk while the SIAM Operator has taken over.

SIAM

 

Predicting is difficult, especially when predicting the future

I was discussing about the whole SIAM theme with my peer mentor, who works for Canon. I predicted him that SIAM will become even more popular in the coming years, until we notice we have gone too far with splitting the Services into too many small pieces and start rolling back. That might happen around 2026. I’ll check back to this blogwriting in 10 years and see how good or bad I was in predicting the future!

Pictures are from Pixabay.

Cost Optimization .. continues

Cost Optimization .. continues

I had an interesting discussion with my colleague about Cost Optimization from different points of view:

  • Why does it feel Cost Optimization is an everlasting issue?
  • Is there ever a time when there’s no need for Cost Optimization?
  • Who decides the Gross Margin to strive for?

To make a very long and fruitful discussion short, let’s begin with some basic conceptions. It always surprises me how many people there are with almost zero understanding about the concept of entrepreneurship.

What I’m going to do is I will make a well over-simplifying and a clear-cut categorization of organizations. Basically companies and organizations can be categorized into four main categories.

  1. Publicly funded Organizations, no matter who owns them.
  2. Organizations funded by charity collection, no matter who owns them.
  3. Corporations listed onto a stock exchange, owned by stockholders.
  4. Privately owned Organizations, funded by consumers and customers.

I start with the category 4) Privately owned Organizations. There are for example privately owned companies. They can rule their own money as they wish. If they feel like offering an annual sunny vacation for their employees in Bora Bora and they can afford it – go for it! People can of course have arguments and opinions about how to spend the money, but at the end of the day Organizations in category 4) distinguish their purchases themselves.

There are for example privately owned companies. They can rule their own money as they wish.

Now, for the rest of the categories (1-3) it’s different.

Category 1) Publicly funded Organizations. Usually these Organizations get their money from taxpayers’ wallets in a way or another. These Organizations should never ever behave like the money was theirs, because it’s not. It’s taxpayers’ money. These Organizations should take particularly close look into their spending and pursue (very) good governance!

donate-654328_640Pretty much the same message goes to the category 2) Organizations funded by charity collection. These are for example Organizations like WWF, UNCHR, Red Cross.. You name it. The money they spend doesn’t necessarily come from taxpayers’ wallets – at least not directly. But it comes from a number of individuals who want to believe that by donating money i.e. monthly basis they can make world a better place, piece by piece.

These Organizations should – just like in Category 1) – never behave like the money was theirs, because it’s not. It’s their donators’ money and it’s aimed to be used to the sole purpose the Organization has announced it will be used. These Organizations should take particularly close look into their spending and pursue (very) good governance!

These Organizations should – just like in Category 1) – never behave like the money was theirs, because it’s not.

Unfortunately that’s not too often the case. Rather on the contrary. There are too many cases where politicians, public servants and the management of publicly funded Organization have convicted a misdemeanor and took personal advance on other people’s money. Yet there are sad and bad examples of Organizations who claim to be healing the world – or parts of it – and they spend more than 80% of their income (donators’ money) on administration while less than 20% of the money goes to the original purpose.

Category 3) Corporations listed onto a stock exchange, owned by stockholders is its’ own case. Corporations have a board of directors who support the Managing Director, who orchestrates the management of the company.

new-york-city-832756_640

Corporations listed onto a stock exchange have one primary task and duty to carry out: make profit to the owners (that is, the shareholders). Period. Plain and simple. If such an Organization wants to offer annual sunny vacation for their employees in Bora Bora and they can afford it that might be done. Or might not, depending on a number of things:

If the Organization has made profit and the stockowners are happy, it might be that this kind of nice trip could be arranged. On the other hand if the Organization spends their money on that kind of trips while making loss, the Board of Directors might quickly change Managing Director to a new Managing Director who makes some swift adjustments in the name of Cost Optimization.

Corporations listed onto a stock exchange have one primary task and duty to carry out: make profit to the owners (that is, the shareholders).

The most important thing that separates Organizations in category 3 from Organizations in categories 1 and 2 is the pure simple fact that a listed company is unlikely to spend taxpayers’ money. And like I stated earlier on, Organizations in category 4 are free to spend all the money they want (and have).

To summarize: taxpayers’ money should absolutely never be wasted but they should be harbored from misdemeanor by disciplined pursue of good excellent governance.

Let’s go back to where we started and review the questions again:

–       Why does it feel that Cost Optimization is an everlasting issue?

–       Is there ever a time when there’s no need for Cost Optimization?

–       Who decides the Gross Margin to strive for?

I believe I somewhat indirectly answered to the questions or to say the least gave a few guidelines, and an intelligent reader can easily jump to his/her own conclusions.

I still want to say something about Cost Optimization: Cost Optimization should not be received as a totally negative thing. I emphasize the word Optimization. It means making certain adjustments to optimize the costs to correspond with the business. If optimizing means that the personnel of an Organization is capable of working 25% more efficiently after enjoying a week in Bora Bora, that might be done – at least in Organizations belonging to categories 3 and 4 – 1 and 2 are much more questionable and there should be rock hard justifications behind the decision-making.

Cost Optimization should not be received as a totally negative thing. I emphasize the word Optimization. It means making certain adjustments to optimize the costs to correspond with the business.

In other words, optimizing something doesn’t always need to mean cutting down something, since optimizing and cutting down are not synonyms.

Pictures are from Pixabay.