Scrum Pizza – Alternative

In der nachfolgenden Abbildung habe dich das wichtigste zum Scrum diesmal als „“Saum-Pizza-Menu-Card“ dargestellt.

Ich denke diese Darstellung ist etwas übersichtlicher. Auf der linken Seite sind die Aspekte gelistet, die sich mehr an den „Projektablauf“ anlehnen. Während die Aspekte auf der rechten Seite eher an das „Doing“ anlehnen.

Katgeorie:Methodik, VisualPedia | Kommentare deaktiviert für Scrum Pizza – Alternative

Scrum auf einen Blick

In dem nachfolgenden Poster habe ich einmal das wichtigste von Scrum auf einen Blick dargestellt.  Es eignet sich wunderbar zum Ausrucken um es neben seinem Schreibtisch an die Wand zu hängen.  Für Feedback bin ich dankbar und mache gerne eine überarbeitet Version. Email genügt.

 

Scrum Pizza
Scrum Pizza  – Das wichtigste zum Thema SCRUM

 

Katgeorie:Methodik, VisualPedia | Kommentare deaktiviert für Scrum auf einen Blick

Testcase Design != Testcase Design

Tescase Design is not equal Testcase design
Testcase Design ist nicht gleich Testcase Design

In meinem letzen Beitrag habe ich dargestellt, dass die Definition einer Software Architektur auf unterschiedlichen Abstraktions-Ebenen stattfindet und auf jeder Ebene unterschiedliche Ziele, Arbeitsweisen und Fähigkeiten gefordert werden. Ähnlich ist es auch bei der Spezifikation von Testfällen.

Die Abbildung spiegelt die Testfallerstellung anhand der unterschiedlichen Architektur-Ebenen wider. Hierbei sieht man sehr deutlich, dass die Zielsetzung der Testfall-Spezifikation sehr unterschiedlich sein kann.
Auf der Komponenten-Ebene geht es eher um Entwickler-Tests (z.B. mit JUnit) und um entwicklungsbegleitendes Testen.
Auf der Service-Ebene geht es eher um das Testen von Szenarien und Workflow Sequenzen und um Integrationstests.

Darüber hinaus ist auch zu sehen, dass ein Test-Design, Controlling und Test-Automatisierung auf jeder Ebene notwendig ist.

Katgeorie:Methodik, VisualPedia | Kommentare deaktiviert für Testcase Design != Testcase Design

Software Architektur != SW Architektur

Die Abbildung in diesem Beitrag entstand  bei der Frage:  „Was macht eigentlich ein Software Architekt „?. Hieraus ergab sich dann die Frage: „Was ist eine Software Architektur überhaupt“?.

SW arch != SW Arch
Software Architektur ist nicht gleich Software Architektur

Nun die Abbildung zeigt in vereinfachter Darstellung, dass es  die „Software Architektur“ und den „Software Architekten“ so gar nicht gibt.

Die unterschiedlichen Aufgabenfelder verlangen nach Personen mit unterschiedlichen Talenten und Kenntnissen wie

  • Algorithmen-Designer
  • Database Designer
  • User Interface Designer
  • Product-Architekt
  • Service Architekt
  • Enterprise Architekt

Auf der untersten Ebene der Komponenten Ebene (Component Level) werden im wesentlichen die „neuen“ Dinge erschaffen. In den höheren Ebenen steht  mehr das „Integration Engineering“ im Vordergrund.

Für mich stellt sich dabei natürlich auch die Frage: „Berücksichtigt  die IT Ausbildung  diese verschiedenen Ebenen und geforderten Talente in gebührender Weise“?  Ich denke, da gehen die Antworten  bestimmt weit auseinander. 🙂  Ist aber auch ein ganz anderes Thema. Aber vielleicht trägt meine Abbildung zur Klärung dieser Frage etwas bei.

 

 

Katgeorie:Methodik, Technologie | Kommentare deaktiviert für Software Architektur != SW Architektur

Wie kann ich visuelle Kommunikation einsetzen?

Visuelle Sprache einsetzen
VizTalk richtig einsetzen

In diesem Beitrag habe ich mal in einem „visual“ zusammengefasst, bei welchen Gelegenheiten visuelle Kommunikation  „Standard“ sein sollte.

Ich verwende es immer

  • Wenn ich nachdenke  der persönliche Notizen mach (Sketchnoting)
  • In Gesprächen mit Kollegen
  • In Team-Besprechungen ( am liebsten vor einem Whiteboard)
  • In Besprechungen in denen auch nicht Teammitglieder teilnehmen

 

Und natürlich auch in jeglicher Art von Dokumentation die ich erstelle.

Katgeorie:Methodik, VisualPedia | Kommentare deaktiviert für Wie kann ich visuelle Kommunikation einsetzen?

5 Skills die ein SW-Architekt haben sollte

 

skills SW arch must have
5 Skills die ein Software Architekt haben sollte ..

In diesem Beitrag möchte ich der Frage nachgehen, welches die 5 wichtigsten Fähigkeiten sind, die ein Software-Architekt haben sollte.  Wobei natürlich die Frage im Raum steht, „Was ist überhaupt ein Software-Architekt?“. Dies Frage stelle ich zunächst einmal zurück. Ich denke ich werde meine Sicht in einem der nächsten Beträge näher darstellen.

Wie aus der Darstellung ersichtlich ist, stehen im Mittelpunkt  die Fähigkeiten  verstehen, visualisieren, erklären und Handlungsoptionen erkennen.

Katgeorie:Methodik, Technologie | Kommentare deaktiviert für 5 Skills die ein SW-Architekt haben sollte

Entwicklungsumgebung Maven&Eclipse

Maven-Eclipse Senario
Maven-Eclipse Senario

In diesem Beitrag habe ich einmal dargestellt, wie eine Entwicklungsumgebung aussehen könnte, bei der folgende Aspekte im Vordergrund stehen:

  1. Entwickler sollen nur 3rd Party Komponenten verwenden dürfen, die für die Firma/das Projekt freigegeben sind.
  2. Entwickler sollen bei der Eclipse RCP Plugin Entwicklung nur Abhängigkeiten zu freigegebenen/zugelassenen Plugins haben dürfen.  Bestehen Abhängigkeiten zu anderen Plugins, so soll es nicht notwendig sein diese selbst zu erstellen. Ein Entwickler/rin braucht nur sein/ihr eigenes Plugin zu „builden“. Firmen-eigene Plugin sind ebenfalls in einem „Enterprise Eclipse Plugin“ Depot abgelegt.
  3. Eigener Source Code liegt wie üblich in einem Source Code Depot.
  4. Ein „Daily Build“ eines Produktes wird automatisch auf einem „Continious Integration Build Server“ gebaut.
  5. Nach einer „Release QA“ Phase werden  offizielle Produkte in einem firmen-eignen App-Store/Marketplace zu Verfügung gestellt.

Um die Darstellung möglichst übersichtlich zu halten, wurde auf einige Querverweise/Verbindungen verzichtet. Der Focus liegt auf der Verdeutlichung der Idee. Detailfragen können in einer eigenen Detailansicht  geklärt und beschrieben werden.

 

 

Katgeorie:Idee, Methodik, VisualPedia | Kommentare deaktiviert für Entwicklungsumgebung Maven&Eclipse

Test Driven Development

Test Driven Development im Überblick
Test Driven Development im Überblick

Test Driven Development im Überblick

In dem nebenstehenden Bild habe ich einmal zusammengefasst, was Test Driven Development  ausmacht. Es gibt einen Überblick über die wichtigsten Elemente und Arbeitsschritte.

Das wichtigste meiner Meinung nach ist das Erstellen der Testfälle  auf  Basis der Anforderungen.  Ein weiterer wichtiger Aspekt ist das Refactoring.  Dies führt zu einem „sauberen“ Source Code. Dadurch läuft man nicht in die Gefahr, dass man zu einem späteren Zeitpunkt sagen muss: „Wir müssen erst einmal in einem eigenen Release das Design gerade ziehen“.

 

Katgeorie:Methodik | Kommentare deaktiviert für Test Driven Development

User Interface Design, UX Design

User Interface Design ist eng Verknüpft mit dem Begriff „User Experience Design„.

Ux Design
Ux Design

In der seitlichen Abbildung habe ich die wichtigsten Grundlagen skizziert. Die wichtigsten Aspekte dabei sind:

  1. Die Denkweise des Endbenutzers  kann man durch ein sogenanntes „Begriffliches Model“ beschreiben. Hierbei geht es immer um die Frage “ WER und WAS hängt wie Zusammen
  2. Die Benutzerschnittstelle  kann man als ein sogenanntes „Implementation Model “ bezeichnen. Es legt fest „Welche Informationen und in welcher Art Informationen dem Anwender präsentiert und welche Eingabe-Aktionen verarbeitet werden können“.
  3. Im Zentrum steht dabei der Anwender. Dabei sind drei verschiedene Aspekte von Bedeutung sind.  (I) Die Fähigkeiten und Ressourcen der  jeweiligen Person bzw. des Personenkreises, (II) die Tätigkeit die auszuführen ist und (III) die Umgebung in der die Tätigkeit ausgeführt werden soll.

Bei dem Design einer Benutzerschnittstelle  sind dies drei Aspekte wichtig, da diese Einfluss haben auf die unterschiedlichsten Dinge wie

  • Bedienkonzept
  • Farbwahl
  • Piktogramme, Ideogramme, etc.
  • Sounds
  • Eingabe/Ausgabe Hardware Devices etc.

Aber auch bei der Einführung einer Standard-Software ist dies von Bedeutung. Da hier ebenfalls  zu berücksichtigen ist, ob die im Implementations-Modell getroffenen Annahmen über die Arbeitsprozesse richtig sind und auch zu den Geschäftsprozessen der Endbenutzer passen.

Die Herausforderung besteht also darin, sowohl die Anforderungen aus Endbenutzer Sicht (User needs)  als auch die Notwendigkeiten aus Geschäftsprozess-Sicht (Business Needs) zu berücksichtigen. Diese Schnittmenge wir meist unter dem engl. Schlagwort „User Experience Design“ zusammengefasst.

 

 

Katgeorie:Methodik, VisualPedia | Kommentare deaktiviert für User Interface Design, UX Design

Scrum – Überblick und Herausforderungen

Inzwischen ist SCRUM als Vorgehensmodell in der Softwareentwicklung weit verbreitet. Doch wird SCRUM auch richtig verstanden und gelebt? In den beiden nachfolgenden Abbildungen habe ich  dargestellt, was die wesentlichen Aspekte von SCRUM sind und welche  Herausforderungen sich in der Praxis stellen.

Scrum im Überblick:

Scrum-Überblick
Scrum-Überblick

Scrum Herausforderungen:

Scrum Herausforderungen
Scrum Herausforderungen

Bei umfangreichen Produkten stellen sich meist folgende Fragen:

  1. Kann ein Product Owner alles abhandeln oder brauche ich mehrere Product Owner?
  2. Komme ich mit einem SCRUM Team aus oder brauche ich mehrere Teams?
  3. Wohin mit dem Quellcode? Alle Teams arbeiten auf dem selben Source-Branche oder brauche ich  team-spezifische Branches? Oder sollte ich lieber mit Feature-Branches arbeiten?
Katgeorie:Methodik | Kommentare deaktiviert für Scrum – Überblick und Herausforderungen