監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 簽約案例 | 購買價(jià)格 | 在線試用 | 手機(jī)APP | 產(chǎn)品資料
X 關(guān)閉

對(duì)軟件工程項(xiàng)目的一些思考

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

來源:泛普軟件 個(gè)人以上的項(xiàng)目,就需要有管理。為什么這么說呢?因?yàn)橛袃蓚€(gè)人,就需要交流;有交流,就必然會(huì)有合作;有合作,就需要有分工;有分工,就需要有協(xié)調(diào);有所有這些,就需要有管理。但此刻的管理,我們說,殺雞用牛刀,高射炮打蚊子,都是不智的。但還是需要管理。

然而一個(gè)人的項(xiàng)目是否不需要管理?當(dāng)然不是,因?yàn)橛形臋n,有代碼,有靈感,有經(jīng)驗(yàn),等等都需要管理。只是此刻的管理是自己完成的,可以更簡(jiǎn)單一點(diǎn)。我們已經(jīng)有過一遍又一遍的調(diào)試以前已經(jīng)fix過的bug體驗(yàn),也有過一遍又一遍的查找以前自己實(shí)現(xiàn)過的技術(shù)的經(jīng)歷。軟件工程的理論,在開發(fā)過程中的作用,就是指導(dǎo)如何做好管理,以取得軟件的可用性、正確性和合理性。如果我們清楚知道這是它的目標(biāo),就可以拋開一些對(duì)自己不適用的枝節(jié)。

那么它是如何做到這一點(diǎn)的?

我認(rèn)為軟件工程中最重要的,最有實(shí)際意義的,是它界定了工作職能,從而也確定了責(zé)任歸屬。什么意思?說白了,就是什么人做什么事,出了問題誰負(fù)責(zé)。那么它是怎么界定工作職能的?是通過對(duì)軟件開發(fā)流程的劃分來實(shí)現(xiàn)的。軟件工程把軟件的開發(fā)劃分成很多個(gè)相對(duì)獨(dú)立的階段,每一個(gè)階段都有相關(guān)的人員來實(shí)現(xiàn),也就有相關(guān)的人員來負(fù)責(zé)。分工不清,責(zé)權(quán)不明,是導(dǎo)致管理混亂的最主要的因素。所以即使是兩個(gè)人的項(xiàng)目,也是需要軟件工程來指導(dǎo)的,因?yàn)橥ㄟ^它,可以更好的知道如何可以合理分工,劃分工作職權(quán)以取得最終的成果。當(dāng)然,走教條主義的道路是非常愚蠢的。

那么軟件工程到底是什么?

軟件工程是針對(duì)“軟件危機(jī)”提出來的。它是一種工程,把經(jīng)驗(yàn)和理論應(yīng)用到實(shí)踐中來,解決軟件開發(fā)中出現(xiàn)的各種問題。這是什么意思?就是說,軟件工程是用來解決實(shí)際問題的。如果軟件開發(fā)中沒有遇到管理問題,軟件工程就不需要管理的內(nèi)容;如果軟件開發(fā)中沒有遭遇文檔混亂,軟件工程就不需要文檔的部分。但是如果很幸運(yùn)的遭遇到了這些,那么這一切都是不可或缺的。軟件工程不是一個(gè)固定的呆板的框框,而是一個(gè)有彈性的概念。

所以,如果不是要去申請(qǐng)iso或是cmm認(rèn)證,完全不必要一板一眼的按照iso或是cmm的規(guī)范去做。所謂“有企業(yè)特色的軟件工程”,完全可以從吸收現(xiàn)有的模式和規(guī)范中完善起來。但這并不是說所有在開發(fā)過程中出現(xiàn)的都是軟件工程,只有那些能引導(dǎo)開發(fā)走向成功的才是真正有意義的軟件工程。其他的,最多只是失敗的嘗試。

那么應(yīng)該什么時(shí)候開始實(shí)施軟件工程?

軟件工程一定要在一個(gè)項(xiàng)目開始之前開始嗎?一定要貫穿整個(gè)項(xiàng)目嗎?為什么?不是的,軟件工程可以在項(xiàng)目進(jìn)行中的任何時(shí)候開始,也可以在任何不再需要的時(shí)候結(jié)束。因?yàn)檐浖こ贪验_發(fā)流程劃分成不同的階段,所謂“生命周期”,在不同的生命周期,軟件工程提供了不同的模式可以參考。

那么軟件公司如何實(shí)施軟件工程?

首先要知道軟件工程,理解軟件工程;然后要了解現(xiàn)有的軟件工程的模式和規(guī)范。ISO、CMM或是Agility,都定義了一套規(guī)范。這些規(guī)范是經(jīng)驗(yàn)與技術(shù),以及理論的積累。它們存在很多合理的、可行的模式,可以引用和參考;但銀彈是沒有的。當(dāng)然,我們可以重頭再來,造他們?cè)爝^的輪子,摔他們摔過的跤;但很明顯,這是不必要的。

實(shí)施的最好方法,也是最可行的方法,成本最小的方法,是根據(jù)開發(fā)的客觀的因素,修改那些規(guī)范,以符合我們的開發(fā)過程;但是最主要的,是修改我們的主觀認(rèn)識(shí),以符合那些規(guī)范;而最重要的,是在實(shí)施中發(fā)現(xiàn)那些規(guī)范不合理的地方,并改正它。

那是否會(huì)變得無法適從,從而陷入混亂?

是的,有這可能,所以任何的修正都應(yīng)該是謹(jǐn)慎的。所有的修改提議都應(yīng)該是自上而下的,而決定都是自下而上的。

軟件工程對(duì)項(xiàng)目的規(guī)模有要求嗎?

我們擔(dān)心過小的項(xiàng)目應(yīng)用軟件工程是否會(huì)陷入官僚主義,從而加重項(xiàng)目的負(fù)擔(dān)?我們?cè)賮砜词裁词擒浖こ??軟件工程并沒有定義什么才是軟件工程!也沒有定義軟件工程自身的規(guī)模。軟件工程的意義在于對(duì)開發(fā)階段的劃分,以及分工和責(zé)任歸屬。這與項(xiàng)目的規(guī)模沒有什么沖突。相反,越是小的項(xiàng)目越是需要軟件工程的管理。

軟件開發(fā)的一個(gè)共識(shí),是把一個(gè)大的項(xiàng)目劃分成一些小的模塊,再把小的模塊劃分成更小的模塊。如果這些小模塊是獨(dú)立的(或者原來就是一個(gè)獨(dú)立的項(xiàng)目),那么軟件工程至少可以提高它的重用性。對(duì)于一個(gè)軟件工程觀念不深的團(tuán)隊(duì),不要期望他們?cè)诮邮执蟮捻?xiàng)目的時(shí)候可以使用軟件工程,如果他們?cè)谛№?xiàng)目中不愿使用的話。前者的復(fù)雜度不是他們可以想象和承受的。

應(yīng)用軟件工程會(huì)增加工作量嗎?

是的,但只是針對(duì)那些在不使用軟件工程管理的項(xiàng)目中很輕松的人而言的。軟件工程會(huì)使他們要么失業(yè),要么負(fù)起責(zé)任來。相對(duì)工程師而言,他們會(huì)從混亂的毫無頭緒的狀態(tài)中解放出來,他們的工作會(huì)變得有效率。損失的是以前尸位素餐的人將暴露出來——這可能是它的唯一的缺陷,同時(shí)也是它受到很多企業(yè)/個(gè)人抵制的可能原因之一。(CSDN)

發(fā)布:2007-04-22 10:43    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
長春OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢

泛普長春OA快博其他應(yīng)用

長春OA軟件 長春OA新聞動(dòng)態(tài) 長春OA信息化 長春OA快博 長春OA行業(yè)資訊 長春軟件開發(fā)公司 長春門禁系統(tǒng) 長春物業(yè)管理軟件 長春倉庫管理軟件 長春餐飲管理軟件 長春網(wǎng)站建設(shè)公司