Holger Sirtl's WebLog

Microsoft's Cloud Technology applied in Enterprise Architecture

December, 2007

  • Holger Sirtl's WebLog

    Online Ressourcen im Januar 2008

    • 1 Comments

    Auch im Januar 2008 gibt es im MSDN und TechNet Magazine eine Reihe interessanter Artikel für alle, die sich für OBAs, S+S und .NET 3.5 interessieren. Ebenso warten auch einige interessante Webcasts auf Besucher.

    MSDN Magazin

    Technet Magazin

    Webcasts

    Termin Titel Level
    10.01.2008 WCF und WF in .NET 3.5 (1-3) - Jenseits von SOAP: REST-basierte Services 200
    10.01.2008 WCF und WF in .NET 3.5 (2-3) - Web-fähig: AJAX, RSS und Atom 200
    10.01.2008 WCF und WF in .NET 3.5 (3-3) - Gemeinsam stark: Services und Workflows 200
    10.01.2008 Spezielle Architekturen - Eine ganze Produktlinie muss her… 200
    17.01.2008 16:00 Office Business Applications für technische Entscheider 200

    Webcasts, bei denen nur ein Tag (aber keine Uhrzeit) angegeben ist, werden nur als Aufzeichnungen bereitgestellt. Der Termin gibt das Datum der Verfügbarkeit der Aufzeichnungen an.

  • Holger Sirtl's WebLog

    Die Microsoft Plattform - oder gibt es mehrere... ?

    • 1 Comments

    Microsoft ist leider nicht sehr eindeutig in der Kommunikation zum Thema "Plattform". Wo beispielsweise eine SAP relativ klar beschreibt, was unter ihrer Plattform zu verstehen ist, hängt die Antwort auf die Frage nach der konkreten Plattform bei Microsoft mitunter davon ab wen man fragt. Zum Teil liegt dies auch daran, dass das Spektrum dessen, was Microsoft mit seinem Produktangebot abdeckt, extrem breit ist. Microsoft adressiert nicht nur Unternehmenskunden (Serverprodukte, CRM, ...), sondern auch Privatanwender (Money, ...), "Gamer" (XBox, ...), Nachfrager an Unterhaltungselektronik (Zune, ...), und viele mehr.

    Doch was versteht Microsoft nun tatsächlich unter der Microsoft Plattform?

    Der Plattform-Begriff

    Doch zunächst die allgemeine Frage, wie der Plattform-Begriff definiert ist. Unter Wikipedia findet man folgende Definition:

    "In der Informationstechnologie beschreibt Plattform eine Hard- oder Softwareumgebung, in der Anwendungssoftware ausgeführt werden kann. Typische Plattformen beinhalten eine Architektur, ein Betriebssystem oder Programmiersprache und deren Laufzeitbibliotheken" [Quelle: Wikipedia; frei übersetzt]

    Der Begriff wird hier sehr weit gefasst. Mit Plattform kann demnach eine Hardwareumgebung, einem Betriebssystemumgebung, oder eine Systemsoftware-Umgebung etc. gemeint sein. Diese Mehrdeutigkeit führt auch in der Microsoft-Welt dazu, dass verschiedene Dinge als Plattform bezeichnet werden. Steve Guggenheimer, General Manager, Application Platform & Development Marketing Division, hat vor einiger Zeit einen interessanten Vortrag, gehalten, in dem er eine Reihe konkreter Plattformen aufgeführt hat. Folgendes Schaubild gibt einen Überblick über diese Plattformen und deren Einbettung in die Gesamtplattform.

    Abbildung 1: Die Microsoft Plattform

    Die Microsoft Plattform ist hierbei die Obermenge über den hier aufgeführten Unterplattformen.

    Die Windows Plattform

    Microsoft ist ein Softwareunternehmen. Auch die im Produktportfolio enthaltene Hardware (Xbox, Zune, ...) ist vom Programmiererseite nur über eine Softwareschicht ansprechbar. Über der Hardwareplattform liegt mit der Windows Plattform eine Software, die von der zu Grunde liegenden Hardware abstrahiert. Dieser Plattform sind Produkte wie Windows Vista, Windows Server, Windows Mobile, ... enthalten.

    .NET Plattform

    Die .NET Plattform stellt ein Sonderfall dar. Sie selbst unmittelbar auf die Windows Plattform auf, und ist Kernbestandteil aller Funktions-, Entwicklungs- und Management-Plattformen der Application Plattform. .NET stellt hierbei das Grundgerüst in Form von Basisklassenbibliotheken (.NET Class Library), Werkzeugen (Visual Studio) und der Laufzeitumgebung (Common Language Runtime, CLR). Die anderen Plattformen erweitern diese Bereiche um jeweils spezifische Klassen, zusätzliche Werkzeuge (SDKs). Gemeinsam bleibt die Laufzeitumgebung.

    Application Platform

    Auf der .NET Plattform setzt die Application Plattform auf, die mit ihren Funktionspattformen, Management- und Entwicklungs-Plattformen die Entwicklung und den Betrieb leistungsfähiger Softwaresysteme ermöglicht. Folgende Funktionsplattformen sind enthalten:

    • User Experience Plattform
    • Office Plattform
    • Business Intelligence (BI) Plattform
    • SOA / BPM Plattform
    • Data Management Plattform

    Daneben gibt es noch die

    • Development Plattform
    • Management Plattform

    Office Plattform

    An dieser Stelle möchte ich die Officeplattform herausstellen. Microsoft positioniert Office nicht mehr nur als Sammlung verschiedener Büroanwendungen, sondern als Plattform für die Entwicklung leistungsfähiger Geschäftslösungen. Anwendungen Sie auf dieser Plattform entwickelt wurden und eine Brücke schlagen zwischen den bekannten Office Client- und Serveranwendungen und Backend-Systemen werden als Office Business Applications bezeichnet.

    Weitere Informationen

  • Holger Sirtl's WebLog

    Die Rolle von Vista Gadgets in Rahmen von S+S

    • 1 Comments

    Die kleinen Helferlein, die in Microsoft Vista eingeführt wurden und nun defaultmäßig am rechten Bildschirmrand ihr Dasein fristen, sind - meiner Meinung nach - ein äußerst unterschätztes Werkzeug im Rahmen der Desktop-Anwendungsentwicklung.

    Technischer Überblick

    Vista Gadgets sind kleine, HTML-basierte, als ZIP-Datei verpackte Projekte, die in der Vista Sidebar installiert werden. Minimaler Inhalt der ZIP-Dateien ist

    • Manifest-Datei (gadget.xml) - diese Datei beschreibt das Grundgerüst eines Gadgets, d.h. Verweise auf die Startdatei des Gadgets, Icons für die Installationsdialoge etc.
    • Gadget (z.B. gadget.html) - diese Datei beschreibt die Anzeige des Gadgets. Die Sidebar-Umgebung sorgt dafür, dass das HTML korrekt in der Sidebar angezeigt wird.

    Zusätzlich können noch folgende Dateien enthalten sein

    • Settings (z.B. settings.html) - diese enthält die Beschreibung zur Darstellung des Optionen-Dialogs zum Gadget
    • Flyout (z.B. flyout.html) - diese Seite wird angezeigt, wenn das Gadget aus der Sidebar gezogen und auf dem Desktop abgelegt wird.
    • alle weiteren Dateien, die für die Anzeige benötigt werden (z.B. Bilder, weitere HTML-Seiten)

    Ein guter Einstieg ergibt sich (neben der Lektüre unten angegebener Internet-Ressourcen), wenn man eine vorliegende Gadget-Datei (Endung .gadget) einfach in eine ZIP-Datei (Änderung der Erweiterung auf .zip) ändert und dann mit einem beliebigen ZIP-Editor (z.B. WinZip) durchstöbert.

    Anwendungslogik von Vista Gadgets

    Wie oben zu sehen ist, bestehen Vista Gadgets aus ein paar Steuerdateien und HTML-Seiten (mit benötigten Inhaltsdateien wie Grafiken), die die Anzeige beschreiben. In einer Softwarelösung, die Vista Gadgets als Oberflächentechnologie einsetzt, kann Programmlogik auf zwei Arten enthalten sein:

    • Programmlogik basierend auf JavaScript
      Die benötigten JavaScript-Elemente können hier zusammen mit dem Gadget ausgeliefert werden. Wie gewohnt, kann das JavaScript in die HTML-Seiten eingebunden werden, oder in referenzierte Code-Dateien enthalten sein.
    • Programmlogik basierend auf Webservices, die vom Gadget aufgerufen werden
      Bei dieser Variante enthält das Gadget ebenfalls JavaScript. Dieses wird allerdings nur für die ereignisbasierte Steuerung (z.B. Reaktion auf ein Click-Event) und für Aufrufe der Webservices mit anschließender Verarbeitung der Rückgabewerte verwendet. Webservices stellen zusätzliche Geschäftslogik bereit.

    Die Rolle im Rahmen von S+S

    Vista Gadgets sind Bestandteil des "Software"-Teils im Rahmen von S+S. Für sie stellen sich Fragen der Bereitstellung (z.B. über eine Website), Installation etc. Der "Services"-Teil kann, wie der Name schon vermuten lässt, über Webservices implementiert werden, auf die von den Gadgets zugegriffen wird. Somit können S+S Lösungen unter Verwendung von Vista Sidebar Gadgets erstellt werden.

    Weitere Informationen

     

Page 1 of 1 (3 items)