欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      《軟件工程導(dǎo)論》講稿

      時(shí)間:2019-05-14 19:58:01下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫小編為你整理了多篇相關(guān)的《《軟件工程導(dǎo)論》講稿》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《《軟件工程導(dǎo)論》講稿》。

      第一篇:《軟件工程導(dǎo)論》講稿

      《軟件工程導(dǎo)論》講稿

      主講教師:楊懷洲 郵箱:hzyang@xsyu.edu.cn

      電話:***

      第1章 軟件工程學(xué)概述

      1.1軟件危機(jī)

      1.1.1軟件危機(jī)的介紹 1.1.2產(chǎn)生軟件危機(jī)的原因

      圖1.1引入同一變動(dòng)付出的代價(jià)隨時(shí)間變化的趨勢(shì)

      1.1.3消除軟件危機(jī)的途徑

      1.2軟件工程

      1.2.1軟件工程的介紹

      1.軟件工程關(guān)注于大型程序的構(gòu)造 2.軟件工程的中心課題是控制復(fù)雜性 3.軟件經(jīng)常變化

      4.開發(fā)軟件的效率非常重要 5.和諧地合作是開發(fā)軟件的關(guān)鍵 6.軟件必須有效地支持它的用戶

      7.在軟件工程領(lǐng)域中通常由具有一種文化背景的人替具有另一種文化背景的人創(chuàng)造產(chǎn)品

      1.2.2軟件工程的基本原理

      1.用分階段的生命周期計(jì)劃嚴(yán)格管理 2.堅(jiān)持進(jìn)行階段評(píng)審 3.實(shí)行嚴(yán)格的產(chǎn)品控制 4.采用現(xiàn)代程序設(shè)計(jì)技術(shù) 5.結(jié)果應(yīng)能清楚地審查

      6.開發(fā)小組的人員應(yīng)該少而精

      7.承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性

      1.2.3軟件工程方法學(xué)

      1.傳統(tǒng)方法學(xué) 2.面向?qū)ο蠓椒▽W(xué)

      1.3軟件生命周期

      1.問題定義 2.可行性研究 3.需求分析 4.總體設(shè)計(jì) 5.詳細(xì)設(shè)計(jì)

      6.編碼和單元測(cè)試 7.綜合測(cè)試 8.軟件維護(hù)

      1.4軟件過程

      1.4.1瀑布模型

      圖1.2傳統(tǒng)的瀑布模型

      1.階段間具有順序性和依賴性 2.推遲實(shí)現(xiàn)的觀點(diǎn) 3.質(zhì)量保證的觀點(diǎn)

      圖1.3實(shí)際的瀑布模型

      1.4.2快速原型模型

      圖1.4快速原型模型 1.4.3增量模型

      圖1.5增量模型

      圖1.6風(fēng)險(xiǎn)更大的增量模型

      1.4.4螺旋模型

      圖1.7簡(jiǎn)化的螺旋模型

      圖1.8完整的螺旋模型

      1.4.5噴泉模型

      圖1.9噴泉模型 1.4.6 Rational統(tǒng)一過程

      1.最佳實(shí)踐

      2.RUP軟件開發(fā)生命周期

      圖1.10 RUP軟件開發(fā)生命周期

      1.4.7敏捷過程與極限編程

      1.敏捷過程 2.極限編程

      圖1.11 XP項(xiàng)目的整體開發(fā)過程

      圖1.12 XP迭代開發(fā)過程

      1.4.8微軟過程

      1.微軟過程準(zhǔn)則 2.微軟軟件生命周期

      圖1.13微軟軟件生命周期階段劃分和主要里程碑

      3.微軟過程模型

      圖1.14微軟過程的生命周期模型

      第2章 可行性研究

      2.1可行性研究的任務(wù) 2.2可行性研究過程

      1.復(fù)查系統(tǒng)規(guī)模和目標(biāo) 2.研究目前正在使用的系統(tǒng) 3.導(dǎo)出新系統(tǒng)的高層邏輯模型 4.進(jìn)一步定義問題

      5.導(dǎo)出和評(píng)價(jià)供選擇的解法 6.推薦行動(dòng)方針 7.草擬開發(fā)計(jì)劃 8.書寫文檔提交審查

      2.3系統(tǒng)流程圖

      2.3.1符號(hào) 2.3.2例子

      圖2.1基本符號(hào)

      圖2.2系統(tǒng)符號(hào)

      圖2.3庫存清單系統(tǒng)的系統(tǒng)流程圖 2.3.3分層

      2.4數(shù)據(jù)流圖

      2.4.1符號(hào)

      圖2.4數(shù)據(jù)流圖的符號(hào) 2.4.2例子

      圖2.5定貨系統(tǒng)的基本系統(tǒng)模型

      圖2.6定貨系統(tǒng)的功能級(jí)數(shù)據(jù)流圖

      圖2.7把處理事務(wù)的功能進(jìn)一步分解后的數(shù)據(jù)流圖 2.4.3命名

      1.為數(shù)據(jù)流(或數(shù)據(jù)存儲(chǔ))命名 2.為處理命名

      2.4.4用途

      圖2.8這種劃分自動(dòng)化邊界的方法暗示以

      圖2.9另一種劃分自動(dòng)化邊界的方法建議 2.5數(shù)據(jù)字典

      2.5.1數(shù)據(jù)字典的內(nèi)容

      2.5.2定義數(shù)據(jù)的方法 2.5.3數(shù)據(jù)字典的用途

      2.5.4數(shù)據(jù)字典的實(shí)現(xiàn)

      2.6成本/效益分析

      2.6.1成本估計(jì)

      1.代碼行技術(shù) 2.任務(wù)分解技術(shù)

      3.自動(dòng)估計(jì)成本技術(shù)

      2.6.2成本/效益分析的方法

      1.貨幣的時(shí)間價(jià)值

      2.投資回收期 3.純收入 4.投資回收率

      第3章 需求分析

      3.1需求分析的任務(wù)

      3.1.1確定對(duì)系統(tǒng)的綜合要求

      1.功能需求 2.性能需求

      3.可靠性和可用性需求 4.出錯(cuò)處理需求 5.接口需求 6.約束 7.逆向需求

      8.將來可能提出的要求

      3.1.2分析系統(tǒng)的數(shù)據(jù)要求 3.1.3導(dǎo)出系統(tǒng)的邏輯模型 3.1.4修正系統(tǒng)開發(fā)計(jì)劃

      3.2與用戶溝通獲取需求的方法

      3.2.1訪談

      3.2.2面向數(shù)據(jù)流自頂向下求精

      圖3.1面向數(shù)據(jù)流自頂向下求精過程 3.2.3簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù) 3.2.4快速建立軟件原型

      3.3分析建模與規(guī)格說明

      3.3.1分析建模 3.3.2軟件需求規(guī)格說明

      3.4實(shí)體聯(lián)系圖

      3.4.1數(shù)據(jù)對(duì)象 3.4.2屬性 3.4.3聯(lián)系

      圖3.2某校教學(xué)管理ER圖 3.4.4實(shí)體聯(lián)系圖的符號(hào)

      3.5數(shù)據(jù)規(guī)范化

      3.6狀態(tài)轉(zhuǎn)換圖

      3.6.1狀態(tài)

      3.6.2事件

      3.6.3符號(hào)

      圖3.3狀態(tài)圖中使用的主要符號(hào)

      3.6.4例子

      圖3.4電話系統(tǒng)的狀態(tài)圖 3.7其他圖形工具

      3.7.1層次方框圖

      圖3.5層次方框圖的一個(gè)例子

      3.7.2 Warnier圖

      圖3.6 Warnier圖的一個(gè)例子

      3.7.3 IPO圖

      圖3.7 IPO圖的一個(gè)例子

      圖3.8改進(jìn)的IPO圖的形式

      3.8驗(yàn)證軟件需求

      3.8.1從哪些方面驗(yàn)證軟件需求的正確性 3.8.2驗(yàn)證軟件需求的方法

      1.驗(yàn)證需求的一致性 2.驗(yàn)證需求的現(xiàn)實(shí)性

      3.驗(yàn)證需求的完整性和有效性

      3.8.3用于需求分析的軟件工具 第4章 形式化說明技術(shù)

      4.1概述

      4.1.1非形式化方法的缺點(diǎn) 4.1.2形式化方法的優(yōu)點(diǎn) 4.1.3應(yīng)用形式化方法的準(zhǔn)則

      4.2有窮狀態(tài)機(jī)

      4.2.1概念

      圖4.1保險(xiǎn)箱的狀態(tài)轉(zhuǎn)換圖

      4.2.2例子

      圖4.2電梯按鈕的狀態(tài)轉(zhuǎn)換圖

      圖4.3樓層按鈕的狀態(tài)轉(zhuǎn)換圖

      圖4.4電梯的狀態(tài)轉(zhuǎn)換圖

      4.2.3評(píng)價(jià)

      4.3 Petri網(wǎng)

      4.3.1概念

      圖4.5 Petri網(wǎng)的組成

      圖4.6帶標(biāo)記的Petri網(wǎng)

      4.3.2例子

      1.電梯按鈕

      2.樓層按鈕

      圖4.7圖4.6的Petri網(wǎng)在轉(zhuǎn)換t1被激發(fā)后的情況

      圖4.8圖4.7的Petri網(wǎng)在轉(zhuǎn)換t2被激發(fā)后的情況

      圖4.9含禁止線的Petri網(wǎng)

      圖4.10 Petri網(wǎng)表示的電梯按鈕

      4.4 Z語言4.4.1簡(jiǎn)介

      1.給定的集合 2.狀態(tài)定義

      3.初始狀態(tài) 4.操作

      圖4.11Petri網(wǎng)表示樓層按鈕

      圖4.12Z格S的格式

      圖4.13Z格Button_State

      圖4.14操作Push_Button的Z規(guī)格說明

      圖4.15操作Floor_Arrival的Z規(guī)格說明

      4.4.2評(píng)價(jià)

      第5章 總體設(shè)計(jì)

      5.1設(shè)計(jì)過程

      1.設(shè)想供選擇的方案 2.選取合理的方案 3.推薦最佳方案 4.功能分解 5.設(shè)計(jì)軟件結(jié)構(gòu) 6.設(shè)計(jì)數(shù)據(jù)庫 7.制定測(cè)試計(jì)劃 8.書寫文檔 9.審查和復(fù)審

      5.2設(shè)計(jì)原理

      5.2.1模塊化

      圖5.1模塊化和軟件成本

      5.2.2抽象 5.2.3逐步求精 5.2.4信息隱藏和局部化 5.2.5模塊獨(dú)立

      1.耦合 2.內(nèi)聚

      5.3啟發(fā)規(guī)則

      1.改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性 2.模塊規(guī)模應(yīng)該適中

      3.深度、寬度、扇出和扇入都應(yīng)適當(dāng) 4.模塊的作用域應(yīng)該在控制域之內(nèi)

      圖5.2模塊的作用域和控制域

      5.力爭(zhēng)降低模塊接口的復(fù)雜程度 6.設(shè)計(jì)單入口單出口的模塊 7.模塊功能應(yīng)該可以預(yù)測(cè)

      5.4描繪軟件結(jié)構(gòu)的圖形工具

      5.4.1層次圖和HIPO圖

      圖5.3正文加工系統(tǒng)的層次圖

      圖5.4帶編號(hào)的層次圖(H圖)5.4.2結(jié)構(gòu)圖

      圖5.5結(jié)構(gòu)圖的例子——產(chǎn)生最佳解的一般結(jié)構(gòu)

      圖5.6判定為真時(shí)調(diào)用A,為假時(shí)調(diào)用B

      圖5.7模塊M循環(huán)調(diào)用模塊A、B、C 5.5面向數(shù)據(jù)流的設(shè)計(jì)方法

      5.5.1概念

      1.變換流 2.事務(wù)流

      3.設(shè)計(jì)過程

      圖5.8變換流

      圖5.9事務(wù)流

      圖5.10面向數(shù)據(jù)流方法的設(shè)計(jì)過程

      5.5.2變換分析

      1.例子 2.設(shè)計(jì)步驟

      圖5.11數(shù)字儀表板系統(tǒng)的數(shù)據(jù)流圖

      圖5.12具有邊界的數(shù)據(jù)流圖

      圖5.13第一級(jí)分解的方法

      圖5.14數(shù)字儀表板系統(tǒng)的第一級(jí)分解

      圖5.15第二級(jí)分解的方法

      圖5.16未經(jīng)精化的輸入結(jié)構(gòu)

      圖5.17未經(jīng)精化的變換結(jié)構(gòu)

      圖5.18未經(jīng)精化的輸出結(jié)構(gòu)

      圖5.19精化后的數(shù)字儀表板系統(tǒng)的軟件結(jié)構(gòu)

      5.5.3事務(wù)分析

      圖5.20事務(wù)分析的映射方法

      5.5.4設(shè)計(jì)優(yōu)化

      第6章 詳細(xì)設(shè)計(jì)

      6.1結(jié)構(gòu)程序設(shè)計(jì)

      圖6.1 3種基本的控制結(jié)構(gòu)

      圖6.2其他常用的控制結(jié)構(gòu)

      6.2人機(jī)界面設(shè)計(jì)

      6.2.1設(shè)計(jì)問題

      1.系統(tǒng)響應(yīng)時(shí)間 2.用戶幫助設(shè)施 3.出錯(cuò)信息處理 4.命令交互 6.2.2設(shè)計(jì)過程 6.2.3人機(jī)界面設(shè)計(jì)指南

      1.一般交互指南 2.信息顯示指南 3.數(shù)據(jù)輸入指南

      6.3過程設(shè)計(jì)的工具

      6.3.1程序流程圖 6.3.2盒圖

      圖6.3程序流程圖中使用的符號(hào)

      圖6.4盒圖的基本符號(hào)

      6.3.3PAD圖

      圖6.5PAD圖的基本符號(hào)

      圖6.6使用PAD圖提供的定義功能來逐步求精的例子 6.3.4判定表

      6.3.5判定樹 6.3.6過程設(shè)計(jì)語言

      圖6.7用判定樹表示計(jì)算行李費(fèi)的算法 6.4面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法

      6.4.1Jackson圖

      1.順序結(jié)構(gòu) 2.選擇結(jié)構(gòu)

      圖6.8A由B、C、D 3個(gè)元素順序組成

      圖6.9根據(jù)條件A是B或C或D中的某一個(gè)

      3.重復(fù)結(jié)構(gòu)

      圖6.10A由B出現(xiàn)N次(N≥0)組成

      6.4.2改進(jìn)的Jackson圖

      圖6.11改進(jìn)的Jackson圖 6.4.3Jackson方法

      圖6.12表示輸入輸出數(shù)據(jù)結(jié)構(gòu)的Jackson圖

      圖6.13描繪統(tǒng)計(jì)空格程序結(jié)構(gòu)的Jackson圖

      圖6.14把操作和條件分配到程序結(jié)構(gòu)圖的適當(dāng)位置

      6.5程序復(fù)雜程度的定量度量

      6.5.1McCabe方法

      1.流圖

      圖6.15把程序流程圖映射成流圖

      圖6.16由PDL翻譯成的流圖

      圖6.17由包含復(fù)合條件的PDL映射成的流圖

      2.計(jì)算環(huán)形復(fù)雜度的方法 3.環(huán)形復(fù)雜度的用途

      6.5.2 Halstead方法

      6.6小結(jié)

      第7章 實(shí)現(xiàn)

      7.1編碼

      7.1.1選擇程序設(shè)計(jì)語言 7.1.2編碼風(fēng)格

      1.程序內(nèi)部的文檔 2.數(shù)據(jù)說明 3.語句構(gòu)造 4.輸入輸出 5.效率

      7.2軟件測(cè)試基礎(chǔ)

      7.2.1軟件測(cè)試的目標(biāo) 7.2.2軟件測(cè)試準(zhǔn)則 7.2.3測(cè)試方法 7.2.4測(cè)試步驟

      1.模塊測(cè)試 2.子系統(tǒng)測(cè)試 3.系統(tǒng)測(cè)試 4.驗(yàn)收測(cè)試 5.平行運(yùn)行 7.2.5測(cè)試階段的信息流

      圖7.1測(cè)試階段的信息流

      7.3單元測(cè)試

      7.3.1測(cè)試重點(diǎn)

      1.模塊接口 2.局部數(shù)據(jù)結(jié)構(gòu) 3.重要的執(zhí)行通路 4.出錯(cuò)處理通路 5.邊界條件

      7.3.2代碼審查 7.3.3計(jì)算機(jī)測(cè)試

      圖7.2正文加工系統(tǒng)的層次圖 7.4集成測(cè)試

      7.4.1自頂向下集成

      圖7.3自頂向下結(jié)合

      7.4.2自底向上集成

      圖7.4自底向上結(jié)合 7.4.3不同集成測(cè)試策略的比較 7.4.4回歸測(cè)試

      7.5確認(rèn)測(cè)試

      7.5.1確認(rèn)測(cè)試的范圍 7.5.2軟件配置復(fù)查 7.5.3Alpha和Beta測(cè)試

      7.6白盒測(cè)試技術(shù)

      7.6.1邏輯覆蓋

      1.語句覆蓋

      圖7.5被測(cè)試模塊的流程圖

      2.判定覆蓋 3.條件覆蓋

      4.判定/條件覆蓋 5.條件組合覆蓋 6.點(diǎn)覆蓋 7.邊覆蓋 8.路徑覆蓋 7.6.2控制結(jié)構(gòu)測(cè)試

      1.基本路徑測(cè)試

      圖7.6求平均值過程的流圖

      2.條件測(cè)試 3.循環(huán)測(cè)試

      圖7.73種循環(huán) 7.7黑盒測(cè)試技術(shù)

      7.7.1等價(jià)劃分

      7.7.2邊界值分析 7.7.3錯(cuò)誤推測(cè)

      7.8調(diào)試 7.8.1調(diào)試過程

      圖7.8調(diào)試過程

      7.8.2調(diào)試途徑

      1.蠻干法 2.回溯法 3.原因排除法

      7.9軟件可靠性

      7.9.1基本概念

      1.軟件可靠性的定義 2.軟件的可用性

      7.9.2估算平均無故障時(shí)間的方法

      1.符號(hào) 2.基本假定

      3.估算平均無故障時(shí)間 4.估計(jì)錯(cuò)誤總數(shù)的方法

      第8章 維護(hù)

      8.1軟件維護(hù)的定義 8.2軟件維護(hù)的特點(diǎn)

      8.2.1結(jié)構(gòu)化維護(hù)與非結(jié)構(gòu)化維護(hù)差別巨大

      1.非結(jié)構(gòu)化維護(hù) 2.結(jié)構(gòu)化維護(hù)

      8.2.2維護(hù)的代價(jià)高昂 8.2.3維護(hù)的問題很多

      8.3軟件維護(hù)過程

      1.維護(hù)組織 2.維護(hù)報(bào)告 3.維護(hù)的事件流

      圖8.1維護(hù)階段的事件流

      4.保存維護(hù)記錄 5.評(píng)價(jià)維護(hù)活動(dòng)

      8.4軟件的可維護(hù)性

      8.4.1決定軟件可維護(hù)性的因素

      1.可理解性

      2.可測(cè)試性

      3.可修改性

      4.可移植性

      5.可重用性

      8.4.2文檔

      1.用戶文檔 2.系統(tǒng)文檔

      8.4.3可維護(hù)性復(fù)審

      8.5預(yù)防性維護(hù) 8.6軟件再工程過程

      圖8.2軟件再工程過程模型

      1.庫存目錄分析 2.文檔重構(gòu) 3.逆向工程 4.代碼重構(gòu) 5.數(shù)據(jù)重構(gòu) 6.正向工程 第9章 面向?qū)ο蠓椒▽W(xué)引論

      9.1面向?qū)ο蠓椒▽W(xué)概述

      9.1.1面向?qū)ο蠓椒▽W(xué)的要點(diǎn) 9.1.2面向?qū)ο蠓椒▽W(xué)的優(yōu)點(diǎn)

      1.與人類習(xí)慣的思維方法一致 2.穩(wěn)定性好 3.可重用性好

      4.較易開發(fā)大型軟件產(chǎn)品 5.可維護(hù)性好

      9.2面向?qū)ο蟮母拍?/p>

      9.2.1對(duì)象

      1.對(duì)象的形象表示

      圖9.1對(duì)象的形象表示

      2.對(duì)象的定義

      圖9.2用自動(dòng)機(jī)模擬對(duì)象

      3.對(duì)象的特點(diǎn) 9.2.2其他概念

      1.類(class)2.實(shí)例(instance)3.消息(message)4.方法(method)5.屬性(attribute)6.封裝(encapsulation)7.繼承(inheritance)

      圖9.3實(shí)現(xiàn)繼承機(jī)制的原理

      8.多態(tài)性(polymorphism)9.重載(overloading)9.3面向?qū)ο蠼?9.4對(duì)象模型

      9.4.1類圖的基本符號(hào)

      1.定義類

      圖9.4表示類的圖形符號(hào)

      2.定義屬性 3.定義服務(wù)

      9.4.2表示關(guān)系的符號(hào)

      1.關(guān)聯(lián)

      圖9.5普通關(guān)聯(lián)示例

      第二篇:卷-軟件工程導(dǎo)論

      21.系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中各個(gè)元素表達(dá)了系統(tǒng)中各種元素之間的(信息流動(dòng))情況。

      [解析]系統(tǒng)流程圖是描述物理系統(tǒng)的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中的各個(gè)元素,如人工處理、數(shù)據(jù)處理、數(shù)據(jù)庫、文件、設(shè)備等,表達(dá)了元素之間的信息流動(dòng)的情況。22.成本效益分析的目的是從(經(jīng)濟(jì))角度評(píng)價(jià)開發(fā)一個(gè)項(xiàng)目是否可行。[解析]成本效益分析首先是估算將要開發(fā)的系統(tǒng)的開發(fā)成本,然后與可能取得的效益進(jìn)行比較和權(quán)衡,其目的是從經(jīng)濟(jì)角度評(píng)價(jià)開發(fā)一個(gè)新的軟件項(xiàng)目是否可行。

      23.自頂向下結(jié)合的漸增式測(cè)試法,在組合模塊時(shí)有兩種組合策略:深度優(yōu)先策略和(寬度優(yōu)先策略)。

      [解析]漸增式測(cè)試法有自頂向下結(jié)合和自底向上結(jié)合兩種組裝模塊的方法,其中自頂向下集成是構(gòu)造程序結(jié)構(gòu)的一種增量式方式,不需要編寫驅(qū)動(dòng)模塊,只需要編寫樁模塊。它從主控模塊開始,按照軟件的控制層次結(jié)構(gòu),以深度優(yōu)先或?qū)挾葍?yōu)先的策略,逐步把各個(gè)模塊集成在一起。

      24.獨(dú)立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條(在其他獨(dú)立路徑中未有過)的邊的路徑。[解析]在基本路徑測(cè)試中,以詳細(xì)設(shè)計(jì)或源程序?yàn)榛A(chǔ),導(dǎo)出控制流程圖的拓?fù)浣Y(jié)構(gòu)——程序圖,在計(jì)算了程序圖的環(huán)路復(fù)雜性之后,確定只包含獨(dú)立路徑的基本路徑圖,其中獨(dú)立路徑是包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條在其他獨(dú)立路徑中未有過的邊的路徑。

      25.匯編語言是面向(機(jī)器)的,可以完成高級(jí)語言無法完成的特殊功能,如與外部設(shè)備之間的一些接口工作。

      [解析]匯編語言屬于低級(jí)語言,是一種面向機(jī)器的語言,它與高級(jí)語言相比有許多優(yōu)越性:如操作靈活,可以直接作用到硬件的最下層,完成與外部設(shè)備的接口工作等,是能夠利用計(jì)算機(jī)硬件特性直接控制硬件設(shè)備的唯一語言。

      26.在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是(中間數(shù)據(jù)結(jié)構(gòu)或中間文件)。

      [解析]JSP方法是面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法。它定義了一組以數(shù)據(jù)結(jié)構(gòu)為指導(dǎo)的映射過程,根據(jù)輸入、輸出的數(shù)據(jù)結(jié)構(gòu),按一定的規(guī)則映射成軟件的過程描述,在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件,將沖突部分分隔開來,建立多個(gè)程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個(gè)系統(tǒng)的整體。

      27.詳細(xì)設(shè)計(jì)的任務(wù)是確定每個(gè)模塊的內(nèi)部特性,即模塊的算法、(使用的數(shù)據(jù))。[解析]詳細(xì)設(shè)計(jì)的基本任務(wù)是為每個(gè)模塊進(jìn)行詳細(xì)的算法設(shè)計(jì),為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì),確定每個(gè)模塊的內(nèi)部特性,包括模塊的算法和使用的數(shù)據(jù)。對(duì)數(shù)據(jù)庫進(jìn)行物理設(shè)計(jì)等。28.所有軟件維護(hù)申請(qǐng)報(bào)告要按規(guī)定方式提出,該報(bào)告也稱(軟件問題)報(bào)告。[解析]在軟件維護(hù)的流程中,第一步就是制定維護(hù)申請(qǐng)報(bào)告,也稱為軟件問題報(bào)告,它是維護(hù)階段的一種文檔,由申請(qǐng)維護(hù)的用戶填寫。

      29.有兩類維護(hù)技術(shù):在開發(fā)階段使用來減少錯(cuò)誤、提高軟件可維護(hù)性的面向維護(hù)的技術(shù);在維護(hù)階段用來提高維護(hù)的效率和質(zhì)量的(維護(hù)支援)技術(shù)。[解析]面向維護(hù)的技術(shù)涉及軟件開發(fā)的所有階段,能夠減少軟件錯(cuò)誤,提高軟件的可維護(hù)性。而維護(hù)支援技術(shù)則包含信息收集,錯(cuò)誤原因分析,維護(hù)方案評(píng)價(jià)等項(xiàng),是在軟件維護(hù)階段用來提高維護(hù)效率和質(zhì)量的技術(shù)。

      30.科學(xué)工程計(jì)算需要大量的標(biāo)準(zhǔn)庫函數(shù),以便處理復(fù)雜的數(shù)值計(jì)算,可供選擇的語言有:(FORTRAN語言)、PASCAL語言、C語言和PL/1語言。

      [解析]計(jì)算機(jī)語言根據(jù)不同行業(yè)的需求,使用的側(cè)重點(diǎn)也不盡相同,在辦公管理方面,一些數(shù)據(jù)庫語言如FOXPRO、ORICAL有很多的應(yīng)用,在工程行業(yè),計(jì)算機(jī)語言的科學(xué)計(jì)算能力就顯得格外重要,如MATLAB、PL/

      1、FORTRAN語言都是工程計(jì)算中常用的語言。

      解:投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需的時(shí)間。[解析]通常我們用投資回收期來衡量一個(gè)開發(fā)項(xiàng)目的價(jià)值,投資回收期越短,就越快獲得利潤(rùn)。34.對(duì)應(yīng)關(guān)系

      解:即有直接因果關(guān)系在程序中可以同時(shí)處理。[解析]對(duì)應(yīng)關(guān)系是指數(shù)據(jù)單元在數(shù)據(jù)內(nèi)容上、數(shù)量上和順序上有直接的因果關(guān)系,對(duì)于重復(fù)的數(shù)據(jù)單元,重復(fù)的次序和次數(shù)都相同才有對(duì)應(yīng)關(guān)系。35.結(jié)構(gòu)沖突

      解:輸入數(shù)據(jù)與輸出數(shù)據(jù)結(jié)構(gòu)找不到對(duì)應(yīng)關(guān)系的情況,稱為結(jié)構(gòu)沖突。

      [解析]使用JSP方法時(shí)會(huì)遇到此類結(jié)構(gòu)沖突問題,對(duì)此,Jackson提出了引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件的辦法,將沖突部分分隔開來,建立多個(gè)程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個(gè)系統(tǒng)的整體。

      40.請(qǐng)使用PAD圖和PDL語言描述在數(shù)組A(1)~A(10)中找最大數(shù)的算法。解:PDL語言: N=1 WHILE N<=10 DO IF A(N)<=A(N+1)MAX =A(N+1);ELSE MAX =A(N)ENDIF;N=N+1;ENDWHILE;PAD圖:

      42.某電器集團(tuán)公司下屬的廠包括技術(shù)科、生產(chǎn)科等基層單位?,F(xiàn)在想建立一個(gè)計(jì)算機(jī)輔助企業(yè)管理系統(tǒng),其中: 生產(chǎn)科的任務(wù)是:

      (1)根據(jù)銷售公司轉(zhuǎn)來的內(nèi)部合同(產(chǎn)品型號(hào)、規(guī)格、數(shù)量、交獲日期)制定車間月生產(chǎn)計(jì)劃。

      (2)根據(jù)車間實(shí)際生產(chǎn)日?qǐng)?bào)表、周報(bào)表調(diào)整月生產(chǎn)計(jì)劃

      (3)以月生產(chǎn)計(jì)劃為以及,制定產(chǎn)品設(shè)計(jì)(結(jié)構(gòu)、工藝)及產(chǎn)品組裝月計(jì)劃。(4)將產(chǎn)品的組裝計(jì)劃傳達(dá)到各科,將組裝月計(jì)劃分解為周計(jì)劃,下達(dá)給車間 技術(shù)科的任務(wù)是:

      (1)根據(jù)生產(chǎn)科轉(zhuǎn)來的組裝計(jì)劃進(jìn)行產(chǎn)品結(jié)構(gòu)設(shè)計(jì),產(chǎn)生產(chǎn)品裝配圖給生產(chǎn)科,產(chǎn)生外購(gòu)需求計(jì)劃給供應(yīng)科,并產(chǎn)生產(chǎn)品自制物料清單。

      (2)根據(jù)組裝計(jì)劃進(jìn)行產(chǎn)品工藝設(shè)計(jì),根據(jù)產(chǎn)品自制物料清單產(chǎn)生工藝流程圖給零件廠。試寫出以上系統(tǒng)中生產(chǎn)科和技術(shù)科處理的軟件結(jié)構(gòu)圖。解

      [解析]軟件結(jié)構(gòu)圖是軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個(gè)系統(tǒng)的功能實(shí)現(xiàn),即將來程序的控制層次體系,軟件結(jié)構(gòu)往往用樹狀或網(wǎng)狀結(jié)構(gòu)的圖形來表示,其主要內(nèi)容有模塊及模塊的控制關(guān)系,根據(jù)題意,可繪制出生產(chǎn)科和技術(shù)科的軟件結(jié)構(gòu)圖,其中生產(chǎn)科的結(jié)構(gòu)圖深度和寬度均為4,技術(shù)科的結(jié)構(gòu)圖的深度和寬度均為3

      填空題

      1.在信息處理和計(jì)算機(jī)領(lǐng)域內(nèi),一般認(rèn)為軟件是 _程序、_文檔____ 和_數(shù)據(jù)

      2.數(shù)據(jù)流圖的基本組成部分有 數(shù)據(jù)的源點(diǎn)與終點(diǎn)、數(shù)據(jù)流_、加工、數(shù)據(jù)文件。3.數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成了系統(tǒng)的邏輯模型,是需求規(guī)格說明書的主要組成部分。4.劃分模塊時(shí)盡量做到__高內(nèi)聚、低耦合,保持模塊的獨(dú)立性,盡量使用公共模塊。5.類的實(shí)例化是_對(duì)象_______。

      6.人們常用硬件可靠性的定量度量方法來度量軟件的可靠性和可用性,常用的度量軟件可靠性的兩個(gè)指標(biāo)是_成功地運(yùn)行的概率_______和_平均故障時(shí)間_______。8.將待開發(fā)的軟件細(xì)化,分別估算每一個(gè)子任務(wù)所需要的開發(fā)工作量,然后將它們加起來,將得到軟件的總開發(fā)量。這種成本估算方法稱為_自底向上_______。

      9.如果一個(gè)模塊被 n 個(gè)模塊調(diào)用,其中直接的上級(jí)模塊的個(gè)數(shù)是 m 個(gè)(m<=n)那么該模塊的扇入數(shù)是 ____N_______ 個(gè)。

      10.結(jié)構(gòu)化設(shè)計(jì)以 __數(shù)據(jù)流圖_________ 為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu)。

      11.軟件的風(fēng)險(xiǎn)分析可包括風(fēng)險(xiǎn)識(shí)別、風(fēng)險(xiǎn)預(yù)測(cè) 和風(fēng)險(xiǎn)駕馭(或風(fēng)險(xiǎn)管理)等3項(xiàng)活動(dòng)。12.軟件著作權(quán)登記的3種主要類型:(1)著作權(quán)登記;(2)著作權(quán)延續(xù)登記;(3)權(quán)利轉(zhuǎn)移備案登記。

      13.軟件工程管理的主要內(nèi)容有:項(xiàng)目經(jīng)費(fèi)管理,軟件質(zhì)量管理,項(xiàng)目進(jìn)度管理和人員管理。15.面向?qū)ο蠓治龅哪康氖菍?duì)客觀世界的系統(tǒng)進(jìn)行 ___建模_______________。16.軟件維護(hù)工作的生產(chǎn)性活動(dòng)包括分析評(píng)價(jià)、修改設(shè)計(jì)和 ____編寫程序代碼等。17.為了使應(yīng)用軟件適應(yīng)計(jì)算機(jī)環(huán)境的變化而 ___修改軟件的過程稱為適應(yīng)性維護(hù)。18.一個(gè)進(jìn)行學(xué)生成績(jī)統(tǒng)計(jì)的模塊其功能是先對(duì)學(xué)生的成績(jī)進(jìn)行累加,然后求平均值,則該模塊的內(nèi)聚性是 __________順序內(nèi)聚________。

      19.投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于 __最初的投資費(fèi)用_所需的時(shí)間。

      20.軟件生存周期是指一個(gè)軟件從提出開發(fā)要求開始直到 _軟件廢棄_為止的整個(gè)時(shí)期。21.曾被譽(yù)為“程序設(shè)計(jì)方法的革命”的 結(jié)構(gòu)化 程序設(shè)計(jì),使程序設(shè)計(jì)從主要依賴于程序員個(gè)人的自由活動(dòng)變成為有章可循的一門科學(xué)。

      22.從結(jié)構(gòu)化程序設(shè)計(jì)到 面向?qū)ο蟪绦蛟O(shè)計(jì),是程序設(shè)計(jì)方法的又一次飛躍。23.在單元測(cè)試時(shí),需要為被測(cè)模塊設(shè)計(jì)___測(cè)試用例_______。

      三、應(yīng)用題

      1.商店業(yè)務(wù)處理系統(tǒng)的業(yè)務(wù)描述及數(shù)據(jù)流圖如下:

      顧客到商店購(gòu)物時(shí),在經(jīng)過挑選之后填寫了一張訂單,詳細(xì)列出了想要購(gòu)買的物品名稱、規(guī)格和數(shù)量等。商店接到訂單后首先查商品庫存,看是否有足夠的存貨。若有,則出庫且修改商品庫存文件,然后給顧客開發(fā)貨票,讓顧客交款、給顧客開收據(jù)并取貨,最后登記銷售歷史。若存貨不足,則暫存顧客訂單并向采購(gòu)部門發(fā)出訂貨通知。采購(gòu)部門根據(jù)商品庫存和暫存訂單信息向供應(yīng)商訂貨。待接到供應(yīng)商發(fā)來的相應(yīng)商品時(shí),通知財(cái)務(wù)部門向供應(yīng)商付款,并向銷售部門發(fā)出到貨通知,同時(shí),采購(gòu)部門要修改商品庫存和暫存訂單信息。當(dāng)銷售部門接到到貨通知時(shí),應(yīng)通知顧客來付款取貨。財(cái)務(wù)部門依據(jù)供應(yīng)商送來的收據(jù)記賬。

      試求解下列問題: 1).針對(duì)處理1,給出該處理的一級(jí)細(xì)化的DFD(要求給出合適的數(shù)據(jù)流與數(shù)據(jù)存儲(chǔ)說明); 2).針對(duì)處理2,給出該處理的一級(jí)細(xì)化的DFD(要求給出合適的數(shù)據(jù)流與數(shù)據(jù)存儲(chǔ)說明); 3).給出“發(fā)貨單”的DD定義; 4).給出“訂貨單”的DD定義; 5).根據(jù)你對(duì)問題的理解,給出“商品庫存”這個(gè)數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)描述。6).根據(jù)你對(duì)問題的理解,給出“銷售歷史”這個(gè)數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)描述。

      第一章:軟件工程學(xué)概述 一.填空題

      1.計(jì)算機(jī)科學(xué)中的研究成果均可用于軟件工程,但計(jì)算機(jī)科學(xué)更側(cè)重于_____________、而 軟件工程側(cè)重于_____________。

      2.計(jì)算機(jī)程序及其說明程序的各種文檔稱為_____________。計(jì)算任務(wù)的處理圖像對(duì)象和處 理規(guī)則的描述稱為_____________。有關(guān)計(jì)算機(jī)程序功能、設(shè)計(jì)、編制、使用的文字或圖形資

      料稱為_____________。

      3.軟件開發(fā)環(huán)境是相關(guān)一組_____________的集合,它支持一定的軟件開發(fā)方法或按照一定 的軟件開發(fā)模型組織而成的。

      4.CASE這一術(shù)語的英文是_____________。

      5._____________是指工具運(yùn)行在相同的硬件/操作系統(tǒng)平臺(tái)上。_____________是指工具使 用共享數(shù)據(jù)模型來操作。_____________是指工具提供相同的用戶界面。

      6.根據(jù)支持的范圍,CASE工具可分為_____________、_____________和_____________工具。

      7.軟件危機(jī)的主要原因有_____________和_____________。8._____________模型是一種非整體開發(fā)的模型。軟件在該模型中是“逐漸”開發(fā)處理的,開發(fā)出一部分,向用戶展示一部分,可讓用戶及早看到部分軟件,及早發(fā)現(xiàn)問題?;蛘呦乳_ 發(fā)一個(gè)“原型”軟件,完成部分主要功能,展示給用戶并征求意見,然后逐步完善,最終獲 得滿意的軟件產(chǎn)品。

      9.結(jié)構(gòu)化方法總得指導(dǎo)思想是_____________。它的基本原則是功能的_____________與___ __________。它是軟件工程中最早出現(xiàn)的開發(fā)方法,特別適用于數(shù)據(jù)處理領(lǐng)域的問題。10.面向?qū)ο箝_發(fā)方法包括_____________、_____________、_____________、三部分。11.瀑布模型是將軟件生存周期各個(gè)活動(dòng)規(guī)定為依線性順序連接的若干階段的模型。它包括_____________、項(xiàng)目開發(fā)計(jì)劃、_____________、_____________、_____________、_ ____________、_____________、_____________,它規(guī)定了由前至后、相互銜接的固定次序,如同瀑布流水,逐級(jí)下落。12.瀑布模型本質(zhì)上是一種_____________順序模型。

      13.構(gòu)造原型時(shí),必須注意_____________取舍,忽略一切暫時(shí)不關(guān)心的部分。

      14.屬性指的是類中對(duì)象所具有的_____________。不同對(duì)象的同一屬性可以具有相同或不同 的_____________。

      15.結(jié)構(gòu)化方法和原型化方法是軟件開發(fā)中常使用的兩種方法,在實(shí)際的應(yīng)用中,它們之間 的關(guān)系表現(xiàn)為_____________。解答: 1.原理和理論、如何建造一個(gè)軟件系統(tǒng) 2.文件、程序、文檔; 3.軟件工具; 4.Computer Aided Software Engineering;5.平臺(tái)集成、數(shù)據(jù)集成、表示集成; 6.窄支持、較寬支持、一般支持; 7.軟件本身的特點(diǎn)、缺乏好的開發(fā)方法和手段; 8.增量; 9.自頂而下逐步求精、分解、抽象; 10.面向?qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計(jì)、面向?qū)ο髮?shí)現(xiàn); 11.可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、維護(hù); 12.線性; 13.功能性能; 14.性質(zhì)(數(shù)據(jù)值)、屬性值; 15.相互補(bǔ)充;第二章: 可行性研究 一.填空題

      1.數(shù)據(jù)詞典中四種類型的條目是_____________、_____________、_____________和加工。2._____________的目的就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目是否能夠開 發(fā),是否值得開發(fā)。

      3.可行性研究的目的不是去開發(fā)一個(gè)軟件項(xiàng)目,而是研究這個(gè)軟件項(xiàng)目是否_____________。

      4.可行性研究實(shí)質(zhì)上是要進(jìn)行一次簡(jiǎn)化、壓縮了的_____________和_____________過程,要在較高層次上以較抽象的方式進(jìn)行需求分析和設(shè)計(jì)過程。

      5.可行性研究需要從_____________可行性、_____________可行性、_____________可行性 三個(gè)方面分析研究每種解決方法的可行性。

      6.成本-效益分析首先是估算將要開發(fā)的系統(tǒng)的_____________,然后與可能取得的效益進(jìn) 行_____________。

      7.投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需要的時(shí)間。項(xiàng)目的_________ ____是指在整個(gè)生命周期之內(nèi)的累計(jì)經(jīng)濟(jì)效益(折合成現(xiàn)在值)與投資之差。8.軟件工程有兩種效益,它們是_____________和_____________。

      9.成本-效益分析的目的是從_____________評(píng)價(jià)開發(fā)一個(gè)新的軟件項(xiàng)目是否可行。10.研究開發(fā)資源的有效性是進(jìn)行_____________可行性研究的一方面。

      11.在軟件的可行性研究中,可以從不同的角度對(duì)軟件進(jìn)行研究,其中是從軟件的功能可行 性角度考慮的是_____________。12.制定軟件計(jì)劃的目的在于盡早對(duì)欲開發(fā)的軟件進(jìn)行合理估價(jià),軟件計(jì)劃的任務(wù)是_______ ______。

      13.數(shù)據(jù)流圖是常用的進(jìn)行軟件需求分析的圖形工具,其基本符合是_____________、______ _______、_____________和_____________。

      14.決定大型程序模型組織基本原則的兩種交替設(shè)計(jì)策略為_____________和_____________。

      15.軟件系統(tǒng)可行性分析應(yīng)考慮_____________、_____________、_____________和________ _____等方面因素。解答: 1.數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)項(xiàng)、加工2.軟件可行性研究 3.值得去開發(fā)且其中的問題能否解決; 4.需求分析、設(shè)計(jì) 5.技術(shù)、經(jīng)濟(jì)、社會(huì) 6.開發(fā)成本、比較和權(quán)衡 7.純收入 8.無形效益、有形效益 9.經(jīng)濟(jì)角度 10.技術(shù) 11.技術(shù)可行性 12.規(guī)劃與調(diào)度 13.加工、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、外部實(shí)體 14.數(shù)據(jù)分解、算法分解 15.經(jīng)濟(jì)、技術(shù)、社會(huì)環(huán)境和人。第三章: 需求分析 一.填空題

      1.軟件需求分析過程應(yīng)該建立_____________、_____________和_____________ 三種模型。2.需求分析的基本任務(wù)是要準(zhǔn)確地定義_____________,為了滿足用戶需要,回答系統(tǒng)必須 做什么的問題。

      3.數(shù)據(jù)流圖有4個(gè)基本成分:_____________、_____________、_____________和_________ ____。

      4.流向數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)流可理解為_____________文件或_____________文件,從數(shù)據(jù)存儲(chǔ) 流出的數(shù)據(jù)可理解為從文件_____________數(shù)據(jù)或得到_____________結(jié)果。

      5.需求分析的困難主要體現(xiàn)在4個(gè)方面:?jiǎn)栴}的復(fù)雜性、_____________、_____________需

      求易變性。

      6.由于數(shù)據(jù)流是流動(dòng)中的數(shù)據(jù),所以必須有_____________。除了與_____________之間的 數(shù)據(jù)流不用命名外,數(shù)據(jù)流應(yīng)該用名詞或名詞短語命名。

      7.結(jié)構(gòu)化分析方法是面向_____________進(jìn)行需求分析的方法。8.經(jīng)過需求分析,開發(fā)人員已經(jīng)基本上理解了用戶的要求,確定了目標(biāo)系統(tǒng)的功能,定義 了系統(tǒng)數(shù)據(jù),描述了處理這些數(shù)據(jù)的基本策略。將這些共同的理解進(jìn)行了整理,最后形成文 檔_____________。

      9.在數(shù)據(jù)流圖中,有名字及方向的成分是_____________。

      10.在軟件需求分析中,開發(fā)人員要從用戶那里解決的最重要的問題是_____________。11.需求分析的最終結(jié)果是產(chǎn)生_____________。12.SA方法用DFD描述_____________。13.SA方法的基本思想是_____________。

      14.常用的需求分析方法有面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法,_____________,面向數(shù)據(jù)結(jié)構(gòu) 的

      分析方法等。

      15.通過_____________可以完成數(shù)據(jù)流圖的細(xì)化。解答: 1.數(shù)據(jù)模型、功能模型、行為模型 2.新系統(tǒng)的目標(biāo) 3.數(shù)據(jù)流、加工(又稱數(shù)據(jù)處理)、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)源點(diǎn)和終點(diǎn) 4.寫入、查詢、讀、查詢 5.交流障礙、不完備性和不一致性 6.流向、數(shù)據(jù)存儲(chǔ) 7.數(shù)據(jù)流 8.需求說明書 9.數(shù)據(jù)流 10.要讓軟件做什么 11.需求規(guī)格說明書 12.系統(tǒng)的功能 13.自頂向下逐步分解 14.面向?qū)ο蟮姆治龇椒?15.功能分解 第五章: 總體設(shè)計(jì) 一.填空題

      1.過程設(shè)計(jì)語言的重復(fù)結(jié)構(gòu)有_____________結(jié)構(gòu)、_____________結(jié)構(gòu)_____________、結(jié) 構(gòu)三種。

      2.結(jié)構(gòu)化程序設(shè)計(jì)方法的基本要點(diǎn)是:(1)采用_____________、_____________、的程序 設(shè)計(jì)方法;(2)使用_____________構(gòu)造程序;(3)主程序員組的組織形式。

      3.在詳細(xì)設(shè)計(jì)階段,為了提高數(shù)據(jù)的輸入、存儲(chǔ)、檢索等操作的效率并節(jié)約存儲(chǔ)空間,對(duì) 某些數(shù)據(jù)項(xiàng)的值要進(jìn)行_____________設(shè)計(jì)。

      4.任何程序都可由_____________、_____________和_____________三種基本控制結(jié)構(gòu)構(gòu)造。這三種基本結(jié)構(gòu)的共同點(diǎn)是_____________、_____________。

      5.在詳細(xì)設(shè)計(jì)階段,除了對(duì)模塊內(nèi)的算法進(jìn)行設(shè)計(jì),還應(yīng)對(duì)模塊內(nèi)的_____________進(jìn)行設(shè) 計(jì)。

      6.在詳細(xì)設(shè)計(jì)階段,經(jīng)常采用的工具有_____________、PDL、PAD等。7.在單元測(cè)試中,測(cè)試一個(gè)模塊時(shí),需要設(shè)計(jì)_____________。

      8.軟件產(chǎn)品在交付使用之前一般要經(jīng)過以下4步測(cè)試_____________、_____________、____ _________、_____________。

      9.軟件測(cè)試用例由_____________和_____________組成。10.用黑盒技術(shù)設(shè)計(jì)測(cè)試用例的方法有_____________、_____________、_____________和__ ___________。

      11.源程序中加注釋是幫助理解程序的重要手段,注釋分為_____________、_____________ 兩類。

      12.近年來,推出了許多面向?qū)ο蟮恼Z言,如_____________、_____________等。

      13.匯編語言是面向_____________的,可以完成_____________語言無法滿足要求的特殊功 能,如與外部設(shè)備之間的一些接口操作。

      14.語句構(gòu)造的原則是簡(jiǎn)單直接,不能為了追求效率而使代碼_____________ 15._____________是指程序從一個(gè)計(jì)算機(jī)環(huán)境移植到另一個(gè)計(jì)算機(jī)環(huán)境的容易程度 解答: 1.for、while、until 2.自頂向下、逐步求精、三種基本控制結(jié)構(gòu) 3.代碼 4.順序、選擇、重復(fù)、單入口、單出口 5.數(shù)據(jù)結(jié)構(gòu) 6.程序流程圖 7.驅(qū)動(dòng)模塊和樁模塊 8.單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試 9.測(cè)試輸入數(shù)據(jù)和對(duì)應(yīng)的預(yù)期輸出 10.等價(jià)類劃分、邊界值分析、錯(cuò)誤推斷、因果圖 11.序言行注釋、功能性注釋 12.C++、JAVA 13.機(jī)器、高級(jí) 14.復(fù)雜化; 15.可移植性。

      第三篇:軟件工程導(dǎo)論試題

      軟件工程導(dǎo)論試題 一.選擇

      1、瀑布模型把軟件生命周期劃分為八個(gè)階段:?jiǎn)栴}的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試和運(yùn)行、維護(hù)。八個(gè)階段又可歸納為三個(gè)大的階段:計(jì)劃階段、開發(fā)階段和(C)。A、詳細(xì)計(jì)劃 B、可行性分析

      C、運(yùn)行階段 D、測(cè)試與排錯(cuò)

      2、從結(jié)構(gòu)化的瀑布模型看,在它的生命周期中的八個(gè)階段中,下面的幾個(gè)選項(xiàng)中哪個(gè)環(huán)節(jié)出錯(cuò),對(duì)軟件的影響最大(C)。A、詳細(xì)設(shè)計(jì)階段 B、概要設(shè)計(jì)階段 C、需求分析階段 D、測(cè)試和運(yùn)行階段

      3、在結(jié)構(gòu)化的瀑布模型中,哪一個(gè)階段定義的標(biāo)準(zhǔn)將成為軟件測(cè)試中的系統(tǒng)測(cè)試階段的目標(biāo)(A)。

      A、需求分析階段 B、詳細(xì)設(shè)計(jì)階段 C、概要設(shè)計(jì)階段 D、可行性研究階段

      4、軟件工程的出現(xiàn)主要是由于(C)。

      A.程序設(shè)計(jì)方法學(xué)的影響 B.其它工程科學(xué)的影響 C.軟件危機(jī)的出現(xiàn) D.計(jì)算機(jī)的發(fā)展

      5、軟件工程方法學(xué)的目的是:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程方法得以實(shí)施的主要保證是(C)A、硬件環(huán)境 B、軟件開發(fā)的環(huán)境 C、軟件開發(fā)工具和軟件開發(fā)的環(huán)境 D、開發(fā)人員的素質(zhì)

      6、軟件開發(fā)常使用的兩種基本方法是結(jié)構(gòu)化和原型化方法,在實(shí)際的應(yīng)用中,它們之間的關(guān)系表現(xiàn)為(B)A、相互排斥 B、相互補(bǔ)充

      C、獨(dú)立使用 D、交替使用

      7、UML是軟件開發(fā)中的一個(gè)重要工具,它主要應(yīng)用于哪種軟件開發(fā)方法(C)A、基于瀑布模型的結(jié)構(gòu)化方法 B、基于需求動(dòng)態(tài)定義的原型化方法 C、基于對(duì)象的面向?qū)ο蟮姆椒?D、基于數(shù)據(jù)的數(shù)據(jù)流開發(fā)方法

      8、在下面的軟件開發(fā)方法中,哪一個(gè)對(duì)軟件設(shè)計(jì)和開發(fā)人員的開發(fā)要求最高(B)A、結(jié)構(gòu)化方法 B、原型化方法 C、面向?qū)ο蟮姆椒?D、控制流方法

      9、結(jié)構(gòu)化分析方法是一種預(yù)先嚴(yán)格定義需求的方法,它在實(shí)施時(shí)強(qiáng)調(diào)的是分析對(duì)象的(B)A、控制流 B、數(shù)據(jù)流 C、程序流 D、指令流

      10、軟件開發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成(A)A、計(jì)劃階段、開發(fā)階段、運(yùn)行階段 B、計(jì)劃階段、編程階段、測(cè)試階段 C、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編程調(diào)試 D、需求分析、功能定義、系統(tǒng)設(shè)計(jì)

      11、軟件開發(fā)中常采用的結(jié)構(gòu)化生命周期方法,由于其特征而一般稱其為(A)A、瀑布模型 B、對(duì)象模型 C、螺旋模型 D、層次模型

      12、軟件開發(fā)的瀑布模型,一般都將開發(fā)過程劃分為:分析、設(shè)計(jì)、編碼和測(cè)試等階段,一般認(rèn)為可能占用人員最多的階段是(C)A、分析階段 B、設(shè)計(jì)階段 C、編碼階段 D、測(cè)試階段 二.填空

      21.系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中各個(gè)元素表達(dá)了系統(tǒng)中各種元素之間的(信息流動(dòng))情況。

      [解析]系統(tǒng)流程圖是描述物理系統(tǒng)的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中的各個(gè)元素,如人工處理、數(shù)據(jù)處理、數(shù)據(jù)庫、文件、設(shè)備等,表達(dá)了元素之間的信息流動(dòng)的情況。

      22.成本效益分析的目的是從(經(jīng)濟(jì))角度評(píng)價(jià)開發(fā)一個(gè)項(xiàng)目是否可行。

      [解析]成本效益分析首先是估算將要開發(fā)的系統(tǒng)的開發(fā)成本,然后與可能取得的效益進(jìn)行比較和權(quán)衡,其目的是從經(jīng)濟(jì)角度評(píng)價(jià)開發(fā)一個(gè)新的軟件項(xiàng)目是否可行。23.自頂向下結(jié)合的漸增式測(cè)試法,在組合模塊時(shí)有兩種組合策略:深度優(yōu)先策略和(寬度優(yōu)先策略)。

      [解析]漸增式測(cè)試法有自頂向下結(jié)合和自底向上結(jié)合兩種組裝模塊的方法,其中自頂向下集成是構(gòu)造程序結(jié)構(gòu)的一種增量式方式,不需要編寫驅(qū)動(dòng)模塊,只需要編寫樁模塊。它從主控模塊開始,按照軟件的控制層次結(jié)構(gòu),以深度優(yōu)先或?qū)挾葍?yōu)先的策略,逐步把各個(gè)模塊集成在一起。

      24.獨(dú)立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條(在其他獨(dú)立路徑中未有過)的邊的路徑。

      [解析]在基本路徑測(cè)試中,以詳細(xì)設(shè)計(jì)或源程序?yàn)榛A(chǔ),導(dǎo)出控制流程圖的拓?fù)浣Y(jié)構(gòu)——程序圖,在計(jì)算了程序圖的環(huán)路復(fù)雜性之后,確定只包含獨(dú)立路徑的基本路徑圖,其中獨(dú)立路徑是包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條在其他獨(dú)立路徑中未有過的邊的路徑。

      25.匯編語言是面向(機(jī)器)的,可以完成高級(jí)語言無法完成的特殊功能,如與外部設(shè)備之間的一些接口工作。

      [解析]匯編語言屬于低級(jí)語言,是一種面向機(jī)器的語言,它與高級(jí)語言相比有許多優(yōu)越性:如操作靈活,可以直接作用到硬件的最下層,完成與外部設(shè)備的接口工作等,是能夠利用計(jì)算機(jī)硬件特性直接控制硬件設(shè)備的唯一語言。

      26.在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是(中間數(shù)據(jù)結(jié)構(gòu)或中間文件)。

      [解析]JSP方法是面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法。它定義了一組以數(shù)據(jù)結(jié)構(gòu)為指導(dǎo)的映射過程,根據(jù)輸入、輸出的數(shù)據(jù)結(jié)構(gòu),按一定的規(guī)則映射成軟件的過程描述,在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件,將沖突部分分隔開來,建立多個(gè)程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個(gè)系統(tǒng)的整體。

      27.詳細(xì)設(shè)計(jì)的任務(wù)是確定每個(gè)模塊的內(nèi)部特性,即模塊的算法、(使用的數(shù)據(jù))。

      [解析]詳細(xì)設(shè)計(jì)的基本任務(wù)是為每個(gè)模塊進(jìn)行詳細(xì)的算法設(shè)計(jì),為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì),確定每個(gè)模塊的內(nèi)部特性,包括模塊的算法和使用的數(shù)據(jù)。對(duì)數(shù)據(jù)庫進(jìn)行物理設(shè)計(jì)等。

      28.所有軟件維護(hù)申請(qǐng)報(bào)告要按規(guī)定方式提出,該報(bào)告也稱(軟件問題)報(bào)告。

      [解析]在軟件維護(hù)的流程中,第一步就是制定維護(hù)申請(qǐng)報(bào)告,也稱為軟件問題報(bào)告,它是維護(hù)階段的一種文檔,由申請(qǐng)維護(hù)的用戶填寫。

      29.有兩類維護(hù)技術(shù):在開發(fā)階段使用來減少錯(cuò)誤、提高軟件可維護(hù)性的面向維護(hù)的技術(shù);在維護(hù)階段用來提高維護(hù)的效率和質(zhì)量的(維護(hù)支援)技術(shù)。

      [解析]面向維護(hù)的技術(shù)涉及軟件開發(fā)的所有階段,能夠減少軟件錯(cuò)誤,提高軟件的可維護(hù)性。而維護(hù)支援技術(shù)則包含信息收集,錯(cuò)誤原因分析,維護(hù)方案評(píng)價(jià)等項(xiàng),是在軟件維護(hù)階段用來提高維護(hù)效率和質(zhì)量的技術(shù)。

      30.科學(xué)工程計(jì)算需要大量的標(biāo)準(zhǔn)庫函數(shù),以便處理復(fù)雜的數(shù)值計(jì)算,可供選擇的語言有:(FORTRAN語言)、PASCAL語言、C語言和PL/1語言。

      [解析]計(jì)算機(jī)語言根據(jù)不同行業(yè)的需求,使用的側(cè)重點(diǎn)也不盡相同,在辦公管理方面,一些數(shù)據(jù)庫語言如FOXPRO、ORICAL有很多的應(yīng)用,在工程行業(yè),計(jì)算機(jī)語言的科學(xué)計(jì)算能力就顯得格外重要,如MATLAB、PL/

      1、FORTRAN語言都是工程計(jì)算中常用的語言。三.判斷

      1.軟件的開發(fā)與運(yùn)行經(jīng)常受到硬件的限制和制約。(√)

      2.模塊內(nèi)的高內(nèi)聚往往意味著模塊間的松耦合。(√)

      3.Jackson圖只能表達(dá)程序結(jié)構(gòu),不能表達(dá)數(shù)據(jù)結(jié)構(gòu)。(X)

      上述數(shù)據(jù)流圖表示數(shù)據(jù)A和B同時(shí)輸入變換成C。(X)

      5.軟件的質(zhì)量好壞主要由驗(yàn)收人員負(fù)責(zé),其他開發(fā)人員不必關(guān)心。(X)

      6.判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。(√)

      7.應(yīng)該盡量使用機(jī)器語言編寫代碼,提高程序運(yùn)行效率,而減少高級(jí)語言的使用。(X)

      8.UML只能應(yīng)用于軟件系統(tǒng)模型的建立。(X)

      9.容錯(cuò)就是每個(gè)程序采用兩種不同的算法編寫。(X)

      10.軟件測(cè)試的目的是為了無一遺漏的找出所有的錯(cuò)誤。(X)

      四、名詞解釋題(本大題共5小題,每小題3分,共15分)

      31.軟件開發(fā)環(huán)境

      32.錯(cuò)誤推測(cè)法

      33.黑盒測(cè)試法

      34.軟件質(zhì)量保證

      35.瀑布模型 31.經(jīng)濟(jì)可行性

      解:進(jìn)行開發(fā)成本的估算以及了解取得效益的評(píng)估,確定要開發(fā)的項(xiàng)目是否值得投資開發(fā)。

      [解析]對(duì)于一個(gè)系統(tǒng)所必須要衡量的是經(jīng)濟(jì)上是否合算,經(jīng)濟(jì)可行性的范圍很廣,包括效益分析、潛在市場(chǎng)前景等。

      32.社會(huì)可行性

      解:要開發(fā)的項(xiàng)目是否存在任何侵犯、妨礙等責(zé)任問題,要開發(fā)項(xiàng)目目的運(yùn)行方式在用戶組織內(nèi)是否行得通,現(xiàn)有管理制度、人員素質(zhì)、操作方式是否可行。

      [解析]社會(huì)可行性包括合同、責(zé)任、侵權(quán)等技術(shù)人員不甚了解的諸多問題。

      33.投資回收期

      解:投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需的時(shí)間。

      [解析]通常我們用投資回收期來衡量一個(gè)開發(fā)項(xiàng)目的價(jià)值,投資回收期越短,就越快獲得利潤(rùn)。

      34.對(duì)應(yīng)關(guān)系

      解:即有直接因果關(guān)系在程序中可以同時(shí)處理。

      [解析]對(duì)應(yīng)關(guān)系是指數(shù)據(jù)單元在數(shù)據(jù)內(nèi)容上、數(shù)量上和順序上有直接的因果關(guān)系,對(duì)于重復(fù)的數(shù)據(jù)單元,重復(fù)的次序和次數(shù)都相同才有對(duì)應(yīng)關(guān)系。

      35.結(jié)構(gòu)沖突

      解:輸入數(shù)據(jù)與輸出數(shù)據(jù)結(jié)構(gòu)找不到對(duì)應(yīng)關(guān)系的情況,稱為結(jié)構(gòu)沖突。

      [解析]使用JSP方法時(shí)會(huì)遇到此類結(jié)構(gòu)沖突問題,對(duì)此,Jackson提出了引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件的辦法,將沖突部分分隔開來,建立多個(gè)程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個(gè)系統(tǒng)的整體。

      五、圖 a 中,模塊 G 為判定,判斷涉及到模塊 B、F、G,請(qǐng)指出設(shè)計(jì)中的錯(cuò)誤,再根據(jù) 改進(jìn)模 塊圖的基本原則,畫出 1~2 個(gè)改進(jìn)方案(不改變模塊 G 的判斷關(guān)系),并說明是按照

      哪條基本 原則進(jìn)行改進(jìn)的。

      解:圖 b 為一個(gè)改進(jìn)方案,將模塊 G 的位置提高,使其作用范圍為控制范圍的子集,減 少模塊 之間的聯(lián)系。

      40.請(qǐng)使用PAD圖和PDL語言描述在數(shù)組A(1)~A(10)中找最大數(shù)的算法。

      解:PDL語言:

      N=1

      WHILE N<=10 DO

      IF A(N)<=A(N+1)MAX =A(N+1);

      ELSE MAX =A(N)ENDIF;

      N=N+1;

      ENDWHILE;

      PAD圖:

      [解析]人工查找時(shí),是從第一個(gè)元素開始查找,用當(dāng)前元素與下一個(gè)元素比較,將較大者作為當(dāng)前元素又與下一元素比較,如此循環(huán),直到數(shù)組末尾。

      41.根據(jù)下列條件使用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例。

      某一8位微機(jī),其八進(jìn)制常數(shù)定義為:以零開頭的數(shù)是八進(jìn)制整數(shù),其值的范圍是-177~177,如05,0127,-065

      解:(1)劃分等價(jià)類并編號(hào),如下表示:(4分)

      (2)為合理等價(jià)類設(shè)計(jì)測(cè)試用例,表中有兩個(gè)合理等價(jià)類,設(shè)計(jì)兩個(gè)例子(2分)

      (3)為不合理等價(jià)類測(cè)試用例,至少設(shè)計(jì)一個(gè)測(cè)試用例(2分)

      [解析]等價(jià)類劃分屬于黑盒測(cè)試的一種,它將輸入數(shù)據(jù)域按有效的或無效的劃分成若干個(gè)等價(jià)類,測(cè)試每個(gè)等價(jià)類的代表值就等于對(duì)該類其他值的測(cè)試,這樣用少量有代表性的例子代替大量測(cè)試目的相同的例子,可以有效提高測(cè)試效率。本題劃分了3個(gè)合理等價(jià)類,9個(gè)不合理等價(jià)類進(jìn)行測(cè)試,取到了預(yù)期的效果。

      42.某電器集團(tuán)公司下屬的廠包括技術(shù)科、生產(chǎn)科等基層單位?,F(xiàn)在想建立一個(gè)計(jì)算機(jī)輔助企業(yè)管理系統(tǒng),其中:

      生產(chǎn)科的任務(wù)是:

      (1)根據(jù)銷售公司轉(zhuǎn)來的內(nèi)部合同(產(chǎn)品型號(hào)、規(guī)格、數(shù)量、交獲日期)制定車間月生產(chǎn)計(jì)劃。

      (2)根據(jù)車間實(shí)際生產(chǎn)日?qǐng)?bào)表、周報(bào)表調(diào)整月生產(chǎn)計(jì)劃

      (3)以月生產(chǎn)計(jì)劃為以及,制定產(chǎn)品設(shè)計(jì)(結(jié)構(gòu)、工藝)及產(chǎn)品組裝月計(jì)劃。

      (4)將產(chǎn)品的組裝計(jì)劃傳達(dá)到各科,將組裝月計(jì)劃分解為周計(jì)劃,下達(dá)給車間

      技術(shù)科的任務(wù)是:

      (1)根據(jù)生產(chǎn)科轉(zhuǎn)來的組裝計(jì)劃進(jìn)行產(chǎn)品結(jié)構(gòu)設(shè)計(jì),產(chǎn)生產(chǎn)品裝配圖給生產(chǎn)科,產(chǎn)生外購(gòu)需求計(jì)劃給供應(yīng)科,并產(chǎn)生產(chǎn)品自制物料清單。

      (2)根據(jù)組裝計(jì)劃進(jìn)行產(chǎn)品工藝設(shè)計(jì),根據(jù)產(chǎn)品自制物料清單產(chǎn)生工藝流程圖給零件廠。試寫出以上系統(tǒng)中生產(chǎn)科和技術(shù)科處理的軟件結(jié)構(gòu)圖。

      解:

      畫出生產(chǎn)科圖的給6分,畫出技術(shù)科的給4分。

      [解析]軟件結(jié)構(gòu)圖是軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個(gè)系統(tǒng)的功能實(shí)現(xiàn),即將來程序的控制層次體系,軟件結(jié)構(gòu)往往用樹狀或網(wǎng)狀結(jié)構(gòu)的圖形來表示,其主要內(nèi)容有模塊及模塊的控制關(guān)系,根據(jù)題意,可繪制出生產(chǎn)科和技術(shù)科的軟件結(jié)構(gòu)圖,其中生產(chǎn)科的結(jié)構(gòu)圖深度和寬度均為4,技術(shù)科的結(jié)構(gòu)圖的深度和寬度均為3。

      一、判斷題(每題2分,共30分)

      1.螺旋模型是在瀑布模型和增量模型的基礎(chǔ)上增加了風(fēng)險(xiǎn)分析活動(dòng)。(對(duì))

      2.數(shù)據(jù)字典是對(duì)數(shù)據(jù)流圖中的數(shù)據(jù)流,加工、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)的源和終點(diǎn)進(jìn)行詳細(xì)定義。(錯(cuò))

      3.JAVA語言編譯器是一個(gè)CASE工具。(對(duì))。

      4.軟件是指用程序設(shè)計(jì)語言(如PASCAL ,C,VISUAL BASIC 等)編寫的程序,軟件開發(fā)實(shí)際上就是

      編寫程序代碼。(錯(cuò))

      5.軟件模塊之間的耦合性越弱越發(fā)。(對(duì))6.數(shù)據(jù)庫設(shè)計(jì)說明書是一個(gè)軟件配置項(xiàng)(對(duì))

      7.在面向?qū)ο蟮能浖_發(fā)方法中,每個(gè)類都存在其相應(yīng)的對(duì)象,類是對(duì)象的實(shí)例,對(duì)象是生成類的模

      板。(錯(cuò))

      8.過程描述語言可以用于描述軟件的系統(tǒng)結(jié)構(gòu)。(錯(cuò))

      9.如果通過軟件測(cè)試沒有發(fā)現(xiàn)錯(cuò)誤,則說明軟件是正確的。(錯(cuò))

      10.快速原型模型可以有效地適應(yīng)用戶需求的動(dòng)態(tài)變化。(對(duì))

      11.模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計(jì)原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。

      (對(duì))

      12.集成測(cè)試主要由用戶來完成。(錯(cuò))

      13.確認(rèn)測(cè)試計(jì)劃應(yīng)該在可行性研究階段制定(錯(cuò))

      14.白盒測(cè)試無需考慮模塊內(nèi)部的執(zhí)行過程和程序結(jié)構(gòu),只要了解模塊的功能即可。(錯(cuò))

      15.軟件概要設(shè)計(jì)包括軟件系統(tǒng)結(jié)構(gòu)設(shè)計(jì)以及數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫設(shè)計(jì)。(對(duì))

      二。單選題(每題2分,共20分)1.瀑布模型的關(guān)鍵不足在于(2)

      (1)過于簡(jiǎn)單(2)不能適應(yīng)需求的動(dòng)態(tài)變更(3)過于靈活(4)各個(gè)階段需要進(jìn)行評(píng)審

      2.在面向?qū)ο筌浖_發(fā)方法中,類與類之間主要有以下結(jié)構(gòu)關(guān)系(1)

      (1)繼承和聚集(2)繼承和一般(3)聚集和消息傳遞(4)繼承和方法調(diào)用

      3.以下哪一項(xiàng)不是軟件危機(jī)的表現(xiàn)形式(3)

      (1)成本高(2)生產(chǎn)率低(3)技術(shù)發(fā)展快(4)質(zhì)量得不到保證

      4.以下哪一項(xiàng)不是面向?qū)ο蟮奶卣鳎?)

      (1)多態(tài)性(2)繼承性(3)封裝性(4)過程調(diào)用

      5.面向?qū)ο竽P椭饕梢韵履男┠P徒M成(1)

      (1)對(duì)象模型、動(dòng)態(tài)模型、功能模型(2)對(duì)象模型、數(shù)據(jù)模型、功能模型(3)數(shù)據(jù)模型、動(dòng)態(tài)模型、功能模型(4)對(duì)象模型、動(dòng)態(tài)模型、數(shù)據(jù)模型

      6.軟件可行性研究一般不考慮(4)

      (1)是否有足夠的人員和相關(guān)的技術(shù)來支持系統(tǒng)開發(fā)(2)是否有足夠的工具和相關(guān)的技術(shù)來支持系統(tǒng)開發(fā)(3)待開發(fā)軟件是否有市場(chǎng)、經(jīng)濟(jì)上是否合算(4)待開發(fā)的軟件是否會(huì)有質(zhì)量問題

      7.軟件維護(hù)的副作用主要有以下哪幾種(3)

      (1)編碼副作用、數(shù)據(jù)副作用、測(cè)試副作用(2)編碼副作用、數(shù)據(jù)副作用、調(diào)試副作用(3)編碼副作用、數(shù)據(jù)副作用、文檔副作用(4)編碼副作用、文檔副作用、測(cè)試副作用

      8.軟件項(xiàng)目計(jì)劃一般不包括以下哪項(xiàng)內(nèi)容(4)

      (1)培訓(xùn)計(jì)劃(2)人員安排(3)進(jìn)度安排(4)軟件開發(fā)標(biāo)準(zhǔn)的選擇和制定

      9.以下哪一項(xiàng)不屬于面向?qū)ο蟮能浖_發(fā)方法(3)

      (1)coad方法(2)booch方法(3)jackson方法(4)omt方法

      10.以下哪種測(cè)試方法不屬于白盒測(cè)試技術(shù)(2)

      (1)基本路徑測(cè)試(2)邊界值分析測(cè)試(3)循環(huán)覆蓋測(cè)試(4)邏輯覆蓋測(cè)試

      第四篇:軟件工程導(dǎo)論試題

      軟件工程導(dǎo)論試題

      一.選擇

      1、瀑布模型把軟件生命周期劃分為八個(gè)階段:?jiǎn)栴}的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試和運(yùn)行、維護(hù)。八個(gè)階段又可歸納為三個(gè)大的階段:計(jì)劃階段、開發(fā)階段和(C)。A、詳細(xì)計(jì)劃 B、可行性分析

      C、運(yùn)行階段 D、測(cè)試與排錯(cuò)

      2、從結(jié)構(gòu)化的瀑布模型看,在它的生命周期中的八個(gè)階段中,下面的幾個(gè)選項(xiàng)中哪個(gè)環(huán)節(jié)出錯(cuò),對(duì)軟件的影響最大(C)。A、詳細(xì)設(shè)計(jì)階段 B、概要設(shè)計(jì)階段

      C、需求分析階段 D、測(cè)試和運(yùn)行階段

      3、在結(jié)構(gòu)化的瀑布模型中,哪一個(gè)階段定義的標(biāo)準(zhǔn)將成為軟件測(cè)試中的系統(tǒng)測(cè)試階段的目標(biāo)(A)。

      A、需求分析階段 B、詳細(xì)設(shè)計(jì)階段

      C、概要設(shè)計(jì)階段 D、可行性研究階段

      4、軟件工程的出現(xiàn)主要是由于(C)。

      A.程序設(shè)計(jì)方法學(xué)的影響 B.其它工程科學(xué)的影響

      C.軟件危機(jī)的出現(xiàn) D.計(jì)算機(jī)的發(fā)展

      5、軟件工程方法學(xué)的目的是:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程方法得以實(shí)施的主要保證是(C)A、硬件環(huán)境 B、軟件開發(fā)的環(huán)境

      C、軟件開發(fā)工具和軟件開發(fā)的環(huán)境 D、開發(fā)人員的素質(zhì)

      6、軟件開發(fā)常使用的兩種基本方法是結(jié)構(gòu)化和原型化方法,在實(shí)際的應(yīng)用中,它們之間的關(guān)系表現(xiàn)為(B)A、相互排斥 B、相互補(bǔ)充

      C、獨(dú)立使用 D、交替使用

      7、UML是軟件開發(fā)中的一個(gè)重要工具,它主要應(yīng)用于哪種軟件開發(fā)方法(C)A、基于瀑布模型的結(jié)構(gòu)化方法 B、基于需求動(dòng)態(tài)定義的原型化方法 C、基于對(duì)象的面向?qū)ο蟮姆椒?D、基于數(shù)據(jù)的數(shù)據(jù)流開發(fā)方法

      8、在下面的軟件開發(fā)方法中,哪一個(gè)對(duì)軟件設(shè)計(jì)和開發(fā)人員的開發(fā)要求最高(B)A、結(jié)構(gòu)化方法 B、原型化方法 C、面向?qū)ο蟮姆椒?D、控制流方法

      9、結(jié)構(gòu)化分析方法是一種預(yù)先嚴(yán)格定義需求的方法,它在實(shí)施時(shí)強(qiáng)調(diào)的是分析對(duì)象的(B)A、控制流 B、數(shù)據(jù)流 C、程序流 D、指令流

      10、軟件開發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成(A)A、計(jì)劃階段、開發(fā)階段、運(yùn)行階段 B、計(jì)劃階段、編程階段、測(cè)試階段 C、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編程調(diào)試 D、需求分析、功能定義、系統(tǒng)設(shè)計(jì)

      11、軟件開發(fā)中常采用的結(jié)構(gòu)化生命周期方法,由于其特征而一般稱其為(A)A、瀑布模型 B、對(duì)象模型 C、螺旋模型 D、層次模型

      12、軟件開發(fā)的瀑布模型,一般都將開發(fā)過程劃分為:分析、設(shè)計(jì)、編碼和測(cè)試等階段,一般認(rèn)為可能占用人員最多的階段是(C)A、分析階段 B、設(shè)計(jì)階段 C、編碼階段 D、測(cè)試階段 二.填空

      21.系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中各個(gè)元素表達(dá)了系統(tǒng)中各種元素之間的(信息流動(dòng))情況。

      [解析]系統(tǒng)流程圖是描述物理系統(tǒng)的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中的各個(gè)元素,如人工處理、數(shù)據(jù)處理、數(shù)據(jù)庫、文件、設(shè)備等,表達(dá)了元素之間的信息流動(dòng)的情況。

      22.成本效益分析的目的是從(經(jīng)濟(jì))角度評(píng)價(jià)開發(fā)一個(gè)項(xiàng)目是否可行。

      [解析]成本效益分析首先是估算將要開發(fā)的系統(tǒng)的開發(fā)成本,然后與可能取得的效益進(jìn)行比較和權(quán)衡,其目的是從經(jīng)濟(jì)角度評(píng)價(jià)開發(fā)一個(gè)新的軟件項(xiàng)目是否可行。23.自頂向下結(jié)合的漸增式測(cè)試法,在組合模塊時(shí)有兩種組合策略:深度優(yōu)先策略和(寬度優(yōu)先策略)。

      [解析]漸增式測(cè)試法有自頂向下結(jié)合和自底向上結(jié)合兩種組裝模塊的方法,其中自頂向下集成是構(gòu)造程序結(jié)構(gòu)的一種增量式方式,不需要編寫驅(qū)動(dòng)模塊,只需要編寫樁模塊。它從主控模塊開始,按照軟件的控制層次結(jié)構(gòu),以深度優(yōu)先或?qū)挾葍?yōu)先的策略,逐步把各個(gè)模塊集成在一起。

      24.獨(dú)立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條(在其他獨(dú)立路徑中未有過)的邊的路徑。

      [解析]在基本路徑測(cè)試中,以詳細(xì)設(shè)計(jì)或源程序?yàn)榛A(chǔ),導(dǎo)出控制流程圖的拓?fù)浣Y(jié)構(gòu)——程序圖,在計(jì)算了程序圖的環(huán)路復(fù)雜性之后,確定只包含獨(dú)立路徑的基本路徑圖,其中獨(dú)立路徑是包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條在其他獨(dú)立路徑中未有過的邊的路徑。

      25.匯編語言是面向(機(jī)器)的,可以完成高級(jí)語言無法完成的特殊功能,如與外部設(shè)備之間的一些接口工作。

      [解析]匯編語言屬于低級(jí)語言,是一種面向機(jī)器的語言,它與高級(jí)語言相比有許多優(yōu)越性:如操作靈活,可以直接作用到硬件的最下層,完成與外部設(shè)備的接口工作等,是能夠利用計(jì)算機(jī)硬件特性直接控制硬件設(shè)備的唯一語言。

      26.在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是(中間數(shù)據(jù)結(jié)構(gòu)或中間文件)。

      [解析]JSP方法是面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法。它定義了一組以數(shù)據(jù)結(jié)構(gòu)為指導(dǎo)的映射過程,根據(jù)輸入、輸出的數(shù)據(jù)結(jié)構(gòu),按一定的規(guī)則映射成軟件的過程描述,在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件,將沖突部分分隔開來,建立多個(gè)程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個(gè)系統(tǒng)的整體。

      27.詳細(xì)設(shè)計(jì)的任務(wù)是確定每個(gè)模塊的內(nèi)部特性,即模塊的算法、(使用的數(shù)據(jù))。

      [解析]詳細(xì)設(shè)計(jì)的基本任務(wù)是為每個(gè)模塊進(jìn)行詳細(xì)的算法設(shè)計(jì),為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì),確定每個(gè)模塊的內(nèi)部特性,包括模塊的算法和使用的數(shù)據(jù)。對(duì)數(shù)據(jù)庫進(jìn)行物理設(shè)計(jì)等。

      28.所有軟件維護(hù)申請(qǐng)報(bào)告要按規(guī)定方式提出,該報(bào)告也稱(軟件問題)報(bào)告。

      [解析]在軟件維護(hù)的流程中,第一步就是制定維護(hù)申請(qǐng)報(bào)告,也稱為軟件問題報(bào)告,它是維護(hù)階段的一種文檔,由申請(qǐng)維護(hù)的用戶填寫。

      29.有兩類維護(hù)技術(shù):在開發(fā)階段使用來減少錯(cuò)誤、提高軟件可維護(hù)性的面向維護(hù)的技術(shù);在維護(hù)階段用來提高維護(hù)的效率和質(zhì)量的(維護(hù)支援)技術(shù)。

      [解析]面向維護(hù)的技術(shù)涉及軟件開發(fā)的所有階段,能夠減少軟件錯(cuò)誤,提高軟件的可維護(hù)性。而維護(hù)支援技術(shù)則包含信息收集,錯(cuò)誤原因分析,維護(hù)方案評(píng)價(jià)等項(xiàng),是在軟件維護(hù)階段用來提高維護(hù)效率和質(zhì)量的技術(shù)。

      30.科學(xué)工程計(jì)算需要大量的標(biāo)準(zhǔn)庫函數(shù),以便處理復(fù)雜的數(shù)值計(jì)算,可供選擇的語言有:(FORTRAN語言)、PASCAL語言、C語言和PL/1語言。

      [解析]計(jì)算機(jī)語言根據(jù)不同行業(yè)的需求,使用的側(cè)重點(diǎn)也不盡相同,在辦公管理方面,一些數(shù)據(jù)庫語言如FOXPRO、ORICAL有很多的應(yīng)用,在工程行業(yè),計(jì)算機(jī)語言的科學(xué)計(jì)算能力就顯得格外重要,如MATLAB、PL/

      1、FORTRAN語言都是工程計(jì)算中常用的語言。三.判斷

      1.軟件的開發(fā)與運(yùn)行經(jīng)常受到硬件的限制和制約。(√)

      2.模塊內(nèi)的高內(nèi)聚往往意味著模塊間的松耦合。(√)3.Jackson圖只能表達(dá)程序結(jié)構(gòu),不能表達(dá)數(shù)據(jù)結(jié)構(gòu)。(X)

      上述數(shù)據(jù)流圖表示數(shù)據(jù)A和B同時(shí)輸入變換成C。(X)

      5.軟件的質(zhì)量好壞主要由驗(yàn)收人員負(fù)責(zé),其他開發(fā)人員不必關(guān)心。(X)

      6.判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。(√)

      7.應(yīng)該盡量使用機(jī)器語言編寫代碼,提高程序運(yùn)行效率,而減少高級(jí)語言的使用。(X)

      8.UML只能應(yīng)用于軟件系統(tǒng)模型的建立。(X)

      9.容錯(cuò)就是每個(gè)程序采用兩種不同的算法編寫。(X)

      10.軟件測(cè)試的目的是為了無一遺漏的找出所有的錯(cuò)誤。(X)

      四、名詞解釋題(本大題共5小題,每小題3分,共15分)

      31.軟件開發(fā)環(huán)境

      32.錯(cuò)誤推測(cè)法

      33.黑盒測(cè)試法

      34.軟件質(zhì)量保證

      35.瀑布模型 31.經(jīng)濟(jì)可行性

      解:進(jìn)行開發(fā)成本的估算以及了解取得效益的評(píng)估,確定要開發(fā)的項(xiàng)目是否值得投資開發(fā)。

      [解析]對(duì)于一個(gè)系統(tǒng)所必須要衡量的是經(jīng)濟(jì)上是否合算,經(jīng)濟(jì)可行性的范圍很廣,包括效益分析、潛在市場(chǎng)前景等。

      32.社會(huì)可行性

      解:要開發(fā)的項(xiàng)目是否存在任何侵犯、妨礙等責(zé)任問題,要開發(fā)項(xiàng)目目的運(yùn)行方式在用戶組織內(nèi)是否行得通,現(xiàn)有管理制度、人員素質(zhì)、操作方式是否可行。

      [解析]社會(huì)可行性包括合同、責(zé)任、侵權(quán)等技術(shù)人員不甚了解的諸多問題。

      33.投資回收期

      解:投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需的時(shí)間。

      [解析]通常我們用投資回收期來衡量一個(gè)開發(fā)項(xiàng)目的價(jià)值,投資回收期越短,就越快獲得利潤(rùn)。

      34.對(duì)應(yīng)關(guān)系

      解:即有直接因果關(guān)系在程序中可以同時(shí)處理。

      [解析]對(duì)應(yīng)關(guān)系是指數(shù)據(jù)單元在數(shù)據(jù)內(nèi)容上、數(shù)量上和順序上有直接的因果關(guān)系,對(duì)于重復(fù)的數(shù)據(jù)單元,重復(fù)的次序和次數(shù)都相同才有對(duì)應(yīng)關(guān)系。

      35.結(jié)構(gòu)沖突

      解:輸入數(shù)據(jù)與輸出數(shù)據(jù)結(jié)構(gòu)找不到對(duì)應(yīng)關(guān)系的情況,稱為結(jié)構(gòu)沖突。

      [解析]使用JSP方法時(shí)會(huì)遇到此類結(jié)構(gòu)沖突問題,對(duì)此,Jackson提出了引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件的辦法,將沖突部分分隔開來,建立多個(gè)程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個(gè)系統(tǒng)的整體。

      五、圖 a 中,模塊 G 為判定,判斷涉及到模塊 B、F、G,請(qǐng)指出設(shè)計(jì)中的錯(cuò)誤,再根據(jù) 改進(jìn)模 塊圖的基本原則,畫出 1~2 個(gè)改進(jìn)方案(不改變模塊 G 的判斷關(guān)系),并說明是按照

      哪條基本 原則進(jìn)行改進(jìn)的。

      解:圖 b 為一個(gè)改進(jìn)方案,將模塊 G 的位置提高,使其作用范圍為控制范圍的子集,減 少模塊 之間的聯(lián)系。

      40.請(qǐng)使用PAD圖和PDL語言描述在數(shù)組A(1)~A(10)中找最大數(shù)的算法。

      解:PDL語言:

      N=1

      WHILE N<=10 DO

      IF A(N)<=A(N+1)MAX =A(N+1);

      ELSE MAX =A(N)ENDIF;

      N=N+1;

      ENDWHILE;

      PAD圖:

      [解析]人工查找時(shí),是從第一個(gè)元素開始查找,用當(dāng)前元素與下一個(gè)元素比較,將較大者作為當(dāng)前元素又與下一元素比較,如此循環(huán),直到數(shù)組末尾。

      41.根據(jù)下列條件使用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例。

      某一8位微機(jī),其八進(jìn)制常數(shù)定義為:以零開頭的數(shù)是八進(jìn)制整數(shù),其值的范圍是-177~177,如05,0127,-065

      解:(1)劃分等價(jià)類并編號(hào),如下表示:(4分)

      (2)為合理等價(jià)類設(shè)計(jì)測(cè)試用例,表中有兩個(gè)合理等價(jià)類,設(shè)計(jì)兩個(gè)例子(2分)

      (3)為不合理等價(jià)類測(cè)試用例,至少設(shè)計(jì)一個(gè)測(cè)試用例(2分)

      [解析]等價(jià)類劃分屬于黑盒測(cè)試的一種,它將輸入數(shù)據(jù)域按有效的或無效的劃分成若干個(gè)等價(jià)類,測(cè)試每個(gè)等價(jià)類的代表值就等于對(duì)該類其他值的測(cè)試,這樣用少量有代表性的例子代替大量測(cè)試目的相同的例子,可以有效提高測(cè)試效率。本題劃分了3個(gè)合理等價(jià)類,9個(gè)不合理等價(jià)類進(jìn)行測(cè)試,取到了預(yù)期的效果。

      42.某電器集團(tuán)公司下屬的廠包括技術(shù)科、生產(chǎn)科等基層單位?,F(xiàn)在想建立一個(gè)計(jì)算機(jī)輔助企業(yè)管理系統(tǒng),其中:

      生產(chǎn)科的任務(wù)是:

      (1)根據(jù)銷售公司轉(zhuǎn)來的內(nèi)部合同(產(chǎn)品型號(hào)、規(guī)格、數(shù)量、交獲日期)制定車間月生產(chǎn)計(jì)劃。

      (2)根據(jù)車間實(shí)際生產(chǎn)日?qǐng)?bào)表、周報(bào)表調(diào)整月生產(chǎn)計(jì)劃

      (3)以月生產(chǎn)計(jì)劃為以及,制定產(chǎn)品設(shè)計(jì)(結(jié)構(gòu)、工藝)及產(chǎn)品組裝月計(jì)劃。

      (4)將產(chǎn)品的組裝計(jì)劃傳達(dá)到各科,將組裝月計(jì)劃分解為周計(jì)劃,下達(dá)給車間

      技術(shù)科的任務(wù)是:

      (1)根據(jù)生產(chǎn)科轉(zhuǎn)來的組裝計(jì)劃進(jìn)行產(chǎn)品結(jié)構(gòu)設(shè)計(jì),產(chǎn)生產(chǎn)品裝配圖給生產(chǎn)科,產(chǎn)生外購(gòu)需求計(jì)劃給供應(yīng)科,并產(chǎn)生產(chǎn)品自制物料清單。

      (2)根據(jù)組裝計(jì)劃進(jìn)行產(chǎn)品工藝設(shè)計(jì),根據(jù)產(chǎn)品自制物料清單產(chǎn)生工藝流程圖給零件廠。試寫出以上系統(tǒng)中生產(chǎn)科和技術(shù)科處理的軟件結(jié)構(gòu)圖。

      解:

      畫出生產(chǎn)科圖的給6分,畫出技術(shù)科的給4分。

      [解析]軟件結(jié)構(gòu)圖是軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個(gè)系統(tǒng)的功能實(shí)現(xiàn),即將來程序的控制層次體系,軟件結(jié)構(gòu)往往用樹狀或網(wǎng)狀結(jié)構(gòu)的圖形來表示,其主要內(nèi)容有模塊及模塊的控制關(guān)系,根據(jù)題意,可繪制出生產(chǎn)科和技術(shù)科的軟件結(jié)構(gòu)圖,其中生產(chǎn)科的結(jié)構(gòu)圖深度和寬度均為4,技術(shù)科的結(jié)構(gòu)圖的深度和寬度均為3。

      第五篇:軟件工程導(dǎo)論復(fù)習(xí)整理(最新)

      第一章

      1..軟件危機(jī):在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。

      2.軟件與硬件的區(qū)別:軟件不同于硬件,它是計(jì)算機(jī)系統(tǒng)中的邏輯部件而不是物理部件。

      3.軟件:程序、數(shù)據(jù)及相關(guān)文檔的完整集合。

      4.軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科,采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到最好的技術(shù)方法結(jié)合起來,以經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟件并有校地維護(hù)它。

      5.軟件工程方法學(xué)三要素:方法、工具和過程。

      6.傳統(tǒng)方法學(xué)也稱為生命周期方法學(xué)或結(jié)構(gòu)化范型。它采用結(jié)構(gòu)化技術(shù)來完成軟件開發(fā)的各項(xiàng)任務(wù),并使用適當(dāng)?shù)能浖ぞ呋蜍浖こ汰h(huán)境來支持結(jié)構(gòu)化技術(shù)的運(yùn)用。

      7.面向?qū)ο蠓椒▽W(xué)把數(shù)據(jù)和行為看成同等重要的,它是一種以數(shù)據(jù)為主線,把數(shù)據(jù)和對(duì)數(shù)據(jù)的操作緊密地結(jié)合起來的方法。

      8.軟件生命周期劃分為三個(gè)時(shí)期:1軟件定義(問題定義、可行性研究、需求分析),2軟件開發(fā)(總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和單元測(cè)試、綜合測(cè)試),3運(yùn)行維護(hù)(軟件維護(hù))。

      9.4類軟件維護(hù)活動(dòng):改正性維護(hù),也就是診斷和改正在使用過程中發(fā)現(xiàn)的軟件錯(cuò)誤;適應(yīng)性維護(hù),即修改軟件以適應(yīng)環(huán)境的變化;完善性維護(hù),即根據(jù)用戶的要求改進(jìn)或擴(kuò)充軟件使它更完善;預(yù)防性維護(hù),即修改軟件,為將來的維護(hù)活動(dòng)預(yù)先做準(zhǔn)備。

      10.“瀑布模型”的缺點(diǎn):它是由文檔驅(qū)動(dòng)的,僅僅通過寫在紙上的靜態(tài)的規(guī)格說明,很難全面正確地認(rèn)識(shí)動(dòng)態(tài)的軟件產(chǎn)品;瀑布模型幾乎完全依賴于書面的規(guī)格說明,很可能導(dǎo)致最終開發(fā)出的產(chǎn)品不能真正的滿足用戶的需要。

      11.快速原型模型的優(yōu)點(diǎn):原型系統(tǒng)已經(jīng)通過與用戶交互而得到驗(yàn)證,據(jù)此產(chǎn)生的規(guī)格說明文檔正確地描述了用戶需求;開發(fā)人員通過建立原型系統(tǒng)已經(jīng)學(xué)到了很多東西,因此,在設(shè)計(jì)和編碼階段發(fā)生錯(cuò)誤的可能性也比較小,這自然減少了在后續(xù)階段需要改正前面階段所犯錯(cuò)誤的可能性。

      第二章 1.可行性研究的三個(gè)方面:技術(shù)可行性:使用現(xiàn)有的技術(shù)能實(shí)現(xiàn)這個(gè)系統(tǒng)經(jīng)濟(jì)可行性:這個(gè)系統(tǒng)的經(jīng)濟(jì)效益能超過它的開發(fā)成本操作可行性:系統(tǒng)的操作方式在這個(gè)用戶組織內(nèi)行得通

      2.數(shù)據(jù)流圖的4個(gè)基本符號(hào)及畫法P41

      3.數(shù)據(jù)字典:是關(guān)于數(shù)據(jù)的信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。

      4.符號(hào)含義:=表示“等價(jià)于”或“定義為”;+表示連接;[ ]表示“或”,用“|”分隔;{ }表示“重復(fù)”,()表示“可選”用“,”號(hào)隔開;1{A}5 表示上限和下限。

      5.高校電話號(hào)碼數(shù)據(jù)的定義P54

      第三章

      1.需求分析3種模型:數(shù)據(jù)模型:實(shí)體-聯(lián)系圖,描繪數(shù)據(jù)對(duì)象及數(shù)據(jù)對(duì)象之間的關(guān)系;功能模型:數(shù)據(jù)流圖,描繪當(dāng)數(shù)據(jù)在軟件系統(tǒng)中移動(dòng)時(shí)被變換的邏輯過程;行為模型:狀態(tài)轉(zhuǎn)換圖,指明了作為外部事件結(jié)果的系統(tǒng)行為,描繪了系統(tǒng)的各種行為模式。

      2.ER圖3種基本成分:實(shí)體(數(shù)據(jù)對(duì)象),關(guān)系,屬性。P64

      3.軟件需求驗(yàn)證的四個(gè)方面:一致性,完整性,現(xiàn)實(shí)性,有效性。

      第四章

      1.總體設(shè)計(jì)2個(gè)主要階段:系統(tǒng)設(shè)計(jì)階段,確定系統(tǒng)的具體實(shí)現(xiàn)方案;結(jié)構(gòu)設(shè)計(jì)階段,確定軟件結(jié)構(gòu)。

      2.信息隱藏:設(shè)計(jì)和確定模塊,使得一個(gè)模塊內(nèi)包含的特定信息,對(duì)于不需要這些信息的模塊來說,是不能訪問的。

      3.模塊獨(dú)立2個(gè)度量標(biāo)準(zhǔn):內(nèi)聚和耦合。耦合衡量不同模塊彼此間互相依賴(連接)的緊密程度;內(nèi)聚衡量一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度。4.耦合與內(nèi)聚判定P98-99

      5.深度:表示軟件結(jié)構(gòu)中控制的層數(shù),它往往粗略的標(biāo)志一個(gè)系統(tǒng)的大小和復(fù)雜程度,深度和程序長(zhǎng)度之間應(yīng)該有粗略的對(duì)應(yīng)關(guān)系;寬度:是軟件結(jié)構(gòu)內(nèi)同一層次上的模塊總數(shù)的最大值;扇出:是一個(gè)模塊直接控制(調(diào)用)的模塊數(shù)目;扇入:表明一個(gè)模塊有多少上級(jí)模塊直接調(diào)用它

      6.P100 模塊的作用域和模塊的控制域之間的關(guān)系:模塊的作用域定義為受該模塊內(nèi)一個(gè)判定影響的所有模塊的集合;模塊的控制域是這個(gè)模塊本身以及所有直接或間接從屬于它的模塊的集合;模塊的作用域應(yīng)該在控制域之內(nèi)(在設(shè)計(jì)的很好的系統(tǒng)中,所有受判定影響的模塊應(yīng)該都從屬于做出判定的那個(gè)模塊,最好局限于做出判定的那個(gè)模塊本身以及它的直屬下級(jí)模塊)。

      6.層次圖,結(jié)構(gòu)圖P10

      2第六章

      1.結(jié)構(gòu)程序設(shè)計(jì)定義:如果一個(gè)程序的代碼塊僅僅通過順序、選擇和循環(huán)這3種基本控制結(jié)構(gòu)進(jìn)行連接,并且每一個(gè)代碼塊只有一個(gè)入口和一個(gè)出口,則稱這個(gè)程序是結(jié)構(gòu)化的。

      2.P124 過程設(shè)計(jì)的工具:程序流程圖、盒圖、PAD圖、判定表、判定樹、過程設(shè)計(jì)語言。

      3.畫出偽碼程序的程序流程圖和盒圖 P1

      41第七章

      1.軟件測(cè)試在軟件生命周期中橫跨兩個(gè)階段:?jiǎn)卧獪y(cè)試:模塊的編寫者和測(cè)試者是同一個(gè)人,編碼和單元測(cè)試屬于軟件生命周期的同一個(gè)階段;綜合測(cè)試:由專門的測(cè)試人員承擔(dān)這項(xiàng)工作。

      2.為什么軟件測(cè)試不能由程序的編寫人員來做?

      (1)測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程。

      (2)正確認(rèn)識(shí)測(cè)試的目標(biāo)是十分重要的,測(cè)試目標(biāo)決定了測(cè)試力案的設(shè)計(jì)。如果為了表明程序是正確的而進(jìn)行測(cè)試,就會(huì)設(shè)計(jì)一些不易暴露錯(cuò)誤的測(cè)試方案;相反,如果測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤,就會(huì)力求設(shè)計(jì)出最能暴露錯(cuò)誤的測(cè)試方案。

      (3)由于測(cè)試的目標(biāo)是暴露程序中的錯(cuò)誤,從心理學(xué)角度看,由程序的編寫者自己進(jìn)行測(cè)試是不恰當(dāng)?shù)摹?/p>

      3.測(cè)試方法:(1)黑盒測(cè)試 :把程序看作一個(gè)黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程 ;對(duì)程序接口進(jìn)行測(cè)試,檢查程序功能是否能按規(guī)格說明書的規(guī)定正常使用; 程序是否能適當(dāng)?shù)亟邮茌斎霐?shù)據(jù)并產(chǎn)生正確的輸出信息; 程序運(yùn)行過程中能否保持外部信息的完整性

      (2)白盒測(cè)試 :把程序堪稱裝在一個(gè)透明的白盒子里,測(cè)試者完全知道程序的結(jié)構(gòu)處理算法 ;按照程序內(nèi)部的邏輯測(cè)試程序,檢測(cè)程序中的主要執(zhí)行通路是否都能按 預(yù)定要求正確工作。

      4.測(cè)試步驟:模塊測(cè)試,子系統(tǒng)測(cè)試,系統(tǒng)測(cè)試,驗(yàn)收測(cè)試,平行運(yùn)行。P151

      5.集成測(cè)試是測(cè)試和組裝軟件的系統(tǒng)化技術(shù),即是在把模塊按照設(shè)計(jì)要求組裝起來的同時(shí)進(jìn)行測(cè)試,由模塊組裝成程序時(shí)兩種方法:非漸增式測(cè)試方法和漸增式測(cè)試方法。

      6.P162 邏輯覆蓋標(biāo)準(zhǔn):語句覆蓋,判定覆蓋,條件覆蓋,判定條件覆蓋,條件組合覆蓋,(還有點(diǎn)覆蓋,邊覆蓋,路徑覆蓋)。

      7.設(shè)計(jì)測(cè)試用例:P16

      2第八章

      1.軟件維護(hù):在軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或者滿足新的需要而修改軟件的過程。

      2.維護(hù)工作量的一個(gè)模型: M = P + K × exp(c-d)其中: M是維護(hù)用的總工作量,P是生產(chǎn)性工作量,K是經(jīng)驗(yàn)常數(shù),c是復(fù)雜程度d是維護(hù)人員對(duì)軟件的熟悉程度。exp,以自然對(duì)數(shù)e為底指數(shù)函數(shù),Exponential(指數(shù)曲線)。

      3.軟件可維護(hù)性與哪些因素有關(guān)?在軟件開發(fā)過程中應(yīng)該采取哪些措施來提高軟件產(chǎn)品可維護(hù)性?

      答:軟件的可理解性、可測(cè)試性、可修改性、可移植性 和可重用性是決定軟件可維護(hù)下的基本因素。

      軟件生命周期每個(gè)階段的工作都和軟件可維護(hù)性有密切關(guān)系。良好的設(shè)計(jì),完整準(zhǔn)確易讀易理解的文檔資料,以及一系列嚴(yán)格的復(fù)審和測(cè)試,使得一旦發(fā)現(xiàn)錯(cuò)誤時(shí)比較容易診斷和糾正,當(dāng)用戶有新要求或外部環(huán)境變化時(shí)軟件能較容易地適應(yīng),并且能夠減少維護(hù)引入的錯(cuò)誤。因此,在軟件生命周期的每個(gè)階段都必須充分考慮維護(hù)問題,并且為軟件維護(hù)預(yù)做準(zhǔn)備。

      第九章

      1.面向?qū)ο蟮母拍睿簩?duì)象,類,實(shí)例,消息,方法,屬性,封裝,繼承,多態(tài)性P209-215 對(duì)象:是封裝了數(shù)據(jù)結(jié)構(gòu)及可以施加在這些數(shù)據(jù)結(jié)構(gòu)上的操作的封裝體(類的實(shí)例)類:是對(duì)具有相同屬性和行為的一個(gè)或多個(gè)對(duì)象的描述(支持繼承的抽象數(shù)據(jù)類型)實(shí)例:是由某個(gè)特定的類所描述的一個(gè)具體的對(duì)象

      消息:就是要求某個(gè)對(duì)象執(zhí)行在定義它的那個(gè)類中所定義的某個(gè)操作的規(guī)格說明。由3部分組成:接收消息的對(duì)象,消息選擇符,零個(gè)或多個(gè)變?cè)?/p>

      方法:是對(duì)象所能執(zhí)行的操作,描述了對(duì)象執(zhí)行操作的算法,響應(yīng)消息的方法

      屬性:類中所定義的數(shù)據(jù),對(duì)客觀世界實(shí)體所具有的性質(zhì)的抽象

      封?。壕褪切畔㈦[藏,通過封裝對(duì)外界隱藏了對(duì)象的實(shí)現(xiàn)細(xì)節(jié)

      繼承:子類自動(dòng)地共享基類中定義的數(shù)據(jù)和方法的機(jī)制

      多態(tài)性:指子類對(duì)象可以像父類對(duì)象那樣使用,同樣的消息既可以發(fā)送給父類對(duì)象也可以發(fā)送給子類對(duì)象

      2.面向?qū)ο蠼#好枋鱿到y(tǒng)數(shù)據(jù)結(jié)構(gòu)的對(duì)象模型,描述系統(tǒng)控制結(jié)構(gòu)的動(dòng)態(tài)模型,描述系統(tǒng)功能的功能模型。類名

      3.對(duì)象模型:P217 屬性類圖符號(hào):服務(wù)

      4.表示關(guān)系的符號(hào):類與類之間通常有關(guān)聯(lián)、泛化(繼承)、依賴和細(xì)化等4種關(guān)系關(guān)聯(lián):表示倆個(gè)類的對(duì)象之間存在某種語義上的聯(lián)系

      泛化:是通用元素和具體元素之間的一種分類關(guān)系

      依賴:描述倆個(gè)模型元素(類,用例等)之間的語義連接關(guān)系

      細(xì)化:用來協(xié)調(diào)不同階段模型之間的關(guān)系,表示各個(gè)開發(fā)階段不同抽象層次的模型之間的相關(guān)性,常常用于跟蹤模型的演變。

      5.功能模型:用例圖包含的模型元素有系統(tǒng)、行為者、用例及用例之間的關(guān)系P224

      第十章

      1.面向?qū)ο蠓治?,就是抽取和整理用戶需求并建立問題域精確模型的過程

      2.建立對(duì)象模型、動(dòng)態(tài)模型、功能模型的基本方法P235-255

      下載《軟件工程導(dǎo)論》講稿word格式文檔
      下載《軟件工程導(dǎo)論》講稿.doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        軟件工程導(dǎo)論總結(jié)報(bào)告[最終定稿]

        軟件工程總結(jié)報(bào)告 序言 本期軟件工程專業(yè)導(dǎo)論課程結(jié)束后,為圓滿完結(jié)本期此課程的學(xué)習(xí),特此總結(jié)個(gè)人學(xué)習(xí)所得以求些許回報(bào)先生無私教導(dǎo)。 主體 第一節(jié)課主要講述了軟件工程各領(lǐng)......

        軟件工程導(dǎo)論復(fù)習(xí)材料

        1. 軟件工程基本概念 1. ( )因素促使計(jì)算機(jī)系統(tǒng)越來越復(fù)雜。 A. 計(jì)算機(jī)內(nèi)存和存儲(chǔ)容量上的巨大增長(zhǎng)B. 外部輸入/輸出選項(xiàng)的更加多樣性C. 計(jì)算機(jī)體系結(jié)構(gòu)方面的深刻變化D. 以上......

        教案軟件工程導(dǎo)論

        授課日期: 11月13日課程名稱: 軟件工程導(dǎo)論教學(xué)目的:讓學(xué)生了解軟件以及軟件危機(jī)的概念 了解軟件危機(jī)出現(xiàn)的原因以及解決途徑 熟悉軟件工程產(chǎn)生的原因以及其生命周期各個(gè)階段的......

        軟件工程導(dǎo)論教案

        計(jì)算機(jī)系統(tǒng)發(fā)展迅速,但是人們?nèi)匀粵]有徹底擺脫“軟件危機(jī)”的困擾,軟件已經(jīng)成為限制計(jì)算機(jī)系統(tǒng)發(fā)展的瓶頸。計(jì)算機(jī)軟件工程學(xué)就是為了研究如何消除軟件危機(jī)而發(fā)展起來的。那么......

        軟件工程導(dǎo)論期末試題

        軟件工程導(dǎo)論期末考試試題 一.選擇(20分) 1、瀑布模型把軟件生命周期劃分為八個(gè)階段:?jiǎn)栴}的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試和運(yùn)行、維護(hù)......

        軟件工程導(dǎo)論試題(打印)

        軟件工程導(dǎo)論試題(老師給的) 一.選擇 1、瀑布模型把軟件生命周期劃分為八個(gè)階段:?jiǎn)栴}的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試和運(yùn)行、維護(hù)。八......

        軟件工程導(dǎo)論試題(打印)

        軟件工程導(dǎo)論試題(老師給的) 一.選擇 1、瀑布模型把軟件生命周期劃分為八個(gè)階段:?jiǎn)栴}的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試和運(yùn)行、維護(hù)。八......

        《軟件工程導(dǎo)論》《軟件工程》課程設(shè)計(jì)指導(dǎo)書

        《軟件工程導(dǎo)論》《軟件工程》課程設(shè)計(jì)指導(dǎo)書 課程代號(hào):31110630,31110510 總學(xué)時(shí)(或周數(shù)):1周 適用專業(yè):軟件工程,計(jì)算機(jī)科學(xué)與技術(shù) 先修課程:程序設(shè)計(jì)語言、數(shù)據(jù)結(jié)構(gòu)、離散數(shù)學(xué)等......