GWT in der Praxis: Modernisierung einer Web-Applikation

16. Dezember 2011 von Manuel Kummerländer

Als Software-Entwickler muss man flexibel sein. Keine zwei Projekte sind identisch und jeder Kunde hat ganz individuelle Wünsche. Handelt es sich um ein neues Projekt, bei dem noch keine einzige Zeile Code geschrieben wurde, kann man sich austoben und von neuesten Techniken Gebrauch machen. Doch was, wenn es sich um eine in die Jahre gekommene Anwendung handelt, die “nur” modernisiert werden soll? Dann gilt es, Alternativen abzuwägen und Kompromisse einzugehen. Werfen wir einen Blick auf ein solches Projekt und die Überlegungen vor, während und nach der Umsetzung.

Praxistipps für Entwickler beim Einsatz von Scrum

21. November 2011 von Michael Frankl

Vom agilen Vorgehensmodell Scrum und seinen Abläufen liest und hört man an allen Ecken, auch in unserem Blog. Schlagwörter wie Sprint-Planning, Review und Retrospektive sind jedem schnell geläufig, der sich ein wenig mit Scrum beschäftigt. Recht schwierig wird es jedoch, wenn der Entwickler selbst nach Möglichkeiten sucht, um Scrum am besten in seinem Team anzuwenden. Scrum stellt nämlich auch an die Entwicklungsmethoden an sich andere Anforderungen als klassische Vorgehensweisen. Einige Tipps können dem Entwicklungsteam sehr helfen. In diesem Artikel wollen wir Best Practices aus der der Erfahrung mit “Agile” bei //SEIBERT/MEDIA schildern.

TwentyFeet: Tomcat-Cluster wird um Memcached erweitert

18. November 2011 von Marcell Dietl

Der von //SEIBERT/MEDIA entwickelte Ego-Tracking-Dienst TwentyFeet gewinnt täglich viele neue Anwender und wächst stetig schneller. Das freut uns enorm – aber es ergeben sich zugleich neue Herausforderungen, denen wir begegnen müssen. Um stets gute Antwortzeiten liefern zu können, nutzen wir bereits einen Tomcat-Cluster mit mehreren Servern. Dieser soll nun mithilfe von Load Balancing und Memcached optimiert werden. In diesem Artikel erfahren Sie wie und warum.

SourceTree – Atlassians Git- und Mercurial-Client für Mac OS X

26. Oktober 2011 von Marcell Dietl

Fast jedes große Software-Projekt macht von ihnen Gebrauch und auch immer mehr Hobby-Entwickler setzen sie ein. Die Rede ist von Distributed Version Control Systems (DVCS) – jener Software, welche die Teamarbeit erst richtig effizient werden ließ, indem sie die Synchronisation und Dokumentation aller Code-Änderungen vereinheitlichte und automatisierte. Um die Arbeit noch leichter zu machen, hat Atlassian den Mac-Client SourceTree in sein Portfolio aufgenommen – und verschenkt für begrenzte Zeit Lizenzen.

Eine virtuelle Maschine als Entwicklungsumgebung nutzen

10. Oktober 2011 von Michael Frankl

Vielen Programmierern im Internet-Umfeld stellt sich häufig die Frage, in welcher Umgebung sie ihre Anwendungen entwickeln sollen. Zur Auswahl stehen die eigene Workstation, ein zentraler Entwicklungsserver oder aber virtuelle Maschinen. Jede Lösung hat eigene Vor- und Nachteile, wodurch einem die richtige Wahl nicht immer leicht gemacht wird. In diesem Artikel wollen wir die virtuelle Maschine als Entwicklungsumgebung näher beleuchten und auf Basis eigener Erfahrungen zeigen, wann sie eine gute Wahl ist.

Scrum in der Praxis: Ein Team startet durch

7. Oktober 2011 von Manuel Kummerländer

//SEIBERT/MEDIA setzt auf “Agile” und Scrum ist in vielen unserer Projekte längst an der Tagesordnung. Doch die Etablierung von Scrum geht nicht “von jetzt auf gleich”, sondern erfordert ein Umdenken in vielerlei Hinsicht: neue Methoden, unbekannte Prozesse, eine ganz andere Arbeit und Kommunikation im Team. Dies ist der persönliche Bericht eines Teammitglieds mit Blick auf die Scrum-Methoden und die Stadien des Team Buildings.

Integrationstests: Strategien und Herausforderungen

5. Oktober 2011 von Manuel Kummerländer

Bei der Durchführung großer Software-Projekte schleichen sich leider auch beim erfahrensten Programmierer hin und wieder Fehler in den Code ein. Diverse Testverfahren sollen helfen, dieser wieder Herr zu werden: Mit Unit-Tests überprüft man Komponenten unabhängig von anderen und garantiert die funktionale Korrektheit. Integrationstests stellen anschließend sicher, dass das Zusammenspiel und die Kommunikation der Komponenten untereinander fehlerfrei ablaufen. Nachfolgend wollen wir Strategien und Herausforderungen dieses Verfahrens näher beleuchten.

Die Retrospektive im agilen Prozess: No time to improve?

16. September 2011 von Joachim Seibert

Die Retrospektive ist ein fest vorgesehenes Meeting im Scrum-Framework und wohl das wichtigste von allen, denn es ist das Instrument, das für die stetige Verbesserung des Teams und seiner Zusammenarbeit sorgt. In diesem Artikel werden Ablauf, Inhalte und Potenziale der Retrospektive beschrieben.

Unit-Tests in der Software-Entwicklung

12. September 2011 von Manuel Kummerländer

Nach unserer ausführlichen Betrachtung von Akzeptanztests in der Software-Entwicklung widmen wir uns nun dem anderen Ende im Spektrum der Software-Tests: dem Testen von konkretem Code, im Extremfall von einzelnen Zeilen. Ein Unit-Test (auch Modultest oder Komponententest) ist ein ganz basaler Test einer einzelnen konkreten Funktionalität bzw. Funktion oder Methode.

Apache CouchDB: Eine NoSQL-Datenbank zum Entspannen

9. September 2011 von Marcell Dietl

Für kaum eine Herausforderung in der Informatik wurden und werden so viele unterschiedliche Lösungsansätze entwickelt wie für die effiziente Speicherung und Verwaltung sehr großer Datenmengen. Doch was vor zehn Jahren noch als sehr groß galt, ist heute nicht mehr sonderlich beeindruckend. In großen sozialen Netzwerken sind Datenmengen im Terabyte-Bereich an der Tagesordnung, bei denen klassische Lösungen nicht mehr greifen. NoSQL-Datenbanken wie Apache CouchDB sind genau für solche Szenarien entwickelt worden und werden immer populärer. Wir sehen uns exemplarisch das NoSQL-System CouchDB an.

NoSQL: Eine kurze Einführung in Theorie und Praxis

31. August 2011 von Marcell Dietl

Kaum etwas verändert sich so rasant wie das moderne World Wide Web. Für Probleme, die man vor kurzem noch nicht einmal kannte, bedarf es plötzlich dringender Lösungen, weil altbewährte Konzepte versagen und das Wachstum nicht gebremst werden soll. In den letzten Jahren war es vor allem das explodierende Datenvolumen großer Seiten wie Amazon, Google und Facebook. Mit NoSQL-Datenbanken wie Apache CouchDB ist man dem Problem riesiger Datenmengen schließlich Herr geworden. Dieser Artikel soll eine kurze Einführung in die Ideen und Konzepte einer solchen Datenbank geben.

JSR 203: Die neuen I/O-Schnittstellen in Java 7

5. August 2011 von Marcell Dietl

Man mag es kaum glauben, aber manche Probleme, die mit dem neuen Java 7 endlich gelöst wurden, haben Programmierern ein ganzes Jahrzehnt lang Zeit und Nerven geraubt – allen voran die Programmierschnittstellen (APIs) zum Umgang mit Dateien, Verzeichnissen und anderen alltäglichen Bestandteilen eines Computersystems. Doch damit ist jetzt Schluss: Der Java Specification Request (JSR) 203 hat seinen Weg in die siebte Version der Software Edition von Java gefunden und mit ihm eine ganze Reihe neuer Schnittstellen, die die Herzen der Programmierer höher schlagen lassen werden.

Coding-Katas: Steigerung der Produktivität und höhere Code-Qualität

17. Juni 2011 von Michael Frankl

Zurzeit experimentieren einige //SEIBERT/MEDIA-Entwickler gewinnbringend mit Coding-Katas. Hierbei wird durch ständige Wiederholung trainiert: Der Entwickler versucht, dieselbe Aufgabe immer effektiver und effizienter zu erledigen, bis er seine Lösungsansatz schließlich perfektioniert hat. Konsequent betrieben, bieten Coding-Katas eine vielversprechende Möglichkeit, um sich als Entwickler kontinuierlich zu verbessern.

Akzeptanztests in Scrum-Projekten: Theorie und Praxis

18. Mai 2011 von Manuel Kummerländer

Mithilfe von Akzeptanztests wird im Rahmen der Software-Entwicklung geprüft, ob die Software die funktionalen Erwartungen und Anforderungen im Gebrauch erfüllt. In Scrum-Projekten heißt das, dass der Kunde bzw. der Product Owner testet, inwiefern das System die vorweg definierten Anforderungen erfüllt und ob ein Release auslieferbar ist. In diesem Artikel werden die theoretischen Grundlagen von Akzeptanztests beschrieben und Möglichkeiten der Automatisierung diskutiert.

Software-Tests: Notwendigkeit und Arten des Testens

16. Mai 2011 von Manuel Kummerländer

Software-Entwicklung ist ein komplexer Prozess, bei dem zwangsläufig Fehler gemacht werden. Fehler sind nicht dramatisch, solange man sie rechtzeitig genug entdeckt, doch je später sie erkannt werden, desto aufwändiger ist die Behebung. Diese kompakte Einführung befasst sich mit der Notwendigkeit und den Arten des Testens in Software-Projekten.

Agilität durch Kanban: Das Task-Board

28. März 2011 von Joachim Seibert

Bei //SEIBERT/MEDIA kommt neben Scrum auch die Prozessvisualisierung mit Kanban erfolgreich zur Anwendung. Diese sog. Lean-Management-Methode visualisiert den Produktionsprozess in der Software-Entwicklung mit seinen verschiedenen Stufen. Nachdem im ersten Artikel grundsätzliche Fragen angesprochen worden sind, soll in diesem Beitrag das Kanban-Herz im Mittelpunkt stehen: das Task-Board.

Agilität durch Kanban: Funktionsweise, Elemente, Anwendung

25. März 2011 von Joachim Seibert

Kanban ist eine sog. Lean-Management-Methode, die den Produktionsprozess in der Software-Entwicklung mit seinen verschiedenen Stufen visualisiert. Vorrangiges Ziel ist, die Anzahl parallel umzusetzender Anforderungen – Aufgaben, User Stories oder auch Projekte – zu reduzieren und so die Durchlaufzeiten der einzelnen Anforderungen zu verkürzen. Im Grunde besteht Kanban aus zwei Ingredienzien: einem analogen Task-Board und den agilen Prinzipien. Eine Einführung.

Der StepStone-Bewerbungsgenerator: Technische Umsetzung in GWT

11. März 2011 von Michael Frankl

Ein technisch und inhaltlich anspruchsvolles Projekt ist nach einigen Monaten der Entwicklung Ende 2010 sehr erfolgreich zu Ende gegangen: der Online-Bewerbungsgenerator von StepStone unter www.bewerbung.de. In diesem Artikel soll dargelegt werden, warum und wie GWT in diesem Projekt zum Einsatz gekommen ist, welche Erfahrungen wir gesammelt haben und auf welche Stolperfallen wir getroffen sind.

Einsatz von OpenOffice zur Dokumentengenerierung für Web-Anwendungen

2. März 2011 von Michael Frankl

Entwickelt man Web-Anwendungen, steht man immer, wenn es um das Erstellen von komplexeren Ausgaben von Dokumenten geht, vor einigen Herausforderungen. Je nach Anspruch und notwendigem Funktionsumfang der Druckausgabe bieten sich verschiedene Möglichkeiten an, die Erzeugung der Dokumente zu realisieren. Dieser Artikel beschreibt den Einsatz von OpenOffice zur Dokumentengenerierung für Web-Applikationen.

LimeSurvey aus Admin-Sicht: Große Stärken, kleine Schwächen

24. Januar 2011 von Torsten Groß

LimeSurvey ist eine Software zur Erstellung und Durchführung von Online-Umfragen. //SEIBERT/MEDIA hat bereits mehrere individuelle, webbasierte Befragungen für Kunden und auch Umfragen in eigener Sache mit LimeSurvey realisiert. Kunden und auch wir selbst sind begeistert von den Individualisierungsmöglichkeiten, der Ausgereiftheit und der Funktionenvielfalt des Tools, das wir Ihnen gerne vorstellen möchten.

//SEIBERT/MEDIA besteht aus den vier Kompetenzfeldern Consulting, Design, Technologies und Systems und gehört zu den erfahrenen und professionellen Multimedia-Agenturen in Deutschland. Wir entwickeln seit 1996 mit heute über 65 Mitarbeitern Intranets, Extranet-Systeme, Web-Portale aber auch klassische Internet-Seiten. Seit 2005 konzipiert unsere Designabteilung hochwertige Unternehmensauftritte und kommunikative Konzepte. Beratungen im Bereich Online-Marketing und Usability runden das Leistungsportfolio ab.

Zu unseren teils weltweit agierenden Kunden gehören u.a. Accor, Allianz, Atlas MTT, BAD, Deutsche Klinik für Diagnostik, Deutsche Post, Hitachi, Honda Motor, Hotel InterContinental, Institut Fresenius, Kabel Deutschland, Lufthansa, SAP, SGS AG, STA Travel, StepStone sowie viele andere große und kleine interessante Unternehmen.