Posts

Es werden Posts vom August, 2022 angezeigt.

Stand der Technik für interne Software?

Bild
Angenommen ein Unternehmen entwickelt oder verwendet Software, die rein für den internen Gebrauch gedacht ist. Die Software wird also weder verkauft noch verschenkt, noch kann sie von anderen als den Mitarbeitern des Unternehmens verwendet werden. Muss so eine Software dem Stand der Technik entsprechen? Üblicherweise wird diese Frage mit "Nein" beantwortet. Interne Software ist ja wie ein Werkzeug: Wenn es mangelhaft ist, so kann das ja nur dem eigenen Unternehmen schaden. Ganz so einfach ist die rechtliche Lage aber nicht: Unternehmenshaftung:  Es können durch mangelhafte interne Software (so wie bei mangelhaften Werkzeugen) Personen zu Schaden kommen - z.B. durch eine Verfehlung des Standes der Technik gemäß Datenschutzrecht (vgl.  §32 DSGVO ) bei der Verarbeitung personenbezogener Daten. Schäden für die das Unternehmen genauso wie bei extern erreichbarer Software haftet. ➝ Die Nicht-Einhaltung des Standes der Technik darf zu keinen Schäden außerhalb des Unternehmens (z.B

Wieviele Bugs darf eine Software haben? (Teil 2 - Fehleranzahl abschätzen)

Bild
Kann man wissen, wieviele Fehler sich in einer Software verstecken? Exakt kann man das mit akzeptablem Aufwand nie wissen - aber es lässt sich abschätzen. Das ist notwendig zur Bewertung potentieller Risiken einer Software, aber auch zur Abschätzung der Fehlerdichte (siehe Wieviele Bugs darf eine Software haben? (Teil 1 - Fehlerdichte) ). Dazu kann man sich folgender Erkenntnisse aus der Literatur bedienen: Während der Entwicklung entstehen programmiersprachenunabhängig zwischen 30 und 50 Fehler pro 1.000 Zeilen Code (= KLOC). 1 Mittels Unit-Tests bzw. TDD können im Schnitt 30-45% und im besten Fall bis zu 85% der Fehler gefunden bzw. vermieden werden. 2 Gutes Pair-Programming bzw. Code-Reviews finden im Schnitt 60% der (restlichen) Fehler. 3 Basierend auf diesen Erkenntnissen kann man abschätzen, wieviele Fehler in der Software nach den typischen Entwicklertätigkeiten (Programmieren, Unit-Testen, Reviews) - und somit vor den im Test bzw. später gefundenen Fehlern - vorhanden waren:
CC BY-NC-SA 3.0 AT Sebastian Dietrich, e-movimento