Archiv für März 2014

Schlau(e) Mäuse, die Alaunkids in Dresden – mit dem neuen Surface entdecken die Kids die Sprache

Donnerstag, 27. März 2014

201403_blog_charity_0So macht Lernen Spaß – Die Kita Alaunkids in Dresden lernt von nun an mit den Schlaumäusen am Microsoft Surface, das ProTechnology den Kids zur Verfügung gestellt hat. 

201403_blog_charity_2

Das Sprachförderungsprogramm von Microsoft “Schlaumäuse” gibt es nun auch für Windows 8 und das Tablet Surface. Mit der Schlaumäuse-Lernsoftware können die Alaunkids selbstständig die Welt der Sprache entdecken. Die übersichtliche Struktur und die einfache Bedienung der Software sowie die stete Begleitung durch die beiden Protagonisten Lette und Lingo machen es den Kindern leicht, sich in der Welt der Schlaumäuse zurechtzufinden.

Ein Auswertungsmodus ermöglicht den Erziehern der Kita zudem einen Überblick über die Spielzeiten, Spielerfolge und die Lernfortschritte der Kinder.

Im Jahr 2003 startete Microsoft Deutschland die Initiative Schlaumäuse, um Kindertagesstätten und Grundschulen bei der Förderung der Sprachkompetenz zu unterstützen. Die technische und inhaltliche Entwicklung der neuen Version erfolgte in enger Zusammenarbeit mit der Universität Erfurt. Die neue Schlaumäuse-Version führt das ursprüngliche pädagogische Konzept des entdeckenden Lernens weiter, bietet aber zugleich stärkere Leitlinien zum kontinuierlichen Üben und Erforschen der Sprache.

Autor: Melanie Wolf

SharePoint: Listeneinträge via Metadatenfeld und JavaScript ermitteln

Mittwoch, 19. März 2014

201403_BLOG_SP_ListeneintraegeMetadatenfelder im SharePoint sind eine feine Sache. Globale Erstellung und Verwendung machen einige Dinge sehr einfach. Andere Dinge wiederum werden etwas umständlicher und zum Graus, wenn man nicht mal weiß, wonach man googlen oder yahooen soll. So zum Beispiel das programmatische Auslesen eines Listeneintrags anhand eines Metadatenfeldes über JavaScript.

Die Herausforderung der Aufgabenstellung sah wie folgt aus: Es bestehen zwei Listen. In Liste A gibt es ein Metadatenfeld, welches isteneintraegemit anderer Bezeichnung und anderem Namen in Liste B vorkommt. In Liste A soll nun ein Lookup-Feld auf Liste B verweisen. In diesem Lookup-Feld steht genau der Eintrag, der durch das Metadatenfeld identifiziert wird.

Klingt relativ simpel. Wir entschieden uns über den Weg CAMLQuery. Dazu benötigten wir den Wert des Metadatenfeldes. Dies stellte sich als relativ einfach heraus, wenn man die entsprechende Stelle im HTML gefunden hat. Trotzdem befindet sich hier schon die erste Stolperfalle. Über die Developertools des IE’s erhält man als sichtbaren Teil des Feldes ein div mit dem Text des Metadatenfeldes.

SharePoint Listeneinträge via Metadatenfeld und JavaScript ermitteln_Bild1

Der von uns benötigte Wert befindet sich allerdings etwas weiter oben in der Hierarchie in einem Input-Feld, das da wie folgt aussieht:

SharePoint Listeneinträge via Metadatenfeld und JavaScript ermitteln_Bild2

  • Mk1: Name des Metadatenfeldes
  • Value: Das ist der eigentliche Wert „Wert|GUID“

SharePoint trennt praktisch Datenanzeige und Dateneingabe.

Der Wert im input-Feld wird in „Anzeigewert“ und „GUID“ per | geteilt. Die GUID ist unerlässlich für die Arbeit mit dem Termstore und ist eineindeutig. Nun liegt die Vermutung nahe anhand der GUID in die Liste B zu gehen und dort per CAMLQuery den Eintrag herauszufinden. Im Internet findet man jetzt die verschiedensten Ansätze das CAML zu nutzen – es geht über Lookups zu Integer und Textfeldern. Schlussendlich sollte aber der Typ „TaxonomyFieldTypeMulti“ gewählt werden (bzw. ohne „Multi“), um auf eine Taxonomiefeld zuzugreifen. Unsere zweite und vermeintlich letzte Hürde ist also genommen und wir erstellen folgende Query:

SharePoint Listeneinträge via Metadatenfeld und JavaScript ermitteln_Bild3

Der Wert in der Variablen „userInput“ entspricht dabei der GUID. Wider Erwarten funktioniert die Query nicht. Verschiedene Methoden führen zu keinem Ergebnis. Mit dem SPCAMLQueryHelper von codeplex war der Fehler dann relativ schnell klar. Schlussendlich ist für die Nutzung im CAML nicht die GUID von Relevanz sondern der Wert selbst. In unserem Beispiel muss also „V1“ übergeben werden, um die entsprechenden Items zu bekommen. Die Query ändert sich dabei nicht.

Mit Aufruf der getItems-Funktion der Liste B erhalten wir alle entsprechenden Einträge.

SharePoint Listeneinträge via Metadatenfeld und JavaScript ermitteln_Bild4

Zur Lösung der Aufgabenstellung muss dann nur noch das korrekte Item herausgefiltert werden. Die Voraussetzungen ermöglichten uns die Annahme, dass immer nur genau ein Item gefunden werden wird. Wir holen uns also die ID des Eintrags und schreiben diese in das Lookupfeld.

SharePoint Listeneinträge via Metadatenfeld und JavaScript ermitteln_Bild5

Obgleich wir im SharePoint ein hohes Maß an Eindeutigkeit durch IDs und GUIDs erreichen, scheint es hier nichts zu nützen. Zwar ist die GUID unerlässlich für die Arbeit im Termstore, aber scheinbar irrelevant für den vorliegenden Fall.

Als Alternative zum JavaScript bleibt dann noch die Möglichkeit des EventReceivers in einer Custom Solution. Je nach Anforderung kann das schneller und besser zum Ziel führen.

Autor: Henrik Krumbholz

PT_XING_HKrumbholz_jpg

 

Erstklassige Technologie-Beratung für Ihr Unternehmen mit Microsoft-Voucher

Montag, 10. März 2014

201403_BLOG_SP_Microsoft_VoucherErstklassige Technologie-Beratung für Ihr Unternehmen mit Microsoft-Voucher – Heißt die Kosten übernimmt Microsoft für Sie. Habe ich jetzt Ihr Interesse geweckt, dann lesen Sie bitte weiter. Microsoft bietet seinen Kunden, die Software-Lizenzen mit Software Assurance kaufen entsprechende Beratungsgutscheine (Voucher) an.

Es gibt verschiedene Möglichkeiten Microsoft-Lizenzen zu erwerben. In der Regel kaufen Unternehmen Lizenzen im Rahmen eines Volumenlizenzvertrages. In diesem Rahmen können Sie als Kunden auch neben der eigentlichen Lizenz auch die entsprechende Software Assurance erwerben. Der größte Vorteil von aktiver Software Assurance ist das Recht, jederzeit die aktuellste Programmversion zu nutzen. Microsoft bietet aber noch mehr, wenn Sie eine entsprechende Anzahl an Lizenzen mit Software Assurance im Einsatz haben, können Sie in Ihrem VLSC [Das Portal, in dem Sie Ihre Lizenzen verwalten] Trainings und Beratungsgutscheine generieren. Diese können Sie dann bei einem Dienstleister Ihrer Wahl einlösen.

Nachfolgend eine Übersicht der verschiedenen Beratungsmöglichkeiten, die Sie über Microsoft Vouchers einhalten können:

  • SharePoint Deployment Planning Services (SDPS) erhalten Sie von ProTechnology, wenn Sie Ihre Microsoft-Voucher einlösen.
    • SharePoint 2013 Planning
    • SharePoint 2013 Social PoC
    • SharePoint 2013 Search PoC​
    • SharePoint 2013 WCM PoC
    • Office 365 FastTrack Pilot
    • SharePoint 2010 Planning
    • SharePoint 2010 Upgrade Planning
    • SharePoint 2010 for Internet Sites
  • Windows Azure Deployment Planning Services (AZDPS)
  • Desktop Deployment Planning Services (DDPS)
  • Developer Tools Deployment Planning Services (DTDPS)
  • Lync and Exchange Deployment Planning Services (L&EDPS)
  • Private Cloud, Management and Virtualization Planning Services (PVDPS)
  • SQL Server Deployment Planning Services

Wobei Microsoft diese Auswahl begrenzt hat. Der Partner muss für die entsprechenden Programme zugelassen sein. Eine der Bedingung ist die Gold-Zertifizierung in dem entsprechenden Fachgebiet, was Ihnen letztendlich wieder zu Gute kommt, denn ein gold-zertifizierter Partner hat auch das entsprechende Know-how für hochwertige Beratungsleistung.

Zusätzlich zu den oben aufgeführten Beratungsgutscheinen gibt es noch die sogenannten Microsoft Trainingsgutscheine. Diese können für die Verrechnung von Microsoft zertifizierten Kursen verwendet werden. Diese Kurse erkennt man sehr schnell an der Abkürzung MOC; das steht für Microsoft Official Curriculum. Es besteht aber auch die Möglichkeit diese Trainingsgutscheine in die oben aufgeführten Beratungsgutscheine umzuwandeln.

Nutzen Sie die Möglichkeiten, die Ihnen Microsoft bietet: Gerade beim Start von einem IT-Projekt muss erst einmal der Nutzen nachgewiesen werden. Ohne das Fachwissen von externen Beratern ist das kaum möglich. Doch in der Regel ist dafür auch kein Budget vorhanden. Genau an dieser Stelle sollten Sie Ihre Beratungsgutscheine einsetzen.

Bitte beachten Sie, jeder Gutschein hat ein Verfallsdatum. Ungenutzte Gutscheine verfallen; aber verbrauchte Gutscheine werden durch Neue ersetzt.

Anbei eine Anleitung, wie Sie Voucher aktivieren können:

Falls Sie gern mehr erfahren möchten oder Fragen haben, kontaktieren Sie mich bitte persönlich.

Autor: Matthias Boden

PT_XING_MBoden

SketchFlow für zielgerichtetes Prototyping

Dienstag, 04. März 2014

201403_BLOG_SP_SketchflowBei der Projektplanung stößt man immer wieder auf die gleichen Probleme. Haben alle die Anforderungen verstanden? Weiß der Frontendentwickler, wie er die Anwendung zu strukturieren hat? Kann der Architekt mit den Informationen arbeiten? Hat der Designer bereits eine Idee? Ist der Benutzer mit der geplanten Bedienbarkeit zufrieden? Schlecht ist, wenn keine dieser Fragen mit “Ja” beantwortet werden kann. Noch schlechter ist es, wenn die Vorstellungen trotzdem weit auseinandergehen.
Doch mit SketchFlow muss das nicht sein!

Mit SketchFlow ist es möglich, alle Parteien grundlegend zu informieren und gleichzeitig interaktiv am Gestaltungsprozess teilhaben zu lassen. Es gibt einem die Möglichkeit mit einfachen Mitteln einen Prototypen erstellen zu können, dessen Optik nicht ablenkend wirkt. Ein Prototyp in Window Forms beispielsweise ist dem Designer zu hässlich, der Chef bekommt das Gefühl die Anwendung sei bereits weit fortgeschritten und der Benutzer bekommt eine falsche Vorstellung von der Bedienbarkeit, wenn es am Ende eigentlich um eine Webseite geht. Ein Prototyp in ASP.NET ist möglicherweise zu ein- oder unfarbig oder muss mit einem gewissen Aufwand erst optisch aufgewertet werden, obwohl die Struktur und das Design noch längst nicht feststehen. Alles Gründe, warum man Prototypen üblicherweise nur in eingeschränkten Fällen oder zumindest erst in späteren Planungsphasen verwendet. Vorher gibt es jedoch auch Klärungsbedarf zwischen den beteiligten Personen, bei denen verschiedene Hilfsmittel, wie Skizzen, Flipcharts oder gar wildes herumfuchteln mit den Händen eingesetzt werden. SketchFlow hingegen vereint die Macht dieser Hilfsmittel, wodurch man es bereits sehr früh in der Planungsphase einsetzen kann.

Was kann SketchFlow nun?

Im Prinzip ist SketchFlow ein interaktiv bedienbarer Flipchart. Es wird in Form eines Prototypen, mit klickbaren Knöpfe, ausfüllbaren Textfeldern und navigierbaren Menüs zügig eine Anwendung “zusammengeklickt”, die aussieht als wäre sie skizziert. Somit versteht der Entwickler, wie er die Anwendung zu strukturieren hat. Der Designer weiß, an welchen Stellen er freie Hand hat und wo er wiederum an Vorgaben, bspw. Platzierungen von Menüs, Leisten oder Knöpfe, gebunden ist. Sogar der Benutzer bekommt bereits ein Gefühl für die Bedienbarkeit der Anwendung ohne ablenkende Elemente. Allen ist sofort klar, dass nichts davon fertig ist und es darum geht, die Anwendungs selbst zu planen.

Ich will endlich was sehen!

Aber klar doch, kommt sofort. Fangen wir ganz simpel an und öffnen SketchFlow. Halt! SketchFlow ist keine eigenständige Anwendung. SketchFlow ist seit vielen Versionen in “Microsoft Expression Blend” enthalten, welches nun “Blend for Visual Studio” heißt und mit Visual Studio mitgeliefert wird. Also öffnen wir Blend und erstellen ein neues Projekt der Kategorie “Silverlight” -> “SketchFlow”.

Es wird nun ein neues SketchFlow-Projekt erzeugt, welches in unserem Beispiel auf Silverlight basiert. In diesem kann man nun entsprechende SketchFlow-Controls hinzufügen oder sogar normale Controls, falls einem danach ist. Aus psychologischen Gründen, auch wenn ich diese natürlich nicht wissenschaftlich belegen kann, ist es jedoch ratsam weitestgehend bei den SketchFlow-Controls zu bleiben. Warum? Nun mal ehrlich: Wer würde eine offensichtliche Skizze bspw. nach dem Aussehen be-/verurteilen? Bei echten Controls besteht da schon eher die “Gefahr”.

Als Standard wird uns ein Screen 1 (Screen_1.xaml) erstellt und geöffnet, welches wir nun nach belieben mit lustigen Controls füllen können. Die entsprechenden Elemente holen wir uns aus dem Assets Menü im Unterpunkt “SketchFlow”, wobei die üblichen Controls unter “Styles” zu finden sind. Welche es gibt, sieht man recht deutlich auf dem nebenstehenden Bild. Zusätzlich gibt es aber natürlich auch noch allerhand andere Shapes, Screens, Templates, usw. die einem das Leben deutlich leichter machen sollten.

Ziehen wir uns also direkt mal ein paar Sachen in den Screen. Hat man schon einmal mit Blend und/oder Silverlight gearbeitet, dürfte einem die Bedienung natürlich recht bekannt vorkommen. Praktischerweise sind die Controls, welche man sich in den Screen ziehen kann, nicht nur bewegliche Bilder, sondern echte Controls die nur nach Skizzen aussehen. Somit können Comboboxen beispielsweise mit Auswahlmöglichkeiten gefüllt und Knöpfe mit einem Navigationsziel oder gar beliebigem Code ausgestattet werden. Man kann seinen Prototypen also mit genau der Funktionalität versehen, wie es das jeweilige Ziel am besten verdeutlicht. SketchFlow unterstützt auch bei der Erstellung von Animationen, Navigationsabläufen und einigem mehr, was jeder gern selbst mit ein paar wenigen Klicks erforschen kann.

In meinem Beispiel habe ich im oberen Bereich ein Menü mit einem Rectangle-Sketch angedeutet. In diesem habe ich ein TabControl-Sketch platziert, worin ich wiederum einige Button-Sketches und Checkbox-Sketches eingefügt habe. Somit ergibt sich mit ein wenig Geschick recht schnell ein Menü, welches verdächtig nach dem Ribbon-Menü des Windows Explorers aussieht. Dieses könnte man auch als Component-Screen implementieren, um es in verschiedenen Screens wiederzuverwenden. Unter dem Menü habe ich noch ein paar Thumb-Sketches und TextBlock-Sketches hinzugefügt. Soweit so gut.

Als nächstes legen wir noch einen weiteren Screen an, indem wir auf den bestehenden Screen unten in der SketchFlow Map rechtsklicken und einen neuen verknüpften Screen erzeugen. In meinem Beispiel habe ich diesen Bildschirm “New” genannt und den “New”-Knopf in unserem Hauptscreen zudem auf diesen neuen Screen navigieren lassen. Eine solche Navigation kann man auf Button-Sketches recht einfach hinzufügen, indem man diesen mit der rechten Maustaste anklickt, “Navigiere zu” auswählt und darunter den entsprechenden Screen anklickt. Diesen zweiten Screen füllen wir nun auch mit allerhand Controls. Ich habe dafür das Menü aus dem Hauptscreen kopiert und verändert, ein Title-Sketch, einige TextBlock-, TextBox- und ComboBox-Sketches hinzugefügt und zudem eine kleine Überraschung eingebaut, die jeder selbst erkunden darf. Außerdem habe ich ein Note-Sketch hinzugefügt, um den jeweiligen Benutzer/Tester darauf hinzuweisen, dass die Felder nicht vollständig sind und er gerne Vorschläge einreichen darf. Womit wir auch schon bei dem für diesen Blog letzten genannten Feature sind: Der Feedback-Funktion.

Feedback? Das will ich genauer wissen!

Was nützt einem der tollste Prototyp, wenn man die Eindrücke, Vorschläge und Kritiken der jeweiligen Benutzer nur manuell oder sogar garnicht heraus bekommt. Klar könnte man auch eine Feedback-Funktion in den Prototyp einbauen, aber wozu das Rad neu erfinden? In SketchFlow gibt es bereits eine Feedback-Funktion, welche zudem recht mächtig ist.
Der Nutzer kann mit Textmarker oder Freihand den Screen bemalen/beschriften und einen entsprechenden Text in der Feedback-Box schreiben, um so sein Feedback noch exakter rüberbringen zu können. Wie dies genau funktioniert, darf unten in der Beispiel-Vorschau gern ausprobiert werden. Hat man sein Feedback vollendet, kann man es exportieren und dem jeweiligen Designer/Entwickler zukommen lassen.

Fazit und Download

SketchFlow eignet sich aus meiner Sicht sehr gut für Prototyping und auch bereits zur sehr frühen Planung von Benutzeroberflächen, Prozessabläufen und Layouts. Obwohl man mit SketchFlow fast schon fertige Anwendungen erzeugen kann, bleibt der sichtbare Eindruck auf dem Niveau einer Skizze, wodurch jeder Teilnehmer eines Meetings dazu angehalten ist, sich auf das Wesentliche zu konzentrieren. Dazu kommt die einfache Möglichkeit der Verteilung des Prototyps und der Einsammlung von Feedback der verschiedenen Nutzergruppen. Wie viele Tools ist es sehr mächtig, wenn man es richtig dosiert verwendet!

Natürlich gibt es wie üblich die gesamte Solution zum Download. Außerdem darf jeder, der Silverlight installiert hat, das fertige Beispiel direkt hier begutachten.

Quellen: SketchFlow Übersicht, Erstellen von Prototypen mit SketchFlow, SketchFlow Video
Autor: Dirk Sarodnick

Google+