Cloud Computing: Neues von Windows Azure für Entwickler 30.08.2010

Patric Schouler
Patric Schouler, Chief eXpert

Microsoft hat die Windows Azure-Leistungen für Visual Studio Premium und Visual Studio Ultimate mit MSDN deutlich erweitert. Abonnenten erhalten jetzt 16 Monate lang die Windows Azure Platform Benefits - bisher waren es acht Monate.  windowsazureplatform

 

Neu für Entwickler sind auch die Windows Azure Tools für Visual Studio 1.2, die kostenfrei im Microsoft Download-Center zur Verfügung stehen. Die Erweiterung für Visual Studio 2010 und Visual Studio 2008 unterstützt Entwickler dabei, Anwendungen für Windows Azure zu erstellen.

Überzeugen Sie sich von den Möglichkeiten des Cloud Computing, und besuchen Sie die Windows Azure-Produktseiten.

PS: Vielleicht reagiert Microsoft damit ja auf die allgemeine Kritik (siehe hier) am bisherigen Modell…?

Share |

Projektmanagement mit der Critical Chain Methode 27.08.2010

Daniel Tonagel
Daniel Tonagel, Chief eXpert

Kaum jemandem ist bewusst, wie viel verzögerte Projekte tatsächlich kosten.

Offensichtlich sind zunächst die zusätzlichen Ausgaben für die benötigten Ressourcen. Das ist jedoch längst nicht alles und bei weitem nicht der größte Kostenfaktor.

Unternehmen führen Projekte durch, um Gewinn zu erzielen. Dazu investieren sie Geld und Zeit. Verzögert sich das Projekt, vermindert sich der ROI (Gewinn geteilt durch investiertes Kapital) durch den erhöhten Kapitaleinsatz. Der ROI ist eine häufig verwendete Kennzahl in Projekten. Oft wird diese jedoch nur unvollständig berechnet, außerdem berücksichtigt sie – angewandt auf einzelne Projekte – diverse gewinnschmälernde Faktoren gar nicht. Einige davon werden hier zunächst kurz beleuchtet.

Fast alle Projekte entwickeln in irgendeiner Form ein Produkt. Die allermeisten Produkte haben nur eine begrenzte Lebensdauer, die unter anderem von externen Faktoren (Markt, Konkurrenz, technologische Fortschritte etc.) beeinflusst wird. Ein verspätetes Projekt bedeutet also eine verringerte Produktlebensdauer, was den Gesamtgewinn weiter schmälert. Je schneller sich die externen Faktoren verändern, desto stärker ist diese Auswirkung und die IT ist eine der schnelllebigsten Branchen überhaupt. Wer von uns kennt nicht mindestens ein verspätetes Projekt, dessen Produkt bei der Fertigstellung bereits obsolet war?

Ein weiterer Faktor ist der verspätet einsetzende Cashflow aus dem fertigen Produkt. Bei Unternehmen mit knapper Liquidität bedeutet das bestenfalls einen teuren Überbrückungskredit, schlimmstenfalls die Insolvenz. Ein sehr wichtiger Faktor ist auch, dass die gebundenen Ressourcen nicht in anderen Projekten eingesetzt werden können, wodurch sich diese ebenfalls verspäten.

Die gute Nachricht ist, dass sich all diese Effekte positiv auswirken, wenn ein Projekt schneller fertig wird als geplant. Das kommt jedoch praktisch nie vor, während Verzögerungen an der Tagesordnung sind. Warum ist das so und was können wir dagegen tun?

Beschleunigung von Projekten mit CCPM

Der Beantwortung dieser Frage hilft die Theory of Constraints (ToC) von Eliyahu M. Goldratt. Es handelt sich dabei um eine allgemein anwendbare Management-Theorie, die darauf zielt, ein Unternehmen in seiner Gesamtheit zu verbessern. Ihre Anwendung auf das Projektmanagement führt zum Critical Chain Projektmanagement, kurz CCPM. Aufgrund des oben genannten starken Einflusses der Projektlaufzeit auf den Unternehmensgewinn konzentriert sie sich darauf, Projektlaufzeiten signifikant zu verkürzen. Eine Einsparung um die 25% liegt dabei durchaus im Bereich des Üblichen.

Beantworten wir zunächst die erste Teilfrage: Warum verzögern sich Projekte so oft und warum werden im Gegenzug nur so selten Projekte vor der geplanten Zeit fertig?

Ausgangspunkt für jedes Projekt sind Anforderungen, (erkannte) Abhängigkeiten, Zeitschätzungen und verfügbare Ressourcen. In einem Projektplan wie z.B. einem Gantt-Chart werden daraus Start- und Endtermine für jeden Vorgang und letztendlich das gesamte Projekt errechnet. Ich behaupte nun, dass die so geplanten Vorgänge erhebliche Sicherheitszeitreserven (in der Größenordnung von 50% der Gesamtzeit) enthalten. Das lässt sich an einem Beispiel illustrieren.

Angenommen, Sie wohnen in Wiesbaden und fahren täglich mit dem Auto nach Frankfurt zur Arbeit. Sie benötigen dafür durchschnittlich 40 Minuten. Jetzt sagt ihr Chef einen der folgenden Sätze zu Ihnen:

  • “Wir machen morgen um 9 Uhr eine Informationsveranstaltung zu Blutspenden. Wenn Sie möchten, können Sie gerne teilnehmen.”
  • “Bitte seien Sie morgen um 9 pünktlich beim Abteilungsmeeting!”
  • “Sie halten morgen um 9 einen Vortrag vor unseren wichtigsten Kunden. Wenn Sie nicht pünktlich sind, können Sie Ihren Job vergessen!”

Wie wirkt sich jeder Satz auf ihre Abfahrtszeit von zuhause aus? Sie werden feststellen, dass ihre Sicherheitsreserven steil ansteigen, je stärker sie für ihren Termin “verhaftet” werden. Was ist, wenn es einen Stau gibt? Eine Vollsperrung? Wenn das Auto nicht anspringt?

Je wichtiger das Projekt, desto wichtiger werden die Termine, desto mehr Sicherheitsreserven werden in jeden Vorgang eingeplant.

Angefangen beim schätzenden Mitarbeiter, der seine Termine halten will. Der Chefentwickler legt noch einmal 20% drauf, weil ihm mit seiner reichhaltigen Erfahrung noch mehr Dinge einfallen, die schiefgehen können. Und der Projektleiter schlägt noch einmal 30% drauf, weil seine Karriere am Projekt hängt und er weiß, dass das Management eh noch einmal 25% pauschal reduziert, weil ihm die Laufzeit (zu Recht!) zu lang vorkommt.

Sicherheitsreserven in lokalen Zeitschätzungen bringen nichts

Nachdem wir also so viele Sicherheitsreserven in jedem Vorgang haben, warum geht es trotzdem so oft schief? Offenbar gibt es Effekte, die die Reserven in den Vorgängen aufzehren. Einige davon sind das Parkinson-Prinzip, das Studentensyndrom und schädliches Multitasking. Hinzu kommt, dass aus verschiedenen Gründen Vorgänge, die tatsächlich schneller fertig werden, nicht zu einer Verkürzung des Gesamtprojekts führen. Hingegen führt praktisch jede Verzögerung auf dem kritischen Pfad eines Projekts zu einer Laufzeitverlängerung.

Die Theory of Constraints führt diese Ursachen auf ein gemeinsames Prinzip zurück, nämlich eine (schädliche) Managementphilosophie. Diese entstammt der Denkweise der Kostenrechnung, die besagt: Lokale Optimierungen (Kostenreduzierungen) sind gut für das Gesamtunternehmen, da sie die Gesamtkosten verringern. In Kombination mit dem Pareto-Prinzip (die 80-20-Regel) führt das zu einer Denkweise, die Goldratt die “Kostenwelt” nennt.

Vorrangiges Ziel eines Unternehmens ist es jedoch nicht, Kosten zu reduzieren, sondern Produkte zu verkaufen. Kosten kann man höchstens auf 0 reduzieren und zu diesem Zeitpunkt hat man kein Unternehmen mehr. Dieser Ansatz ist also von vorneherein beschränkt. Betrachtet man dagegen die Verkaufsseite, hat man theoretisch fast unbegrenzte Gewinnmöglichkeiten. Hätten Bill Gates und Paul Allen ein Microsoft bauen können, wenn Sie die ganze Zeit nur über Kosteneinsparungen nachgedacht hätten?

Lokale Optimierung ja - aber nur an der einen wirklich wichtigen Stelle

Im Gegensatz zur Kostenwelt hat man es in der Produktion wie im Projektmanagement (auch eine Form der Produktion) mit vielfältigen Abhängigkeiten und mit Engpässen (z.B. kritischer Pfad) zu tun. Letztere bestimmen dabei die gesamte Produktionskapazität. Daher bringen lokale Optimierungen (z.B. Vorgangszeitpuffer) in diesem Umfeld fast nie etwas.

Erschwerend kommt hinzu, dass das statistische Pareto-Prinzip nur für unabhängige Variablen gilt und daher in diesem Umfeld ebenfalls nicht greift. Projektmanager, die sich auf die Vorgänge mit der längsten Dauer konzentrieren und diese zu optimieren versuchen, verschwenden nur ihre Zeit. Stattdessen mutiert das Pareto-Prinzip zur “1 zu 99”-Regel, da man sich auf den Engpass und nur auf diesen konzentrieren muss.

Die CCPM-Methode berücksichtigt diese Denkweise. Sie ist auf einzelne Projekte anwendbar, entfaltet ihre ganze Wirkung jedoch erst auf der Ebene des Multiprojektmanagements. Sie hilft bei der Auswahl rentabler Projekte unter Berücksichtigung aller oben im Artikel genannten Faktoren, bei der Identifizierung und dem Management von Ressourcenengpässen und bei der Überwachung einer kleinen Anzahl einfach zu ermittelnder Kennzahlen um den “Gesundheitszustand” eines Projekts zu ermitteln.

CCPM in der Praxis

Wie wendet man die CCPM in der Praxis an? Ausgehend von einem herkömmlich erstellten Projektplan verringert man zunächst die Sicherheitsreserven dort, wo sie nicht gebraucht werden: In den einzelnen Vorgängen. Für unsere Zwecke ist eine 50:50 Wahrscheinlichkeit, dass ein Vorgang wie geplant abgeschlossen wird, völlig ausreichend. Ein normal geschätzter Vorgang wird eher auf 80-90% zielen und kann daher wegen des überproportional hohen Zeitanteils der geschätzten Risiken um mindestens 50% reduziert werden.

Nun haben wir einen um die Hälfte verkürzten Projektplan, der aber keinerlei Risikopuffer enthält. Da Murphys Gesetz erbarmungslos zuschlagen wird, brauchen wir natürlich einen Risikopuffer, aber der kommt jetzt dahin, wo er hingehört, nämlich ans Ende des kritischen Pfades als sog. “Projektpuffer”. Dieser wird je nach Risikoeinschätzung des Projekts zwischen 30 und 50 Prozent der Gesamtlaufzeit des Projekts betragen.

Als nächstes gilt es, eine der Hauptursachen für Verzögerungen auf dem kritischen Pfad zu beseitigen, nämlich die Überlastung kritischer Ressourcen. Wir alle kennen Mitarbeiter, die so gefragt sind, dass sie an vielen Baustellen arbeiten müssen und ständig neu priorisiert werden. Die Aufgabe ist hier, diese Ressourcen zu schützen und sie so einzuplanen, dass sie ihre Arbeit ohne schädliches Multitasking verrichten können. Kombiniert man diese zusätzliche Abhängigkeit mit dem kritischen Pfad, ergibt sich ein modifizierter (längerer!) kritischer Pfad, der als “Critical Chain” bezeichnet wird.

Eine weitere Ursache für Verzögerungen auf dem kritischen Pfad sind verspätete Zulieferungen für dessen Vorgänge. Um den Pfad hier zu schützen, plant man nach demselben Prinzip wie oben einen Puffer für Zulieferungen ein.

Schließlich werden noch für alle Ressourcen, die auf dem kritischen Pfad arbeiten, Ressourcenpuffer angelegt. Diese manifestieren sich im einfachsten Fall einfach in einer Reihe vom Mitteilungen, wann voraussichtlich der ihnen zugeteilte Vorgang auf dem kritischen Pfad beginnen wird, damit sie Gelegenheit haben, ihre anderen Tätigkeiten rechtzeitig abzuschließen oder geordnet zu unterbrechen und ohne Verzug mit dem kritischen Vorgang beginnen können.

Fazit

Zusammengefasst

  • Ineffiziente Vorgangspuffer wandern in effiziente Projekt- und Zubringerpuffer. Durch die verkürzten Vorgänge werden Effekte á la Parkinson und Studentensyndrom wirksam unterbunden (Randbemerkung: Das ist auch eine Stoßrichtung des agilen Projektmanagements).
  • Der kritische Pfad als Maßstab für die Projektlaufzeit wird verkürzt und durch diverse Maßnahmen geschützt.
  • Der Projektmanager braucht sich nicht mehr mit jedem verspäteten Vorgang befassen. Es genügt, die Puffer zu beobachten, um Probleme rechtzeitig zu erkennen.
  • Der Projektfortschritt wird nicht mehr über die Summe einzelner Vorgänge oder gar Kennzahlen wie verbrauchtes Budget gemessen. Entscheidend ist ausschließlich der Fortschritt auf dem kritischen Pfad.

Diese Art zu planen erfordert eine Reihe organisatorischer Begleitmaßnahmen – sie ist kein Selbstläufer. In der Tat ist eine zu starre Unternehmenskultur, die sich den notwendigen Änderungen verweigert einer der Hauptgründe für ein Scheitern der CCPM Methode. Es gibt aber andererseits eine Reihe von Unternehmen, die diese Methode seit Jahren bereits erfolgreich eingeführt haben. Die Berichte darüber sind noch dünn, da diese Unternehmen ihr Wissen als strategischen Wettbewerbsvorteil hüten.

Weiterführende Informationen finden sich in den Büchern von Eliyahu M. Goldratt und z.B. auf der Webseite des Projektmagazins.

Share |

SDX Technical Council: Self-Service BI mit SQL Server 2008 R2 26.08.2010

Simone Franz
Simone Franz, Marketing Manager

Herzlich laden wir zu einem weiteren Technical Council ein:

Thema: ”Self-Service BI mit SQL Server 2008 R2”
Termin: Donnerstag, 14.09.2010, 17:00 bei SDX
Zielgruppe: Projektleiter, techn. Projektleiter, Architekten u. Lead Developer

17:00 Uhr Begrüßungskaffee
17:30-19:30 Self-Service BI mit SQL Server (Überblick, Reporting Services R2,
Excel 2010, Power Pivot)

                 19:30 Abendessen mit Bier vom Fass und Wein 

Im technisch orientierten Council erleben Sie die Self-Service-BI-Features des neuen Microsoft SQL Server 2008 R2

Ein Schwerpunkt liegt dabei auf den Reporting Services, welche wiederverwendbare Report-Parts, Kartendarstellung, Databars und Sparklines bieten und auch dem Endbenutzer mit dem Report Builder 3.0 zur Verfügung stehen. Der zweite Teil der Veranstaltung beschäftigt sich mit Excel 2010 und dem neuen Analysetool PowerPivot, mit dem die Grenzen bezüglich Datenvolumen und Performance in Excel 2010 endgültig aufgehoben scheinen.

Die beiden SDX eXperts Viktor Ewert und Nicolas Meseth werden in diesem TC praxisnahe Beispiele einsetzen, um einen möglichst spannenden und umfassenden Überblick über die neuen Möglichkeiten des Microsoft BI-Stacks zu geben.

Titel

Genießen Sie das abschließende Abendessen und unterhalten Sie sich in lockerer Atmosphäre mit den Teilnehmern und den SDX eXperts.

Das SDX Team freut sich über Ihr Kommen. Auf Wiedersehen im SDX Büro in der Borsigallee (Nähe Hessencenter).

Herzliche Grüße
Simone Franz

Die komplette Einladung bzw. die Teilnahmebedingungen erfahren Sie hier: Einladung zum Technical Council.

Share |

Ein paar Gedanken zu “Event-Based Components” 23.08.2010

Matthias Jauernig
Matthias Jauernig, Senior eXpert

Ralf Westphal verbreitet aktuell einige sehr interessante Informationen zu “Event-Based Components” (EBCs). Diese sieht er im Gegensatz zu klassischen Komponenten (mit expliziten Interfaces) als Evolutionsschritt in Richtung “Zusammensteckbarkeit”, ähnlich Bauteilen auf einer elektronischen Platine.

Den Gedanken von Ralf habe ich meine eigenen Gedanken hinzugefügt, welche sich auch in Diskussion mit meinen SDX-Kollegen in unserem rege genutzten internen Portal entwickelt haben und EBCs durchaus auch kritisch betrachten.

Zu meinem Blog-Beitrag (englisch) geht es hier: Some thoughts on Event-Based Components

Share |

Microsoft's Streetview Killer 20.08.2010

Gerrit Puddig
Gerrit Puddig, Principal eXpert

Nachdem Google mit dem Streetview Feature einen ersten Schritt in Richtung realistischer Straßendarstellungen gemacht hat, kommt nun Microsofts Antwort. Das MS Research Team stellt Streetslide vor:

Das veröffentlichte Video zeigt eindrucksvoll wie der nächste Schritt auf diesem Weg aussieht. Hoffentlich dauert es nicht zu lange, bis Streetslide öffentlich verfügbar gemacht wird.

Share |

ALL Member in einer Many-To-Many Relationship 18.08.2010

Nicolas Meseth
Nicolas Meseth, Senior eXpert

Neulich im Projekt gab es die Anforderung, in einem SSAS Cube eine Many-To-Many Beziehung abzubilden. In diesem Artikel soll es nicht darum gehen, wie man diese Anforderung implementieren kann. Dafür gibt es einen sehr guten Artikel von Marc Russo:

http://www.sqlbi.eu/Portals/0/Downloads/M2M%20Revolution%201.0.93.pdf

Ich möchte hier auf ein Phänomen aufmerksam machen, das im Zusammenhang mit Many-To-Many Beziehungen zu beachten ist. Hat man eine solche Beziehung für seine Faktentabelle geschaffen und schaut sich die Zahlen im Cube an, so können die Zahlen für Verwirrung sorgen, insbesondere die Summenbildung scheint nicht nachvollziehbar zu sein. Hier hilft ein Eintrag, den ich auf sqlserveranalysisservices.com gefunden habe:

http://technet.microsoft.com/en-us/library/ms345139(SQL.90).aspx [UPDATE]

Dort steht der folgende wichtige Satz:

Except for the all member, the value for each member in a many-to-many dimension is the aggregate of the distinct set of granularity attribute members that exist with the many-to-many dimension member across the intermediate measure group.

Was bedeutet das? Das Beispiel in diesem Eintrag ist sehr gut verständlich. Es geht um Konten, die zu mehreren Personen gehören können. Gleichzeitig kann eine Person mehrere Konten besitzen; eine typische Many-To-Many Beziehung. Nehmen wir an, wir haben die folgende Siutation. Es gibt zwei Konten und drei Kunden. Das erste Konto gehört Jane und John zusammen, das zweite gehört Henry. Jane und John haben 100 $ auf ihr Konto eingezahlt, Henry hat 150 $ auf sein Konto eingezahlt. So weit so gut.

Da wir eine Many-To-Many Beziehung zwischen den Kunden und den Konten haben, würde eine Auflistung der Transaktionen nach Kunden wie folgt aussehen:

  • John: $ 100
  • Jane: $100
  • Henry: $150
Würden wir die Summe daraus bilden, so kämen wir auf 350$ auf den beiden Konten zusammen, was offensichtlich falsch wäre. Der Cube ist aber hier schlau genug, nur die distinkten Werte aus der Many-To-Many Beziehung zu summieren, und gibt dementsprechend $250 als Summe aus. Das freut uns! Die Antwort, warum dies so ist, findet sich ebenfalls in dem Artikel:
The amount for the all member of a Many-to-Many dimension is the aggregate of all facts.
Zusammengefasst bedeutet das, dass für jedes Attribut einer Dimension in einer Many-To-Many Beziehung die Werte über die Zwischentabelle aufgelöst werden und entsprechend korrekt angezeigt werden. Der ALL-Member stellt eine Ausnahme dar; er ignoriert die Many-To-Many Beziehung und summiert nur die Werte in der Faktentabelle.
Share |

August Office Day und jährliches Sommerfest 17.08.2010

Svenja Henß
Svenja Henß, Senior Assistant

Kaum zu glauben – aber wahr!
Nach fast 3 Wochen Dauerregen strahlte letzten Freitag, passend zum SDX Sommerfest, die Sonne vom blauen Himmel. :-)

  • Bevor der Grill am späten Nachmittag angeworfen wurde, gab es für die eXperts Vormittags zunächst News aus den Bereichen:
    - Marketing & Vertrieb (Mid-Year Review)
    - RIA Analyse mit Silverlight
    - sowie aus den Kompetenzfeldern.

Bei lauen Sommertemperaturen feierten die eXperts bis spät in die Nacht  auf der Dachterrasse und auch die ein oder andere Flasche Ramazotti musste dran glauben. Wie immer, einfach ein tolles Fest:

977232273_sdx_sommerfest_2010_089977210555_sdx_sommerfest_2010_020977214546_sdx_sommerfest_2010_032977215900_sdx_sommerfest_2010_036 977207876_sdx_sommerfest_2010_012977206908_sdx_sommerfest_2010_009977204610_sdx_sommerfest_2010_002977227572_sdx_sommerfest_2010_075977221075_sdx_sommerfest_2010_054977204311_sdx_sommerfest_2010_001977218041_sdx_sommerfest_2010_044977223993_sdx_sommerfest_2010_063977208813_sdx_sommerfest_2010_015977240690_sdx_sommerfest_2010_113977226917_sdx_sommerfest_2010_073977231372_sdx_sommerfest_2010_086977220155_sdx_sommerfest_2010_051977250119_sdx_sommerfest_2010_137977247542_sdx_sommerfest_2010_130977203950_sdx_sommerfest_2010_140

Share |

Grabsteine und Windows Phone 7 16.08.2010

Patric Schouler
Patric Schouler, Chief eXpert

Man mag sich nun fragen, was haben Grabsteine und das Windows Phone 7 OS miteinander zu tun? Die Antwort ist recht einfach: Da Windows Phone 7 kein echtes Multitasking für “Apps” von Drittanbietern unterstützt, wird dem Entwickler der sogenannte Tombstoning-Mechanismus angeboten, um seinen aktuellen Zustand oder seine geladenen Objekte zu persistieren.

WinPhone7_TombStoning Nach der Reaktivierung der Anwendung kann dann auf diese persistierten Objekte zugegriffen werden, so dass der Anwender im Idealfall von diesem “Smart Multitasking” gar nichts mitbekommt. Voraussetzung hierfür ist natürlich, das der Entwickler hat an den entsprechenden Stellen an alles gedacht.

Die ab Werk installierten Anwendungen, wie Browser, Zune Player oder die Telefonfunktionen verwenden hingegen “echtes” Multitasking und laufen auch nach Drücken des Zurück- bzw. Start-Buttons im Hintergrund weiter.

Um diesen Tombstoning-Mechanismus nun umzusetzen, benötigt man die Klasse PhoneApplicationService aus dem Microsoft.Phone.Shell Namespace. Mittels PhoneApplicationService.Current.State hat man ein Dictionary, in welches man seine Objekte bzw. Zustände abspeichern kann. Mit den beiden Events ApplicationDeactivated und ApplicationActivated hat man dann die Einsprung Punkte, um die entsprechenden Aktionen auszuführen. Man sollte sich nur bei der Datenmenge begrenzen, da nach 10 sec. die eigene App vom Windows Phone OS gnadenlos abgeschossen wird.

Wichtig ist zu wissen, das bei einer “Reaktivierung” der ApplicationLaunching-Event nicht mehr durchlaufen wird.

Das Hauptargument für das Nichtvorhandensein des Multitaskings bei Microsoft und auch bei Apple ist nach wie vor die Akkulaufzeit, da man bei einem echten Multitasking nicht die Kontrolle hat, welche langlaufenden und stromfressenden Tasks parallel laufen.

Doch in der Zukunft soll wohl auch Windows Phone 7 ein vollwertiges Multitasking unterstützen. Hier einige weiterführende Informationen:

What Windows Phone 7 doesn't have becomes a hot topic
Exclusive interview with Joe Belfiore, corporate VP of Windows Phone -- Engadget
Windows Phone 7 Series multitasking: the real deal – Engadget

Auch das iPhone (iOS4) tut hier übrigens nicht viel mehr, als der Anwendung einige dieser Ereignisse zukommen zu lassen. Echtes Multiprocessing erlauben die Apple Entwickler fremden Anwendungen aber auch nicht:

iPhone’s iOS 4 Multitasking will disappoint: Limited Capabilities : Product Reviews Net
iOS 4 Multitasking Apps for iPhone Approved

Application Settings

Ein anderer Aspekt der einem Windows Phone 7 zur Verfügung stellt, ist die Persistierung von Einstellungen seiner Anwendung. Hierzu verwendet man einen Teil des IsolatedStorage mittels Zugriff auf IsolatedStorageSettings.ApplicationSettings. Die dort Informationen werden im IsolatedStorage gespeichert und stehen der Anwendung dann immer zur Verfügung.

Share |

Neulich bei den anonymen Silverlight Usern… 13.08.2010

Alexander Jung
Alexander Jung, Chief eXpert

PS: Das geplante Technical Council zu Silverlight muss nicht bei der Krankenkasse angemeldet werden ;-)

Share |

Visual Studio: XAML-Designer-Ansicht deaktivieren

Matthias Jauernig
Matthias Jauernig, Senior eXpert

Die Designer-Ansicht von XAML-Dokumenten in Visual Studio ist ein sehr nützliches Tool, das mittlerweile (Visual Studio 2010) auch ein grafisches Editieren erlaubt. Trotzdem habe zumindest ich als Entwickler oftmals das Bedürfnis, einfach nur den XAML-Markup anzusehen, ohne die Designer-Ansicht zu laden. Gerade zum Durchführen kleiner schneller Änderungen von großem Vorteil! Umso ärgerlicher ist es, dass XAML-Dokumente standardmäßig immer im Designer geladen werden und man durch den oftmals langen Ladezyklus in seinem Arbeitsfluss unterbrochen wird.

Dieses Laden des Designers beim Öffnen von XAML-Dokumenten kann man allerdings unterbinden, XAML-Dateien werden dann immer in der Markup-View geöffnet.

Dazu einfach folgendes Häkchen setzen: "Werkzeuge > Einstellungen > Text-Editor > XAML > Sonstiges > 'Dokumente immer in XAML-Vollansicht öffnen' " (engl.: "Tools > Options > Text Editor > XAML > Miscellaneous > 'Always open documents in full XAML view' ").

Share |

SDX Technical Council: WPF im Einsatz 12.08.2010

Simone Franz
Simone Franz, Marketing Manager

Herzlich laden wir zum ersten Technical Council nach der Sommerpause ein:

Thema: ”WPF im Einsatz”
Termin: Donnerstag, 26.08.2010, 17:00 bei SDX
Zielgruppe: Architekten, techn. Projektleiter, Lead Developer

17:00 Begrüßungskaffee
17:30-19:30 WPF im Einsatz, Architektur & User Experience
19:30 Abendessen mit Bier vom Fass und Wein 

Dieses Technical Council informiert Sie über die Grundlagen der Windows Presentation Foundation und ihre Stärken im täglichen Einsatz als Rich Client.

Anhand der exemplarischen Migration einer WinForms-Anwendung nach WPF werden die beiden SDX eXperts Christian Rauch und Sebastian Weber im Technical Council einen Überblick über die Features von WPF, die Verbesserung der User Experience mit WPF, sowie einen Einblick in die Entwicklung mit WPF bei SDX geben.

Titel

Genießen Sie das abschließende Abendessen und unterhalten Sie sich in lockerer Atmosphäre mit den Teilnehmern und den SDX eXperts.

Das SDX Team freut sich über Ihr Kommen. Auf Wiedersehen im SDX Büro in der Borsigallee (Nähe Hessencenter).

Herzliche Grüße
Simone Franz

Die komplette Einladung bzw. die Teilnahmebedingungen erfahren Sie hier: Einladung zum Technical Council.

Share |

Notausschalter und Reset-Knopf fürs Internet?! 11.08.2010

Werner Franz
Werner Franz, Vorstand

Den Wunsch des Bundes Deutscher Kriminalbeamten nach einem “Notausschalter fürs Internet” sowie einem dazugehörenden Reset-Knopf thematisiert Constanze Kurz in einem lesenswerten Beitrag unter FAZ.NET.

Share |

SSIS Expression Editor und Tester 09.08.2010

Boris Borgner
Boris Borgner, Senior eXpert

Auf Codeplex gibt es ein Tool zum Editieren und Testen von SSIS Expressions außerhalb des Visual Studio Editors. Der SSIS Expression Editor & Tester ist für den SQL Server 2005 & 2008 verfügbar. Hier geht's zur Codeplex Projektseite.

Share |

Team Foundation Server-Einsatz bei Visual Studio 2010 Build 06.08.2010

Patric Schouler
Patric Schouler, Chief eXpert

Microsoft hat am 21. Juli einen großen Meilenstein bei der internen Nutzung des Team Foundation Servers erreicht. Zum ersten Mal wird zur Erzeugung der unterschiedlichen Visual Studio Versionen durchgängig das Team Foundation Server Build System verwendet.

Ein paar nackte Zahlen: 25.000 Total Active Users, über 5.000 Projekte, mehr als 90 Millionen Source Code Files.

Laut dem Microsoft-Blog-Eintrag ist dies keineswegs ein triviales Unterfangen, denn Visual Studio ist bekanntermaßen ein Riesenprojekt mit unzähligen Ressourcen und Variablen und einem Höchstmaß an Automatisierung. So werden jeden einzelnen Tag über 80 vollständige Builds von Visual Studio erzeugt, über diverse Branches, für verschiedene CPUs und verschiedene Produktvarianten.

In Brian Harrys Blog finden Sie eine ausführliche Beschreibung des Prozesses, sowie weitere Informationen zu der Gated-Check-In-Strategie und deren Nutzung für Dev11 und Dev12 (die nächsten beiden Version von Visual Studio, 2010 = Dev10):

http://blogs.msdn.com/b/bharry/archive/2010/07/28/another-milestone-in-tfs-internal-adoption.aspx

Share |

Windows Phone 7 Design Informationen 04.08.2010

Rudolf Sauer
Rudolf Sauer, Principal eXpert

Microsoft veröffentlicht in immer kürzeren Abständen immer mehr Detailinformationen zum neuen Windows Phone 7. Zusätzlich dazu können jetzt auch die Style Guide Vorgaben und die Hintergrundinformationen zur Entstehung des Designs heruntergeladen werden.

Microsoft bietet auf folgender Internetseite eine komplette Übersicht über alle “Design Templates” für das neue Windows Phone 7: Hier

Wer Interesse an der Entstehungsgeschichte hinter dem Windows Phone 7 Design-Konzept Metro hat, der kann diese über folgende Internetseite abrufen: Hier (Microsoft Mix10 Powerpoint-Präsentation “Windows Phone UI and Design Language”)

Share |

Neue Zertifizierung: Professional Scrum Developer (.NET) 02.08.2010

Matthias Jauernig
Matthias Jauernig, Senior eXpert

Neno Loje wird als erster deutscher Trainer für die Professional Scrum Developer (PSD) Zertifizierung vom 22.-26.11. in Unterschleißheim bei München den ersten Workshop PSD für .NET/Visual Studio 2010 in Deutschland durchführen (der erste Termin vom 26.-30.7. wurde leider kurzfristig verschoben). Für uns als SDX stellt der Wissensaufbau im Bereich Scrum einen wichtigen Baustein dar, sodass ich selbst an dem Workshop teilnehmen und schließlich auch die Zertifizierung ablegen werde. Wir möchten unseren Kunden damit Scrum-Wissen aus verschiedenen Projektrollen heraus vermitteln und somit eine Rundum-Beratung zum Management und zur Durchführung agiler Projekte anbieten.

PSD_Logo Der Professional Scrum Developer wurde ins Leben gerufen um den ausführenden Kräften im Projekt den Scrum-Prozess nahezubringen und ihnen praktische Erfahrungen zu vermitteln, welche im täglichen Projektgeschäft angewandt werden können. Der Kurs richtet sich damit an alle Mitglieder eines Softwareentwicklungsteams: Architekten, Entwickler, Datenbank-Spezialisten etc.

PSD_Parts Der Kurs vermittelt neben dem eigentlichen Know-How zu Scrum auch Wissen zu Softwareentwicklungspraktiken (Architektur, Design, Prozesse, …) und technologisches Fachwissen, welches den Scrum-Prozess unterstützt (Visual Studio 2010, TFS, …). Daher ist die Fokussierung auf einen Technologiebereich auch ein sehr wichtiger Bestandteil des Workshops. Sogar so wichtig, dass zwei unterschiedliche PSD-Kurse angeboten werden: Einen PSD mit dem Themenschwerpunkt .NET und einen PSD mit dem Schwerpunkt Java.

Ich freue mich auf den Kurs, der bestimmt spannend und lehrreich wird. Ich werde mit Sicherheit einige Erfahrungen mitnehmen und diese dann u. a. im Rahmen von Technical Councils und Blogbeiträgen weitergeben, vor allem aber auch in neuen Projekten einsetzen können.

Share |