Skip to content

Commit

Permalink
Add some speaker notes to CI and Recap
Browse files Browse the repository at this point in the history
  • Loading branch information
xxthunder committed Jan 31, 2024
1 parent 18a5f3d commit 1cab355
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 11 deletions.
9 changes: 8 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,12 @@
"titleBar.inactiveForeground": "#e7e7e799"
},
"peacock.color": "#1857a4",
"cSpell.language": "en,de"
"cSpell.language": "en,de",
"cSpell.words": [
"Buildsystem",
"Pytest",
"Pytests",
"Reifegradmodel",
"Softwerker"
]
}
16 changes: 8 additions & 8 deletions chapters/05_aspice.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,21 @@ https://vda-qmc.de/automotive-spice/ <!-- .element: class="fragment" data-fragme

Note:

Matthias hat gerade gezeigt, wie man mit CMake und Visual Studio Code eine schöne Software-Produkt-Linien-Plattform aufbauen kann.
Matthias hat gerade gezeigt, wie wir mit CMake und Visual Studio Code eine schöne Software-Produkt-Linien-Plattform aufbauen.

Kommen wir nun zu unserer zweiten Challenge: A.SPICE.

"click"

Die Abkürzung A.SPICE steht für Automotive Software Process Improvement and Capability Determination.
Die Abkürzung A.SPICE steht für ...

Klingt kompliziert, ist aber im Wesentlichen ein Prozessmodell, das die Entwicklung von Software in der Automobilindustrie beschreibt.
Klingt fancy, ist aber im Wesentlichen ein Prozessmodell, das die Entwicklung von Software in der Automobilindustrie beschreibt.

Es ist auch ein Reifegradmodel, das die Reifegrade 0 bis 5 definiert.

Diese Reifegrade werden durch die Erfüllung von Prozessanforderungen erreicht und müssen durch definierte Artefakte nachgewiesen werden.

Ich will auf die Reifegrade nicht näher eingehen, aber auf die Artifakte, die es zu erstellen gibt.
Ich will auf die Reifegrade nicht näher eingehen, aber auf die Artefakte, die es zu erstellen gibt.

--

Expand All @@ -36,7 +36,7 @@ Hier sieht man eigentlich recht gut, was von den Entwicklern so erwartet wird: J

Und dann muss das Alles auch noch miteinander verknüpft bzgl. verlinkt werden.

Unser Ziel war es von Anfang an, die geforderten Artefakte mit möglichst wenig Zusatzaufwand mit unserer SPLE Plattform erstellen zu können.
Und da wir als Softwerker natürlich alles automatisieren wollen, ist es unser Ziel, die geforderten Artefakte mit möglichst wenig Zusatzaufwand mit unserer Plattform erstellen zu können.

Zunächst haben wir uns auf die Prozesse

Expand All @@ -56,7 +56,7 @@ Note:

Hier sehen wir nochmal im Ausschnitt, was wir für SWE.3 und SWE.4 machen müssen.

Die Units schreiben wir in C und testen sie mit Google Test, klar, das haben wir im Griff.
Die Units schreiben wir in C und testen sie mit Google Test oder was Ähnliches, klar, das haben wir im Griff.

Die Dokumentation inkl. Software Detailed Design erzeugen wir mit Sphinx und Restructured Text, auch einfach.

Expand Down Expand Up @@ -102,7 +102,7 @@ Sphinx und Sphinx-Needs

"click"

Sphinx-Needs ist eine Erweiterung für Sphinx.
Sphinx-Needs ist eine Open-Source Erweiterung für Sphinx.

Sie ermöglicht es, sogenannte "Needs"-Typen zu definieren und miteinander zu verlinken.

Expand All @@ -114,7 +114,7 @@ Wir haben für die A.SPICE Artefakte unsere eigenen Typen definiert: Requirement

Außerdem haben wir eigene Link-Typen definiert, die die Verknüpfungen zwischen den Artefakten beschreiben.

Okay, wie sieht das dann in der Umsetzung aus?
Okay, wie sieht das dann im Code aus?

--

Expand Down
6 changes: 4 additions & 2 deletions chapters/06_ci.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

Note:

Okay, soviel zu Challenge Nummer 2, A.SPICE

Last but not least Challenge Nummer 3: zu jedem Softwareprojekt gehört heutzutage Continuous Integration, deswegen wollen wir auch dazu ein paar Worte verlieren.

--
Expand Down Expand Up @@ -124,10 +126,10 @@ Es basiert, wie wir euch ja schon gezeigt haben, auf CMake und Ninja, ...

"click"

Die Pytests widerum rufen führen dann CMake mit den entsprechenden Targets auf und testen die erwarteten Artefakte.
Die Pytests wiederum rufen dann CMake mit den entsprechenden Targets auf und testen die erwarteten Artefakte.

Auf diese Art und Weise sind wir in der Lage, fehlschlagende Builds, Tests oder das Fehlen von Artefakten einfach zu erkennen und darzustellen.

Gleichzeitig ist durch die Pytests eine einfache Erweiterbarkeit von Tests gewährleistet, die man auch mit wenig Erfahrung des gesamten Systems bewerkstelligen kann.

Wichtig ist unserer Meinung nach vor allem die Nachvollziehbarkeit für den User.
Wichtig ist unserer Meinung nach vor allem die Nachvollziehbarkeit und Reproduzierbarkeit für den User.
18 changes: 18 additions & 0 deletions chapters/07_recap.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,24 @@
* Dokumentation und Nachweis der SW Qualität <p style="color: red"><span class="fragment highlight-green" data-fragment-index="2">A.SPICE</span><span class="fragment" data-fragment-index="2">👍</span></p>
* Continuous Integration <p style="color: red"><span class="fragment highlight-green" data-fragment-index="3">Weniger ist mehr</span><span class="fragment" data-fragment-index="3">👍</span></p>

Note:

Okay, viel erzählt, kurzer Recap unserer Challenges.

(click)

Unsere Antwort auf Projektvielfalt: Softwareproduktlinien

(click)

Unsere Antwort auf SW Qualität und A.SPICE: Automatisches A.SPICE konformes Reporting

(click)

Unsere Antwort auf CI: Leichtgewichtige Pipelines für GitHub, Jenkins und Co., die Intelligenz steckt im Buildsystem.



---

![](images/qr-presentation-link.png)
Expand Down

0 comments on commit 1cab355

Please sign in to comment.