国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
VS2005讓軟件開(kāi)發(fā)回歸軟件工程

VS2005讓軟件開(kāi)發(fā)回歸軟件工程


www.7dspace.com  更新日期:2006-4-8 4:30:08  七度空間



  整合式開(kāi)發(fā)環(huán)境(Integrated Development Environment,IDE)以往僅扮演工具的角色,但近來(lái)面對(duì)軟件在商業(yè)應(yīng)用日趨復(fù)雜所帶來(lái)的「突顯特性(Emergent Property)」,這類(lèi)性質(zhì)難以在項(xiàng)目初期事前預(yù)測(cè),卻影響著上線后整體系統(tǒng)運(yùn)作的穩(wěn)定性與可靠度,而這也是客戶(hù)非常在意的兩個(gè)結(jié)案重點(diǎn)。

  微軟去年底發(fā)表Visual Studio 2005(后續(xù)文章中簡(jiǎn)稱(chēng)為VS2005)試圖協(xié)助企業(yè)開(kāi)發(fā)穩(wěn)固可靠的軟件,首次在單一工具內(nèi)建開(kāi)發(fā)方法(樂(lè)譜)與項(xiàng)目管理(指揮),讓旗下原有的 Visual Studio產(chǎn)品脫胎換骨,成為不折不扣的計(jì)算機(jī)輔助軟件工程工具(Computer-Aided Software Engineering Tools,CASE Tools)。對(duì)同級(jí)解決方案供貨商如IBM或Borland而言,或許不算是新鮮事,但微軟的創(chuàng)新在于它僅用一個(gè)工具就辦到了!

  以軟件工程為主的開(kāi)發(fā)方法,目的是讓企業(yè)能以合乎成本效益的方式,有效地控管軟件開(kāi)發(fā)與質(zhì)量。然而,軟件工程從70年代中期便提出,截至目前為止并未讓本土的軟件產(chǎn)業(yè)帶來(lái)競(jìng)爭(zhēng)力的變革,探究其成因是軟件工程本身為抽象概念,難以落實(shí)在現(xiàn)實(shí)開(kāi)發(fā)作業(yè)流程。微軟突破從抽象到具體的實(shí)踐管道,以VS2005結(jié)合軟件工程與項(xiàng)目管理,包裝成為軟件開(kāi)發(fā)生命周期(Software Development Life Cycle,SDLC)。雖然后續(xù)效益有待觀察,但勢(shì)必對(duì)現(xiàn)今開(kāi)發(fā)現(xiàn)況帶來(lái)沖擊。這些沖擊包括:

  1.首當(dāng)其沖的是否適合使用軟件工程這類(lèi)結(jié)構(gòu)性的開(kāi)發(fā)方法,在企業(yè)組織與成本上重新變革。

  2.接下來(lái)是VS2005 Express免費(fèi)版,在Eclipse開(kāi)發(fā)平臺(tái)或PHP、Java語(yǔ)言陣營(yíng)投下震撼彈,讓猶豫不決的初學(xué)者琵琶別抱。

  3.最后是結(jié)合自家的SQL Server 2005,使得程序設(shè)計(jì)師或數(shù)據(jù)庫(kù)管理員可以使用.NET語(yǔ)言撰寫(xiě)數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)法,并改進(jìn)以往數(shù)據(jù)庫(kù)程序無(wú)法偵錯(cuò)的缺點(diǎn),甚至可完成軟件開(kāi)發(fā)生命周期。

  這都將是此篇文章中所要探討的問(wèn)題,但我們先簡(jiǎn)述目前企業(yè)面對(duì)軟件開(kāi)發(fā)的幾個(gè)問(wèn)題:

 ?。④浖?xiàng)目充斥漫無(wú)章法的管理制度與開(kāi)發(fā)流程"

  如果軟件項(xiàng)目主管比喻為樂(lè)團(tuán)指揮,那么項(xiàng)目經(jīng)理像是握著指揮棒卻沒(méi)有指揮權(quán)力的角色,缺乏協(xié)調(diào)的操舵手,樂(lè)團(tuán)如何能彈出和諧的交響樂(lè)?簡(jiǎn)單地說(shuō),本土的軟件項(xiàng)目常出現(xiàn)外行領(lǐng)導(dǎo)內(nèi)行的窘境。企業(yè)主管常直覺(jué)上會(huì)選擇擅長(zhǎng)溝通的人負(fù)責(zé)管理軟件項(xiàng)目,讓擁有技術(shù)的資深工程師負(fù)責(zé)執(zhí)行,卻在無(wú)意中產(chǎn)生角色上的矛盾,前者不一定懂技術(shù)卻得領(lǐng)導(dǎo)技術(shù)團(tuán)隊(duì),而后者掌握關(guān)鍵的領(lǐng)域知識(shí)(Domain Know-How)卻無(wú)法決策。此外,主管或項(xiàng)目經(jīng)理與客戶(hù)討論軟件功能變更時(shí),資深工程師常被排除在外,通常是事后被迫接受客戶(hù)天馬行空的附加功能,最后只能概括承受,結(jié)果是寧愿敷衍了事、犧牲質(zhì)量,也不愿冒險(xiǎn)更動(dòng)架構(gòu)設(shè)計(jì)。主管總因?yàn)轫?xiàng)目的高失敗率與客戶(hù)的抱怨而失眠,他們不禁思考:

  1.哪一種開(kāi)發(fā)方法能兼顧技術(shù)與管理層面?

  2.如何更有效地讓項(xiàng)目經(jīng)理與技術(shù)人員彼此間信息互通與共享?

  3.軟件開(kāi)發(fā)方向與質(zhì)量現(xiàn)況如何了?

  4.是否工程師正處于高負(fù)荷量工作?是否有人偷雞摸狗?

  5.客戶(hù)無(wú)預(yù)期地變更功能時(shí),項(xiàng)目經(jīng)理應(yīng)如何控管?

  6.人員異動(dòng)或流程變更時(shí),項(xiàng)目應(yīng)如何接續(xù)?……諸如此類(lèi)的問(wèn)題

  有趣的是,這原本不應(yīng)該是開(kāi)發(fā)工具會(huì)提問(wèn)的問(wèn)題!反而是管理的弊病,微軟卻反其道而行,企圖說(shuō)服企業(yè)導(dǎo)入制度化的開(kāi)發(fā)工具,解決管理人員上(指揮)的問(wèn)題。

  接下來(lái),微軟更具野心要解決團(tuán)隊(duì)協(xié)同開(kāi)發(fā)(樂(lè)譜)方法的困難。目前企業(yè)因商業(yè)競(jìng)爭(zhēng)全球化導(dǎo)致產(chǎn)品供應(yīng)煉錯(cuò)綜復(fù)雜,顧客則因?yàn)槭袌?chǎng)供過(guò)于求使得選擇多樣化,卻讓企業(yè)難以了解客戶(hù)的需求究竟是什么,造成商業(yè)應(yīng)用軟件高度復(fù)雜,超越小型組織單打獨(dú)斗的開(kāi)發(fā)能力,而不得不朝向大型團(tuán)隊(duì)合作的模式。這使得軟件開(kāi)發(fā)面臨的全新的問(wèn)題與挑戰(zhàn),起先從工具、再跨越到流程規(guī)范、并延伸到組織、最后必須采用企業(yè)化管理。然而,軟件項(xiàng)目高失敗率仍是企業(yè)主管揮之不去的夢(mèng)魘,不斷尋找嚴(yán)謹(jǐn)?shù)拈_(kāi)發(fā)流程方法論以有效控制軟件變異性,而不是阻止軟件改變功能。微軟能夠在VS2005中內(nèi)建開(kāi)發(fā)方法,并強(qiáng)調(diào)平臺(tái)化的高度整合與彈性,讓使用者在操作工具時(shí),不知不覺(jué)便完成制度化流程與項(xiàng)目控管等。

  軟件項(xiàng)目缺少量身訂作的管理工具

  「巧婦難為無(wú)米之炊」,企業(yè)主管面對(duì)軟件項(xiàng)目的多樣性??酂o(wú)適切的工具,包括各種技術(shù)專(zhuān)精人才的溝通與信息共享、為解決組織管理而造成流程上迭床架屋的復(fù)雜性,以及軟件項(xiàng)目的特殊性造成其產(chǎn)出物(artifacts)異于其它項(xiàng)目,這些創(chuàng)意的產(chǎn)出物都是軟件工程師的藝術(shù)杰作,其商業(yè)價(jià)值隱藏在程序代碼的字里行間,不僅難以量化管理,更難以衡量。就像生活外圍看似平凡無(wú)奇的石頭,卻是現(xiàn)在計(jì)算機(jī)主要的組成材料:硅的重要來(lái)源,而軟件工程師的價(jià)值,就在于他們有能力將商業(yè)邏輯轉(zhuǎn)換為程序代碼(將平凡的石頭提煉成芯片)。當(dāng)然,如果硅谷的軟件工程師因?yàn)榕^散發(fā)而視為藝術(shù)家(或者怪胎),那么不難想象項(xiàng)目經(jīng)理如何有通天的本領(lǐng)來(lái)控管這群怪胎的產(chǎn)出物了。

  目前業(yè)界的解決方法,既然管不了程序的運(yùn)作結(jié)果,那么就管理程序代碼。就像工地的工頭一樣,與其擔(dān)心工人砌磚頭的過(guò)程中將城堡蓋成榻榻米,不如管好每一塊磚頭在堆砌時(shí)的去向,如果這樣還會(huì)蓋出榻榻米,就是項(xiàng)目經(jīng)理的錯(cuò)誤了。只是長(zhǎng)久以來(lái),項(xiàng)目管理工具(例如Project)一直著重在時(shí)程與成本等企業(yè)管理項(xiàng)目上,少有針對(duì)軟件開(kāi)發(fā)特殊領(lǐng)域的專(zhuān)屬工具。相對(duì)地,軟件項(xiàng)目管理工具雖然管理程序代碼,卻難以控管成本、資源、任務(wù)指派、進(jìn)度追蹤與績(jī)效等,讓軟件開(kāi)發(fā)與項(xiàng)目管理一直是兩條并行線式的發(fā)展,缺少交集。

  開(kāi)發(fā)方法允許可控制的變動(dòng),而不是阻撓改變

  開(kāi)發(fā)方法的重要性最容易發(fā)生在團(tuán)隊(duì)開(kāi)發(fā)上,對(duì)非技術(shù)背景的人而言,一個(gè)軟件工程師在計(jì)算機(jī)屏幕上畫(huà)出一只恐龍是很神奇的事,但對(duì)管理軟件團(tuán)隊(duì)的項(xiàng)目經(jīng)理而言,10個(gè)工程師可能畫(huà)出10種長(zhǎng)相、外型與行為都不同恐龍,如果缺少開(kāi)發(fā)方法的規(guī)范,這些恐龍可能也無(wú)法湊成一部侏羅紀(jì)公園電影。開(kāi)發(fā)方法像是電影劇本(或交響樂(lè)譜),但這個(gè)劇本不是用來(lái)限制藝術(shù)型式創(chuàng)作,而是讓創(chuàng)意朝向特定走向,避免發(fā)散與失控,這個(gè)方向就是客戶(hù)需求。此外,也不至于抹煞軟件工程師的創(chuàng)意。項(xiàng)目經(jīng)理就像好來(lái)塢優(yōu)秀導(dǎo)演一樣,要挑一本適合工程師演出,又深得客戶(hù)感動(dòng)的劇本。這在軟件開(kāi)發(fā)項(xiàng)目上越來(lái)越重要,傳統(tǒng)常因?yàn)槿鄙龠m當(dāng)?shù)拈_(kāi)發(fā)方法引導(dǎo),軟件項(xiàng)目便常出現(xiàn)脫稿演出,甚至偏離客戶(hù)需求方向。此時(shí),項(xiàng)目經(jīng)理只好不斷與客戶(hù)溝通,甚至隱瞞失控的問(wèn)題,說(shuō)服客戶(hù)達(dá)成共識(shí)讓項(xiàng)目勉強(qiáng)結(jié)案。

  整合式開(kāi)發(fā)環(huán)境供貨商著重技術(shù)層面的改版

  整合式開(kāi)發(fā)環(huán)境供貨商長(zhǎng)久以來(lái),改版的動(dòng)機(jī)都在跟上最新技術(shù),例如微軟推出.Net Framework 2.0或Sun制定J2SE 1.5與EJB 3.0時(shí),廠商便急著將新功能納入工具中,但這正與使用者需求背道而馳。

  企業(yè)并不急著應(yīng)用新功能,依新技術(shù)改版的工具不僅無(wú)法吸引他們,反而使人們更慌張,因?yàn)檫@反應(yīng)著舊有應(yīng)用程序升級(jí)的壓力,以及人員培訓(xùn)的成本等(縱使這些應(yīng)用軟件原本很穩(wěn)定地運(yùn)作)。簡(jiǎn)單地說(shuō),軟件升級(jí)與改版應(yīng)由企業(yè)自行決定,但現(xiàn)實(shí)上都是供貨商強(qiáng)迫下的結(jié)果,可是我們不禁問(wèn),供貨商怎么會(huì)比使用者更了解何時(shí)應(yīng)升級(jí)?以及為何要升級(jí)?

  然而,企業(yè)所面對(duì)的是應(yīng)用軟件維護(hù)問(wèn)題,特別是人員異動(dòng)或職務(wù)調(diào)整,以及客戶(hù)變更需求或增修功能時(shí),如何更有效率地管理。不要忘了,軟件維護(hù)過(guò)程中就算技術(shù)不變,技術(shù)人員的異動(dòng)還是會(huì)提高維護(hù)的成本與困難度。讓商業(yè)運(yùn)作不停擺,如同交響樂(lè)團(tuán)里,就算換了樂(lè)手或指揮,還是得向觀眾演奏出協(xié)調(diào)的樂(lè)曲。

  “注重團(tuán)隊(duì)開(kāi)發(fā)而備受矚目”

  微軟在新一代的Visual Studio 2005,不但扮演著延續(xù)Visual Studio這個(gè)開(kāi)發(fā)工具承先啟后的生命,此次改版更注重團(tuán)隊(duì)開(kāi)發(fā)與開(kāi)發(fā)方法,不再執(zhí)著于技術(shù)上提升。簡(jiǎn)單地說(shuō),讓軟件更容易管理比起更容易開(kāi)發(fā)顯得重要些,而且企業(yè)主管更在意前一點(diǎn),他們也正是決定掏腰包的人,只有工程師會(huì)喜歡后者,只是更容易撰寫(xiě)程序并無(wú)法降低人力成本。VS2005重要改變是平臺(tái)化與涵蓋軟件開(kāi)發(fā)生命周期,接下來(lái)我們將會(huì)分析這些改變所帶來(lái)的影響。

  由開(kāi)發(fā)工具到開(kāi)發(fā)與管理平臺(tái)

  VS2005在開(kāi)發(fā)工具部份強(qiáng)化原始程序代碼管控與自動(dòng)化建構(gòu)的功能,再納入工作項(xiàng)目追蹤、項(xiàng)目入口網(wǎng)站與報(bào)表等管理功能,整合成軟件開(kāi)發(fā)團(tuán)隊(duì)協(xié)同運(yùn)作所設(shè)計(jì)之共通平臺(tái)。

  由程序撰寫(xiě)到軟件開(kāi)發(fā)生命周期

  微軟本身為開(kāi)發(fā)工具供貨商,在整合式開(kāi)發(fā)環(huán)境發(fā)展歷史中也創(chuàng)下許多革新,包括可視化設(shè)計(jì)、主從式架構(gòu)與分布式架構(gòu),雖然也為微軟培育出百萬(wàn)名以上的. NET程序設(shè)計(jì)師,但這些階段的演進(jìn)都離不開(kāi)程序撰寫(xiě)的范疇,轉(zhuǎn)入VS2005后邁向另一個(gè)轉(zhuǎn)折點(diǎn):軟件開(kāi)發(fā)生命周期,讓單一產(chǎn)品實(shí)作抽象的軟件工程方法論。

  “何謂好的軟件?”

  Ian Sommerville在「軟件工程(Sofware Engineering)」一書(shū)中提到,所謂的好軟件必須具備以下4種性質(zhì):

特性 說(shuō)明
可維護(hù)性(Maintainability) 完成后的軟件必須能夠?qū)︻櫩偷男枨蟾淖冞M(jìn)行軟件的演進(jìn)與維護(hù),這是一項(xiàng)非常重要的特性,因?yàn)樵谧儎?dòng)的商業(yè)環(huán)境中,軟件的改變是無(wú)法避免的結(jié)果。
可保護(hù)性(Dependability) 軟件的可保護(hù)性包括可靠性、防護(hù)性與安全性。系統(tǒng)發(fā)生故障時(shí),可信任的軟件不應(yīng)該會(huì)造成實(shí)體或經(jīng)濟(jì)上的損失。
效率(Efficiency) 軟件不應(yīng)該浪費(fèi)系統(tǒng)資源,例如處理器與內(nèi)存。因此,效率包含了響應(yīng)能力、處理時(shí)間、內(nèi)存使用率等。
可用性(Usability) 軟件必須能夠讓設(shè)計(jì)的對(duì)象容易使用,不用花太多功夫,這表示它必須有適當(dāng)?shù)氖褂媒涌谂c說(shuō)明文件。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
軟件工程學(xué)習(xí)心得體會(huì)
淺析軟件開(kāi)發(fā)的4個(gè)層次
軟件項(xiàng)目管理之道
項(xiàng)目管理
該怎么給程序猿定 KPI ?
撥開(kāi)云霧見(jiàn)青天——軟件開(kāi)發(fā)中的神話(huà)與現(xiàn)實(shí)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服