Below you will find pages that utilize the taxonomy term “Software Craftsmanship”
Clean Code for Embedded Systems and C
In embedded systems, the quality of code is crucial for long term reliability and efficiency. The Clean Code principles, as outlined in Robert C. Martin’s influential book Clean Code, are widely used in general software development and can significantly enhance embedded C development. This article explores how these principles can be applied to embedded C, drawing on extensive experience to improve code readability, reduce technical debt, and lower costs over the system’s lifetime. Whether you’re a developer or a manager, this guide offers practical insights into integrating Clean Code into your embedded systems projects.
Embracing Obligations: Regulation as a Driver for Quality
As software touches every part of life, people expect higher standards for quality, security, and reliability. The Cyber Resilience Act (CRA) reflects this shift - a necessary response to past industry mistakes. Rather than resisting, we can use this regulation to improve our practices. Here’s why regulation is necessary, how we reached this point, and how we can use it to create better software.
Navigating the Cyber Resilience Act with Agility
The CRA mandates stringent cybersecurity requirements for digital products, ranging from vulnerability management and regular updates to security-by-design principles. Manufacturers are tasked with ensuring that their products remain secure throughout their lifecycle, providing ongoing updates, and managing vulnerabilities proactively. The agile development approach, characterized by iterative cycles, cross-functional collaboration, and continuous integration, is ideally suited to meet these requirements. Agile practices enable teams to quickly adapt to new regulatory demands, implement security measures efficiently, and deliver high-quality, secure software. This article outlines the key aspects of agile development that align with CRA compliance and demonstrates how organizations can leverage agility to meet their obligations under the CRA. For more information on how to transition your team to agile practices and ensure compliance with the CRA, feel free to reach out to me at urs.fassler@iqilio.ch.
Success Story: CI optimiert Embedded-Projekte
In diesem Artikel teile ich die Erfahrungen bei der Implementierung einer CI/Build-Pipeline für mehrere C++-Applikationen und Yocto Linux Projekte. Die Firma stand vor Herausforderungen wie manuelle, nicht reproduzierbare Prozesse und ungleich verteiltes Wissen, was zu verspäteten oder fehlerhaften Auslieferungen führte. Durch einen iterativen und inkrementellen Ansatz und gezielte Unterstützung der Entwickler konnten die Prozesse nachhaltig verbessert und der Stress reduziert werden.
Embedded Software Meetup ist zurück
Embedded Software Meetup Zürich ist zurück!
Nach längerer Pause des "Embedded GNU/Linux Developer Meetup" führen wir es als "Embedded Software Meetup" wieder durch. Es geht um:
-
Embedded Software Entwicklung
-
Embedded Linux
-
Zephyr
-
Qualität
-
Software Craftsmanship
und vieles mehr. Im Fokus steht der Austausch zwischen Entwicklern und anderen gleichgesinnten.
Den Anfang macht Urs Fässler mit seinem Erfahrungsbericht zu moderner Applikationsentwicklung für Embedded Linux.
Clean code für mehr Cyber-Sicherheit
Clean Code und Software Craftsmanship helfen, Embedded Systeme sicher zu machen (safety und security). Diese Botschaft hat uns Simon Künzli im aktuellen Kurs Security in Embedded Systems an der ZHAW School of Engineering vermittelt, und ich stimme absolut zu.
Es sind Methoden, Prinzipen und Praktiken welche ich seit bereits 10 Jahren anwende und sehr zu schätzen gelernt habe. Vielleicht tönt TDD, BDD, CI/CD, Review und was es alles gibt abschreckend. Persönlich gebe ich es nicht mehr her. Es gibt so viel Sicherheit das man das richtige entwickelt und die Qualität stimmt. Auch reduziert es die Bugs - dadurch ist der initial etwas höhere Aufwand nach kurzer Zeit amortisiert.