システム開発はいくつかの段階を分で行なわれます。最初は利用者からの聞き取りが行なわれます。この段階ではまだプログラムやハードウエアの発注は行なわれず、システム全体像を把握し、可能であれば機能毎に詳細な聞き取りも行い見積もります。見積もりとシステムの概要を元に契約するかを検討してもらいよければシステム開発スタートとなります。
システム開発がスタートする段階でさらに要求を聞き、要求定義書を策定します。要求定義書では細かい稼働状況なども確認され、機能も網羅されます。契約によっては要求定義書ができてから行なわれることも多いようです。要求定義書ができれば次に開発チームのみで外部設計が行なわれます。
外部設計はいわゆるGUIや操作など利用者が直接見る部分です。外部設計が了承されれば内部設計となります。内部設計では機能ごとに実装するための設計が行われ、最終的にはプログラマが分かる部分まで掘り下げされて仕様書という形で各プログラマに渡される事になります。その後はコーディング、テストと進みます。
テストではプログラマが行なう単体テストに加えて各モジュールごとに行なわれる結合テスト、すべての機能が揃った段階でのテストを経て利用者も含めた全体での運用テストが行なわれます。運用テストではマニュアルも確認され、実際に利用者が動かし、また、障害時の対応についても確認が行われ、すべて了承されれば運用スタートとなります