Jeg er fortsatt på universitetet, og jeg har ennå ikke har erfaring med å skape storskala programvaresystemer, men ...
Det første som må gjøres er å regne ut hva som er ønsket. Så langt for meg, er dette normalt et oppdrag spesifikasjon, men i den virkelige verden innebærer det å snakke med klienten. Mye.
Da jobber jeg ut hvordan du gjør det som er nødvendig. For de relativt små programmer som jeg har jobbet med, jeg vanligvis form i mitt sinn en viss idé om hva programmet mitt kommer til å se ut som (hva de viktige delene av programmet er og hvordan de samhandler med hverandre). Dette kan innebære pigger hvis jeg har ingen anelse om hvordan en del av programmet vil fungere. Jeg tror ikke denne tilnærmingen (gjøre alt i mitt sinn) vil skalere veldig bra, men spørsmålet var å spørre hva vi faktisk gjør ...
Når jeg vet mer eller mindre hva jeg prøver å gjøre, jeg setter meg ned og skrive koden. Det er her jeg oppdager noen problemer i det jeg tenkte.
Jeg tror ikke jeg har alle brukt pseudokode for å utforme en algoritme. Jeg tror pseudo er for lavt nivå for å designe store biter av programmet.
Jeg har bare brukt en flytdiagram på en anledning til å hjelpe til med å utforme et program - da jeg lærte forsamlingen og var ganske ny i programmering (og det var nyttig). Den mytiske Man-Month sier følgende: ". Den detaljerte blow-by-blow flytskjema, derimot, er en foreldet plage, passer bare for å initiere nybegynnere til algoritmisk tenkning ... Jeg har aldri sett en erfaren programmerer som rutinemessig gjort detaljert flytdiagrammer før du begynner å skrive programmer."