Skip to content

Commit

Permalink
Merge pull request #65 from isaqb-org/WeitereKleineKorrekturen
Browse files Browse the repository at this point in the history
Kleine Korrekturen
  • Loading branch information
Diavolezza authored May 2, 2024
2 parents 65727ab + 7088eb6 commit c22b754
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 28 deletions.
2 changes: 1 addition & 1 deletion docs/02-module-block-2/references.adoc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
=== {references}

<<bass>>, <<clements>>
<<clements>>
32 changes: 14 additions & 18 deletions docs/04-module-block-4/02-learning-goals.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -5,41 +5,37 @@
[[LZ-4-1]]
==== LZ 4-1: Ressourcen in Relation zur erbrachten Leistung bringen
Die Teilnehmenden sind in der Lage, Ressourcen in Relation zur erbrachten Leistung zu bringen
(Business Metrik). Sie kennen die Metrik Software Carbon Intensity (SCI - ISO Standard) und verstehen, wie dieser als Business Metrik genutzt werden kann.
(Business Metrik). Sie kennen als Metrik den ISO-Standard Software Carbon Intensity (SCI) und verstehen, wie dieser als Business Metrik genutzt werden kann.

[[LZ-4-2]]
==== LZ 4-2: Messverfahren und Messwerkzeuge
Die Teilnehmenden kennen verschiedene Kategorien von Messverfahren und deren Einsatzgebiete. Sie verstehen, wie man Werkzeuge der verschiedenen Kategorien für eine Analyse kombinieren kann.
Kategorien sind beispielsweise
Kategorien sind beispielsweise:

* Hardware-Messwerkzeuge. Sie messen den Verbrauch direkt an der Hardware (z.B. Multimeter - messen direkt an der Stromquelle; Intel RAPL - misst u.a. den Energieverbrauch der CPU)
* Fullstack-Messwerkzeuge. Sie messen alle Komponenten einer Anwendung wie Verbräuche pro Docker-Container, Netzwerk (z.B. Green Frame, Green Metrics Tool)
* Programmiersprachenspezifische Messwerkzeuge. Sie liefern "whitebox"-Messungen innerhalb einer Anwendung, können z.T. auf Methoden-Ebene den Energieverbrauch messen (z.B. JoularJX (Java), Code Carbon (Python))
* Messwerkzeuge für Webanwendungen geben Auskunft u.a. über die Netzwerklast, die durch einen Seitenaufruf erzeugt wird (z.B. die Entwicklertools von Google Chrome mit GreenIT-Plugin)
* Carbon Footprint Tools der Cloudanbieter. In Cloudumgebungen kann nicht auf die Hardware-Schnittstelle zugegriffen werden um den Energieverbrauch zu messen. Stattdessen ist man auf vom Anbieter bereitgestellte Tools (z.B. Cloud Carbon Footprint Console) oder andere Schätzmethoden angewiesen. Die Teilnehmenden kennen die Funktionalität und die Einschränkungen dieser Tools (Ungenauigkeit, relative Angaben, nötige Berechtigungen in der Cloud-Console) wie auch die Herausforderungen (Managed Services mit reinen VMs zu vergleichen).
* Hardware-Messwerkzeuge. Messen den Verbrauch direkt an der Hardware.
* Fullstack-Messwerkzeuge. Messen alle Komponenten einer Anwendung wie Verbräuche pro Docker-Container, Netzwerk.
* Programmiersprachenspezifische Messwerkzeuge. Liefern "Whitebox"-Messungen innerhalb einer Anwendung.
* Messwerkzeuge für Webanwendungen. Geben Auskunft u. a. über die Netzwerklast, die durch einen Seitenaufruf erzeugt wird.
* Carbon Footprint Tools der Cloudanbieter. In Cloudumgebungen kann der Energieverbrauch nicht direkt gemessen werden. Stattdessen ist man auf vom Anbieter bereitgestellte Tools oder andere Schätzmethoden angewiesen. Die Teilnehmer kennen die Funktionalität und die Einschränkungen dieser Tools (Ungenauigkeit, relative Angaben, nötige Berechtigungen in der Cloud-Console) wie auch die Herausforderungen, Managed Services mit reinen VMs zu vergleichen.

[[LZ-4-3]]
==== LZ 4-3: Messmethodik
Die Teilnehmenden kennen das methodische Vorgehen beim Messen des Energieverbrauchs, bzw. der CO~2~-Intensität. Sie verstehen, dass die Bewertung / Messung des absoluten Verbrauchs i.d.R. (gerade in der Cloud) nicht sehr exakt möglich ist, sondern wie man stattdessen Trends analysiert.

Sie kennen Proxy-Metriken für die CO~2~-Intensität.
Die Teilnehmenden kennen das methodische Vorgehen beim Messen des Energieverbrauchs, bzw. der CO~2~-Intensität. Sie verstehen, dass die Bewertung / Messung des absoluten Verbrauchs i. d. R. (gerade in der Cloud) nicht sehr exakt möglich ist, sondern wie man stattdessen Trends analysiert. Sie kennen Proxy-Metriken für die CO~2~-Intensität.

Die Teilnehmenden wissen, wie sie sinnvolle Szenarien zum Messen der Energieeffziienz aufsetzen.

* Sie kennen Kriterien zum Gestalten der Szenarien (z.B. gängige Abläufe, Priorisierung nach Nutzungshäufigkeit)
* Sie wissen, an welchen Schnittstellen sie abhängig vom Ziel der Messung ansetzen (Ende-zu-Ende-Szenarien, an APIs ansetzen, etc.)
* Sie kennen Werkzeuge zum Erstellen solcher Szenarien
* Sie können adäquat mit Messungenauigkeiten umgehen (z.B. Szenarien mehrfach ausführen, Abweichungen interpretieren)

Die Teilnehmenden verstehen, dass das Vorgehen der Energieeffizienzmessung verwandt ist mit dem Vorgehen bei Performanz-Messungen.
* Sie kennen Kriterien zum Gestalten der Szenarien (z. B. gängige Abläufe, Priorisierung nach Nutzungshäufigkeit).
* Sie wissen, an welchen Schnittstellen sie abhängig vom Ziel der Messung ansetzen (Ende-zu-Ende-Szenarien, an APIs ansetzen, etc.).
* Sie kennen Werkzeuge zum Erstellen solcher Szenarien.
* Sie können adäquat mit Messungenauigkeiten umgehen (z. B. Szenarien mehrfach ausführen, Abweichungen interpretieren).

Die Teilnehmenden verstehen, wie man systematisch vorgeht, um Verbrauchshotspots einzugrenzen.
Die Teilnehmenden verstehen, dass das Vorgehen der Energieeffizienzmessung verwandt ist mit dem Vorgehen bei Performanz-Messungen. Die Teilnehmenden verstehen, wie man systematisch vorgeht, um Verbrauchshotspots einzugrenzen.

[[LZ-4-4]]
==== LZ 4-4: Messen der Energieeffizienz in den Entwicklungsprozess integrieren
Die Teilnehmenden wissen, wie man die Energieeffizienzmessungen in den Entwicklungsprozess integriert. Sie kennen Möglichkeiten, die Messungen in die CI/CD-Pipeline zu integrieren. Sie verstehen, wie sie eine gute Balance für die Häufigkeit der Messungen finden - einerseits sollen (negative) Trends schnell erkannt werden, andererseits verbraucht das Messen selber ebenfalls Energie.

Die Teilnehmenden verstehen, dass die Messungen möglichst einfach und leichtgewichtig für die Entwickler:innen zu benutzen sein müssen, um die Akzeptanz zu erhöhen. Sie verstehen, dass die Energieeffizienzmessungen konkurrieren mit einem schnellen Feedback aus dem Build. Sie verstehen, dass für die Akzeptanz ebenfalls wichtig ist:
Die Teilnehmenden verstehen, dass die Messungen möglichst einfach und leichtgewichtig für die Entwickler:innen zu benutzen sein müssen, um die Akzeptanz zu erhöhen. Sie verstehen, dass die Energieeffizienzmessungen konkurrieren mit einem schnellen Feedback aus dem Build. Sie verstehen, dass fogende Punkte für die Akzeptanz ebenfalls wichtig sind:

* Die Erstellung der Szenarien für die Messung muss einfach sein. Es ist von Vorteil, dafür Werkzeuge zu verwenden, die im Projekt bereits etabliert sind (z. B. Frameworks zum Erstellen von Ende-zu-Ende-Tests)
* Die Darstellung der Messergebnisse muss übersichtlich, gut und schnell verständlich sein. Insbesondere müssen die wichtigsten Ergebnisse wie Trends oder signifikante Abweichungen im Verbrauch direkt erkennbar sein.
Expand Down
18 changes: 9 additions & 9 deletions docs/99-references/00-references.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -32,17 +32,17 @@ ATTENTION: labels have to be non-numeric.

**A**

- [[[qmarc,arc42]]] arc42 Quality Model, https://quality.arc42.org
- [[[qmarc, arc42]]] arc42 Quality Model, https://quality.arc42.org

**B**

- [[[bitkom,bitkom 2021]]] bitkom: Klimaeffekte der Digitalisierung, https://www.bitkom.org/sites/main/files/2021-10/20211010_bitkom_studie_klimaeffekte_der_digitalisierung.pdf
- [[[bitkom, bitkom 2021]]] bitkom: Klimaeffekte der Digitalisierung, https://www.bitkom.org/sites/main/files/2021-10/20211010_bitkom_studie_klimaeffekte_der_digitalisierung.pdf

- [[[brundtland,Brundtland 1987]]] Brundtland, G. (1987): Report of the World Commission on Environment and Development: Our Common Future, http://www.un-documents.net/wced-ocf.htm
- [[[brundtland, Brundtland 1987]]] Brundtland, G. (1987): Report of the World Commission on Environment and Development: Our Common Future, http://www.un-documents.net/wced-ocf.htm

**C**

- [[[clements,Clements et al. 2003]]] Clements, P., F. Bachmann, L. Bass, D. Garlan, J. Ivers et al.: Documenting Software Architectures – Views and Beyond. Addison Wesley, 2003.
- [[[clements, Clements et al. 2003]]] Clements, P., F. Bachmann, L. Bass, D. Garlan, J. Ivers et al.: Documenting Software Architectures – Views and Beyond. Addison Wesley, 2003.

- [[[cloudcarbonfootprint, Cloud Carbon Footprint]]] Cloud Carbon Emissions Measurement and Analysis Tool, https://www.cloudcarbonfootprint.org

Expand All @@ -66,15 +66,15 @@ ATTENTION: labels have to be non-numeric.

**H**

- [[[hargis,Hargis 2004]]] Hargis, Gretchen et al.: Quality Technical Information: A Handbook for Writers and Editors. Prentice Hall, IBM Press, 2004.
- [[[hargis, Hargis 2004]]] Hargis, Gretchen et al.: Quality Technical Information: A Handbook for Writers and Editors. Prentice Hall, IBM Press, 2004.

**J**

- [[[joularjx, JoularJX]]] JJava-based agent for power monitoring at the source code level, https://www.noureddine.org/research/joular/joularjx

**K**

- [[[kruchten,Kruchten 1995]]] Kruchten, P.: Architectural Blueprints – The 4-1 View Model of Architecture. IEEE Software November 1995; 12(6), p. 42-50.
- [[[kruchten, Kruchten 1995]]] Kruchten, P.: Architectural Blueprints – The 4-1 View Model of Architecture. IEEE Software November 1995; 12(6), p. 42-50.

**P**

Expand All @@ -92,11 +92,11 @@ Examination of the Metric, https://datacenters.lbl.gov/sites/default/files/WP49-
**S**


- [[[sci,SCI]]] Sofware Carbon Intensity, https://learn.greensoftware.foundation/measurement oder https://www.infoq.com/presentations/green-software-climate-crisis/ (Video; Erklärung des SCI ab ca. min 25:00)
- [[[sci, SCI]]] Sofware Carbon Intensity, https://learn.greensoftware.foundation/measurement oder https://www.infoq.com/presentations/green-software-climate-crisis/ (Video; Erklärung des SCI ab ca. min 25:00)

- [[[siec, SIEC]]] Dr. Ludger Ackermann und Dr. Dirk Harryvan: Auszeit unter Aufsicht in iX Special 2022 - Green IT, https://shop.heise.de/ix-13-2022/PDF


- [[[starke,Starke 2011]]] Starke, G. (2011): Effektive Software-Architekturen - Ein praktischer Leitfaden. 5. Auflage 2011, Carl Hanser Verlag, München.
- [[[starke, Starke 2011]]] Starke, G. (2011): Effektive Software-Architekturen - Ein praktischer Leitfaden. 5. Auflage 2011, Carl Hanser Verlag, München.

- [[[sustyweb,W3C]]] Web Sustainability Guidelines (WSG) 1.0, https://w3c.github.io/sustyweb/
- [[[sustyweb, W3C]]] Web Sustainability Guidelines (WSG) 1.0, https://w3c.github.io/sustyweb/

0 comments on commit c22b754

Please sign in to comment.