Sitemap Impressum        

Software-Entwicklung bei Dr. Brunthaler IITech GmbH

Unsere Software-Entwicklungswelt besteht aus vielen Tools und Komponenten. Die wesentlichen Tools (die wichtigsten für unsere Vorgehensweise) sind selbst entwickelt. Wir benutzen sie mit folgenden System-Plattformen:

Betriebssysteme, Virtualisierung, Mobil-Geräte

  • UNIX (diverse Varianten, u.a. HP-UX, SOLARIS und AIX)
  • Linux
  • VMware
  • Android
  • Windows Mobile


Datenbank-Systeme

  • INFORMIX IDS 11.x
  • INFORMIX Ultimate Edition
  • INFORMIX Growth Edition
  • ORACLE RDBMS 11.x


Wir entwickeln mit folgenden Sprachen:

  • C# (.net Compact Framework)
  • C (Systemkern, Hintergrund-Prozesse)
  • Webservices in Axis2/C
  • Java (GUI-Entwicklung, JavaServer Faces, wildfly)
  • SQL
  • 4GL (Informix, QueriX) (auslaufend)
  • Bourne-Shell, bash (Skripting)
  • Perl, PHP
  • HTML5/javascript


Wir verwenden folgende Standards in der Entwicklung:

SQL als Datenbank-Abfragesprache ohne herstellerspezifische Funktionen ermöglicht es, unsere Software unabhängig von der verwendeten Datenbank zu entwickeln. Dadurch können wir unsere Lösungen bei Bedarf auch für andere Datenbanksysteme als die oben genannten anbieten.

Sun RPC dient fallweise zur Client/Server-Kommunikation. Darauf basierend haben wir ein eigenes Remote SQL Software-Paket geschaffen, das auf allen unseren Plattformen, für alle Programmiersprachen (auch Java!) und alle o.G. Datenbanken verfügbar ist. Integration mit .net und anderen verteilten Umgebungen ist möglich.

Zur Oberflächen-Entwicklung benutzen wir JAVA (IDS Eclipse) und JavaServer Faces. JAVA Code wird in Subversion Repositories aufbewahrt, wie es allgemein gängig ist.

Mobil-Clients erhalten grafische und dialogorieniterte Oberflächen, die mit C# unter .net Compact Framework und mit JAVA für Android-Geräte realisiert werden.

Unsere Eigenentwicklungen

Für UNIX, Linux und Windows Server benutzen wir eine Laufzeit-Umgebung ("prosit") mit API, die die Systemebene komplett von der Applikation trennt. Dadurch wird die Applikation portabel und sicher. Daneben kann die komplette Anwendung inklusive der angemeldeten Clients darüber gesteuert werden.

Zur automatischen Generierung der Programme aller Art verwenden wir einen makrofähigen Dokumenten-Prozessor ("tform"). Aus der Dokumentation einer Datenbank-Tabelle entstehen so z.B. ein lesbares Dokument, ein File mit SQL-Befehlen zum Anlegen der Tabelle und eine Library aus Funktionen, die wohldefinierte Queries und Updates auf dem Datenmodell durchführen. Damit verhindern wir z.B., dass unkontrolliertes SQL verstreut über Megabytes von Quellcode gepflegt werden muss. Eine Änderung des Datenmodells kann so mit einem einfachen "make all" in allen Programmen nachgezogen werden...

Das Pflegen von Makefiles ist eine heikle Sache, deshalb benutzen wir einen eigenen Makefile-Generator ("mamf" = Make A Makefile). Er ist in der Lage, ganze Directory-Hierarchien mit hunderten von Makefiles konsistent zu halten. Auf einer neuen Plattform wird einmal zentral konfiguriert, das wars.

Das Verteilen von Software ist ebenfalls unbequem und fehlerträchtig. Daher verwenden wir ein Set von Skripten ("distcollect", "distunpack", "ToRemote"), die jeweils nur diejenigen Files distributieren, die ein Target-Rechner auch bekommen muss, und dies automatisch über VPN/Extranet. Die Konfiguration jedes Kundensystems ist hinterlegt, sodass wir die installierte Software jederzeit rekonstruieren können.

Newsletter

 

 


Valid XHTML 1.0 Transitional