Ohjelmistoprojektissa dokumentoidaan sekä projektin johtamista että kehitettävää ohjelmistoa. Dokumentit auttavat sopimaan tavoitteista, toteuttamaan ratkaisuja ja seuraamaan työn etenemistä. Tarvittavat dokumentit ja niiden tarkkuus riippuvat projektista; tietoja voidaan ylläpitää myös esimerkiksi tehtäväjärjestelmässä erillisten tiedostojen sijaan.
Projektisuunnitelma kuvaa, miten projekti organisoidaan, toteutetaan ja miten sen etenemistä seurataan. Suunnittelua voidaan aloittaa projektin käynnistyessä ja tarkentaa työn edetessä. Projektisuunnitelma käsittelee projektin läpivientiä; ohjelmiston ominaisuudet kuvataan vaatimusmäärittelyssä ja tekniset ratkaisut teknisessä määrittelyssä.
Projektisuunnitelmassa voidaan käsitellä esimerkiksi:
Riskienhallinta-, viestintä- ja laatusuunnitelmat voivat olla projektisuunnitelman osia tai erillisiä dokumentteja. Suunnitelmaa päivitetään tarpeen mukaan projektin edetessä. Projektinhallinnan osa-alueita käsitellään tarkemmin projektinhallinnan sivulla.
Alla oleva rakenne perustuu IEEE 1058-1998 -standardiin, mutta sitä on yksinkertaistettu. Sisältöä sovelletaan projektin tarpeiden mukaan.
Tähän merkitään dokumentit ja muut lähteet, joihin projektisuunnitelmassa viitataan. Niitä voivat olla esimerkiksi vaatimusmäärittely, erillinen riskienhallintasuunnitelma tai projektissa noudatettava standardi. Kustakin viitteestä ilmoitetaan nimi, versio tai päivämäärä sekä linkki tai sijainti. Tarkoitus ei ole luetella kaikkia projektin dokumentteja.
Tässä materiaalissa vaatimusmäärittelyllä tarkoitetaan toiminnallisen määrittelyn dokumentin laatimista. Kyse on yhdestä dokumentista, jossa kuvataan mitä ohjelmiston tulee tehdä ja mitä muita vaatimuksia sille asetetaan. Siinä voidaan kuvata esimerkiksi käyttäjien tarpeet, ohjelmiston toiminta käyttäjän näkökulmasta, suorituskyky ja rajoitukset.
Dokumentti auttaa asiakasta ja kehittäjiä varmistamaan, että he tarkoittavat samaa asiaa. Vaatimusmäärittelyä käsitellään tarkemmin määrittelyn sivulla.
Tekninen määrittely kuvaa miten ohjelmisto toteutetaan määriteltyjen vaatimusten pohjalta. Se voi sisältää arkkitehtuurin, teknologiavalinnat, tietokannan rakenteen sekä rajapinnat ja integraatiot. Tekninen määrittely täydentää vaatimusmäärittelyä: se kuvaa toteutuksen ratkaisuja, ei projektin aikataulua tai budjettia.
Teknisen määrittelyn sisältöä käsitellään tarkemmin suunnittelun sivulla.
Testaussuunnitelma kuvaa testauksen laajuuden ja toteutustavan. Testitapaukset kertovat, mitä testataan ja millaista tulosta odotetaan. Testausraporttiin kirjataan tehdyt testit, niiden tulokset ja havaitut ongelmat. Näitä dokumentteja käsitellään tarkemmin testauksen sivulla.
Projektin aikana kirjataan säännöllisesti, miten työ etenee suhteessa suunnitelmaan. Tilanneraportissa voidaan kuvata valmistunut ja keskeneräinen työ, aikataulun ja kustannusten tilanne, havaitut riskit sekä tarvittavat päätökset. Laatuun ja testaukseen liittyvät havainnot voidaan raportoida samassa yhteydessä tai omissa raporteissaan.