Wat is een softwareontwikkelingsproces?

Software verwijst naar beide computerbesturingssystemen zelf, evenals naar programma's en applicaties die zijn ontworpen om op computers te worden uitgevoerd. Softwareontwikkeling is het ontwerpen en schrijven van software, inclusief de ontwikkeling van de programma -architectuur en gebruikersinterface en programmering van de broncode. Het softwareontwikkelingsproces is de benadering van softwareontwikkeling en er zijn veel goed ontwikkelde modellen voor dit proces. Over het algemeen bevatten ze variaties op de fasen van het uitvoeren van een vereistenanalyse, het specceren van het product, het creëren van de softwarearchitectuur, het implementeren van de code, het testen en documenteren van het product, het bieden van training en ondersteuning en het onderhouden en verbeteren van de release. Welk model ook wordt gebruikt, het softwareontwikkelingsproces kan soms gericht zijn op de ontwikkeling van nieuwe producten, terwijl het op andere momenten gericht is op revisie - bijvoorbeeld wanneer een puntrelease wordt gemaakt om bugs te repareren - en op andere tijden kan het voorbereid zijnaratie voor een nieuwe versie van bestaande software, het toevoegen van belangrijke functies en het aanbieden van bugfixes.

Het watervalmodel voor softwareontwikkelingsproces is een vroeg model en ook een met inherente beperkingen. Het schrijft een strikt unidirectionele benadering van ontwikkeling voor, die eenweg door de volgorde van softwareontwikkelingsfasen gaat, zonder ooit terug te keren naar een vorige fase of de specificatie te wijzigen, zodra de ontwikkeling is begonnen. Het spiraalvormige model daarentegen gebruikt een iteratief proces, waarin een reeks vereisten, gevolgd door ontwerp, implementatie en uiteindelijk testen wordt gevolgd door een tweede cyclus waarin meer functies en componenten worden toegevoegd. In Agile-modellen van het softwareontwikkelingsproces- waarvan er een aantal zijn- worden ontwikkelingsprojecten onderverdeeld in subsets van week- tot maandlange subsets genaamd TimeBoxes, die elk door een geminiaturiseerde gaanVersie van een volledig softwareontwikkelingsproces, inclusief een release aan het einde. Andere kenmerken van Agile Development zijn de nabijheid van het samenwerkende team en het gebruik van klanten om gedurende het hele proces op het product te reageren.

Softwareontwikkelingsproces kan radicaal verschillend zijn voor een groot bedrijf en voor een individuele programmeur. Een commerciële software -uitgever, zoals Sibelius Software®, een onderdeel van Avid Technology®, kan bijvoorbeeld enkele jaren doorbrengen met het softwareontwikkelingsproces voor elke versie en een softwaretoepassing uitbrengen die honderden MB groot is en door duizenden mensen wordt gebruikt. Aan de andere kant kan een persoon zoals Roman Molino Dunn, de Music Transcriberer®, een plug-in programmeren in reactie op iemands wens dat hij of zij iets anders zou kunnen doen met een stuk commerciële software, een stuk software van 4 kb kan maken binnen een uur na het hebben van het idee, in een extreme case.

ANDERE TALEN