Software-Entwicklung neu gedacht – Teil 2: Durch umfassende Software Requirements typische Fehler vermeiden

In den Software-Anforderungen beschreiben Entwickler den Zweck und die Absicht eines Softwaresystems sowie dessen (externes) Verhalten. Welche Erwartungen haben Nutzer an das Softwareprodukt, und wie benutzerfreundlich ist es? Wie übersichtlich ist der Programmaufbau, wie strukturiert die Programmierung und wie verständlich die Dokumentation? Mithilfe dieser und anderer Fragen lassen sich viele Fehler vermeiden. 

Software-Entwicklung neu gedacht – Teil 2: Durch umfassende Software Requirements typische Fehler vermeiden weiterlesen

Software-Entwicklung neu gedacht – Teil 1: Wie Multicore, Safety- und Security-Aspekte die Softwareprojekte von heute verändern

Embedded-Softwareentwicklung findet heute in den meisten Fällen immer noch für eine Singlecore-Umgebung statt. Doch Software steuert immer komplexere Abläufe, die nur in Multicore-Umgebungen funktionieren. Für die Entwicklung ergeben sich daraus neue Herausforderungen.

Software-Entwicklung neu gedacht – Teil 1: Wie Multicore, Safety- und Security-Aspekte die Softwareprojekte von heute verändern weiterlesen

Raus aus der Sackgasse: Mehr Flexibilität, weniger Optimierung

Warum hat uns Corona so heftig erwischt? Wie kommen wir aus der Krise? Um Antworten auf diese Fragen zu erhalten, lohnen sich ein paar systemische Betrachtungen zum Thema Überleben. Das Spannende an systemischen Betrachtungen ist, dass wir sie auf sehr viele Fragestellungen anwenden können, über die wir uns derzeit die Köpfe zerbrechen. Jetzt wird es erst ein bisschen theoretisch und dann dramatisch – mit Hoffnung auf ein Happy End.

Raus aus der Sackgasse: Mehr Flexibilität, weniger Optimierung weiterlesen

Eine gemeinsame Sprache für die Cybersecurity – Teil II: Projektspezifisches Cybersecurity Management

Welche Ziele, Anforderungen und Richtlinien dienen als Grundlage für ein gemeinsames Verständnis der Cybersecurity-Perspektive bei der Entwicklung von Fahrzeugen im Straßenverkehr? Wie definiert man die Prozesse und managt die Risiken in Übereinstimmung mit ISO 31000? 

Der zweite Teil der Beitragsreihe beleuchtet das projektspezifische Cybersecurity Management –  Ziele, Planung und Assessment.

Eine gemeinsame Sprache für die Cybersecurity – Teil II: Projektspezifisches Cybersecurity Management weiterlesen

Eine gemeinsame Sprache für die Cybersecurity – Teil I: Einführung und übergreifendes Cybersecurity Management

Welche Ziele, Anforderungen und Richtlinien dienen als Grundlage für ein gemeinsames Verständnis der Cybersecurity-Perspektive bei der Entwicklung von Fahrzeugen im Straßenverkehr? Wie definiert man die Prozesse und managt die Risiken in Übereinstimmung mit ISO 31000?

Der erste Teil bietet eine Einführung in die Thematik und beleuchtet das übergreifende Cybersecurity Management – Ziele, Governance & Culture.

Eine gemeinsame Sprache für die Cybersecurity – Teil I: Einführung und übergreifendes Cybersecurity Management weiterlesen

Embedded-Software-Redesign Guide Teil 3: Anforderungen und Checkliste

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Dieser Beitrag beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Veranstaltungsformen wie Workshops eignen sich ideal, um mit den passenden Wissensträgern die Anforderungen zu erfassen und zu dokumentieren. Um Anforderungen aus dem Programmcode abzuleiten, existieren keine Tools am Markt. Hier ist manuelle Arbeit gefragt. Erfahrungsgemäß ist es nicht möglich, 100% aller in der Software implementierten Anforderungen zu erfassen.

Embedded-Software-Redesign Guide Teil 3: Anforderungen und Checkliste weiterlesen

Embedded-Software-Redesign Guide Teil 2: Notwendigkeit erkennen

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Dieser Beitrag beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Kundenunzufriedenheit sollte heute in jedem Unternehmen ein wichtiger Antrieb für Innovation sein. Bemerkt schon der Kunde Defizite bei der inneren Softwarequalität bzw. Prozessqualität, dann ist es kurz nach zwölf!

Embedded-Software-Redesign Guide Teil 2: Notwendigkeit erkennen weiterlesen

Embedded-Software-Redesign Guide Teil 1: Defizite und Auslöser

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Dieser Beitrag beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Embedded-Software-Redesign Guide Teil 1: Defizite und Auslöser weiterlesen

Was heißt hier Projektverantwortung?

Häufig hakt es in Projekten, weil nicht klar ist, was Projektverantwortung bedeutet oder wie verbindlich Verantwortung übertragen werden kann. Aus diesem diffusen Verständnis von Verantwortlichkeit entstehen oft Streitereien und unnötiges Hin und Her. Wenn es um Verantwortung geht, ist es hilfreich, ein paar Zusammenhänge im Hinterkopf zu behalten. Um sie verständlich zu machen, nutze ich in meinen Seminaren gerne ein kleines Gedankenexperiment. Mein Einsatz: 50€.

Was heißt hier Projektverantwortung? weiterlesen