為了理解這種方法的實(shí)踐應(yīng)用,我們可以設(shè)想一下最成功的開源軟件,它們都有一些共同點(diǎn):有一個(gè)能夠自由協(xié)作與交流的活躍開發(fā)者社區(qū),以及優(yōu)秀的文檔。當(dāng)開發(fā)者協(xié)作編寫出面向各種用戶的優(yōu)秀文檔時(shí),軟件的開發(fā)和管理也會(huì)變得更容易。這個(gè)道理適用于任何組織,而且對(duì)于大型組織而言尤其重要。
將介紹各種標(biāo)準(zhǔn)文檔模板,它們將幫助我們理解如何管理組織內(nèi)部開發(fā)的軟件。例如,一位高級(jí)軟件開發(fā)者可能只會(huì)使用API規(guī)范與參考文檔,然后就開發(fā)實(shí)現(xiàn)一個(gè)應(yīng)用程序,完全不會(huì)去閱讀其他的文檔。另一方面,人門指南則以一種簡單方式概括介紹更多信息,它將幫助一些軟件開發(fā)新手快速入門并了解他們將要接觸的應(yīng)用程序、平臺(tái)或庫。用例( Use Case)文檔則可以向非技術(shù)人員解釋一個(gè)應(yīng)用程序的用途。我們稍后將詳細(xì)介紹這些模板。
有了這些信息,用來理解復(fù)雜的Web與應(yīng)用程序架構(gòu)的時(shí)間就將大大減少。如果沒有一組能從不同角度說明指定技術(shù)的文檔,那么Web開發(fā)者和運(yùn)維工程師就只能自己去理解各個(gè)方面。
最重要的是,在不同的利益相關(guān)者共同編寫文檔的過程中,他們會(huì)發(fā)現(xiàn)一些深層次問題和改進(jìn)軟件的機(jī)會(huì)。例如,當(dāng)一位工程師開始在紙上或設(shè)計(jì)模型上介紹一個(gè)Web應(yīng)用程序時(shí),其他人就很容易理解他所要表達(dá)的概念,因此可以更好地獲得關(guān)于應(yīng)用程序的技術(shù)性能和設(shè)計(jì)等方面的反饋信息。此外,針對(duì)不同讀者編寫的文檔也有一定的好處。有時(shí),業(yè)務(wù)用戶可能無法讀懂一個(gè)AP規(guī)范,但是畫一個(gè)簡單圖形來說明API的復(fù)雜關(guān)系或應(yīng)用程序之間的交互,就可以幫助非技術(shù)人員理解應(yīng)用程序。這種文檔還可以幫助初級(jí)工程師理解復(fù)雜的軟件架構(gòu)。
在這一方面,文檔就是一種鮮活的反饋機(jī)制。將應(yīng)用變成文字與可視化內(nèi)容,要比通過網(wǎng)站建設(shè)代碼或?qū)崿F(xiàn)應(yīng)用更容易讓人理解。通過編寫和使用文檔,能夠激發(fā)反饋、發(fā)現(xiàn)代碼問題,形成對(duì)程序和過程設(shè)計(jì)的新理念。這實(shí)際上也是一種測試代碼和Web應(yīng)用的手段。
本文地址:http://m.hbbqcd.cn//article/4499.html