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

  • Linux
  • VMware, KVM, Docker
  • Android
  • Windows Mobile (nur legacy Mobilgeräte)
  • UNIX (nur legacy Installationen)


Datenbank-Systeme

  • INFORMIX IDS 11.x/12.x/14.x
  • ORACLE RDBMS 11.x
  • PostGreSQL, MySQL (Web-Anwendungen)


Wir entwickeln mit folgenden Sprachen:

  • C (Systemkern, Hintergrund-Prozesse, Agenten/Services)
  • Webservices in Axis2/C
  • Java (GUI-Entwicklung, JavaServer Faces, wildfly)
  • SQL
  • 4GL (Informix, QueriX) (auslaufend)
  • Bourne-Shell, bash (Skripting)
  • Perl, PHP
  • HTML5/javascript
  • X3D, JAVA Game Engines (Visualisierung)


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.

WSDL Webservices verbinden JAVA GUI Anwendugnen und Server-Backend. Schnittstellen werden ggf. über RESTful APIs (X3D, JSON) umgesetzt.

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. GIT ist in der Diskussion.

Mobil-Clients erhalten grafische und dialogorientierte Oberflächen, die 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
   
   E-Mails empfangen

 


 


Valid XHTML 1.0 Transitional