Software Entwicklung
Die meisten heutigen Kommunikationsgeräte basieren auf Mikrokontrollereinheiten (MCUs) und Transceivern (ICs). Die Funktionalität der Geräte ist in ihrer Firmware definiert, was deren Entwicklung zu unserer Kerndisziplin macht. Wir verfügen über einen kompletten Firmware-Entwicklungsprozess, welcher auf den unten folgenden Elementen basiert, aber natürlich nicht auf diese limitiert ist.
Wenn Sie Fragen hinsichtlich unserer Software Entwicklung haben, zögern Sie nicht und
Kontaktieren Sie uns
Unser Software-Entwicklungsprozess
Wiederverwendbarkeit
Im Laufe der Zeit haben wir eine große Palette an Elementen und Design-Mustern gesammelt, welche die Entwicklung gängiger Funktionalitäten erleichtern und beschleunigen und darüber hinaus die Code Qualität verbessert.
PORTABILITät
Wir sind es gewohnt, mit vielen verschiedenen Mikrokontrollern und Transceiver-Plattformen zu arbeiten. Eine saubere Hardware-Abstraktion ist für uns daher ein Muss. Mit der Zeit haben wir die notwendige Erfahrung gesammelt, um viele verschiedene Halbleiter be- und verarbeiten zu können, sowie die Kenntnis darüber erlangt, flexible und komplett ausgestattete Oberflächen-Designs der Hardware zu gestalten.
Projekt- und Source Code-Management
Die Leitung komplexer Projekte bedarf hoher Anforderungen. Intern arbeiten wir mit einer agilen Entwicklung, teilweise auf SCRUM, teilweise auf anderen agilen Ansätzen basierend. Diese kombinieren wir wann immer notwendig mit testgesteuerter Entwicklung. Zusätzlich nutzen wir GIT-basierte Versionskontrollen, Fehlersuchen und kontinuierliche Integration via Gitlab, sowie ein Projektmanagement mit BlueAnt (by proventis).
TEST & VERIFIKATION
Die meisten unserer Softwareprodukte werden mit Unit-Tests in den kleinsten sinnvollen Einheiten entwickelt. Zusätzlich nutzen wir automatisierte Testsysteme auf Systemlevel, um verlässliche Regressionstests sicherzustellen. Diese Systemtests werden in simulierten, nachgeahmten und realen Umgebungen durchgeführt.