Softwareentwicklung in Java / JEE , C++,

Objective-C und PHP

 

Die Lyncker & Theis GmbH ist Dienstleister für Softwareentwicklung, IT-Consulting und Web-Lösungen mit Sitz in Wiesbaden. Wir konzentrieren uns auf die Entwicklung von individuellen Geschäftsanwendungen unter Verwendung von modernen Technologien.

Unsere Kompetenz ist das breite Wissen in den verschiedenen Web-, Mobile- und Richclient Technologien basierend auf Java/JEE , C++, PHP und Objective-C.

 

Der Software-Entwicklungsprozess

Unser Entwicklungsprozess entspricht den heute gängigen Regeln der Softwareprogrammierung. Um eine hohe Qualität des Produktes zu gewährleisten sind unsere Entwickler gehalten sich an strenge Entwicklungsrichtlinien zu halten, die im Folgenden kurz beschrieben werden:

 

Ticketsysteme

Sämtliche Anforderungen werden zunächst in Tickets unsers Ticketsystems  abgelegt. Der aufnehmende Entwickler muss zunächst eine Bedarfsanalyse erstellen, Anwendungsfälle dokumentieren und daraus resultierend ein Softwaredesign mit Hilfe von UML für das zu bearbeitende Ticket erstellen. Dieser Teil wird dann von einem anderen Entwickler zunächst begutachtet und auf Vollständigkeit hin geprüft.  Anschließend kann die Implementation beginnen. Bevor das Ticket zum Review bereit gestellt wird, müssen Unittests, das Funktionieren des Codes nachweisen.

 

Coding

Das Programmieren der Software erfolgt nach genau definierten Coding-Guidelines, die den Entwicklern helfen eine hohe Qualität von Quellcode bei zu behalten.

 

Versionskontrollsysteme

Code wird von den Entwicklern in ein GIT-Repository eingecheckt und verwaltet.

 

Code-Reviewing

Zunächst befindet sich neuer Code in einem kollaborativen Review-System (Gerrit), dort muss erst ein Reviewer bestätigen, dass er den Code begutachtet und getestet hat bevor er in das Hauptrepository eingefügt wird. Ein Reviewleitfaden hilft den Entwicklern eine hohe Kontroll-Qualität einzuhalten.

 

Dokumentation / Wiki

Sämtlicher Code ist nach den Dokumenationsrichtlinien zu beschreiben. Außerdem muss das entstandene Modul hinsichtlich Funktionalität technisch wie fachlich im Wiki beschrieben werden.

 

Testing

Jedes entstandene Feature muss automatisiert getestet werden können. Die Unit-Tests werden im Review-Prozess genauso geprüft wie der Code selbst. Nachdem der Code in den Hauptstamm des Repository überführt wurde, werden die Tests in die automatisierten Testsysteme (Hudson / Jenkins) eingespielt. Diese Systeme alarmieren den betreffenden Entwickler, wenn aufgrund von Abhängigkeiten an anderer Stelle ein Test mal nicht mehr funktionieren sollte.

 

Windows Oracle Eclipse Linux PL/SQL C++ MFCMac MYSQL MSMFC Qt Java Android Postgress PHP JSP Boost iPhone / iPod OS Spring SQL-Server STL PHP FFmpeg SQL Hibernate VBA/VB JEE JSF Richfaces EJB JBoss SEAM Facelets Joomla C Wordpress