@ClemensReijnen

Recent posts

Tags

Categories

Navigation

Pages

Archive

Blogroll

    Disclaimer

    The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

    Software plus Services [S+S] vs Software as a Services [SaaS] "The Battle"

    Just finished creating a SharePoint site for some international collaboration work and meanwhile Google launches Google Sites.

    googelsites

    Not that I'm thinking to switch to Google sites. But it's getting more and more interesting what's happening in the Cloud. On one hand we've got S+S, some services in the cloud and some services on-premise, and on the other hand you got SaaS, everything in the cloud.

    Not that exciting. Although, when you start reading all the comments people make why they want to use on thing over the other, it's getting interesting.

    For example a post from Phil Wainewright called Microsoft’s software-plus-Yahoo! play where he uses the old "Microsoft buys everything" ideas around services.

    A short summery of his post: Yahoo is 2.0 Microsoft isn't, so they want buy 2.0.

    Pretty boring argument, but it triggered Gianpaolo to give a reaction in his blog with a post called "S+S: Real or have I drunk too much Kool-Aid? :)". The example he uses to persuade the reader that S+S is real, Office with Office Live, isn't that exciting... but, it's a nice discussion.

    officelive

    Some statements from both posts:

    Gianpaolo:

    1. Office is far superior to any web based productivity tools.
    2. The problem with Office was collaboration and anywhere access
    3. Having the back end as a hosted solution is very good.
    4. No hassles in term of installation, data backup etc.

    But as far as user interaction is concern, I am a big believer in bringing it as close to the user as possible.
    Why would I ever want the cloud between me and my work?
    I believe in S+S because when done properly it is far superior to a 'cloud-only' SaaS model.

    So, Gianpaolo's reason to take S+S over SaaS is productivity although he also recognizes the pros behind a hosted solution in terms of installation and backup's

    Phil Wainewright:

      1. They’re still going to have to buy software
      2. Now that the Web exists, the easiest way to get those services is to click a link and let someone else run the software
      3. ‘Lots more software, but we’ll take care of it for you.’

    Phil, mentioned the pros behind hosted solutions and the money it costs to buy Office.

    This posting and counter posting continuous with two more post where Phil mentions the offline web, Adobe AIR and Google Gears, for bringing the cloud to your laptop... to get offline capabilities with SaaS. Gianpaolo uses a more interesting example then the Office example in this post.

    There are plenty of others, specially in the enterprise where data ownership, regulatory compliance etc. are big decision factors.

    So, we've got a start for some kind of a list.

    Software plus Services Software as a Service
    Productivity Installation
    Usability Data Backup
    Data Ownership Shared Working
    Regulatory Compliance  
    some other enterprise concerns...  
       

     

    Let's continue, with the Sites.Google blogposts this week and all their comments.

    First an impressive article "Why Google Apps Could Lose the Enterprise Market" [to long to call it a blogpost] by Sarah Perez.
    The article continues where Gianpaolo stopped mentioning reasons for the enterprise.

    A pro for SaaS [ Sites.Google == SaaS ] workers can set up a site 'without having to burden IT for support'. The main idea behind this; end-users can use what ever kind of tool they like out-of-the-Cloud to do there work. No more contact with the IT department, no more maintenance, etc pretty interesting but there are some drawbacks. Shara mentions five: Functionality, Security, Terms of Service, ROI, Shrugs Shoulders.

    Functionality, actually the same as usability and productivity.
    Security,

    Although users may see IT as gatekeepers preventing them from being able to do their jobs, turning that control over to Google instead may not be a better solution.

    Compliance with Sarbanes-Oxley regulations

    It would be comforting to have an SLA that covered the entire suite

    Terms of Service, this is interesting reading, I didn't know it but in the Google TOS has this:

    Sentecne This licence is for the sole purpose of enabling Google to display, distribute and promote the Services and may be revoked for certain Services as defined in the Additional Terms of those Services

    ROI, I don't understand the argumentation around this topic in the article.

    Shrugs Shoulders, this is a nice example what can happen when you give control away, you have to pay to get it back.

    So they only way to control employee access is to sign up for the program? If that wasn't such genius, I might actually call it...well, evil.

    Anyway, lets look at the comments...

    Blah. And just when companies are starting to get used to their employees having blogs, we now have this new battle to fight.

    The way I see it, if IT departments were doing their jobs (and some are) there would be no need to be having this discussion.

    Reminds me of the PC vs. Mainframe arguments in the early eighties. It will be interesting to re-visit this issue in 20 years.

    Because just as data is important to Google, it is also important to those companies. Not all innovative uses of information technology goes on in Silicon Valley, businesses are implementing more advanced distributed applications and architectures in order to have the data where it is needed when it is needed

    Solve that nagging problem of control, create some sort of hosting service that could be configured and monitored by corporate IT professionals

    Any time you upgrade to a newer version you need to build again most of the old intranet sites.

    Enhough quoting...
    let's add some points to the table

    Software plus Services Software as a Service
    Productivity Installation
    Usability Data Backup
    Data Ownership Shared Working
    Regulatory Compliance Self Servicing End-Users
    some other enterprise concerns... No Upgrading Issues
    In Control  
    Existing Architectures  
    SLA  

     

    One thing I'm missing is the online-offline capabilities of S+S, or can you count that under Productivity and Usability. I use Sharepoint allot, but always even on the Wiki pages, I attach a Groove workspace to it, just to keep on working while I'm offline. When I'm on a plane I can keep on working, next week I'm on vacation and not sure the hotel has Internet access [Yeah I work during vacations] So, offline capabilities are very important for me.

    I think that also counts for people working at the office, there are enough examples of services which stopped working [Microsoft Windows Live Services Suffer Global Outage, Salesforce.com crashes again, Thread: Massive (500) Internal Server Error.outage started 35 minutes ago] and when you depend on them as an enterprise it will cost a lot of money. At that moment the difference between working offline with outdated data and not working at all  is a big difference between S+S and SaaS.

    In conjunction with that, the SLA. The SLA story behind SaaS applications is a bit tricky. Who do you give control over your business and your business data? someone you trust! to bad, trust isn't business vocabulary. I never heard a customer saying to me "I trust on your bleu eyes that you will finish that project in time in budget". So, there are different kind of agreements. Amazon pays money when they don't fulfill the SLA they offer and Salesforce.com tries to get trusted by the customer to show them there uptime. Sounds al great, but they don't take in to account something like a cable break [Mediterranean Cable Break].

     cablemap5

    So, trust and SLA's are nice to have offline capabilities are a must have..!

    [ this journey will continue, the post is getting bigger and bigger and no ended  yet... so, I will proceed after my vacation. Probably during my vacation, I got offline capability with Live Writer for postings ]

    The other posts and comments I planned to use:

    Google Sites: What's all the fuss? <-- got a great comment: "where can I download Google sites"

    It Took 16 Months, But Google Relaunches Jotspot <-- interesting thing about Services out of the Cloud, what happens when a Service Providers is bought by an other company. It happens ;-)

    Posted: Feb 29 2008, 17:45 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    Off from some quality time and a lot of traveling

    While everywhere around the world the launch events {HEROES} are taking place, I'm preparing myself for some traveling around the globe.

    heroes

    In the Netherlands {Heros} will take place on the 6the of March and in Belgium the 11 till 13 March [funny: every country has a different site]. I'm not attending but will be present with the Team Architect case study. Last Monday I had a whole day video shooting in Brussels for the launch video in Belgium/ Luxembourg and a peer is going to give the Team Architect presentation in the Netherlands.

    imm017_18Don't feel sorry for me, I'm going to have some really good quality time with my family in the Alps, finally I can use my K2 Mnt. Bakker telemark skies again.


    After this vacation I'm immediately go to the airport to catch my flight to Redmond. I will attend the Rosario TAP Kickoff [we already start working on this, it's going to be a interesting year], the VSTS ALM Innercircle Airlift and will have some collaboration work for our book project. So, a pretty long stay in Redmond.

    Then after four days at home, we [me and Vicky] will travel to Italie for La Skieda International Telemark festival, meet allot of friends and will have some good party time. Afterwards off to an other book-project meeting some where in the world.

    So, enough traveling, enough working and enough quality time in March and April.

    Posted: Feb 29 2008, 03:18 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    Code Generation 2008 - June 25-27 Cambridge UK

    I'll be there...
    with a session

    code

    Code Generation 2008 - June 25-27 Cambridge UK
    www.codegeneration.net/conference/

    Posted: Feb 24 2008, 16:26 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    How To Collect Data from the Application Diagram to create WSSF Service Models

    Post #02 of a collection of posts with some more technical details about the creation of richer implementations with Visual Studio Team Architect.
    This is post 1: How To Fire a Guidance Package Recipe from the Implement Application Feature of Team Architect.

    lo
    [Dynamic System, Lorenz attractor]

    First you have to understand System Definition Model (SDM).
    SDM is part of the overall Dynamic Systems Initiative (DSI) from Microsoft.

    The Dynamic Systems Initiative (DSI) is a commitment from Microsoft and its partners to help IT teams capture and use knowledge to design more manageable systems and automate ongoing operations, resulting in reduced costs and more time to proactively focus on what is most important to the organization. The System Definition Model (SDM) is a key technology component of the DSI product roadmap that provides a common language, or meta-model, that is used to create models that capture the organizational knowledge relevant to entire distributed systems.

    Quote from System Definition Model Overview White Paper.

    Dynamic Systems Initiative also contains ideas like Application Lifecycle Management, Microsoft Infrastructure Optimization Model and the just released V2 version of the Design For Operations Models [full name: Visual Studio Team System Management Model Designer Power Tool].     

    2

    Often you here the term Service Modeling Language (SML) in relation with SDM, the SML Insight blog gives some explanation.

    The model-based management functionality in Windows Server 2008 is based on Microsoft's System Definition Model (SDM) version3, which provided the basis for the Service Modeling Language (SML) proposal and submission to the World-Wide Web Consortium SML Working Group.

    I'm curious how the DSI initiative and SDM / SML are going to evolve with Oslo and with that how Team Architect is going to evolve, a nice subject for another post.
    Anyway, SDM is an XML-based meta-language for distributed systems.

    The SDM structure behind Team Architect.
    You can split the SDM structure behind Team Architect's Distributed System Designers in two parts. One XML part responsible for the loading, structuring and displaying systems, endpoints and resources in the Distributed System Designers, the <DesignData> element [MSDN link]. The other part holds all SDM relevant information, building blocks as SDM objects, relationships, and optional additions to objects such as settings, flows, and constraints, which also has <DesignData> elements.

    Best explained with an empty Application Diagram file.

     sdm

    The ROOT Node still named after the codename "Whitehorse", I like that ;-)... next you have a one <Solution> node with a <DesignData> element, contains information about the solution, and one <SdmDocument> with two <DesignData> elements. The first is information for the Deployment diagram the second for the design-surface, this one will contain sub-systems when we add shapes on the design surface. [see XML below]

    When we add an WebService shape to the design surface we will get an extra <SdmDocument> element which contains beside <DesignData> all the configuration.

     sdm2

    adding an endpoint to the Service will give you this XML.

    sdm3

     

    So, although the structure looks a little bit overwhelming , it's easy to understand and basically you can say that there are models which contains models [The "designsurface"model has "application"models and an "application"model got "endpoints"models which also have types], all the models got <DesignData> and are described in a separate node which contains settings / properties.

    Distributed System Designers Reader
    Now, you only have to make some kind of Distributed System Designers Reader which collects this information for you. I made a object model [see image] and a factory method [with many XML readers] which loads the model. [started to change that to LINQ]

    This last step, actually the complete post, needs to be done when you use VS2005 or VS2008 for Rosario it's much easier [see this post, Rosario Team Architect Exposed, Getting Information Out Off the Designers].

    Anyway, next post generate Service Models which uses this object model.

    Posted: Feb 24 2008, 03:16 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    ALM Definitions

    Always interesting what the different organizations say about a topic.

     

    ALM Forrester

    The coordination of development life-cycle activities, including requirements, modeling, development, build, and testing, through:

    1. enforcement of processes that span these activities;
    2. management of relationships between development artifacts used or produced by these activities; and
    3. reporting on progress of the development effort as a whole.

    Source: The Changing Face of Application Life-cycle Management - Forrester August 2006

     

    ALM Wiki 

    Application lifecycle management (ALM) regards the process of delivering software as a continuously repeating cycle of inter-related steps: definition, design, development, testing, deployment and management. Each of these steps needs to be carefully monitored and controlled. 

    Source: Wikipedia, the free encyclopedia

     

     ALM Microsoft

    Application Lifecycle Management (ALM) aligns the three capabilities of the organization: Business, Development and Operations by providing integration between the various tools used and activities performed within each of these capabilities.

    Aligning these three capabilities results in applications that meet business demands and that are better manageable.

    The Three pillars of ALM

    1. Traceability
    2. Process automation
    3. Reporting and analytics

    Manual processes can be more efficient and effective through tool integration

    Source: Application Lifecycle Management and Visual Studio Team System WorkShop [no link]

     ALM Itil

    and don't forget Borland...

    Capture

    Borland believes every CIO and IT organization deserve the infrastructure that empowers them to advance their software delivery process by making it measurable, predictable and improvable, just like any other critical business process. And, we fight for the rights of our customers who are passionate about driving the next generation of software productivity on their terms.

    borland alm

    Source: Open Application Lifecycle Management (ALM) Vision

    What can we learn from these definitions?
    A wide variety in scope. ITIL is focused on the operational side of ALM, the Wiki and Forrester descriptions are more focused on the Software Development Lifecycle [SDLC] and Microsoft takes a bigger scope with business, development and operations, although the tooling and the assessment are focused on SDLC. Borland is also talking about a wider scope, when you look at the RUP like model. But the main pro is their focus on "many processes and many tools" so it should fit more then one environment.
    Beside this difference in scope, everybody agrees on terms like: measurable, predictable, traceable, manageable, monitored etc etc... smells like "in control" ;-)

    Anyway, I use this image when I define ALM and for sure it's about "in control" but it's even more about communication..! the people, helping them to communicate in a seamless manner.

     

    ALM=

    Posted: Feb 18 2008, 16:55 by Clemens | Comments (1) RSS comment feed |
    Filed under:

    Finally the GAX/GAT February 2008 Final Release

    GAX/GAT February 2008 Final Release

    gax

    The Guidance Automation Extensions (GAX) expands the capabilities of Visual Studio by allowing architects and developers to run guidance packages, such as those included in Software Factories, which automate key development tasks from within the Visual Studio environment.

    The Guidance Automation Toolkit (GAT) is a guidance package which allows architects to author rich, integrated user experiences for reusable assets including Software Factories, frameworks, and patterns. The resulting Guidance Packages, composed of templates, wizards and recipes, help developers build solutions in a way consistent with the architecture guidance. In order to use the Guidance Automation Toolkit, you must first install the Guidance Automation Extensions.

    New In This Release

    The February 2008 Release of the Guidance Automation Extensions and Guidance Automation Toolkit has the following improvements to the earlier release, the July 2007 Community Technology Preview:

    Support for Visual Studio 2005 and/or Visual Studio 2008. This version of GAX will run on either version of Visual Studio. If you don’t have GAX installed, you can install GAX to support Visual Studio 2005 or Visual Studio 2008 or both. The installer will automatically determine which versions of Visual Studio you have installed.

    Posted: Feb 16 2008, 06:03 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    Amazon Services, the Service Model

    Trigger by Steve Clayton post about "Amazon - Where Do You Want To Go Tomorrow?"

    A while ago I made a demo with Amazon Web Services, just to show what the limitations are when using models or how models can help to make better designs. Anyway I used the Web Service Software Factory Modeling Edition and Visual Studio Team Architect capabilities to generate the service models and service agents.

    This is the application diagram where we have the existing Amazon services with two endpoints, the AWSECommerceService and the MechanicalTurk, and a Windows Client application which consumes them. For this demo I used the conform endpoint to WSDL functionality, but you can also use the Add Existing Service feature.

    It looks pretty simple

    amazon

    The next thing I did during the demo is generating the service models and look... this is what you get, allot of shapes. A nice detail is the line between AWSECommerceService and the MechanicalTurk to the same messagecontract. the model generation functionality looks if there are contracts who are used by both services and connects them. [it's the HelpResponse message]

    amazon2

    More detail

    amazon3

    Anyway, I assume everybody agrees this is a useless model and the service agent model even looks more terrible. A real spaghetti model, where nobody can work with.

    So, I totally agree with Juval Lowy's guidelines for services.

    4. Avoid contracts with one member.

    5. Strive to have three to five members per service contract.

    6. Do not have more than twenty members per service contract. Twelve is probably the practical limit.

    I say proven practice..! 

    Posted: Feb 15 2008, 08:52 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    5 minutes Visual Studio Team System Architecture survey.

    VS Team Architect Blog: Architect Edition Survey

    Survey
    Posted: Feb 11 2008, 00:50 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    Engineering World: A unique congress with Microsoft, Oracle and IBM

    Saturday I joined a congress organized by Sogeti Netherlands and here most important partners "Microsoft, Oracle and IBM".
    It happens not that often that they join the same congress.

    sunny

    Although, it was the first sunny day within weeks and it was on a Saturday, there where about 130 till 150 people attending the congress.

    The program was great with Scott Ambler and the Playlogic Game Factory as keynote speakers and  during the day topics like:

    1. Modernizing of Enterprise Applications
    2. Business Intelligence out of the box
    3. Java en Concurrency
    4. Second Life Scripting Language
    5. EGL, new kid on the block?
    6. Uniface, the 4GL language
    7. Secured Application Development
    8. MS Visual Studio Team System 2008, ALM and Model Driven 

    Really had a good day, visited all the non-Microsoft presentations and gave session number 8 [Deck download [4.15 MB]].

    Posted: Feb 10 2008, 14:55 by Clemens | Comments (0) RSS comment feed |
    Filed under:

    Use Groove for easy document management within SharePoint

    The default SharePoint interface is a little bit time consuming for heavy users, for example I must make at least 5 clicks to add a new folder, the same amount for uploading a document and login two times if I want to edit a document. (and don't forget all the work you must do when adding a new blogpost with pictures... I use Windows Live Writer ;-)

    image 

    image

    When you use Groove's functionality to synchronize workspaces with SharePoint libraries, you only have to: Right click "add folder", right click "add document", "double click open document"... and after you are finished editing, adding, etc... just click synchronize and your done. Works almost the same as your Windows Explorer..!

    sharepointgroove

    And with Groove beside [in tandem with] SharePoint you can work offline and give others, who are not in your companies directory, access to the files.

    from Groove and SharePoint differ, but also work together:

    Using Office Groove and Office SharePoint Server together

    In some cases, your best course is to use Office Groove and Office SharePoint Server in tandem rather than either one alone. "They're not mutually exclusive at all," says Bob Barnes, a senior specialist at Conchango plc, a Microsoft Gold Certified solution provider headquartered in London. For example, Office Groove lets you import Office SharePoint Server document libraries into your workspaces. Thereafter, if someone adds or edits a file in Office SharePoint Server, it appears in Office Groove, and vice versa. Thus, team members can use Office Groove as a tool for taking Office SharePoint Server files offline, or as a simple way to give vendors and partners access to Office SharePoint Server content on your company's intranet.

    You can use that same functionality to link field teams with the head office. An insurance company can create an Office SharePoint Server document library for its claims inspectors at headquarters, for example, and include it in an Office Groove workspace that its mobile claims adjustors use. As adjustors complete claim forms on their laptops during the day, they can store them in Office Groove. As soon as they reconnect with the Internet, Office Groove automatically uploads those forms to Office SharePoint Server for later review by managers at headquarters.

    This is a Dutch post from Bart Wessels about this with some more details

    Posted: Feb 08 2008, 04:31 by Clemens | Comments (0) RSS comment feed |
    Filed under: