Erfahrungen und Wissen zu Microsoft Windows SharePoint Services und SharePoint Server.

November 2008 Archive

20 Nov

Azure Services Platform

Schlagwörter wie Azure Services, Cloud Platform, Software as a Servcie (SaaS) sowie Software + Services (S+S) sind heute in aller Munde. Doch um diese Begriffe gegeneinander abzugrenzen, muss man sich über Application Platforms im allgemeinen im Klaren sein.

Microsoft Application Platforms

Zentraler Bestandteil einer Application Platform ist an sich die Applikation, welche auf einem Betriebssystem (Windows) mit einer Runtime (.NET) läuft. Die Applikation wird z.B. mit dem Visual Studio entwickelt. Das System mit der Applikation bettet sich in eine Infrastruktur, bestehend aus:

  • Mechanismen für die Persistierung von Daten (SQL Server, SharePoint Listen)
  • Kommunikation und Prozessen (Biztalk Server)
  • Identität (Active Directory).

Die Kapselung dieser Applikationen als Services zur Abbildung von Geschäftsprozessen wird als Service Oriented Architecture beschrieben.

Die überwiegende Mehrheit der Firmen nutzen heutzutage on-premises Software, also Software welche auf einer Infrastruktur innerhalb der Firma betrieben wird.

Eine andere Art von Application Platform ist ist die Cloud Platform, auf der Cloud Services laufen. Cloud Services lassen sich in folgende Kategorien aufteilen:

image

  • Software as a Service (SaaS): Die Applikation läuft in der Cloud und wird mit dem Browser bedient, z.B. ein online CRM System.
  • Attached Services: Die Applikation läuft lokal und greift auf Zusatzdienste in der Cloud zu, z.B. Windows Update.
  • Cloud Services: On-premise Software oder Applikationen in der Cloud werden um Zusatzfunktionen erweitert.

Die Kombination von on-premise Software sowie Cloud Services ergibt Software + Services, also Software auf einer Infrastruktur innerhalb der Firma mit zusätzlichen Services im Internet, welche einen sinnvollen Mehrwert hinsichtlich Kosten und Verfügbarkeit für das Unternehmen generieren.

Azure Services Platform

Die Azure Services Plattform ist eine Zusammenführung verschiedener Technologien in der Cloud:

image

  • Windows Azure: Eine auf Windows basierende Laufzeitumgebung für Applikationen mit Möglichkeit zum Speichern von Daten.
  • .NET Services: Diese Services bieten Schnittstellen für die Zugriffskontrolle, die Kommunikation von on-premise Applikationen und Applikationen in der Cloud sowie Workflows.
  • SQL Services: Diese Services bieten eine SQL Server basierte Struktur zum Speichern von Daten.
  • Live Services: Durch ein Framework können auf die in den Microsoft Live Applikationen (Hotmail, Messenger) gespeicherten Daten zugegriffen werden.
  • SharePoint Services & Dynamics CRM Services: Diese Services bieten Funktionen für Kollaboration, um stärkere Kundenbeziehungen aufzubauen.

Alle Komponenten der Azure Services Plattform können sowohl unabhängig voneinander als auch im Zusammenspiel miteinander genutzt werden.

Anwendungsbeispiele

Windows Azure erlaubt das Betreiben von Applikationen sowie die Möglichkeit zum Speichern von Daten in der Cloud. Diese Applikationen laufen auf einer Hardware, welche weder dem Entwickler noch dem Betreiber der Applikation sichtbar ist. Vielmehr handelt es sich um eine abstrakte Ebene, die es erlaubt, dynamisch Ressourcen für den Betrieb der Applikation hinzuzufügen oder zu entfernen. Des Weiteren muss man sich nicht um Verfügbarkeit, Backup oder den Kauf der Hardware kümmern.

Die .NET Services erlauben eine firmenübergreifende Zugriffskontrolle auf Applikationen. Ebenso können über den Service Bus Partner oder Kunden einer Firma auf Ressourcen innerhalb der Firma zugreifen, ohne z.B. Änderungen an der Firewall durchzuführen. Über Workflows können Geschäftsprozesse firmenübergreifend erstellt werden.

Die SQL Services bieten eine preiswerte Speicherung von Daten ausserhalb der eigenen Firmeninfrastruktur. Über die Services können Daten für eine Netzwerk bestehend aus Firmen und Partnern bereitgestellt werden. Weiterhin können Daten kostengünstig archiviert werden.

Die Live Services adressieren weniger die Geschäftskunden, sondern eher den Enduser an sich. Über das Framework lassen sich Kontakte, Fotos oder News über beliebigen Medien online als auch offline nutzen und synchronisieren.

Fazit

Innovation bringt Vorteile: Vorsprung gegenüber Konkurrenten, Kosteneinsparungen oder neue Möglichkeiten in der Zusammenarbeit über bestehende Grenzen hinweg. Die Microsoft Application Platform ist in vielen Unternehmen fest etabliert und bietet dem Kunden eine starke Basis für seinenGeschäftserfolg. Diese Basis wird nun um eine Application Platform im Internet erweitert: Software + Services. Diese neuen Services ergänzen bestehende firmeninterne Infrastrukturen und bieten einen strategischen Mehrwert, hinsichtlich Angebotserweiterung und Kosteneinsparungen bei hoher Verfügbarkeit.

Quellen:

17 Nov

namics @ namics in der Schweiz (und nicht mehr bei der TechEd)

Am Fr. dem 14.11. ging die TechEd 2008 in Barcelona zu Ende. Das Fazit ist ausserordentlich positiv: Das Niveau der Vorträge war meistens sehr hoch und man konnte einiges lernen, vor allem über die zukünftigen Trends und Technologien.

Neben den Sessions konnte man in der Exhibition Hall Stände verschiedener Firmen besuchen und Infos über ihre aktuellen Projekte erfahren. Des Weiteren konnte man auch in Kontakt mit Experten verschiedener Technologiebereiche kommen und sich austauschen.

STA71298

Die Organisation war sehr straff und die Mitarbeiter von Microsoft waren immer bemüht, bei Problemen weiterzuhelfen bzw. darauf zu achten, dass jeder mit seinem Badge auch die richtigen Räume findet... Stichwort Claims Based Identity. Die Technologie von morgen heute schon praktisch umgesetzt.

Was bleibt noch? TechEd 2009...Wir sehen uns dann nächtes Jahr in Berlin:

Untitled-1

In dem Sinne eine schöne Woche.

13 Nov

TechEd 2008, Barcelona, Tag4

Urs Wanner: TechEd Dairy
Donnerstag 13.11.2008

Put your Big Ideas onto Tiny Devices using .NET
Rob Miles (http://www.robmiles.com/welcome/)

In dieser Präsentation ging es um das .Net Micro Framework. Ich habe nicht mal gewusst, dass es so was gibt und habe mehr aus Lust als aus Pflichtgefühl diesen Vortrag besucht. Das .Net Micro Framework erlaut es, für sehr kleine devices embedded code in C# zu schreiben. Dabei handelt es sich um den code, der zum Beispiel in Messfühlern oder Kugelschreibern läuft. Rob Miles hat einige Beispielanwendungen vorgeführt: Da war unter anderem eine bunte Lichterkette für Weihnachtsbäume, die immer wenn Rob was in seinen Blog schreibt automatisch alle Lampen auf rot umschaltet. Dazu abonniert die Steuerung der Lichterkette den rss-feed des blogs, findet jeweils das Datum der letzten Änderung heraus und kann so entscheiden, ob ein Neuer Eintrag vorliegt.

Da möchte man doch sofort mitbasteln. Ich habe mir die SDK jedenfalls schon runtergeladen!
http://msdn.microsoft.com/en-us/embedded/bb267253.aspx

Security Architecture for Heterogenous Enviroments in the Real World – The Identity Meta System and Federated Identity applied to a Real-World-Scenarios
Mario Szpuszta (http://blogs.msdn.com/mszcool/default.aspx)

Hier geht es um eine Security Architektur, die mit dem neuen Framwork (Codename Zermatt oder Geneva) umgesetzt werden kann. Hier die Idee: Ein Security Token Service stellt aufgrund einer Authentifizierung ein Token aus. Dieses Token kann beliebige Claims enthalten. Diese stellen Informationen über den authentifizierten Benutzer dar (zum Beispiel könnten das die AD-Gruppenzugehöhrigeiten sein). Ein Service erwartet nun dieses Token und kann aufgrund der vorgefundenen Claims die Autorisierung vornehmen. Das Interessante dabei ist, dass die Service Security nicht selber Authentifiziert sondern die benötigten Informationen über den User im Token erhält. Dies kann auch plattformübergreifend und (im Gegensatz zu SSO mit Kerberos) unabhängig von einem AD funktionieren.


Gruss aus Barco
Urs

13 Nov

Architecture Session: Avoid a failed SOA

Der "MASTER" him self, Udi Dahan hat es sich nicht nehmen lassen, auch hier an der TechEd 2008 in Barcelona sein bestes Kund zu tun!!!

In 3 aufbauenden Session über 2 Tage verteilt "das hat auch seinen Grund", erklärte Udi wie sich eine wirkliche Service Oriented Architecture erstellen lässt.

Wer wirklich versucht hatte, aufmerksam den Worten zu folgen, hatte eine gute Chance nach 30 Minuten einen Brain-Dump zu erlangen ;O)

SOA != Nur Services + WSDL!

Grundlegend und mit weisen Worten wurde dem Publikum veranschaulicht, welche Komponenten für einen erfolgreichen Einsatz einer SOA notwendig sind!

Als Basis diente dazu eine Shop-Lösung welche ca. 1 Mrd. Dollar im Jahr umschlagt, und noch wachsen möchte. Jedoch war dies mit dem bestehenden System nicht möglich, und somit musste eine "wirklich schlaue" Lösung her.

Lösung

Udi zeigte, wie man mittels Messaging Patterns (Publish + Subscribe), Caching, einer Event Driven Architecture (EDA) uvm. ein System realisieren kann, welches zur Runtime gewartet und aktualisiert werden kann, ohne das auf Bestellungen verzichtet werden muss "Bei ca. 1 Mrd. $ kann eine kurze System-Down-Time schon mal viel Geld kosten".

Weiters wurde in aufbauenden Sessions hingewiesen, wie Order Systeme erstellt werden können, die im Fall von System-Crashes denoch gewährleisten, das Bestellungen nicht verloren gehen.

Die Overall-Message allerdings war ... "egal welche Technologien jeden Tag aus dem Boden gestampft werden ... Architecture Styles haben sich über Decaden hinweg bewährt und sind Technologie unabhängig".

Das bedeutet, dass nicht zuerst die Technologie gewählt werden sollte, sondern "immer" zuerst die Kundenwünsche analysiert werden müssen ... und daraus ein schlaues "Design" entworfen werden "muss", welches vor allem das Thema "Skalierbarkeit" stärker berücksichtig sollte.

Und weiters wäre es "blauäugig" zu meinem, mit diesen 4 Absätzen habe man alles Wissen erlangt um in Zukunft nur noch "gute" Projekte an den Mann zu bringen, da dieses Thema "schier" unendlich erscheint. Wenn man allerdings den Tips des Meisters folgt und beherzigt, ist man sicherlich auf einem guten Weg zu erfolgreichen Projekten.

Weitere Infos zu Udi Dahan sowie zu den Themen SOA, EDA, Messaging Patterns uvm. können auf seiner Website gefunden werden:

Udi Dahan, The Software Simplist, Enterprise Development Expert & SOA Specialist, http://www.udidahan.com/

13 Nov

Windows Workflow Foundation 4.0

Ron Jacobs hat in seiner „Custom Activities in Workflow Foundation 4.0“-Session erklärt, was sich in Zukunft in diesem Bereich ändern wird.

New Core Engine

Grundlegend wird es in der Version 4.0 eine „komplett“ neue Core-Engine geben!!!
Für machen mag das ein No-Go sein, da alle bisherigen „Custom Activities“ upgedated werden müssen!

Für machne mag dieses Vorgehen von Microsoft nicht nachvollziehbar sein, warum nach 2 Jahren (seit .Net 3.0) eine komplett neue WF-Core Engine ins Rennen geschickt wird. Jedoch stellt dieses Vorgehen aus meiner Sicht die beste Lösung dar.

Warum soll das die beste Lösung sein!?
Grundlegend werden in Zukunft alle Technologien und Produkte aus dem Hause Microsoft auf den „OSLO“-Zug aufgegleisst werden.

Was sind Activities?
Wenn ich in diesem Blog-Eintrag von Activities spreche, meine ich jede Art von von Activities (Sequence, Flowchart, State-Machine, Rule-Activity, If-Else uvm.).

Update-Path

Wenn Sie in bestehenden Projekten bereits „Custom“ WF-Activities erstellt haben, empfiehlt uns Microsoft folgende 2 Upgrade-Möglichkeiten:

  • Microsoft bietet einen sogenannte „Interoperability“-Möglichkeit an, welche es erlaubt, bestehende Custom Activities weiterhin zu verwenden, jedoch muss in diesem Bereich mit „Performance“-Einschränkungen gerechnet werden.
  • Die ideallste Lösung liegt klar auf der Hand ... erstellen Sie Ihre bestehenden Activities komplett „neu“. -> Aus meiner Sicht stellt dies die beste Lösung dar, da mir diese Art von Upgrade-Path die zukunftsicherste Art darstellt.

Was bedeutet das für SharePoint?

Ron Jacobs konnte leider zu diesem Punkt keine genaue Aussage treffen, da die Entscheidung, ob die Workflow Core Engine in MOSS zum Zeitpunkt von „SharePoint 14“ bereits ausgewechselt sein wird, in einem MS Product Team selbst liege.

DependencyProperties becomes Variable<T>

Auch die Art, wie Parameter in Zukunft in Workflows behandelt werden, ändert sich komplett. In Zukunft werden keine DependencyProperties mehr definiert, sondern Variable<T>! Z.B. Variable<String> oder Variable<List<String>>. Der Sinn liegt darin, das diese Art besser abgehandelt werden kann -> Es müssen nicht mehr unschöne Code-based Properties definiert werden, sondern können die generische WF-Infrastructure! Weiters sind diese Art von „Parameter“ für alle unterliegenden Child-Activities verfügbar.

Wann kann mit dem "Umbau" gestartet werden?

Aktuell ist lediglich eine Pre-Alpha Version für alle PDC 2008 Besucher verfügbar. Somit darf mit einer ersten Beta-Version für die Public Community nicht vor dem ersten Quartal 2009 gerechnet werden.

Für diejenigen welche nicht solange warten wollen, können sich unter http://channel9.msdn.com erste ScreenCasts zu diesem Thema ansehen.

Fazit

Es muss auf jedes Project spezifisch abgewogen werden, ob sich eine komplette Neu-Entwicklung von bestehenden Activities lohnt und somit Future-Ready ist, oder man den ganzen „alten Zopf“ mitziehen will und somit Kosten spart, jedoch irgendwann mit den Rücken zur Wand steht und nicht mehr vor und zurück kann. Good news for ISV‘s ;O)

13 Nov

namics @ TechEd 2008 in Barcelona - Tag 2 + Tag 3

Heute gibt's Butter bei den Fischen... Die Themen schlechthin sind Entwicklung mit SharePoint sowie Microsoft und die Cloud. Zuerst etwas SharePoint Development...

SharePoint Development using the STSDEV Utility

Wie entwickelt man für SharePoint? Und ich meine entwickeln (Development), nicht anpassen (Customization). Diese Frage beantwortet Ted Patisson mit dem von ihm und seiner Gruppe entwickelten Tool „STSDEV“. Dieses integriert sich in das Visual Studio und erlaubt es, SharePoint Solutions als Package zu erstellen, damit diese dann auf dem Server deployed werden können. Das Tool hat einen entscheidenden Vorteil: Es zwingt den Entwickler, Best Practices beim Entwickeln einzuhalten. Das Tool bietet sonst ähnlich den Visual Studio Extensions verschiedene Vor- und Nachteile. Daher gibt es keine klare Aussage: Das Tool ist besser als ein anderes. Letztenendes werde diese Tools alle durch das Visual Studio 10 abgelöst werden, da das VS10 (fokussiert auf den SharePoint Entwickler) Lösungen und Templates anbietet.

Was aber an der Session spannender war, ist die Tatsache, dass alle SharePoint Entwickler mit den gleichen Hindernissen bei der Erstellungen von Solutions zu kämpfen haben. Entwickle ich lokal? Oder remote? Können Content Types geupdated werden? Der Erfahrungsaustausch ist enorm...

Neben dem STSDEV Tools gab noch folgende Beiträge 

  • Creating & Debugging Custom Timer Jobs in Windows SharePoint Services 3.0
  • Extreme SharePoint Customization - Understanding SharePoint Custom Fields
  • Launching an Internet-Facing MOSS 2007 Publishing Site: Deployment, Performances, Security

Deploying and updating SharePoint solutions using features and templates

Dieser Vortrag ist der bisher diskussionswürdigste Beitrag. Laut dem Vortrag stellt das Update fast aller SharePoint Komponenten kaum ein Problem dar. Man nutzt Features, die Visual Studio Extensions und der Entickler hat alles im Griff. Das dem nicht so ist, weiss jeder:

  • Workflows? Kein Problem... oder doch? Was ist mit Langlebigkeit?
  • WCMS? Kein Problem... aber nur dann wenn man die Hindernisse kennt!
  • Content Types?

Der Vortrag blieb sehr vieles schuldig, schliesslich ist das gebrachte Beispiel („Ich Update einen Content Type mit einer neuen Spalte vom Typ Text.“) kein Beispiel aus der realen Welt, was den Kunden unter den Nägeln brennt. Die Updatebarkeit von SharePoint Komponenten ist wesentlich komplexer, weshalb es Know-How und richtiger Beratung bedarf. All das hat in diesem Vortrag leider gefehlt...^

Fazit

Der SharePoint-Entwickler muss mit einer Vielzahl von Systemen umgehen können und diese verstehen. Die Entwicklung mit SharePoint lässt sich nicht von Security / AD, IIS oder SQL Server trennen. Vielmehr Bedarf es einem Verständnis der Infrastruktur um erfolgreich mit SharePoint zu entwickeln. Aber: Wir entwickeln unglaublich ähnlich wie namhafte Grössen und MVPs! :) Nicht nur die Tools, sondern auch der Ansatz und die Vorgehensweise sind sehr ähnlich. Das bedeutet natürlich nicht, dass dies der einzig richtige Weg ist. Es gibt viele Wege, man muss nur wissen welcher Weg für welches Problem die optimalste Lösung für den Kunden ist. Dann sind alle zufrieden.

12 Nov

TechEd 2008, Barcelona, Tag3

Urs Wanner: TechEd Dairy
Mittwoch 12.11.2008

Internationalizing WPF And Silverlight Applications
Guy Smith-Ferrier, Internationalisation Consultant (Capella Software Ltd.)

Zunächst etwas Theorie: Globalisation ist alles rund um länderspezifische Formatierung (Datumsformate ect.) Mit Internationalisierung ist das Übersetzen der Ressourcen einer Applikation gemeint. Gloalisierung ist in im .Net Framework traditionellerweise sehr gut unterstützt. Mit der Internationalisierung tut man sich leider etwas schwerer.

Microsoft schlägt vor, dass für die Globalisierungs-Settings die CurrentCulture des Threads verwendet wird. Für die Interanationalisierung soll die CurrenUICulture des Threads verwendet werden. Dieser Ansatz erlaubt es, zum Beispiel deutsche Nummernformate zu verwenden und trotzdem die Applikation in Englisch darzustellen. Das Problem dabei ist, dass es Controls gibt, die ihre Ressourcen aufgrund der CurrentCulter (und nicht der CurrentUICulture) bestimmen. Dies kann daher zu mehrsprachiger Darstellung von Inhalten auf einer Seite führen.

WPF (und auch Silverlight) unterstützen Internationalisierung mit resx Dateien. Dies ist ein bereits bekannter Ansatz mit bekannten Vor- und Nachteilen:
Vorteil: Unterstützung von Language-Fallback auf item Level.
Vorteil: Verschiedene Tools erhältlich für den Umgang mit .resx Files.
Nachteil: Die Ressourcen müssen im xaml an die UI-Elemente gebunden werden.
Nachteil: Es können nur dependency properties gesetzt werden.
In Silverlight ist die Verwendung von .resx Fies zwar möglich. Mann muss dabei im Moment aber noch etwas tricksen. So muss ein spezieller Codegenerator für die Generierung der Resource-Wrapper-Klasse verwendet werden, damit die Ressourcen in xaml gebunden werden können.

Ich konnte mich nicht ganz dem Eindruck erwehren, dass es eventuell besser ist, die Ressourcen in einer Service-Schicht bereitstellen und mit Databinding an die UI-Elemente binden. Auf diese Weise ist es auch problemlos möglich, nach dem Release der Applikation ‚OnSite‘ weiter Ressourcen und sogar weitere Sprachen hinzuzufügen. Die vorgestellte Lösung greift nach meinem Geschmack einfach etwas zu kurz.

Nerdvana Annihilation: Improving Silverlight User Experiance (UX) without out-of-the-box controls
Miguel Jiménez, UX Advisor@Bla Bla Labs

In dieser Präsentation wurde (für einmal) mehr von der Designer-Perspektive aus auf Silverlight eingegangen. Die vielfältigen Designer Tools kann ich selber nicht wirklich beurteilen, da ich von der Entwickler-Seite her komme. Was mir aber sehr gefallen hat ist der Theoretische Einstieg in die Design-Geschichte:
Miguel Jiménez hat auf oftmals sehr witzige Weise darauf aufmerksam gemacht, dass wir nicht zwingen auf althergebrachte Weise über Silverlight UI’s nachdenken müssen. Es sei doch irgendwie unglücklich, eine Waschmaschine nur dafür zu benutzen, dass alte Waschbrett darauf abzustützen! Er hat auch auf den Unterschied zwischen User Experience (UX) und Design hingewiesen. Die UX muss von Anfang an mit bei allen Überlegungen zum UI-Design mit berücksichtigt werden. Dabei kann die Analyse von mental models (wie wir denken, dass etwas funktionieren soll) und embeded knowledge (Funktionen in der Form: Zum Beispiel eignen sich die arabischen Zahlen besser zum Rechnen als die römischen) helfen.

Ein Kredo für mehr Mut zum Neuen!

An Introduction to Microsoft Silverlight Controls Framework
Kathy Kam, Lead Program Mamager for Silverlight

Ich kann mich noch daran erinnern, als Silverlight 1.1 released worden war. Laut Ankündigung sollte damals die Frontend Entwicklung für Web Applikationen revolutionieren werden: Der Geneigte Programmierer hatte einen Texblock und ein Multimedia-Element zur Verfügung! Bei Silverlight 2 ist doch schon einiges mehr dabei.

http://silverlight.net/samples/sl2/silverlightcontrols/run/default.html

Damit noch nicht genug ist vor zwei Wochen ein Control Toolkit released worden, in dem weitere hight-level controls enthalten sind.

http://silverlight.net/samples/sl2/toolkitcontrolsamples/run/default.html
Dieser Toolkit wird mit Sourcecode und unittests ausgeliefert. Die enthaltenen Controls sind in unterschiedlichen Entwicklungsstadien und die EntnwicklerInnen können Feedback dazu geben.

Im zweiten Teil der Präsentation ging es um Styles und Templates. Ein gut
gebautes Silverlight Control (ich meine das nicht zweideutig) kann entweder über den Style verändert werden (setzen einzelner Properties in einer Style Definition) oder wir können durch ein eigenes Control Template die Erscheinung des Controls selber bestimmen. Alles nach dem Motto ‚feel free‘!

Die Entwicklung der Silverlight Control Libraries schreitet rasant voran. Ich gebe aber auch dem Miguel Jiménez Recht, wenn er davor warnt, einfach nur die bekannten Controls einzusetzen und dabei das Neue aus den Augen zu verlieren.

In diesem Sinne
Gruss aus Barco
Urs

12 Nov

WF 4.0, „OSLO“ and „DUBLIN“

David Chappel, Principal von Chappel & Associates rockte wieder einmal mehr das Haus, in dem er der Microsoft-Community das Zusammenspiel von WF, OSLO & DUBLIN vorstellte.

„OSLO“

Als Grundlage für das modellieren von Software Komponenten dient in Zukunft die Definitions-Sprache "M". "M" wurde entwickelt um Software-Modelle zu definieren und auszuführen.

Beispiele für Modelle sind ...

  • Workflows
  • Services
  • Applications (welche Workflows und Services beinhalten können)
  • Business processes

 

Grundlegend besteht "OSLO" aus folgenden Kern-Komponenten ...
  • Repository (Speicherplatz für Modell-Schemas und Instanzen)
  • Modellierungssprache "M"
  • Modellierungs-Tool, Codename Visual Studio "QUADRANT"

 

Nachfolgende Darstellung zeigt das harmonische Zusammenspiel der zuvor genannten Komponenten:

oslo01.jpg

 

Für weitere Informationen dient der aktuelle "OSLO"-SDK welcher unter http://msdn.microsoft.com/en-us/oslo/default.aspx heruntergeladen werden kann. CHECK IT OUT!

Für all diejenigen welche sich unter der Modellierungs-Sprache "M" gar nix vorstellen können, habe ich "natürlich" noch einen Buch-Tip:

The Oslo Modeling Language: Draft Specification - October 2008, aus dem Addison-Wesley Verlag.

ACHTUNG: Bei diesem Buch handelt es sich um eine technische „October 2008 – Draft Specification“, aber die 20 EUR-Investition lohnt sich definitiv und sollte aus meiner Sicht schon ab morgen unter jedem Kopfkissen liegen!!!

 

Workflow Foundation 4.0

Grundlegend werden in Zukunft Workflows als „Models“ definiert (siehe Oslo).

Die Workflow Foundation liefert weiters ein neues „Flowchart“-Template welches das beste aus den beiden bisherigen Template-Welten (Sequential / State-Maschine). Das Resultat mag auf den ersten Blick nicht ganz ersichtlich sein, denoch bietet es mehr Features als das Sequential-Template ... aber dafür nicht so komplex wie das „State-Machine“-Template.

Ribbon meets Visual Studio "Quadrant". Sprich wenn ein Activity in einem Process markiert wird, werden nur noch die Activity relevanten Informationen im Workflow Designer dargestellt, was einer Benutzerrolle "Architect, Business Analyst oder Developer" das Erstellen und Ändern von Workflows erheblich vereinfacht.

Als Beispiel zeigte David Chappel ein einfachen „New Employee Onboarding Process”-Workflow (siehe Abbildung unten).

quadrant.jpg

 

DUBLIN

Und die Reise durch Europa geht weiter.

Dublin ist der Codename für die erste Generation des Server-Parts von WCF und Workflow Services.

Grundlegend wird Dublin als ein IIS-Extension Module verfügbar sein. Microsoft plant diese Features „for free“ zur Verfügung zu stellen, jedoch im Rahmen der normalen Windows Server Lizenzierung.

Dublin fügt sich als Erweiterung der „Application Server Role“ ein und beinhaltet richtig „coole“ Features wie zum Beispiel ...

  • Routing von WCF-Messages basierent z.B. auf Werten im SOAP-Body welche mittels IIS Server Manager und/oder via PowerShell CMD-lets aktiviert werden können.
  • WCF/WF Application werden in Zukunft als „Container“ mit allen dazugehörigen Modellen deployed („ähnlich“ dem SharePoint Features Deployment Mechansimen ).
  • Und um allen einen noch wässrigeren Mund zu machen, bekommen alle WCF und Workflow Services „Out of the Box“ Monitoring-, Control- und Discovery-Mechansimen zur Verfügung gestellt (ähnlich den BAM-Tools des BizTalk Servers)

Dublin wird der Community frühestens im ersten Quartal 2009 als CTP zur Verfügung stehen.

Da es sich bei meiner heutigen TechEd 2008 Revue lediglich um die Spitze des Eisberges in diesem Technologie-Bereich handelt, möchte ich folgende Abbildung nicht vorenthalten, welches das Zusammenspiel von von WF 4.0, "OSLO" und "DUBLIN" veranschaulichen soll.

 

dublin.jpg

 

In diesem Sinne ... viel Spass mit dem OSLO SDK und bis Morgen!

11 Nov

TechEd 2008, Barcelona, Tag2

Urs Wanner: TechEd Dairy
Dienstag 11.11.2008

Building Rich Internet Applications Using Microsoft Silverlight 2
Kathy Kam

Die gezeigte Präsentation bestand aus einer ‚Hello-World‘ Anwendung (Textbox mit Video im Hintergrund) und einer etwas realistischeren Demonstration. Letztere holt sich von einem Webservice Metadaten und Videos und stellt diese in gefälliger Art dar.
Quintessenz: Man kann in einer gut einstündigen Präsentation 2 Silverlight Applikationen (zwar unter Verwendung einiger Code Snippets) aber trotzdem ‚from scratch‘ aufbauen. Ich war wirklich beeindruckt, wie effizient die Frontend-Entwicklung mit Silverlight 2 sein kann. Dabei helfen auch diverse Control Libraries, die auf mich einen sehr nützlichen Eindruck machen.

Developing Data-Centric Web Applications
Jonathan Carter

In dieser Präsentation ging es um die Vorstellung neuer Funktionalität rund um die Darstellung von Daten in aspx. Dabei kommen Klassen aus dem namespace ‚System.web.DynamicData‘ zum Einsatz. Diese sind ab .Net Framework 3.5 verfügbar. Die Idee ist die folgende: Wir geben nicht mehr auf der aspx-Seite für jedes Control an, welchen Datentyp es anzeigen und entgegen nehmen soll, wie es validieren soll u.s.w. sondern wir hinterlegen diese Informationen als Metadaten in einem Daten-Modell. Die neuen dynamischen controls können dann aufgrund der Metadaten entsprechende Field-Templates benutzen. Diese Templates sind für die gesamte Applikation zentral abgelegt. Es können natürlich auch selber Templates erstellt werden. Zum Beispiel kann man für alle ‚Anrede‘ Felder ein Dropdown Control mit den passenden Items zentral definieren.
Ich finde, wir sollten diese neuen Möglichkeiten unbedingt in unserer .Net Practice genauer betrachten. Dynamic Controls führen auf jeden Fall zu viel schlankeren Seiten und Controls. Der Code ist besser wartbar und die Entwicklung schneller...

No code is good code!

Creating a WPF Data Provider Control
Rockford Lhotka

Dies war ein sehr techischer Track über Databinding in WPF und Silverlight (lecker, lecker!). Besonders ging es darum, wie man einen Dataprovider baut, der direkt in xaml als Datenquelle deklarativ angesprochen wird. Natürlich könnte dazu auch beispielsweise das ObjectDataSource Objekt verwendet werden. Dies hat aber einige Nachteile. So kann es zum Beispiel keine Daten zurückschreiben und es werden nur Datenobjekte mit einem Standardkonstruktor unterstützt.
Eine ganz wichtige Aussage war für mich, dass wir möglichst vermeiden sollten, im code behind die Applikationslogik abzubilden. Der Code behind ist dazu einfach zu nahe am UI. Der Trend (und ich begrüsse diesen) geht klar in die Richtung, dass man die Applikationslogik in Business Klassen oder in entsprechenden Controllern abbildet und diese dann möglichst lose mit dem Userinterface verbindet (z.B. mit Databinding und Visual states). Dieser Ansatz harmoniert natürlich auch bestens mit SOA!

Hierzu passt auch ganz gut:
Prisem
Das Model/View/ViewModel Pattern

Gruss aus Barco
Urs

11 Nov

TechEd 2008, Barcelona, immer noch Tag1

Urs Wanner: TechEd Dairy
Montag 10.11.2008: Abends
• Keynotes
• The Future of composite applications and SOA.
• Building Data Visualisation with Silverlight, WPF and MS-Surface.

Urs Wanner: TechEd Dairy
Montag 10.11.2008: Abends

Keynotes: Jason Sanders ist General Manager des Visual Studio Teams (Development Division) bei Microsoft. Er hat die Keynotes Presentation über Visual Studio 2010 gehalten. Da sind ein paar coole Neuerungen mit dabei. Besonders beeindruckend war die Integration zwischen Testumgbung und Entwicklungsumgebung. Stellt der Tester einen Fehler fest, dann kann Visual Studio den exakten Zustand des Systems aufzeichnen. Der Entwickler kann diesen Zustand später wieder herstellen und den Fehler so optimal reproduzieren. Dies ist auch über mehrere tiers und Maschinen möglich. ‚Bei mir tut’s‘ ist also nicht mehr drin ;-).

The Future of composite applications and SOA: Everything they told you and why it isn’t true. Eine sehr interessante Präsentation von Mark Bergman und Steven Martin zum Thema SOA. Für mich ist dabei klar herausgekommen, dass SOA mehr und mehr eine zentrale Rolle einnehmen wird. Dabei geht es unter anderem um die folgenden Punkte:
• Wiederverwendbarkeit von Hardware und Software kann zu massiven Kosteneinsparungen beitragen.
• Funktionen bestehender Software können durch eine Serviceschicht verfügbar gemacht werden (z.B. Zugriff auf LOB‘s oder SAP).
• Identity management und Security sind mit dabei. Zum Stichwort ‚Genova‘ werden wir bestimmt noch mehr erfahren.
• Mit der modellier-Sprache ‚M‘ können Geschäftsprozesse und Services abstrakt modelliert werden. Dabei wird grossen Wert darauf gelegt, dass aus einer grossen Auswahl möglicher Lösungen die richtige gewählt werden kann. Zum Beispiel können Biz-Talk Server, SharePoint, WF, WCF , IIS und die Applikation Services mit ‚M‘ angesprochen werden (Codename ‚Oslo‘).

Building Data Visualisation with Silverlight, WPF and MS-Surface.
Dieser Präsentation von Tim Huckaby kann ich in dieser Form nicht gerecht werden. Er hat in vielen mitreissenden Demos gezeigt, wie cool WPF ist. Sexy! Auch wenn wir mit Silverlight vorerst nur ca 20% der WPF-Features zur Verfügung haben, gibt es immer noch genügend Möglichkeiten, um feine Userinterfaces für den Browser zu bauen. Und die Entwicklung wird natürlich weiter gehen...
Ich werde noch etliche Präsentationen zu diesem Thema besuchen und bleibe am Ball.

11 Nov

TechEd 2008, Barcelona, Tag1

Urs Wanner: TechEd Dairy
Montag 10.11.2008: Before you start
Was erwarte ich von der TechEd 2008 in Barcelona?

Dies ist die erste Seite meines Teched-Dairy. Es ist Montagmorgen. Nach vor kurzem lag leichter Nebel über Barcelona. In der Dämmerung kann man die Konturen der Stadt nur erahnen. Die Stimmung gedämpft und erwartungsvoll.
Viele Fragen gehen mir durch den Kopf:
• Wie sieht die Zukunft der Web-Programmierung auf der Microsoft Plattform aus?
• Wird es die klassische Web-Applikation überhaupt noch geben?
• Wir können beobachten, wie von Projekt zu Projekt die Komplexität der Anforderungen
zunimmt. Wie gehen wir damit richtig um?
• Wie können die Kunden ihre IT-Infrastruktur besser nutzen? Wie kann Hardware und auch
Software besser wiederverwendet werden?

Diese und noch viele andere Fragen beschäftigen mich in letzter Zeit. Ich hoffe, auf der TechEd einige Antworten zu erhalten. In diesem Dairy werde ich versuchen, sie mit euch zu teilen.
Mittelerweilen ist die spanische Sonne aufgegangen und hat den Morgennebel weggeleckt. Das Meer - ein Silberstreifen am Horizont - davor die Palmen und gute Aussichten aufs Frühstück…

Grüsse aus Barco
Urs

11 Nov

namics @ TechEd 2008 in Barcelona - Tag 1

Mit einem ohrenbetäubendem Lärm wurde heute die TechEd 2008 in Barcelona eröffnet.  Neben der Keynote gab es u.a. zwei SharePoint Sessions, welche einem die eindrückliche Zukunft von SharePoint näher gebracht hat.  

image

Keynote

Die Keynote wurde von Jason Zander gehalten, welcher seineszeichens "General Manager for the Visual Studio team in the Developer Division at Microsoft" ist. Dabei wurden Features gezeigt, welche bisher bei keiner anderen Konferenz zu sehen waren. Und diese Features haben es in sich:

Visual Studio Team System (Quelle: http://blogs.msdn.com/jasonz/)

  • "Discover how your code is structured using the Architecture Explorer which walks your entire dependency map and gives you a graph of the entire system
  • Build UML Sequence Diagrams of your core code
  • Eliminate the 'no repro' scenario by including video of testing steps as well as historical debugging (debug after the fact)
  • The new VSTS "Lab Management" produce which allows you to provision virtual instances of your environment and recover them for repro scenarios"

image

Diese 4 Features wurden live in einem Pre-Alpha(?) Visual Studio 10 auf einem Pre-Alpha(?) Windows 7 präsentiert. ;) Naja auf jeden Fall waren das keine finalen Versionen, zeigen aber denoch was uns die Zukuft für den Entwcikler bringt.

SharePoint Tools

Das Visual Studio 10 beinhaltet bereits out of the box viele Vorlagen für SharePoint. U.a. lassen sich Workflows oder Features ganz einfach und schnell zusammenklicken. ;)

  • "VS2010 has support for building SharePoint projects
  • You can create imports from wsp, add event receivers, and workflow parts
  • A visual designer is included to author parts using WSYWIG
  • A new deployment explorer allows you to build up your deployment packages
  • F5 just works!"

image

Mehr zu den neuen Features erfahrt ihr auf Jason's Blog: http://blogs.msdn.com/jasonz/.

SharePoint Technology: Past, Present, and Future in a SaaS World

Past und Present lass ich jetzt einfach mal aussen vor, schliesslich gab es Future und SaaS. Future bedeutet in diesem Falle nicht neue Infos aus dem Nähkästchen zu SharePoint 14, sondern Infos zu den "Microsoft SharePoint Services". Der geneigte Leser wird jetzt erkennen, dass es sich nicht um die "Windows SharePoint Services" handelt. Nein es handelt sich um SharePoint in der Cloud, also Azure. Dabei werden die Funktionalitäten von SharePoint über das Internet angeboten, während man sich selber werder über die Administration von Servern, noch dem Backup oder ähnlichem kümmern muss. Der Service wird im nä. Jahr in Europa zur Verfügung stehen.

Microsoft gewährt ein SLA von 99.9% und kümmert sich auch um das Backup (von max. 1 TB an Daten). Der Entwickler nutzt die volle Kapazität und Funktionsvielfalt des SharePoint Designers, um auf das SharePoint Portal zuzugreifen und Anpassungen durchzuführen. Leider werden am Anfang der "Microsoft SharePoint Services" WebParts oder Features nicht unterstützt. Unklar ist, wie man Daten (ggf. wieder aus der Cloud auf den heimischen PC) migirert.

Developing SharePoint Features to create reusable customizations

Der Titel dieser Session klingt etwas altbacken, doch das was Ted Pattison dort geboten hat, war schlichtweg phämomenal. Bei keiner anderen Veranstaltung hat jemand derart Klartext gesprochen, wie man SharePoint "entwickelt" (und nicht Customized). Der von Anfang an klar strukturierte und aufeinander aufbauende Vortrag zeigte mehr als deutlich, wie man gleich im ersten Schritt vorgehen muss und von welchen Tools man lieber die Finger lässt. ;) Und das wichtige: namics entwickelt auf diese Art und Weise (SharePoint out of the box Dateien werden nicht angefasst, Funktionen werden über Features und Solution Packages hinzugefügt... usw.).

Mal kucken was der Dienstag bringt... :)

10 Nov

Commerce Server meets SharePoint

Bei meiner ersten Session bei der TechEd 2008 gab Ryan Donovan und Scott Carney von Microsoft zum Thema „eCommerce & Microsoft’s next generation Web“ Ihr bestes. Der Microsoft Commerce Server „Codename Mojave“ bietet ein ganzes Set von Erneuerungen, welche aber den Rahmen dieses Blog-Eintrages sprengen würden.

Aus diesem Grund will ich mich auf meine TOP 3 Features beschränken ...

Nr. 1 – „Grap all data for one page in one request“
Neu in diesem Release ist, das alle Page relevanten Commerce Server Informationen in einem „einzigen“ „Request/Response“-Verfahren abgehandelt werden, was die Performance von Page-Requests enorm erhöht.

Nr. 2 –CommerceOperationSequences
Da die Commerce Server Pipelines in Ihrer bestehenden Technologie “COM” veraltet sind und immer mehr die Workflow Foundation in dieses Segment drückt, stellt Microsoft mit den CommerceOperationSequences eine Methodik zur Verfügung, welche es erlaubt Services (z.B. einen Custom WCF Stock Service) anstatt bisher die COM-basierenden Pipelines auszuführen.

Nr. 3 -SharePoint Integration
Commerce Server bietet Out of the Box ein gewaltiges Set von WebParts welches eine rasche Integration von Commerce Server in WSS 3.0/ SharePoint 2007 erlaubt . Grundlegend für ein WSS/MOSS basiertes Commerce Server Portal dient das „Publishing Portal“-Site Template welches mittels einer „Blank“-Page die Basis für alle Commerce Server relevanten Seiten darstellt.

Weiters wurde auch in dieser Interactive-Session aus dem Nähkästchen geplaudert, und aus diesem Grund will ich nicht vorenthalten, dass das nächste CTP von Commerce Server „November CTP“ in 1 bis 2 Wochen an den Start gehen wird.

Deep Integration Details:
Morgen findet zu diesem Thema auch noch eine „Ask the expert“-Session statt, in welchem ich in Erfahrung bringen werde, wie z.B. die Commerce Server SharePoint Web Part Connection Strings von einer Integration Environment in eine Staging- sowie Production Environment verteilt werden können.

Für weitere Informationen dient das aktuelle Commerce Server CTP welches unter http://connect.microsoft.com heruntergeladen werden kann (Anmeldung vorausgesetzt).

10 Nov

namics @ TechEd 2008 in Barcelona

image

Be part of the experience... Das werden wir! namics ist mit 3 Leuten an der TechEd 2008 developers conference in Barcelona vertreten. Urs Wanner, Stefan Dorner und ich (Andreas Glaser) werden von Mo. den 10.11. bis Fr. den 14.11. die Konferenz rocken. Folgende Tracks werden an der Konferenz angeboten:

  • Architecture
  • Business Intelligence
  • Database Platform
  • Developer Managers
  • Developer Tools and Languages
  • Development Practices
  • Dynamics
  • Microsoft IT
  • Office and SharePoint
  • PDC Highlights
  • Security
  • SOA and Business Processes
  • Unified Communications
  • Web and User Experience
  • Windows and Frameworks
  • Windows Embedded
  • Windows Mobile

Gemäss unseren Kernkompetenzen werden wir drei hauptsächlich die Tracks Architecture, Office and SharePoint, PDC Highlights, SOA and Business Processes sowie Web and User Experience. Natürlich werden wir auch teilweise in die anderen Tracks reinschauen, da es reihenweise wichtige Trends nicht zu verpassen gilt.

image

Die gesamte Woche werden wir euch natürlich täglich auf dem Laufenden halten und aktuelle Themen, Trends und alles was es sonst noch so gibt hier bloggen.

Unsere Blogs