Proces wytwórczy oprogramowania

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Proces wytwórczy oprogramowania (ang. software development process) – proces mający na celu wytworzenie oprogramowania.

Oprogramowanie wytwarzane jest od stosunkowo niedawna, dlatego procesy wytwórcze oprogramowania szybko się zmieniają w czasie, zmienia się też często opinia na temat jakości i efektywności poszczególnych procesów. Istnieje wiele szkół mówiących o tym, jak należy wytwarzać oprogramowanie – podają one najczęściej wariacje dwóch głównych – i skrajnie różnych w stosunku do siebie procesów:

Metodyki tradycyjne:

Metodyki nurtu zwinnego:

  • XP (ang. Extreme Programming) – proces lżejszy od metodyki RUP, obarczony jednak większym ryzykiem – jest znacznie mniej sformalizowany.
  • Scrum – jest bardziej sformalizowany od XP, ale wciąż przyjemny i przyjazny dla programistów. Oprogramowanie jest tworzone w wyszczególnionych odstępach czasowych, tzw. sprintach, timebox'ach, w czasie których zespół ma za zadanie wykonać z góry określone wymogami zadania. Nad zespołem czuwa Scrum Master, który jest raczej pomocnikiem niż liderem zespołu.