山東軍隊文職招聘考試網(wǎng)計算機常識-軟件危機與軟件工程 - 行測知識
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件危機與軟件工程減小字體增大字體山東軍隊文職招聘考試網(wǎng)計算機常識-軟件危機與軟件工程
軟件工程概念的出現(xiàn)源自軟件危機。
所謂有軟件危機四伏是泛指在計算機軟件開發(fā)和維護過程中所遇到的嚴(yán)重問題。實際上,幾科所有的軟件都不同程度地存在這些問題。
隨著計算機技術(shù)的發(fā)展和應(yīng)用領(lǐng)域的擴大,計算機硬件性能/價格比和質(zhì)量穩(wěn)步提高,軟件規(guī)模越來越大,復(fù)雜程度不斷增加,軟件成本逐年上升,質(zhì)量沒有可靠的保證,軟件已成為計算機科學(xué)發(fā)展的瓶頸。
具體地說,在軟件開發(fā)和維護過程中,軟件危機主要表現(xiàn)在:
(1)軟件需求的增長得不到滿足。用戶對系統(tǒng)不滿意的情況經(jīng)常發(fā)生。
(2)軟件開發(fā)成本和進度無法控制。開發(fā)成本超出預(yù)算,開發(fā)周期大大超過規(guī)定日期的情況經(jīng)常發(fā)生。
(3)軟件質(zhì)量難以保證。
(4)軟件不可維護或護程度非常低。
(5)軟件的成本不斷提高。
(6)軟件開發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和應(yīng)用需求的增長。
總之,可以將軟件危機歸結(jié)為成本、質(zhì)量、生產(chǎn)率等問題。
軟件工程就是試圖用工程、科學(xué)和數(shù)學(xué)的大批量與方法研制、維護計算機軟件的有關(guān)技術(shù)及管理方法。
關(guān)于軟件工程的定義,國標(biāo)(GB)中指出,軟件工程是應(yīng)用于計算機軟件的定義、開發(fā)和維護的一整套方法、工具文檔、實踐標(biāo)準(zhǔn)的工序。
1993年IEEE(InstituteofElectrical&ElectronicEngineers,電氣和電子工程師學(xué)會)給出了一個更加綜合的定義:將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運行和維護的過程,即將工程化應(yīng)用于軟件中。
軟件工程包括3個要素:即方法、工具和過程。方法是完成軟件工程項目的技術(shù)手段;工具支持軟件的開發(fā)、管理、文檔生成;過程支持軟件開發(fā)的各個環(huán)節(jié)的控制、管理。
軟件工程的核心思想是把軟件產(chǎn)品看作是一個工程產(chǎn)品來處理。
開發(fā)軟件不能只考慮開發(fā)期間的費用,而且應(yīng)考慮軟件生命周期內(nèi)的全部費用。因此,軟件生命周期的概念就變得特別重要。在考慮軟件費用時,不僅僅要降低開發(fā)成本,更要降低整個軟件生命周期的總成本。
用戶名:!查看更多評論
分值:100分55分1分
內(nèi)容:!
通知管理員驗證碼:點擊獲取驗證碼
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件工程過程與軟件生命周期 - 行測知識
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件工程過程與軟件生命周期減小字體增大字體山東軍隊文職招聘考試網(wǎng)計算機常識-軟件工程過程與軟件生命周期
1、軟件工程過程(SoftwareEngineeringProcess)
ISO9000定義:軟件工程過程是把輸入轉(zhuǎn)化為輸出的一組彼此相關(guān)的資源和活動。
定義支持了軟件工程過程的兩方面內(nèi)涵。其一,軟件工程過程是指為獲得軟件產(chǎn)品,在軟件工具支持下由軟件工程師完成的一系列軟件工程活動?;谶@個方面,軟件工程過程通常包含4種基本活動:
(1)P(plan)軟件規(guī)格說明。規(guī)定軟件的功能及其運行時的限制。
(2)D(do)軟件開發(fā)。產(chǎn)生滿足規(guī)格說明的軟件。
(3)C(check)軟件確認(rèn)。確認(rèn)軟件能夠滿足客戶提出的要求。
(4)A(action)軟件演進。為滿足客戶的變更要求,軟件必須在使用的過程中演進。
通常把用戶的要求轉(zhuǎn)變成軟件產(chǎn)品的過程也叫做軟件開發(fā)過程。此過程包括對用戶的要求進行分析,解釋成軟件需求,把需求變換成設(shè)計,把設(shè)計用代碼來實現(xiàn)并進行代碼測試,有些軟件還需要進行代碼安裝和交付運行。
其二,從軟件開發(fā)的觀點看,它就是使用適當(dāng)?shù)馁Y源(包括人員、硬軟件工具、時間等),為開發(fā)軟件進行的一組開發(fā)活動,在過程結(jié)束時將輸入(用戶要求)轉(zhuǎn)化為輸出(軟件產(chǎn)品)。
所以,軟件工程的過程是將軟件工程的方法和工具綜合起來,以達(dá)到合理、及時地進行計算機軟件開發(fā)的目的。軟件工程過程應(yīng)確定方法使用的順序、要求交付的文檔資料、為保證質(zhì)量和適應(yīng)變化所需要的管理、軟件開發(fā)各個階段完成的任務(wù)。
2、軟件生命周期(softwarelifecycle)
通常,將軟件產(chǎn)品從提出、實現(xiàn)、使用維護到停止使用退役的過程稱為軟件生命周期。一般包括可行性研究與需求分析、設(shè)計、實現(xiàn)、測試、交付使用以及維護等活動。
還可以將軟件生命周期分為軟件定義、軟件開發(fā)及軟件運行維護三個階段。軟件生命周期的主要活動階段是:
(1)可行性研究與計劃制定。確定待開發(fā)軟件系統(tǒng)的開發(fā)目標(biāo)和總的要求,給出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成開發(fā)任務(wù)的實施計劃。
(2)需求分析。對待開發(fā)軟件提出的需求進行分析并給出詳細(xì)定義。編寫軟件規(guī)格說明書及初步的用戶手冊,提交評審。
(3)軟件設(shè)計。系統(tǒng)設(shè)計人員和程序設(shè)計人員應(yīng)該在反復(fù)理解軟件需求的基礎(chǔ)上,給出軟件的結(jié)構(gòu)、模塊和劃分、功能的分配及處理流程。在系統(tǒng)比軟件復(fù)雜的情況下,設(shè)計階段可分解成概要設(shè)計階段和詳細(xì)設(shè)計階段。編寫概要設(shè)計說明書、詳細(xì)設(shè)計說明書和測試計劃初稿,提交評審。
(4)軟件實現(xiàn)。把軟件設(shè)計轉(zhuǎn)換成計算機可以接受的程序代碼。即完成源程序的編碼,編寫用戶手冊、操作手冊等面向用戶的文檔,編寫單元測試計劃。
(5)軟件測試。在設(shè)計測試用例的基礎(chǔ)上,檢驗軟件的各個組成部分。編寫測試分析報告。
(6)運行和維護。將已交付的軟件投入運行,并在運行使用中不斷地維護,根據(jù)新進出的需求進行必要而且可能的擴充和刪改。
用戶名:!查看更多評論
分值:100分55分1分
內(nèi)容:!
通知管理員驗證碼:點擊獲取驗證碼
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件工程的目標(biāo)與原則 - 行測知識
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件工程的目標(biāo)與原則減小字體增大字體山東軍隊文職招聘考試網(wǎng)計算機常識-軟件工程的目標(biāo)與原則
1、軟件工程的目標(biāo)
軟件工程的目標(biāo)是,在給定成本、進度的前提下,開發(fā)出具有有效性、可靠性、可理解性、可維護性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性且滿足用戶需求的產(chǎn)品。
軟件工程需要達(dá)到的基本目標(biāo)應(yīng)是:付出較低的開發(fā)成本;達(dá)到要求的軟件功能;取得較好的軟件性能;開發(fā)的軟件易于移植;需要較低的維護費用;能按時完成開發(fā),及時交付使用。
基于軟件工程的目標(biāo),軟件工程的理論和技術(shù)性研究的內(nèi)容主要包括:軟件開發(fā)技術(shù)和軟件工程管理。
(1)軟件開發(fā)技術(shù)
軟件開發(fā)技術(shù)包括:軟件開發(fā)法學(xué)、開發(fā)過程、開發(fā)工具和軟件工程環(huán)境,其主體內(nèi)容是軟件開發(fā)方法學(xué)。軟件開發(fā)方法學(xué)是根據(jù)不同的軟件類型,按不同的觀點和原則,對軟件開發(fā)中應(yīng)遵循的策略、原則、步驟和必須產(chǎn)生的文檔資料都做出規(guī)定,從而使軟件的開發(fā)能夠進入規(guī)范化和工程化的階段,以克服早期的手工方法生產(chǎn)中的隨意性和非規(guī)范性做法。
(2)軟件工程管理
軟件工程管理包括:軟件管理學(xué)、軟件工程經(jīng)濟學(xué)、軟件心理學(xué)等內(nèi)容。
軟件工程管理是軟件按工程化生產(chǎn)時的重要環(huán)節(jié),它要求按照預(yù)選制定的計劃、進度和預(yù)算執(zhí)行,以實現(xiàn)預(yù)期的經(jīng)濟效益和社會效益。
軟件工程經(jīng)濟學(xué)是研究軟件開發(fā)中成本的估算、成本效益分析的方法和技術(shù),用經(jīng)濟學(xué)的基本原理來研究軟件工程開發(fā)中的經(jīng)濟效益問題。
軟件心理學(xué)是軟件工程領(lǐng)域具有挑戰(zhàn)性的一個全新的研究視角,它是從個體心理、人類行為、組織行為和企業(yè)文化等角度來研究軟件管理和軟件工程的。
2、軟件工程的原則
為了達(dá)到上述的軟件工程目標(biāo),在軟件開發(fā)過程中,必須遵循軟件工程的基本原則。這些基本原則包括抽象、信息隱蔽、模塊化、局部化、確定性、一致性、完備性和可驗證性。
(1)抽象。抽取事物最基本的特性和行為,忽略非本質(zhì)細(xì)節(jié)。采用分層次抽象,自頂向下,逐層細(xì)化的辦法控制軟件開發(fā)過程的復(fù)雜性。
(2)信息隱蔽。采用封閉技術(shù),將程序模塊的實現(xiàn)細(xì)節(jié)隱藏起來,使模塊接口盡量簡單。
(3)模塊化。模塊是程序中相對獨立的成分,一個獨立的編程單位,應(yīng)有良好的接口定義。模塊的大小要適中,模塊過大會使模塊內(nèi)部的復(fù)雜性增加,不得對模塊的理解和個性也不得模塊的調(diào)試和重用。模塊太小會導(dǎo)致整個系統(tǒng)表示過于復(fù)雜,不利于控制系統(tǒng)的復(fù)雜性。
(4)局部化。要求在一個物理模塊內(nèi)集中邏輯上相互關(guān)聯(lián)的計算資源,保證模塊間具有松散的耦合關(guān)系,模塊內(nèi)部有較強的內(nèi)驟性,這有助于控制角的復(fù)雜性。
(5)確定性軟件開發(fā)過程中所有概念的表達(dá)應(yīng)是確定的、無歧義且規(guī)范的。這有助于人與人的交互不會產(chǎn)生誤解和遺漏,以保證整個開發(fā)工作的協(xié)調(diào)一致。
(6)一致性。揚程序、數(shù)據(jù)和文檔的整個軟件系統(tǒng)的各模塊應(yīng)使用已知的概念、符號和術(shù)語;程序內(nèi)外部接口應(yīng)保持一致,系統(tǒng)規(guī)格說明與系統(tǒng)行為應(yīng)保持一致。
(7)完備性。軟件系統(tǒng)不丟失任何重要成分,完全實現(xiàn)系統(tǒng)所需的功能。
(8)可驗證性。開發(fā)大型軟件系統(tǒng)需要對系統(tǒng)自頂向下,逐層分解。系統(tǒng)分解應(yīng)遵循容易檢查、測評、評審的原則,以確保系統(tǒng)的正確性。
用戶名:!查看更多評論
分值:100分55分1分
內(nèi)容:!
通知管理員驗證碼:點擊獲取驗證碼
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件開發(fā)工具與軟件開發(fā)環(huán)境 - 行測知識
山東軍隊文職招聘考試網(wǎng)計算機常識-軟件開發(fā)工具與軟件開發(fā)環(huán)境減小字體增大字體山東軍隊文職招聘考試網(wǎng)計算機常識-軟件開發(fā)工具與軟件開發(fā)環(huán)境
現(xiàn)代軟件工程方法之所以千里馬實施,其重要的保證是軟件開發(fā)工具的環(huán)境的保證,使軟件在開發(fā)效率、工程質(zhì)量等多方面得到改善。軟件工程鼓勵研制和采用各種先進的軟件開發(fā)方法、工具和環(huán)境。工具和環(huán)境的使用進一步提高了軟件的開發(fā)效率、維護效率和軟件質(zhì)量。
1、軟件開發(fā)工具
2、軟件開發(fā)環(huán)境
軟件開發(fā)環(huán)境或稱軟件工程環(huán)境是全面支持軟件開發(fā)全過程的軟件工具集合。
計算機輔助軟件工程(CASE,computeraidedsoftwareengineering)是當(dāng)前軟件開發(fā)環(huán)境中富有特色的研究工作和發(fā)展方向。CASE將各種軟件工具、開發(fā)機器和一個慧放開發(fā)過程信息的中心數(shù)據(jù)庫組合起來,形成軟件工程環(huán)境。CAS3E的成功產(chǎn)品將最大限度地降低軟件開發(fā)的技術(shù)難度并使軟件開發(fā)的質(zhì)量得到保證。
用戶名:!查看更多評論
分值:100分55分1分
內(nèi)容:!
通知管理員驗證碼:點擊獲取驗證碼