在這一步,你要用一些句子(偽代碼)來畫出程序的基本輪廓。每個句子對應一個簡單的程序操作。對一個簡單的程序來說,通過列出程序順序執行的動作,便可直接產生偽代碼。然而,對複雜一些的程序來說,則需要將大致過程有條理地進行組織。對此,應使用自上而下的設計方法。
當使用自上而下的設計方法時,你要把程序分割成幾段來完成。列出每段要實現的任務,程序的輪廓也就有了,這稱為主模塊。當一項任務列在主模塊時,僅用其名加以標識,並未指出該任務將如何完成。這方面的內容留給程序設計的下一階段來討論。將程序分為幾項任務只是對程序的初步設計。
如果把主模塊的每項任務擴展成一個模塊,並根據子任務進行定義的話,那麼程序設計就更為詳細了。這些模塊稱為主模塊的子模塊。程序中許多子模塊之間的關係可歸結為一張圖,這種圖稱為結構圖。
要畫出模塊的輪廓,你可不考慮細節。如果這樣的話,你必須使用子模塊,將各個模塊求精,達到第三級設計。繼續這一過程,直至說明程序的全部細節。這一級一級的設計過程稱為逐步求精法。在編寫程序之前,對你的程序進行逐步求精,對你來說,是很好的程序設計實踐,會使你養成良好的設計習慣。
文中通過一個計算購房、裝修總金額的例子,展示了主模塊分解為輸入數據、計算購房額、計算裝修額、計算總額、輸出結果五個子模塊,並進一步將每個子模塊分解為更細粒度的操作,形成兩級結構圖。