Kompetenzen

Der Erfahrungsschatz von mehr als 20 Jahren Tätigkeit im Bereich der Entwicklung von technischer Software, Embedded- und Echtzeitsystemen bildet ein solides Fundament für die Kompetenz von Fiebig Astrotechnik. Aus diesem umfangreichen Know How kann hier nur ein Kern und Auszug wiedergegeben werden. Falls Sie dedizierte Kompetenzen vermissen, die in Ihrem Projekt benötigt werden, zögern Sie daher bitte nicht Kontakt aufzunehmen und dies zu hinterfragen.

  • Systementwicklung und Applikationsentwicklung unter Linux
  • Objektorientierte Programmierung in C++, Standard C++11
  • Modellierung in UML, Dokumentation in deutsch oder englisch
  • Plattformunabhängige grafische Benutzeroberflächen auf Basis von Qt
  • Netzwerkprogrammierung und diverse Protokolle, inklusive INDI
  • Architektur und Design, Implementation, Test, Integration, Dokumentation
  • Entwicklung für eingebette und Echtzeitsysteme
  • Erfahrung mit Industrie-PCs und VMEbus-Systemen, Kleincomputern wie Raspberrry Pi und Mikrocontrollern
  • Hintergrundwissen in Astrophysik, Teleskoptechnik, Optik, CCD-Technik, etc.

Anforderungsmanagement:

  • System-Anforderungsanalyse und Ableitung von Softwareanforderungen
  • Modellierung textuell, tabellarisch oder mit UML (Use Cases, etc.)
  • Requirements Management und Traceability z.B. mit Werkzeugen wie DOORS oder Enterprise Architect
  • Change Management, z.B. mit Werkzeugen wie Redmine oder Mantis

Architektur und Design:

  • Objektorientierter Systementwurf mit UML
  • Modellierwerkzeuge z.B. Enterprise Architect, Visio
  • Dokumentation mit Word, LibreOffice, FrameMaker
  • Codegenerierung aus dem Modell
  • Simulation, Alg.entwurf mit MatLab

Implementation Controller Software:

  • Betriebssysteme: (RT) Linux, VxWorks, RTOS allgemein, ohne Betriebssystem
  • Programmiersprachen: C / C++, Shell, Python
  • Feldbusanbindungen, z.B. CAN
  • Networking: UDP/TCP-Socketprogrammierung, diverse Protokolle (inkl. INDI), Netzwerkonfiguration
  • Entwicklungsumgebungen: Eclipse, QtCreator, Tornado
    Versionsverwaltung: Subversion, GIT
  • Issue Tracking z.B. mit Redmine oder Mantis

Implementation Client Software, Benutzeroberflächen:

  • Betriebssysteme: Linux, Windows
  • Entwicklungsumgebungen: Eclipse, QtCreator, Visual Studio
  • Benutzeroberflächen: Qt, MFC, TCL/TK
  • Programmiersprachen: C / C++, Python, MatLab
  • Networking: UDP/TCP-Socketprogrammierung, diverse Protokolle (inkl. INDI)
  • Versionsverwaltung: Subversion, GIT
  • Issue Tracking: Redmine, Mantis
Test:
  • Unit Tests mit CppUnit oder GTest
  • Systemtests: SIL, HIL, ggf. mit Simulatoren
  • Testautomatisierung mit Skripten
  • Erstellung von Testplänen und Testprozeduren
  • Testdurchführung und Protokollierung