【正文】
使用開源軟件設(shè)計(jì)開發(fā)和部署協(xié)作型 Web 站點(diǎn) 第 1 from: 使用開源軟件設(shè)計(jì)、開發(fā)和部署協(xié)作型 Web 站點(diǎn),第 1 部分:簡(jiǎn)介和概述 文檔選項(xiàng) 未顯示需要 JavaScript 的文檔選項(xiàng) 打印本頁(yè) 將此頁(yè)作為電子郵件發(fā)送 討論 級(jí)別:中級(jí) Alister LewisBowen,高級(jí)軟件工程師 ,IBM Stephen Evanchik,軟件工程師 ,IBM Louis Weitzman,高級(jí)軟件工程師 ,IBM 2021 年 3 月 15 日 在這個(gè)系列中,在 IBM Inter Technology Group 團(tuán)隊(duì)的帶領(lǐng)下使用一套可免費(fèi)獲得的軟件來設(shè)計(jì)、開發(fā)和部署一個(gè)完整的社區(qū) Web 站點(diǎn)。開放源碼社區(qū)提供了各種工具,結(jié)合使用這些工具可以為復(fù)雜的 Web 應(yīng)用程序創(chuàng)建一個(gè)有用的開發(fā)和生產(chǎn)環(huán)境。以這些工具作為基礎(chǔ),我們提供了一種方法和一些改進(jìn),能幫助簡(jiǎn)化開發(fā)過程。盡管定制仍然是有必要的,但是這個(gè)系列講解了如何使用開放源碼工具快速建立和運(yùn)行相當(dāng)復(fù)雜的 Web 站點(diǎn),這些工具包括Drupal、 MySQL、 PHP、 Apache 和 Eclipse 技術(shù)。第一篇文章 將我們的方法與其他可用軟件工具進(jìn)行比較,并討論我們所做的改進(jìn)。簡(jiǎn)介 現(xiàn)在, Web 站點(diǎn)已經(jīng)成了業(yè)務(wù)的重要部分,而用來創(chuàng)建和部署 Web 站點(diǎn)的工具也變得更靈活和容易使用。但是,復(fù)雜 Web 應(yīng)用程序的開發(fā)并不輕松,它們需要的不只是標(biāo)準(zhǔn)的交互方法 (比如 blog)。組織中的每個(gè)應(yīng)用程序常常需要進(jìn)行定制。 在這個(gè)系列中,我們通過一個(gè)虛構(gòu)的組織, International Business Council(IBC),來展示如何更有效地盡可能擴(kuò)展 Web 站點(diǎn)的功能。 IBC 讓它的職員在一個(gè)協(xié)作型社區(qū)中與外部業(yè)務(wù)伙伴進(jìn)行交流;但是, 目前的 Web 站點(diǎn)無法滿足當(dāng)前的業(yè)務(wù)需要,這個(gè)站點(diǎn)必須進(jìn)行重新設(shè)計(jì)。這個(gè)新的定制 Web 站點(diǎn)必須有文檔存儲(chǔ)、討論組、專門的工作組、研討會(huì)日程安排、日程議題描述、會(huì)話過期和其他任務(wù)。 用戶的角色是通過改進(jìn)戰(zhàn)略和戰(zhàn)術(shù)決策來改進(jìn)公司提供的產(chǎn)品。用戶社區(qū)是按照工作組的核心問題進(jìn)行組織的。社區(qū)每年舉辦數(shù)次研討會(huì),以當(dāng)面會(huì)晤。在研討會(huì)上提出問題,然后在會(huì)晤的間隔解決這些問題。 Web 站點(diǎn)用來提供關(guān)于社區(qū)活動(dòng) (比如研討會(huì) )的信息,并跟蹤會(huì)晤中所提出問題的解決進(jìn)度。 現(xiàn)有的 Web 站點(diǎn)基于一個(gè)文檔存儲(chǔ)庫(kù),這個(gè)庫(kù)用來交換文檔、更新關(guān) 于即將舉辦的活動(dòng)的信息。但是,這個(gè) Web 站點(diǎn)不足以促進(jìn)社區(qū)的交互,尤其是缺乏 Web 站點(diǎn)的那些新功能,比如 Weblog、討論組、 RSS 提要等等。團(tuán)隊(duì)的目標(biāo)是鼓勵(lì)社區(qū)的交互,并提供一個(gè)發(fā)布框架來支持社區(qū)活動(dòng)。 問題 因?yàn)檫@應(yīng)該是個(gè)安全的 Web 站點(diǎn),我們需要進(jìn)行會(huì)話管理來支持過期,以及在授予訪問權(quán)之前對(duì)條款和條件文檔進(jìn)行確認(rèn)。還需要支持一種直接的操作方法來進(jìn)行內(nèi)容編輯 如果要對(duì)內(nèi)容進(jìn)行操作,我們希望交互控件放在它所影響的內(nèi)容旁邊。 現(xiàn)有 Web 站點(diǎn)的其他問題涉及不一致的可視語(yǔ)言、導(dǎo)航和信息體系結(jié)構(gòu)。內(nèi)容常 常隱藏在文檔中,而文檔放在存儲(chǔ)庫(kù)中;直到下載并查看文檔之前,沒有任何線索能夠表明文檔中有什么內(nèi)容。根據(jù)我們的分析,團(tuán)隊(duì)認(rèn)為文檔存儲(chǔ)庫(kù)采用了錯(cuò)誤的模型。我們需要一個(gè)能夠完成更多任務(wù)的內(nèi)容管理系統(tǒng)。 設(shè)計(jì)過程 我們的設(shè)計(jì)過程是迭代式的,首先進(jìn)行分析,然后是原型設(shè)計(jì),然后是評(píng)估。我們利用調(diào)查表、備選設(shè)計(jì)和不同精度的原型讓最終用戶盡早參與進(jìn)來。我們希望將決策集中于業(yè)務(wù)目標(biāo)和最終用戶的需要。我們發(fā)現(xiàn),在著手處理一組功能需求或開發(fā)之前,用戶參與得越早,我們就越能了解什么特性是有用的以及怎樣的決策是正確的。我們沒費(fèi)多大的 力氣就收集了一些非常有價(jià)值的反饋,同時(shí)使用戶感覺他們是設(shè)計(jì)過程的一部分。我們還獲得了用戶社區(qū)的高度信任。 理解設(shè)計(jì)還需要理解信息體系結(jié)構(gòu)。例如,根據(jù)用戶調(diào)查的發(fā)現(xiàn),最重要的需求之一是對(duì)三種主要信息的訪問能力: 關(guān)于工作組的信息關(guān)于以前的和即將召開的研討會(huì)的信息關(guān)于所有成員的信息用戶反饋還清晰地表明,需要一種清潔、整齊且簡(jiǎn)單的體系結(jié)構(gòu)。 我們的分析表明,訪問這個(gè)站點(diǎn)的有三類用戶:顧客、工作組負(fù)責(zé)人和管理員。這些人影響了我們的設(shè)計(jì)和決策過程。通過了解哪些信息是重要的以及這些信息與主要用戶群的關(guān)系,我們能夠確定一 個(gè)內(nèi)容體系結(jié)構(gòu)、它的層次結(jié)構(gòu)、呈現(xiàn)方式以及各類用戶與此種信息的交互方式。例如,研討會(huì)信息可能包括議程 (即會(huì)議議題 )、這些議題的日程安排、跨多次研討會(huì)的主題以及在研討會(huì)之間已經(jīng)解決的議題。 本系列中的下一篇文章將更詳細(xì)地討論我們的設(shè)計(jì)過程。 隨著分析的深入,需要增加的特性也逐漸明朗化。例如,為了支持一個(gè)活躍的社區(qū),我們希望支持對(duì)內(nèi)容進(jìn)行討論和評(píng)論的功能,并支持與上下文相關(guān)的反饋和在線協(xié)作。另一個(gè)重要的客戶需求是使用惟一的中立的品牌 (即可視化標(biāo)識(shí) )。因?yàn)檫@個(gè) Web 站點(diǎn)是一個(gè)中立的場(chǎng)所,具有不同背景的用戶在這里進(jìn)行協(xié)作,與任何一家公司或任何一種背景有關(guān)的強(qiáng)烈視覺關(guān)聯(lián)都會(huì)造成不必要的障礙。 回頁(yè)首 開發(fā)環(huán)境 為了簡(jiǎn)化開發(fā)過程,我們希望使用一個(gè)現(xiàn)有的內(nèi)容管理系統(tǒng)來幫助生成一個(gè)及時(shí)的解決方案。大多數(shù)內(nèi)容管理系統(tǒng)都支持我們需要的基本功能,但是都需要進(jìn)行詳細(xì) 的定制。開箱即用的實(shí)現(xiàn)不足以滿足需要。我們希望以開放源碼社區(qū)中已經(jīng)取得的成果為基礎(chǔ)進(jìn)行開發(fā)。我們最終使用的工具就是按照這一原則選擇的。 我們對(duì)開發(fā)環(huán)境有幾項(xiàng)要求,比如