How does the architecture for such a platform should like? As we are facing it from the business side, let's stay with model driven architecture (people opting for another architecture please leave their comments below). We have the entity, as heart of our abstraction. The entities compose via compositions and associations, forming complex graphs. Entities do have identity (key), their factories, the set of properties, and a set of services (to allow validation of incoming data modification messages). This is where our persistent data abstraction finishes, and our business logic abstraction starts. Former is to handle defaulting, validation and calculated values; latter for handling complex transaction and customization scenarios. What does the latter contain? Cancellable and reversible operations (with possibility for operations to compose other operations for complex business logic chains), that operate on entities. These too have services, that support long running transactions, has parameters, factory, and selectors that for operations capable of supporting multiple services select the relevant at runtime.
These are the first level concepts of a model in my ideal model driven architecture. Moreover, we can define concepts like a change set – set of entities and operations that are running on top of them that can be committed and aborted together; so we are forming transaction abstraction as well. For the entity we can drop in some cubism as well – have measures and dimensions.


I might be the last one people turn to when the question about Satya and whether it would make good for the company arises (is it obvious I write about Satya Nadella and Microsoft?); but still here is my personal opinion: During my career path inside Microsoft I did have the opportunity to work with some of the greatest (and I do have 'shaking elbows' picture with most of them). Who am I thinking of? Don Box (the soap and XML webservices guy), Anders Hejlsberg (the guy behind Pascal, Delphi and C#), Robert Scoble (if you haven't heard the name – he turned Microsoft to be open – channel9, blogging, ctp, etc all his idea and effort), Norm Judah (services guy), S. Somasegar (head of Developer Division), Scott Hanselman (everything and anything guy, and one of the best speakers I ever seen – whether it is about life, remote work, or… it just rocks), Scott Guthrie (the guy in the red shirt), etc. (side note: Hey, soon I can increase the picturesque hall of fame of mine with no one else but Bjarne Stroustrup himself – if you have missed it, he joined Morgan Stanley recently to work together with my group) So, why I lay out these names? I did have the opportunity to have photo shoot with Satya, but I didn't. The reason? Not feeling the omnipotence of Gates? The ever lasting burning visionary powers of Ray Ozzie? The inability to dance like a monkey? I don't really know. Just he did not radiate the same unspoken glory as the rest of the wise men. Because he was always the one who could raise on the back of giants. So, based on my experiences, the next era would be a balanced growth, with focus on some of the more conservative businesses – enterprise, developers, servers. His humbleism and down-to-earth manners will resonate well with stakeholders, but his beliefs on server and enterprise will resonate well with… stakeholders. So, the 12th place in the board will go to ValueAct, but I think by the time they actually being enacted there, most of the changes they were keen to happen will eventually start happening anyway. So… Does this mean Nadella is being supported by ValueAct? Might be the case, and we will never find it out.