Introduksjon

Fullført

Åpen kildekode-programvare har blitt grunnlaget for moderne programvareutvikling. Fra nettrammeverk og databaser til operativsystemer og utviklingsverktøy, komponenter med åpen kildekode driver de fleste applikasjoner som bygges i dag. Å forstå hvordan man effektivt implementerer åpen kildekode-programvare samtidig som man håndterer tilhørende risikoer er avgjørende for utviklingsteam og organisasjoner.

Bruk av åpen kildekode-programvare introduserer imidlertid viktige hensyn som organisasjoner må ta tak i. Sikkerhetssårbarheter, lisensoverholdelse, juridiske forpliktelser og forsyningskjederisikoer krever nøye oppmerksomhet. Organisasjoner som ikke klarer å administrere sine åpen kildekode-avhengigheter på riktig måte, kan møte sikkerhetsbrudd, juridiske forpliktelser, uventede kostnader og driftsforstyrrelser.

Denne modulen gir omfattende veiledning om implementering av åpen kildekode-programvare i bedriftsmiljøer. Du vil lære hvordan moderne programvare er bygget med åpen kildekode-komponenter, forstå bedriftens bekymringer om sikkerhet og lisensiering, utforske vanlige åpen kildekode-lisenser og deres implikasjoner, og oppdage strategier for effektiv administrasjon av åpen kildekode-programvare.

Hva du lærer

Denne modulen dekker viktig kunnskap for å jobbe med åpen kildekode-programvare i profesjonelle miljøer:

  • Forstå moderne programvareutvikling: Du vil utforske hvordan moderne applikasjoner bygges ved å kombinere original kode med åpen kildekode-biblioteker, rammeverk og verktøy. Du vil lære hvorfor organisasjoner velger komponenter med åpen kildekode og forstå fordelene de gir, inkludert raskere utvikling, velprøvde løsninger, fellesskapsstøtte og kostnadsbesparelser.

  • Bedriftens bekymringer om åpen kildekode-programvare: Du vil undersøke sikkerhets-, juridiske og driftsmessige risikoer som organisasjoner står overfor når de bruker komponenter med åpen kildekode. Dette inkluderer sikkerhetssårbarheter i avhengigheter, lisenssamsvarskrav, forsyningskjederisikoer, ikke-vedlikeholdte eller forlatte prosjekter, og utfordringen med å administrere tusenvis av avhengigheter på tvers av flere applikasjoner.

  • Grunnleggende om åpen kildekode-lisens: Du vil lære om forskjellige kategorier av åpen kildekode-lisenser, fra tillatte lisenser som MIT og Apache som tillater bred kommersiell bruk, til copyleft-lisenser som GPL som krever avledede verk for å bruke samme lisens. Å forstå lisensegenskaper hjelper deg med å ta informerte beslutninger om hvilke åpen kildekode-komponenter som passer for prosjektene dine.

  • Lisensimplikasjoner for kommersiell programvare: Du vil oppdage hvordan ulike lisenser påvirker kommersiell programvareutvikling, inkludert restriksjoner på proprietær programvare, krav til avsløring av kildekode, attribusjonskrav og lisenskompatibilitetsproblemer. Denne kunnskapen forhindrer juridiske problemer som kan påvirke organisasjonens evne til å selge eller distribuere programvare.

  • Strategier for å administrere åpen kildekode-komponenter: Du vil utforske praktiske tilnærminger for å implementere åpen kildekode-programvare trygt og kompatibelt, inkludert vedlikehold av komponentbeholdninger, skanning etter sårbarheter, sporing av lisensforpliktelser, etablering av godkjenningsprosesser og bruk av automatiserte verktøy for å overvåke avhengigheter kontinuerlig.

Læringsmål

Når du har fullført denne modulen, kan du:

  • Forstå hvordan moderne programvare bygges ved hjelp av åpen kildekode-komponenter og fordelene de gir for utviklingshastighet, kvalitet og innovasjon.
  • Forklar bedriftens bekymringer om programvare med åpen kildekode, inkludert sikkerhetssårbarheter, lisensoverholdelse, forsyningskjederisikoer og utfordringene med å administrere avhengigheter i stor skala.
  • Beskriv vanlige åpen kildekode-lisenser , inkludert MIT, Apache 2.0, GPL, BSD og andre lisenser, og forstå deres viktigste egenskaper, tillatelser og begrensninger.
  • Evaluer lisensimplikasjoner for kommersiell programvareutvikling, forstå hvilke lisenser som er kompatible med proprietær programvare og hvilke som krever avsløring av kildekode.
  • Implementer strategier for å administrere komponenter med åpen kildekode , inkludert lagerstyring, sårbarhetsskanning, kontroll av lisenssamsvar og etablering av godkjenningsarbeidsflyter for nye avhengigheter.

Forutsetninger

Før du starter denne modulen, bør du ha:

  • Forståelse av programvareutvikling: Grunnleggende kunnskap om hvordan applikasjoner bygges, inkludert bruk av biblioteker, rammeverk og avhengigheter.
  • Kjennskap til DevOps-konsepter: Forståelse av kontinuerlig integrasjon, kontinuerlig levering og programvareutviklingens livssyklus.
  • Opplevelse av versjonskontroll: Grunnleggende erfaring med Git eller andre versjonskontrollsystemer der avhengighetsadministrasjon forekommer.
  • Bevissthet om programvarelisensiering: Generell forståelse av at programvare har juridiske vilkår som styrer bruken, selv om du ikke har studert spesifikke lisenser i detalj.

Erfaring med å jobbe i en organisasjon som leverer programvare er fordelaktig, men ikke nødvendig. Denne modulen gir den grunnleggende kunnskapen som trengs for å jobbe profesjonelt med åpen kildekode-programvare.