Oslo bound!

No, I am not taking a trip to here, here, or here.

Oslo is the codeword (gosh, I love code words for products. I still think of VS2005 as Whidbey.) for the next generation of SOA enabling products and technologies from Microsoft. Oslo was recently announced at the SOA conference in Seattle, WA this week. Oslo is a very small word for something so big.

I have been fortunate to be involved in some groups that get to provide feedback and input into the shaping of this strategy. And it has been killing me not being able to even talk a little bit about it. I have to be careful and only talk about what MS has been public about.

Parts of Oslo are the next versions of BizTalk, WCF, WF, Visual Studio, and a whole raft of other technologies that CSD are trying to bring into alignment.

The MS platform provides a bunch of great techs today to do SOA, and build ESBs. The current problem is that the toolset is rich, but not well aligned. These investments will make these solutions that much easier to build, and much more valuable.

One of the major underpinnings of this strategy is bringing modeling to the next level. There have been many, many attempts at modeling over the years, and the past of modeling is a MadMax-esuqe wasteland littered with the corpses of models and obtuse languages. The first modeling tools I have really liked were the class designer in Whidbey, and the workflow modeling with WF and BizTalk.

These models are the new abstraction layers. It all started with assembly, then c/c++, then c#. Each time moving a little farther away from the AX register, and making the developer better, faster, and cheaper. Now we are moving up the food chain, in a big way. We need to declare what the system needs to do (ala XAML and LINQ, saying what I want done), and move away from imperative development (saying what I want done, and how I want it done.) Let the platform figure out the HOW. As an enterprise developer charged with delivering value to the business, I just want to focus on the WHAT.

MS hopes to elevate models even farther, and make modeling a first class citizen across your systems. Many times models only apply to one part of the process, one role on the team. The models I mentioned above are like this. Only the developer uses the class designer. A business user doesn't, an IT operations manager doesn't, and a wacky cartoonist doesn't either. Models will stop representing the application; a poor reflection, and become the application. BizTalker's are used to this, as we see the orchestration as the application in some senses. What MS is talking about here is a 10x leap in the concept.

Well, we don't want models littered all over the place. So they have announced that they will unify and streamline several different repository technologies across the platform. This is pretty exciting, once you dig into the details. The repository will be much more than just a UDDI style directory of services, but exist as a place to house the models, and related meta data.

As I often say to my MS friends when I get to see this tech, "I wish the future was here now." I am just not patient.

Through a lot of the meetings that I have been in with MS about these future products and plans, I have seen a significant concern about leaving no model behind. Customers have been burned in the past when their investments wouldn't migrate forward with the new tech. I think they have learned their lesson, and will make sure that all of the investments customers have made in the platform will move forward easy. 'Pay it forward!'. :) If they don't, from a sales and marketing position, they open themselves up to a 're-evaluation' project with some customers. Just think, if you had to re-engineer all of your workflow's and business logic around doing-what-you-do, you would at least take a look at the market before blindly jumping into the next version.

The things I am concerned about are two fold:

- Will all of these new innovations move me forward from where I am with BizTalk, or will there be a new pain path to get back to where we are already. This is a major new move. Bigger than WCF and .NET 3 in my opinion. Some of this is re-engineering of what we have, it has to be. I want to make sure that I can do everything I can do today, and more, in the new world. I don't want a 1.0 world, I want a 6.0 world. And let me tell you, I have recent experience in delivery a new system that just simply does what the old system does. On the surface it seems as the easiest project. It's a huge iceberg though. One of the hardest types of projects you can do.

- Second, these tools and platforms MUST support an agile business, and an agile IT shop. Not just agile developers. I must be able to model, deploy, unit test, and refactor easily. This is what will draw over the biggest competition.

Who is the biggest competition? The developer who wants to write code the old fashioned way.

Comments

Popular posts from this blog

Farewell

How does an Architect pack?

Job security is a myth, and how IT Pros are Thriving