Posts Tagged ‘IT’

Asterisk: Portaler telefonieren nach Hause

Montag, November 2nd, 2009

Käuferportal wird zunehmend größer. Damit einher gehen immer höhere Ansprüche an die intern entwickelte Backend-Lösung. Galt es vor drei Wochen noch eine Überarbeitung und Erweiterung der Berater-Seiten mit zusätzlichen Funktionen und Features im Sprint zu realisieren, soll es am besten schon ab gestern möglich sein, aus dem KP Backend per Mausklick zu einem Kunden, über unseren internen VoIP-Server, eine Telefonverbindung aufzubauen.

Asterisk

Asterisk und O..pen Source

Zum Glück ist man heutzutage nicht mehr auf sich alleine gestellt, sondern kann bei solchen Projekten auf mindestens ein großes Open-Source Projekt zurück greifen. In unserem speziellen Fall verwenden wir das Open-Source Projekt Asterisk. Asterisk bezeichnet sich selbst als “a box of Legos for people who want to create communcation applications”. Asterisk ist also die Eierlegende-Wollmilch-Sau welche wir zur Steuerung unseres ISDN-PMX-Anschlusses verwenden. Asterisk ist mittlerweile auch schon seit beinahe einem Jahr bei uns im Einsatz und von daher keine große Neuerung mehr. Neu ist allerdings, dass wir Asterisk mit Ruby on Rails ansteuern und Telefonverbindungen aufbauen.

(weiterlesen…)

Ähnliche Beiträge:

Das Viech

Freitag, Oktober 23rd, 2009

Im Büro der IT hängt seit einiger Zeit etwas seltsam anmutendes am Deckenstrahler herum. Dieses, ähm, Haustier, habe ich liebevoll “Viech” getauft. Das Viech:

Was das nur sein könnte?

Was das nur sein könnte?

Na, wer erkennt’s? Richtig, es ist “das Viech” aus dem erfolgreichen ersten Teil der Matrix-Reihe, genannt “The Sentinel” oder eben “das Viech”. Ahem. Es wäre aber auch irgendwie schade, wenn unsere IT nicht wenigstens ein bisschen ins Nerd-Schema passen würde. Tatsächlich programmieren die überhaupt nicht im Dunkeln und eigentlich sind die auch recht umgänglich. Ich war zu Anfang schwer enttäuscht. Da trägt auch keiner Superhelden T-Shirts. Dann habe ich herausgefunden, dass sie sich nachts alle heimlich zu einer LAN treffen und dort ihren Nerd-Gelüsten nachgehen.

… alles Spaß natürlich, ohne unsere IT würde hier ganz schnell alles den Bach runter gehen und wir freuen uns jeden Tag wieder auf den Kampf zwischen BWL und Informatik. Wie in der Schule früher.

SEntinel

Übrigens gehört das Teil unserem Frontend-Mann Marc...

Original aus Matrix

Das Original aus dem Film

Ab sofort werde ich wohl desöfteren durch das Büro gehen und einige denkwürdige Dinge fotografieren, die den Charme des Käuferportals ausmachen. Vorrausgesetzt, ich darf mir weiterhin auch Carstens brandneue Digicam ausleihen.  Ich verspreche einen hohen Entertainmentfaktor.

Ähnliche Beiträge:

Usability Test bei Käuferportal

Mittwoch, Oktober 7th, 2009

Käuferportal ist kein Service, den man leicht mit einem Slogan erklären kann. Nicht nur deshalb versuchen wir ununterbrochen, neue Wege zu finden unseren Service leichter zu erklären und damit die Usability zu steigern. Um dabei so konzentriert wie möglich zu arbeiten, sammeln wir Feedback von vielen unterschiedlichen Personen. Dazu gehören auch unsere User, denn schließlich sind sie es, für die wir die Seite konzipieren.

Usability Testing

Carsten & Arlo aus der Produktentwicklung führen deshalb regelmäßig Usability Tests durch. So können wir neue Features oder bestehende Seiten direkt am Anwender testen und bekommen eindeutige Hinweise zu möglichen Problemen, die wir subjektiv nicht direkt wahrnehmen.

Bei einem Usability-Test werden Versuchspersonen veranlasst, typische Aufgaben mit dem Testobjekt zu lösen, die sie später in ähnlicher Form mit diesem Produkt erledigen würden. Dabei wird geprüft, an welchen Stellen Schwierigkeiten bei der Benutzung auftreten. (mehr zu Usability Tests bei Wikipedia)

Entgegen der allgemeinen Auffassung müssen Usability Tests nicht teuer oder aufwendig sein. Jeder kann einen Usability Test führen, ohne Labor und ohne professionelles Team. Fünf Tester reichen meistens aus, um ein konkretes Ergebnis zu erzielen, sodass eine geringe Aufwandsentschädigung auch nicht direkt in die Pleite führen wird.

Wir haben uns einmal die Zeit genommen, den Prozess, den wir entwickelt haben (mit der Betonung auf “wir”), in einigen Punkten zusammen zu fassen- gerade für Internetgründer sind solche Usability Tests Gold wert und können dabei helfen, neue Produkte direkt mit positiver Resonanz auf den Markt zu bringen.

(weiterlesen…)

Ähnliche Beiträge:

Die Scrum Methode

Dienstag, September 22nd, 2009

Darf ich vorstellen: Hannes.

Hannes guckt normalerweise noch freundlicher, ich bin nur schlecht im Fotos machen

Hannes guckt normalerweise auch freundlicher, ich bin nur schlecht im Fotos machen...

Hannes hat einen österreichischen Akzent und ist neuer CTO bei Käuferportal, und mit Hannes kommen auch einige kleine Strukturveränderungen.

Seit der Gründung von Käuferportal hat unser IT-Team, bestehend aus Marc (Front End), Mike (Back End) und Carsten (Produktentwicklung) einen großartigen Job gemacht. Aber mit dem Erfolg steigt auch der Druck, alles schneller, organisierter und, man kann es nicht oft genug betonen, schneller zu erledigen. Das alles bei steigender Qualität zu wahren ist nicht einfach, aber durchaus machbar. Bisher konnten wir das Chaos erfolgreich bändigen,  und damit das bei steigenden Anforderungen auch weiterhin so bleibt, hat Hannes nun eine feste Methode eingeführt, die ab sofort angewendet wird: SCRUM.

Was ist Scrum?

Scrum ist eine Management Methode und soll bei der Entwicklung komplexer Projekte helfen, den Überblick zu behalten. Scrum wird zwar nicht ausschließlich, aber überwiegend in der Softwareentwicklung angewandt. Scrum ist dabei auch für einen Nicht-IT-Mensch einfach zu erklären, dafür sollten aber auch die Problemstellung und die Annahmen klar sein, die Hannes hier gesammelt hat:

  • Die meisten IT-Probleme sind zu komplex, um bereits bei bzw. kurz nach Projektbeginn einen funktionierenden Projektplan aufstellen zu können.
  • Die Projekt-Komplexität wird nicht durch mehr Projekt-Management verringert, sondern durch die Aufteilung des Projektes in Sub-Projekte (Sprints)
  • Ein Projekt-Team arbeitet am besten, wenn es keine störenden Einflüsse von Außen (neue Anforderungen, geänderte Anforderungen) ausgesetzt ist
  • Ein Projekt-Team kann sich selbst organisieren und wird dies auch tun, um seine Ziele in einem Sprint zu erreichen

Das Scrum Modell definiert drei Rollen: Der Product Owner (sozusagen der Kunde des Projektes), beschreibt, was benötigt wird. Der ScrumMaster, der den ganzen Prozess und die Arbeit als eine Art “Hirtenhund” begleitet und bei Problemen aller Art hilft und unterstützt. Hierbei nimmt der ScrumMaster allerdings keine klassische Management-Funktion gegenüber dem Team ein, was sich vorallem darin spiegelt, dass der ScrumMaster gegenüber dem Team keine “Weisungsbefugnis” haben muss.

Schließlich gibt es dann auch noch den wichtigsten Teil, das Team, welches das Produkt entwickelt. Das Team ist für den positiven Abschluß der einzelnen Sprints und des Projektes eigenständig verantwortlich. Der ScrumMaster begleitet das Team und greift, falls nötig, lenkend ein. Darüber hinaus ist es seine Aufgabe Scrum in die Organistation zu integrieren und Mitarbeitern und leitenden Angestellten zu vermitteln. Zusätzlich gibt es noch Stakeholder, die als Beobachter und externer Input dienen können.

Der Scrum Flow

Der ganze Arbeitsprozess, der “Scrum Flow“, läuft dabei in verschiedenen Phasen bzw. auf unterschiedlichen Ebenen ab:

  • Vorbereitung
  • Scrum Planning Meeting
  • Daily Scrum Meeting
  • Scrum External Review Meeting
  • Scrum Retrospective Meeting

File:Scrum process.svg

- Vorbereitung:

Das Projekt startet mit der Vision des Produktes, welches entwickelt werden soll. Welche Anforderungen müssen erfüllt werden, sowohl funktional als auch nicht-funktional? Der Product Owner erstellt einen Plan für den Ablauf des Projektes, inklusive des Product Backlogs. Dieser Backlog ist eine Liste der “Arbeitsblöcke”, die erarbeitet werden müssen. Zusammen mit dem ScrumMaster wird hier die Priorisierung festgelegt: was muss zuerst fertig sein und funktionieren?

- Scrum Planning Meeting

Vor jedem Sprint, also vor jedem Arbeitsblock, den das Team erledigen soll, wird dieses Meeting abgehalten. Der Product Owner und das Team definieren hier ganz genau, was im kommenden Sprint alles gemacht werden soll bzw. kann. Der Product Owner stellt die gewünschten Anforderungen vor, und das Team befragt ihn dazu. Schließlich entscheidet das Team, wie viele Aufgaben aus dem Product Backlog in diesem Sprint bewältigt werden können. Das Team kann nun den Sprint planen und den dazugehörigen Sprint Backlog erstellen.

- Daily Scrum Meeting

Das Daily Scrum Meeting ist ein fünfzehnminütiges Meeting zwischen den Teammitgliedern. Die Mitglieder tauschen sich darüber aus, was seit dem letzten Scrum Meeting an dem Projekt geändert wurde, was bis zum nächsten erledigt wird und ob es Probleme bei den Aufgaben gibt. Der ScrumMaster nimmt ebenfalls teil, hat aber nur eine moderierende bzw. beratende Funktion. Das Daily Scrum Meeting dient vorallem dazu, daß sich die Teammitglieder untereinander austauschen um sich gegenseitig bei Problemen helfen zu können. In keinster Weise soll es als eine Berichterstattung gegenüber dem ScrumMaster bzw. dem Product Owner gesehen werden.

- Scrum External Review Meeting

Das Team präsentiert seine Ergebnisse aus dem Sprint dem Product Owner und allen Stakeholdern, die teilnehmen wollen. Dieses Meeting dient der Demonstration von Fortschritten und der Integration der Beteiligten und eventueller Interessenten. Zusätzlich können Stakeholder und externe Parteien Vorschläge machen, welche Aufgaben im nächsten Sprint zu bewältigen sein müssen. Die endgültige Entscheidung obliegt allerdings wieder dem Product Owner und dem Team.

- Scrum Retrospective Meeting

Team und ScrumMaster analysieren den vergangenen Sprint. Der ScrumMaster hat hier die Aufgabe, den Entwicklungsprozess mit dem Team zu optimieren, um ihn so für alle Beteiligten besser zu gestalten.

Kurzgefasst

ScrumMaster und Product Owner legen alle Anforderungen für ein Projekt zusammen und priorisieren sie. Diese Liste, der Product Backlog, wird ständig ergänzt und flexibel angepasst. Sobald allerdings eine Aufgabe aus diesem Product Backlog an das Team gegeben wird, wird der Arbeitsfluss nicht mehr unterbrochen. Dabei wird das Projekt komplett umgesetzt und getestet, ohne von Zusatzanforderungen gestört zu werden.

Der größte Vorteil von Scrum liegt darin, dass durch den iterativen und komplett offenen Projektmanagent-Ansatz Problem sofort erkannt und Lösungen hierfür erarbeitet werden können. Diese Transparenz und das Vertrauen auf die Selbstorganisation des Teams ist der Unterschied der ein erfolgreiches Projekt von einem nicht erfolgreichem unterscheidet.

Mehr Informationen zu Scrum und möglichen Alternativen gibt es bei Wikipedia.

Ähnliche Beiträge: