Monthly Archives: July 2005

Bridging the gap between business and IT: application to software pricing

With the ongoing virtualization of the computing infrastructure as well as the proliferation of multi-core processors, revising software pricing strategies (often based on number of processors) is a hot topic. The usual spin is: we can’t keep using the current model (as “number of processors” doesn’t mean much anymore) so we have to think of a new one. But there is another way to look at it. Revising the pricing strategy not because we have to but because we can.

Pricing software based on the number of processors only makes sense because we are used to it. We are used to it because it is prevalent. It is prevalent because it is easy to measure and apply (or was until recently). It’s hard to measure the value to the business of a piece of software but it is easy to measure how many processors run it. So we use the number of processors as an approximation of the value. This approach to pricing is very similar to the approach of policy-driven IT management that creates SLAs at different levels of the architecture. The IT administrator is told to make sure that a certain server stays up 99.9% of the time. Does the business really care that the server is up? No, what it cares about is that the business processes can progress and these processes happen to use applications running on the server. But if we told the IT admin “make sure the business processes can progress”, he doesn’t know what to do in practical terms. He doesn’t know whether the downtime to patch the server is worth it or not. By giving him a more measurable metric (uptime), the IT admin is now able to make the necessary decisions to meet the specific uptime SLA. Just like the number of processors is used as a convenient approximation of the business value of the software, the uptime SLA is used as a convenient approximation of the business need. Like any approximation, they are not perfect and making decisions based on them rarely leads to optimal decisions. But when that’s all you can do you call it good enough and you go with it.

One of the key promises of the effort to “bridge the gap between business and IT” is to better align infrastructure-level decisions with the real business impact. Products like OpenView’s Business Process Insight allow you to map business processes to the IT infrastructure that powers the steps of the process. So that you can make decisions on managing the IT elements based on their real impact on the business rather than fixed SLAs. We are seeing a huge amount of interest for this and there is a lot of room for optimization once this correlation is established. At this point, the focus is on using this to automate and optimize IT management. But this is so similar to the software pricing issues that one has to wonder whether these technologies won’t eventually allow us to price software in a way better aligned with the real business value provided by the software. And who knows, maybe one day management software will be used to tie salaries to business value rather than being driven by approximations such as “number of hours worked”, “number of bugs fixed”, “uptime of the server”, “number of specs produced”.

Comments Off on Bridging the gap between business and IT: application to software pricing

Filed under Business, Everything

A map to federated IT model repositories

Using scissors and tape, one can stitch street maps and road maps together to obtain an aggregated map showing how to go from downtown Palo Alto to downtown San Francisco. The equivalent in IT management is to stitch together different model repositories by federating them, as a way to get a complete view of an IT system of interest. As we go about creating the infrastructure for model federation, there is a lot to be learned from the evolution of street maps.

Let’s go back to paper maps for a minute. A map of the Bay Area will tell me what highways to take to go from Palo Alto to SF. But it won’t help me get from a specific house in Palo Alto to the highway and once in SF it won’t help me get from the highway to a specific restaurant. For this, I need to find maps of downtown Palo Alto and downtown SF and somehow stitch the three maps together for an end to end view. Of course all these maps have different orientations, different scales, partial overlap, different legends, etc. Compare this to using Google maps which covers the entire itinerary and allows the user to zoom in and out at will.

Let’s now go back to IT management. In order to make IT systems more adaptable, the level of automation in their management must drastically increase. This requires simplification. Trying to capture all the complexity of a system in one automation point is neither scalable nor maintainable. But one cannot simply wave a wand and make a system simpler. The basic building blocks of IT are not getting simpler: the number of transistors on a chip is going up, the number of lines of code in an application is going up, the number of data items in a customer record is going up. Literal simplification would be going back to mechanical calculators and paper records… What I really mean by simplification is decomposing the system into decision points (or control points) that process information and take action at a certain level of granularity. For example, an “employee provisioning” control point is written in terms of “mail account provisioning” and “payroll addition”, not in terms of “increasing size of a DB table”. That’s simplification. Of course, someone needs to worry about allocating enough space in the database. There is another control point at that lower level of granularity. The challenge in front of us is to find a way to seamlessly integrate the models at these different levels of granularity. Because they are obviously linked. The performance and reliability of the “employee provisioning” service is affected by the performance and reliability of the database. Management services need to be able to navigate across these models. We need to do this in a way inspired by Google Maps, not by stitching paper maps. Let’s use the difference between these two types of maps to explore the requirements of infrastructure for IT models federation.

Right level of granularity

The publishers of a paper map decide, based on space constraints, which streets are shown. With Google Maps, as you zoom in and out smaller streets show up and disappear. Similarly, an IT model should be exposed in a way that allows the consumer to decide what level of granularity is presented.

Machine-readable

Paper maps are for people, Google Maps can be used by people and programs. IT models must be exposed in a way that doesn’t assume a human sitting in front of a console is the consumer of the information.

Open to metadata and additional info

To add information to a paper map, you have to retrieve the information, find out where on the map it belongs and manually add it there. Google map lets you overlay any information directly on top of the map (see Housingmaps.com). Similarly, IT model federation requires the ability to link metadata and extra model information about model elements to the representation of the model, even if that information resides outside the model repository.

Standards-based

Google provides documentation for its maps service. It’s not a standard, but at least it’s documented and publicly accessible. Presumably they are not going to sue their users for patent violation. Time will tell whether this is good enough for the mapping world. In the IT management world, this will not be enough. Customers demand real standards to protect their investment, speed up deployment and prevent unneeded integration costs. Vendors need it as protection (however imperfect) against patent threats, as a way to focus their energy on value-added products rather than plumbing and just because smart customers demand it.

Seamless integration

I don’t know if Google gets all its mapping information from one source or from several, and I don’t need to know it. As I move North, South, East, West and zoom in and out, it is a seamless experience. The same needs to be true in the way federated models are exposed. The framework through which this takes place should provide seamless integration across sources. And simplify as much as possible discovery of the right source for the information needed.

Support for different metamodels

Not all maps use the same classification and legend. Similarly, not all models repositories use the same meta-model. Two meta-models might have the notion of “owner” of a resource but call it differently and provide different information about the owner. Seamless integration requires support for model bridging.

Searchable

Federated models repositories need to be efficiently searchable.

Up to date

Paper maps age quickly. Google Maps is more likely (but not guaranteed) to be up to date. Federated models must be as close a representation of the real state of the system as possible.

Secure

As you are composing information from different sources, the seamless navigation among these resources needs to be matched by similar seamless integration in the way the access is secured, using security federation.

Note 1: When I talk about navigating “models” in this entry, I am referring to an instance model that describes a system. For example, such a “model” can be a set of applications along with the containers in which they live, the OS these containers run on and the servers that host them. That’s one “model”. If the information is distributed among a set of MBean servers, CMOM, etc, then this is a federated model. I know some people don’t call this a “model” and I am not married to this word. Based on the analogy used in this entry, “system map” and “federated system map” would work just as well.

Note 2: This entry corresponds to the presentation I gave when participating in a panel (which I also moderated) on “Quality of Manageability of Web Services” at the IEEE ICWS 2005 conference in Orlando last week. The other speakers were Dr. Hemant Jain (UW Milwaukee), Dr. Hai Jin (Huazhong University of Science and Technology), Heather Kreger (IBM), Dr. Geng Lin (Cisco). Unfortunately, the presentation was made quite challenging when (1) the microphone stopped working (it was in a large ballroom), (2) a rainstorm had us compete with the sound of thunder, (3) torrential rain started to fall on the roof of our one-story building, turning the room into a resonance box and, to top it off, (4) the power went off completely in the entire hotel leaving me to try to continue talking by the light of the laptop screen and the emergency exit lights…. With all this plus time constraints, I am not sure I did a good job making my point clear. This entry hopefully does a better job than the presentation. The conference was quite interesting. In addition to the panel I also presented a co-authored paper based on an HP Lab project. The paper is titled “Dealing with Scale and Adaptation of Global Web Services Management”. The conference also allowed me to finally meet Steve Loughran face to face. Congrats to Steve and Ed Smith for being awarded the “Best paper” award for “Rethinking the Java SOAP stack“, also known as “the Alpine paper”. When a papers gets a nickname you know it is having an impact…

1 Comment

Filed under Everything, Research, Tech

EPR redefining the difference between SOAP body and SOAP header

The use of WS-Addressing EPRs is redefining the difference between SOAP body and SOAP headers. The way the SOAP spec looks at it, the difference is that a header element can be targeted at an intermediary, while the body is meant only for the ultimate receiver. But very often, contract designers seem to decide what to put in headers versus body less based on SOAP intermediaries than on the ability to create EPRs. Basically, parts of the message are put in headers just so that an EPR can be built that constrains that message element. To the point sometimes of putting the entire content of the message in headers and leaving an empty body (as Gudge points out and as several specs from his company do). And to the contrary, a wary contract designer might very well put info in the body rather than a header just for the sake of “protecting” it form being hard-coded in an EPR (the contract requires that the sender understands this element, it can’t be sent just because “an EPR told me to”).

This brings up the question: rather than twisting SOAP messages to accommodate the EPR mechanism, should the EPR mechanism be made more flexible in the way it constrains the content of a SOAP message?

Comments Off on EPR redefining the difference between SOAP body and SOAP header

Filed under Everything, Standards, Tech

WSRF and WS-Notification public review

The WSRF TC has approved a set of committee drafts and the corresponding documents are now submitted to public review, a step towards standard status in the OASIS process. The documents in this public review are:

  • WS-Resource
  • WS-ResourceProperties
  • WS-ResourceLifetime
  • WS-ServiceGroup
  • WS-BaseFaults
  • WSRF Application Notes

All the docs (and associated XSD and WSDL documents) can be accessed in one zip file. Now is the time to send your comments. I know I will. There is a lot of progress since the TC started a bit over a year ago and the actual SOAP messages defined by these specifications are useful, but unfortunately one needs a decoder ring to understand how to use the framework in a general way. And the WS-Resource document is NOT this decoder ring, it’s more the contrary. More on this later.The WS-Notification TC is not far behind. Last Thursday the TC approved new committee drafts of WS-BaseNotification and Ws-BrokeredNotification and asked OASIS to start a public review period on these two. So the official public review hasn’t started yet (we are waiting for the OASIS staff to start it) but hopefully it will very soon and you can already access the documents at the URLs provided in this email.

Comments Off on WSRF and WS-Notification public review

Filed under Everything, Standards

Spreading the word of SOA and SOA management

Over the last couple days, a few articles came up that help explain HP’s vision for Management of the Adaptive Enterprise, so here are the links.

Yesterday, Mark Potts published an article describing the value of SOA for enterprises and more specifically the management aspects of SOA (security, life cycle and configuration, management of infrastructure services and business services, governance, etc). BTW, the SOA practice from HP Consulting and Integration that Mark refers to at the end of his article is what I mentioned in my previous post.

Another interesting article is Alan Weissberger’s entusiastic report from GGF 14. Alan follows GGF and related OASIS activities very closely, doesn’t fall for fluff and is not easily impressed so this a testimony to the great work that Heather, Bryan, Bill and Barry did there, presenting a WSDM deep dive, the HP/IBM WSDM demos (which they also showed at IEEE ICAC in Seattle) and talking about the recently released HP/IBM/CA roadmap for management using Web services. These four should call themselves “Heather and the Bs” or “HB3” for short if they keep touring the world showing their cool demos. Can’t wait to see them at the Shoreline Amphitheatre. Of course, Alan’s positive comments also and mainly come out of all the hard technical work that lead to this successful GGF14, including the OGSA WSRF Basic Profile.

Two more articles to finish, both about the HP/IBM/CA roadmap. I talked to the journalists for both of these articles, one form ComputerWorld and one from the Computer Business Review.

Four good articles in two days, it is very encouraging to see how the understanding of how we are unleashing the power of SOAs through adaptive management is growing. This is what the roadmap is all about, explaining the objectives to people and inviting them on board.

Comments Off on Spreading the word of SOA and SOA management

Filed under Business, Everything, Tech