軟體處理程序與需求分析_第1頁(yè)
軟體處理程序與需求分析_第2頁(yè)
軟體處理程序與需求分析_第3頁(yè)
軟體處理程序與需求分析_第4頁(yè)
軟體處理程序與需求分析_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

軟體處理程序與需求分析

2-1導(dǎo)論P(yáng)resenter:Away.什麼是軟體?電腦程式及相關(guān)文件,如要求,設(shè)計(jì)模型和使用手冊(cè)可以是為某位客戶或一般大眾市場(chǎng)所開(kāi)發(fā)的軟體產(chǎn)品廣義而言:電腦軟體是指一切能夠控制電腦運(yùn)作的方法與技術(shù)狹義而言:用各種程式語(yǔ)言所寫成的程式.什麼是軟體工程?軟體工程是一門著重在生產(chǎn)軟體各方面知識(shí)的工程學(xué)科。軟體工程簡(jiǎn)單的說(shuō)就是有系統(tǒng)的進(jìn)行軟體的規(guī)劃、分析、設(shè)計(jì)、程式製作、維護(hù)等工作,其目的是運(yùn)用科學(xué)化的方法和技術(shù),

來(lái)提高軟體的生產(chǎn)力和軟體的品質(zhì)。軟體工程所涵括的範(fàn)圍很廣,主要包括兩方面內(nèi)容:軟體發(fā)展技術(shù)和軟體專案管理。

.好的軟體應(yīng)有那些特性?這些軟體應(yīng)該提供所需的功能外,而且也應(yīng)提供使用者可維護(hù)性、可靠性和可接受性Maintainability(可維護(hù)性)軟體必須演變,以滿足不斷變化的需求;Dependability(可靠性)軟體必須是值得信賴的;Efficiency(效率)軟體不應(yīng)該浪費(fèi)系統(tǒng)資源;Usability(可用性)軟體必須設(shè)計(jì)讓使用者接受.這表示它需是可以理解、實(shí)用且與其他系統(tǒng)能相容.軟體工程主要面對(duì)的挑戰(zhàn)是什麼?Heterogeneity,deliveryandtrust.Heterogeneity(異質(zhì)性的挑戰(zhàn))該使用何種開(kāi)發(fā)技術(shù)來(lái)建立值得信賴、且可處理一致問(wèn)題的軟體;Delivery(開(kāi)發(fā)時(shí)間的挑戰(zhàn))如何能夠在不降低系統(tǒng)品質(zhì)的條件下,縮短開(kāi)發(fā)時(shí)間;Trust(信任度的挑戰(zhàn))如何開(kāi)發(fā)出能讓軟體展示出他值得使用者信任的技術(shù)..專業(yè)和道德責(zé)任PUBLIC軟體工程師應(yīng)該維護(hù)大眾的利益CLIENTANDEMPLOYER軟體工程師應(yīng)該以讓他的客戶和雇主得到最佳利益為職責(zé),並且維護(hù)大眾利益PRODUCT軟體工程師應(yīng)該確保他的產(chǎn)品和相關(guān)的修改能夠儘可能符合最高的專業(yè)標(biāo)準(zhǔn).專業(yè)和道德責(zé)任JUDGMENT軟體工程師在專業(yè)判斷上應(yīng)該維持正直與中立MANAGEMENT軟體工程師的經(jīng)理人和主觀應(yīng)該軟體開(kāi)發(fā)與維護(hù)上支持與提倡合乎道德的管理方法PROFESSION軟體工程師應(yīng)該提昇.何謂軟體工程方法軟體工程方法是開(kāi)發(fā)軟體的一些結(jié)構(gòu)方法,他們的目的是要以合乎成本效益的方式生產(chǎn)出高品質(zhì)的軟體產(chǎn)品。在1970年代就已經(jīng)發(fā)表了結(jié)構(gòu)式分析與JSD等方法,這些方法主要是找出系統(tǒng)的基本功能元件。1980-1990年代,這些功能導(dǎo)向的方法又增加了一些物件導(dǎo)向的功能?,F(xiàn)在這些方法已經(jīng)整合成一個(gè)統(tǒng)一個(gè)方法,稱為UML(UnifiedModelingLanguage)目前為止,軟體工程方法還在發(fā)展中,還沒(méi)有一個(gè)完全理想的方法出現(xiàn),而且不同方法有各有不同的適合領(lǐng)域。.軟體開(kāi)發(fā)、塑模與溝通在軟體發(fā)展的過(guò)程中,因?yàn)閰⑴c開(kāi)發(fā)過(guò)程的成員

眾多,所以,有效的溝通非常重要。舉例來(lái)說(shuō):客戶與承包商需要反覆溝通,以取得用戶需求廠商與廠商之間需要有效溝通,以達(dá)成相互合作而開(kāi)發(fā)團(tuán)隊(duì)內(nèi)部更必須確保溝通,以保證發(fā)展方向

正確等等因此軟體開(kāi)發(fā)能夠順利進(jìn)行,有效且良好的溝通,是不可或缺的要素。.軟體開(kāi)發(fā)、塑模與溝通但軟體發(fā)展與其他的文明建設(shè)不同,軟體開(kāi)發(fā)通常不像建築物,具有明確的外觀形貌,也沒(méi)有所謂建築藍(lán)圖或建築模型以供參考。在大部分狀況下,軟體發(fā)展的基本參考,通常只是用戶需求裡的條列式文句。而相同的文句,每個(gè)開(kāi)發(fā)人員可能會(huì)做出不同的解釋,更因沒(méi)有實(shí)體或模型可供參考的狀況下,開(kāi)發(fā)軟體很容易造成『瞎子摸象』的後果,不但需要花更多的時(shí)間進(jìn)行溝通,同時(shí)也無(wú)法保證軟體產(chǎn)出的品質(zhì)。.軟體開(kāi)發(fā)、塑模與溝通因此,依循其他傳統(tǒng)的文明建設(shè)發(fā)展軌跡,如建築藍(lán)圖或結(jié)構(gòu)模型等成功經(jīng)驗(yàn),軟體工程也朝向此一『建立可討論的模型』目標(biāo)前進(jìn)。有可見(jiàn)的藍(lán)圖,總比以文字表示的條文容易理解。更進(jìn)一步,如果有可見(jiàn)的模型,不僅對(duì)整體架構(gòu)有更明確的概念,同時(shí)也可確保開(kāi)發(fā)團(tuán)隊(duì)中的每個(gè)成員,都有相同且明確的目標(biāo),因此可以事半倍,避免無(wú)謂虛耗的困擾。因此,在軟體工程中,塑模的重要性不言可喻.物件導(dǎo)向技術(shù)具有封裝、繼承和多型特性的物件導(dǎo)向技術(shù),提供系統(tǒng)發(fā)展人員在不增加複雜度的情況下擴(kuò)大系統(tǒng)的方法,最適合用來(lái)發(fā)展強(qiáng)調(diào)再用的軟體系統(tǒng)。.物件導(dǎo)向技術(shù)在應(yīng)用方面具有的特色一、

可經(jīng)由直接塑模企業(yè)物件,讓資訊系統(tǒng)與企業(yè)管理完全整合。二、

讓應(yīng)用系統(tǒng)不受限於執(zhí)行環(huán)境、開(kāi)發(fā)環(huán)境、程式語(yǔ)言而能彼此互通。三、

讓發(fā)展者可以很容易的再用或修改物件。.軟體生命週期將軟體開(kāi)發(fā)程序加以細(xì)分就是所謂的生命週期模型RequirementsEngineeringDesignImplementationTestingMaintenance.軟體開(kāi)發(fā)或演進(jìn)的一系列活動(dòng)SoftwarelifecycleDevelopmentcycleDesignImplementationTestingMaintenanceRequirementsElicitationSystemdesignObjectdesignAnalysisRequirementsEngineering.RequirementsEngineeringRequirementselicitationfocusesondescribingthepurposeofthesystem. (Requirementselicitation重點(diǎn)集中於描述系統(tǒng)目的)Requirementsengineering包含RequirementsElicitation與Analysis兩階段。.Design一但知道系統(tǒng)需要達(dá)成哪些需求後,設(shè)計(jì)過(guò)程中就必須決定什麼是可以完成需求的最佳系統(tǒng)建構(gòu)方式在Softwarelifecycle中Design包含SystemDesign與ObjectDesign兩階段。在SystemDesign階段初期,必須先定義出DesignGoal作為SystemDesign完成後系統(tǒng)所需達(dá)成的事項(xiàng)。.Implementation將完整的設(shè)計(jì)轉(zhuǎn)成程式碼.Testing系統(tǒng)經(jīng)過(guò)測(cè)試後,可以確保系統(tǒng)是否可以精確且完整滿足使用者的需求..Maintenance軟體完成之後的維護(hù)與改良.什麼是UML?UML是UnifiedModelingLanguage的簡(jiǎn)稱,中譯為「統(tǒng)一塑模語(yǔ)言」。屬於物件導(dǎo)向領(lǐng)域裡頭用來(lái)將設(shè)計(jì)概念表現(xiàn)出來(lái)的一種符號(hào)表現(xiàn)法也就是說(shuō),UML是軟體系統(tǒng)發(fā)展人員用以建造模型,而這些模型使得工作團(tuán)隊(duì)能夠:將系統(tǒng)具象化(Visualization)、將系統(tǒng)結(jié)構(gòu)及行為規(guī)格化(Specification)、建構(gòu)(Construction)系統(tǒng)、以及記錄(Documentation)發(fā)展系統(tǒng)過(guò)程中之各項(xiàng)決策。.UML(UnifiedModelingLanguage)什麼是塑模?

作曲家會(huì)將其腦袋中的旋律譜成樂(lè)曲,建築師會(huì)將其設(shè)計(jì)之建築物畫成藍(lán)圖,行銷廣告人員會(huì)將其創(chuàng)意製作成簡(jiǎn)報(bào);這些樂(lè)曲、藍(lán)圖及簡(jiǎn)報(bào)就是模型(Model),而建構(gòu)這些模型的過(guò)程就稱為塑模(Modeling)。

軟體開(kāi)發(fā)如同音樂(lè)譜曲及建築設(shè)計(jì),其過(guò)程中也必須將需求、分析、設(shè)計(jì)、實(shí)作、佈署等各項(xiàng)工作流程之構(gòu)想與結(jié)果予以呈現(xiàn),這就是軟體系統(tǒng)之塑模。

.UML八大模型圖來(lái)表達(dá)的各種不同的觀點(diǎn)1.

使用者觀點(diǎn)(Userview):從某些與系統(tǒng)相關(guān)角色的使用者觀點(diǎn)來(lái)看,使用者會(huì)和那些系統(tǒng)互動(dòng),相反的也可看出那些使用者會(huì)使用到該系統(tǒng)。使用的圖形有使用案例圖(UseCaseDiagram)。2.

結(jié)構(gòu)觀點(diǎn)(Structuralview):從軟體程式或系統(tǒng)的結(jié)構(gòu)觀點(diǎn)來(lái)看。使用的圖形有類別圖(ClasaDiagram)、物件圖。3.

行為觀點(diǎn)(Behaviorview):從軟體程式行為(流程)觀點(diǎn)來(lái)看,尤其是針對(duì)物件與物件之間的行為。使用的圖形有循序圖(SequenceDiagram)、合作圖(CollaborationDiagram)、狀態(tài)圖(StateDiagram)、活動(dòng)圖(ActivityDiagram)。.UML八大模型圖來(lái)表達(dá)的各種不同的觀點(diǎn)4.

建置觀點(diǎn)(Implementationview):從建置整個(gè)系統(tǒng)的觀點(diǎn)來(lái)看,那些軟體元件必須建置在何處。使用的圖形有元件圖(ComponentDiagram)。5.

環(huán)境觀點(diǎn)(Environmentview):從整個(gè)系統(tǒng)的環(huán)境觀點(diǎn)來(lái)看,那些硬體和軟體必須佈署在何處。使用的圖形有配置圖(DeploymentDiagram)。.UseCaseDiagram(使用案例圖)在運(yùn)用UseCaseDiagram時(shí)的重要課題,是要認(rèn)清使用者目標(biāo)(usegoal)與系統(tǒng)互動(dòng)(systeminteraction)兩者之間的差異。圖形內(nèi)中主要描述行為者(Actor)與使用個(gè)案(UseCase)的關(guān)係。.UseCaseDiagram-Symbol26學(xué)生查詢課程介紹演員(Actor)凡事會(huì)與系統(tǒng)互動(dòng)的都可以是演員演員不一定是人使用案例(UseCase)唯一性表示系統(tǒng)所執(zhí)行的功能連接線(Association)表是某個(gè)演員啟動(dòng)了某個(gè)案例系統(tǒng)(System)當(dāng)開(kāi)發(fā)系統(tǒng)不需要和其他系統(tǒng)互動(dòng)時(shí)省略.UseCaseDiagram–Example定期備份系統(tǒng)27時(shí)間備份系統(tǒng).ClassDiagram(類別圖)Classdiagram是用來(lái)描述系統(tǒng)中物件的類型,以及類型間的各種靜態(tài)關(guān)係。.ClassDiagram-Symbols29學(xué)生-學(xué)號(hào)-姓名+修改資料()-驗(yàn)證資料()#顯示資料()屬性類別名稱方法.ClassDiagram(Example)老師和課程的關(guān)聯(lián)30老師課程開(kāi)設(shè).SequenceDiagram(順序圖)在UML裡面,Scenario指的是一個(gè)usecase中的某一個(gè)單一實(shí)行路徑,也就是在一個(gè)usecase中某幾個(gè)特殊狀況,結(jié)合在一起的情形。而用來(lái)描述Scenario的工具即是SequenceDiagram。.SequenceDiagram–ObjectType32<<entity>>:學(xué)生<<boundary>>:修改學(xué)生資料明細(xì)<<control>>:修改

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論