ഉപയോക്താക്കൾ ക്ക് പലപ്പോഴും അവരുടെ ആവശ്യങ്ങൾ വസ്തുനിഷ്ഠമായി നിർവചിക്കാനാവില്ല. ഉദാരഹരണമായി, ബില്ല് തയ്യാറാക്കി നൽകാനുള്ള ഒരു കംപ്യൂട്ടർ സോഫ്റ്റ് വെയെറിന്റെ സാധ്യതയെക്കുറിച്ചുള്ള അന്വേഷണവുമായിട്ടാണ് ഉപയോക്താവ് വരുന്നത് എന്നു കരുതുക. പ്രൊഫോർമ ഇൻവോയിസ്, ക്യാഷ് ബില്ല് തുടങ്ങിയവയെക്കുറിച്ചെല്ലാം ഉപയോക്താവ് ബോധവാനായിരിക്കണമെന്നില്ല. ഇത്തരം സന്ദർഭങ്ങളിൽ സോഫ്റ്റ് വെയെർ എൻജിനീയർ ഉപയോക്താവുമായി വിശദമായ ചർച്ചയിൽ ഏർപ്പെട്ടശേഷം സിസ്റ്റത്തിന് ആവശ്യമുള്ള ഇൻപുട്ട് ഡേറ്റ, ഔട്ട്പുട്ടുകൾ എന്നിവ ഏതൊക്കെയാണെന്നു നിശ്ചയിച്ചുറപ്പിക്കുന്നു. തുടർന്ന് ഇതിനെ പ്രോഗ്രാമിങ്ങിലൂടെ പ്രാവർത്തികമാക്കുന്നതിന് ഒരു ബാഹ്യ ചട്ടക്കൂട് തയ്യാറാക്കുന്നു. അതിനുശേഷം ഇതിനായി ആവശ്യമുള്ള വിഭവസമാഹരണത്തിന്റെ തോത്, പദ്ധതി ആസൂത്രണം ചെയ്ത് നടപ്പാക്കാൻ വേണ്ടിവരുന്ന സമയം എന്നിവയെക്കുറിച്ചുള്ള വിശദാംശങ്ങൾ സമാഹരിക്കുന്നു. ഉപയോക്താവിനെ ഇവയെക്കുറിച്ചെല്ലാം ബോധ്യപ്പെടുത്തുന്നതോടൊപ്പം അവയുടെ ഡോക്കുമെന്റേഷൻ കൂടി തയ്യാറാക്കുന്നു. ഇവയുടെ അടിസ്ഥാനത്തിലാണ് സിസ്റ്റം ഡിസൈനും, പ്രോഗ്രാമിങ്ങും നടത്തുന്നത്. പിൽക്കാല ആവശ്യങ്ങൾക്ക്, മേൽ സൂചിപ്പിച്ച മുൻ കാര്യങ്ങളുടെ വസ്തുനിഷ്ഠ വിവരണം ലഭിക്കുന്നതും, ഇത്തരം അനലിറ്റിക്കൽ ഡോക്കുമെന്റേഷനിലൂടെ മാതമാണ്. 

അനലിറ്റിക്കൽ ഡോക്കുമെന്റേഷൻ
കാലാനുഗത മാറ്റങ്ങൾ
പ്രോഗ്രാം ഡോക്കുമെന്റേഷൻ
ഗുണനിലവാര നിയന്ത്രണം