Er der styr på software-komponenterne?

XKDC er god stribe. Tirsdag (d. 19) var denne her dagens stribe:

Illustration: XKDC (xkcd.com/2347/)

Det er sjovt fordi det er rigtigt, som man siger. Hvilket giver stof til eftertanke.

Før it-systemer købes, opstiller kunden utallige gode og fornuftige krav og spørgsmål. Krav til systemet, krav til leverandøren, spørgsmål til roadmap for standardsoftware og meget mere.

Blandt de mange krav og spørgsmål er der også et-eller andet-sted i et appendix til et underbilag - i hvert fald når en jurist har været indblandet - spørgsmål til anvendte software-komponenter, deres licenser og restlevetid. Leverandørens svarer pligtskyldigst, ofte noget kortfattet og - virker det som - uden større entusiasme.

Figuren fra XKDC - sjov som den er - bør få os til at stoppe op og lige overveje om der nu også er styr på det.

Ved kunderne og udviklingshusene nok om de software-komponenter, der bruges i arkitekturen?

Har I gode eksempler på at det kan smutte?

Kommentarer (10)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#1 Peter Nørregaard Blogger

Jeg vil gerne lægge ud: En organisation havde kildekoden og rettighederne til sit efterhånden +20 år gamle skræddersyede system.

Alt var godt, dog ikke helt godt, da den slags jo er tungt at vedligeholde. De havde nu fundet en ny leverandør til at vedligeholde koden for de næste 5-7 år, som derfor foretog et kode-review. Der blev opdaget en komponent, XXXbuf. Det hed den selvfølgelig ikke, men XXX var forbogstaverne for en bestemt leverandør, som oprindeligt lavede systemet i gamle dage og siden er blevet opkøbet et par gange. Ingen hos leverandøren kender i dag noget til komponenten.

Problem nr 1: Komponenten var en ORM med databaseadgang, brugt af centrale dele af systemet, og ikke opdateret eller patchet i mindst 15 år.

Problem nr. 2: Organisationen havde ikke rettighederne til lige dén del af kildekoden og burde derfor ikke længere bruge den.

  • 3
  • 0
#2 Allan Ebdrup Blogger

Alle de gange jeg har stået for at svare på Technical Due Diligence, enten i forbindelse med salg af virksomhed eller i forbindelse med investering i virksomhed, har jeg skulle redegøre for at der ikke bruges copy-left licenceret software i hele teknologistakken.

Heldigvis kan dette checkes programmatisk når teknologistakken er node.js - så selvom der bruges tusindvis af open source moduler er det en overkommelig opgave. Og det gode er, at når jeg først har implementeret et programmatisk check af softwarelicenser, kan det køres kontinuerligt, så der ikke får sneget sig komponenter uden licens eller med en copy-left licens ind.

I praksis har vi faktisk måtte lave vores egen implementation af et par små komponenter med GPL licens, og også måtte have dialog med OSS modul-forfattere der ikke lige havde fået konfigureret deres licens rigtigt, så den kunne læses programmatisk. Med det har ikke været en kæmpe opgave.

  • 1
  • 1
#3 Claus Bobjerg Juul

Hvis det er virksomhedens kernefunktion der rammes er der ingen tvivl om at det er vigtigt for virksomheden og er det en organisiation der har betydning for samfundet, tjaa, så er det også vigtigt.

Hvis det nu i en produktionsvirksomhed er et system til udrulning af software til kontor PC'ere, er det nok ikke så vigtigt.

  • 0
  • 0
#4 Lasse Mølgaard

... eller nærmere betegnet hvilken NTP server var sat som default, når klokken skulle synkroniseres med Internettet?

Så hut jeg visker var PHK ikke heeeelt glad for alt den trafik hans netværk fik på daværende tidspunkt.

... og gik der ikke en "smule ravage", da han gjorde noget ved det? ;-)

  • 2
  • 0
#6 Thomas Hedberg

... eller nærmere betegnet hvilken NTP server var sat som default, når klokken skulle synkroniseres med Internettet?

Så hut jeg visker var PHK ikke heeeelt glad for alt den trafik hans netværk fik på daværende tidspunkt.

Ja, de er mange uheldige episoder som man bl.a. kan læse om inde hos pool.ntp.org og på wikipedia hvis man søger på "NTP server misuse".

Jeg har selv 2 offentligt tilgængelige stratum-1 NTP servere som er drevet i privat regi. På et tidspunkt deltog jeg i et audit i en branche hvor korrekt tid er meget vigtigt. Her bemærkede jeg, at organisationens outsourcing partner brugte mine NTP servere til at synkronisere imod.

Det er der også en stor ISP der gør, men de har i det mindste husket at spørge om lov.

Jeg undrer mig nogle gange over hvordan de tør bruge en service fra en privat persom som de ikke aner noget om.

  • 3
  • 0
#7 Peter Makholm Blogger

Alle ved at OpenSSL er en utaknemmeligt softwarekomponent at vedligeholde og at det kræver helt særlige egenskaber at vedligeholde uden at kompromiterere sikkerheden på hele internettet.

Og så er der de komponenter på 4 linjer kode, som kunne være udviklet af junior-udvikleren til jobsamtalen bare for at sortere folk der slet ikke kunne programmere ud.

Et eksempel på sidstnævnte var Node modulet 'leftpad', der på en måned i 2016 blev hentet 2,5 milloner gange, før udvikleren valgte at sige "Fsck NPM-miljøet" og gjorde modulet utilgængeligt. Det bevirkede at mange Node projekter pludselig ikke kunne installeres.

Det er bogstavlig talt 4 linjer kode, som folk hev ind som ubetydelig selvstændig afhængighed.

https://www.theregister.com/2016/03/23/npm_left_pad_chaos/

  • 4
  • 0
#8 Henrik Dalsager

Når vi laver Hardware, har vi ingeniører tit en sourcing afdeling, der gerne vil have holdninger til valg af transistorer, chip producenter, leverandør valg etc.

På sw, er de ligeglade, så der er der vores problem at holde styr på tilgængelighed og licenser, priser etc.

Det er pokkers irriterende i udviklingen, men ret rart når tingen er lavet..

  • 2
  • 0
#10 oyocoupons offers

Software comprises the entire set of programs, procedures, and routines associated with the operation of a computer system. Two main types of software are system software and application software. System software controls a computer's internal functioning, chiefly through an operating system. Application software directs the computer to execute commands given by the user. Software is typically stored on an external long-term memory device, such as a hard drive.;; https://askmeoffers.com/

  • 0
  • 1
Log ind eller Opret konto for at kommentere