【正文】
圖中幾個(gè) 輸入(或輸出)數(shù)據(jù)流,但子圖中這幾個(gè)數(shù)據(jù)流中的數(shù)據(jù)項(xiàng)合起來正好是父圖中的那個(gè)數(shù)據(jù)流,這時(shí)它們還算是平衡的。為表示每個(gè)數(shù)據(jù)對象和控制項(xiàng)的特性,建立了數(shù)據(jù)詞典。軟件開發(fā)人員遵循嚴(yán)格的規(guī)范,在每一階段工作結(jié)束時(shí)都要進(jìn)行嚴(yán)格的階段評(píng)審和確認(rèn),以得到該階段的一致、完整、正確和無歧義性的文檔資料,并以它們做為下一階段工作的基礎(chǔ)。盡管在傳統(tǒng)軟件生存期管理中通過加強(qiáng)評(píng)審和確認(rèn),全面測試,甚至依靠維護(hù)階段能夠緩解上述問題,但不能從根本上解決這些問題。通過原型演示,用戶可以親身體驗(yàn)早期的開發(fā)過程,獲得關(guān)于計(jì)算機(jī)和被開發(fā)系統(tǒng)的專門知識(shí)。 ①快速分析 :在分析者和用戶的緊密配合下,快速確定軟件系統(tǒng)的基本要求。在一次次的迭代過程中不斷將原型完善,以接近系統(tǒng)的最終要求。答:原型的開發(fā)和使用過程叫做原型生存期。由于這種方法能在早期就明確了用戶的要求,因此可防止以后由于不能滿足用戶要求而造成的返工,從而避免了不必要的經(jīng)濟(jì)損失,縮短了開發(fā)周期。隨著開發(fā)工作向前推進(jìn),用戶可能會(huì)產(chǎn)生新的要求,或因環(huán)境變化,要求系統(tǒng)也能隨之變化;開發(fā)人員又可能在設(shè)計(jì)與實(shí)現(xiàn)的過程中遇到一些沒有預(yù)料到的實(shí)際困難,需要以改變需求來解脫困境。1傳統(tǒng)的軟件開發(fā)模型的缺陷是什么?原型化方法的類型有哪些?原型開發(fā)模型的主要優(yōu)點(diǎn)是什么?答:傳統(tǒng)軟件生存期范型的典型代表是“瀑布模型”。根據(jù)定義,給定程序的C?E網(wǎng)如下: 數(shù)據(jù)詞典的作用是什么?它有哪些基本詞條?答:分析模型中包含了對數(shù)據(jù)對象、功能和控制的表示。⑤保持父圖與子圖的平衡。應(yīng)注意的問題:①適當(dāng)?shù)貫閿?shù)據(jù)流、加工、文件、數(shù)據(jù)的源?匯點(diǎn)命名。因?yàn)榇蠖鄶?shù)需求都是以自然語言描述,存在敘述的歧義性問題,造成遺漏和誤解。 使用多個(gè)視圖,建立系統(tǒng)的數(shù)據(jù)、功能和行為模型。如果問題沒有很好理解就急于求成,常常會(huì)產(chǎn)生一個(gè)解決錯(cuò)誤問題的完美的軟件。 必須對描述信息、功能和行為的模型進(jìn)行分解,能夠以層次方式揭示其細(xì)節(jié)。而沒有信息結(jié)構(gòu)的系統(tǒng)是沒有信息的系統(tǒng),這樣的系統(tǒng)不是計(jì)算機(jī)能夠處理的系統(tǒng)。最后給出結(jié)論意見。(6) 具有良好的書面和口頭交流表達(dá)能力。答:系統(tǒng)分析員處在用戶和高級(jí)程序員之間,負(fù)責(zé)溝通用戶和開發(fā)人員的認(rèn)識(shí)和見解,起著橋梁的作用。所以當(dāng)前系統(tǒng)的邏輯模型是從當(dāng)前系統(tǒng)的物理模型抽象出來的。 對數(shù)據(jù)進(jìn)行變換就是程序所表現(xiàn)的功能。 Petri網(wǎng)主要用于描述相互獨(dú)立,協(xié)同操作的處理系統(tǒng),即( E )的處理系統(tǒng)。該文檔在軟件開發(fā)中具有重要的作用,但其作用不應(yīng)當(dāng)包括( E )。A. 必須一致 B. 數(shù)目必須相等C. 名字必須相同D. 數(shù)目必須不等1在數(shù)據(jù)流圖的基本圖形符號(hào)中,加工是以信息結(jié)構(gòu)或B作為加工對象的。 B. 階段性報(bào)告C. 需求分析評(píng)審D. 以上答案都不正確各種需求分析方法都有它們共同適用的D。解決一個(gè)復(fù)雜的問題,往往采取的策略是分解。供選擇的答案:A. ② B. ④ C. ⑥ D. ② E. ③ F. ⑤ G. ④ H. ① I. ④A~C.①編碼 ②制定計(jì)劃 ③開發(fā) ④指導(dǎo)⑤ 測試 ⑥檢驗(yàn)D~H.①軟件工作滲透了人的因素 ②智力密集,可見性差 ③單件生產(chǎn) ④使用方法繁瑣,維護(hù)困難 ⑤勞動(dòng)密集,自動(dòng)化程度低 I.① 設(shè)計(jì) ②維護(hù) ③測試 ④管理 ⑤實(shí)踐 ⑥指導(dǎo) ⑦審核 ⑧分析18從供選擇的答案中選出與下列有關(guān)軟件項(xiàng)目組織敘述相對應(yīng)的正確答案,將其編號(hào)填入到相應(yīng)的括弧A )、( B )和( C )。A. ③ B. ② C. ① D. ② E. ③ F. ② G. ④供選擇的答案:A.①分配 ②管理 ③接口 ④協(xié)作 B,C. ①降低 ②增加 ③不變D.①n(n+1)/2 ②n(n1)/2 ③n(n1)(n2)/6 ④n2/2E,F. ①4875 ②4375 ③4625 ④5735 G.①8~15 ②1~2 ③2~5 ④2~81從供選擇的答案中選出與下列有關(guān)軟件進(jìn)度管理敘述相對應(yīng)的正確答案,將其編號(hào)填入到相應(yīng)的括軟件項(xiàng)目的進(jìn)度管理有許多方法,但( A )不是常用的進(jìn)度控制圖示方法。各階段所需不同層次的技術(shù)人員大致是( D ),而管理人員在各階段所需數(shù)量也不同,相對而言大致是( E )。在風(fēng)險(xiǎn)評(píng)價(jià)時(shí),應(yīng)當(dāng)建立一個(gè)三元組:[ ri, li, xi ],ri是風(fēng)險(xiǎn)描述,li是( D ),而xi是風(fēng)險(xiǎn)的影響。 A. ④, B. ②, C. ③則該系統(tǒng)的純收入是( A ),投資回收期是( B ),投資回收率為( C )。把待開發(fā) 的軟件細(xì)分,直到每一個(gè)子任務(wù)都已經(jīng)明確所需要的開發(fā)工作量,然后把它們加起來,得到軟件開發(fā)總工作量的方法稱為( D )估算法。而定義完成一個(gè)軟件項(xiàng)目(或軟件任務(wù))所需的( A )為( B ),其度量單位是人月/項(xiàng)目(任務(wù)),記作PM(人月)。供選擇的答案:A. ③, B. ⑦, C. ⑤, D. ①, E. ②, F. ①, G. ②, H. ③。項(xiàng)目的復(fù)雜性越高,規(guī)模越大,開發(fā)工作量( B ),估算的( A )就( C )。軟件產(chǎn)品的( A 1 )包括產(chǎn)生的代碼行數(shù)、執(zhí)行速度等。則組中每人的生產(chǎn)率降低為CA. 4200 B. 4350 C. 4675 D. 43752PERT技術(shù)叫做 B技術(shù),它是采用網(wǎng)絡(luò)圖來描述一個(gè)項(xiàng)目的任務(wù)網(wǎng)絡(luò),安排開發(fā)進(jìn)度,制定軟件開發(fā)計(jì)劃的最常用的方法。A. 分解 B. 類推C. 推導(dǎo) D. 評(píng)估1系統(tǒng)的經(jīng)濟(jì)效益B因使用新系統(tǒng)而增加的收入加上使用新系統(tǒng)可以節(jié)省的運(yùn)行費(fèi)用。 這個(gè)時(shí)間包括開始分析變更要求、設(shè)計(jì)合適的修改、實(shí)現(xiàn)變更并測試它、以及把這種變更發(fā)送給所有的用戶。二、選擇題所有的軟件開發(fā)都可以看成是一個(gè)問題B過程。一是估價(jià)與風(fēng)險(xiǎn)相關(guān)的問題出現(xiàn)后將會(huì)產(chǎn)生的結(jié)果。軟件項(xiàng)目計(jì)劃的第二個(gè)任務(wù)是對完成該軟件項(xiàng)目所需的資源進(jìn)行估算。 軟件過程是軟件生存期中的一系列相關(guān)工程活動(dòng)集合。必須不斷地靈活地改進(jìn)軟件工程過程,積極主動(dòng)地采用新的軟件技術(shù),注意不斷總結(jié)經(jīng)驗(yàn)。為了提高軟件開發(fā)過程的可見性,有效地進(jìn)行管理,應(yīng)當(dāng)根據(jù)軟件開發(fā)項(xiàng)目的總目標(biāo)及完成期限,規(guī)定開發(fā)組織的責(zé)任和產(chǎn)品標(biāo)準(zhǔn),使得工作結(jié)果能夠得到清楚的審查。其中主要是實(shí)施基線配置管理。 堅(jiān)持進(jìn)行階段評(píng)審。 可驗(yàn)證性 : 開發(fā)大型的軟件系統(tǒng)需要對系統(tǒng)自頂向下、逐層分解。 確定性 : 軟件開發(fā)過程中所有概念的表達(dá)應(yīng)是確定的、無歧義性的、規(guī)范的。 信息隱蔽 : 遵循信息封裝,使用與實(shí)現(xiàn)分離的原則,將模塊設(shè)計(jì)成“黑箱”,可以將實(shí)現(xiàn)的細(xì)節(jié)隱藏在模塊內(nèi)部,使用者只能通過模塊接口訪問模塊中封裝的數(shù)據(jù)。軟件工程的基本目標(biāo)有哪些?試說明它們之間的關(guān)系。螺旋模型將開發(fā)過程分為幾個(gè)螺旋周期,每個(gè)螺旋周期大致和瀑布模型相吻合。 長期在原型環(huán)境下開發(fā),只注意得到令人滿意的原型,容易“遺忘”用戶環(huán)境與實(shí)際客戶環(huán)境之間的差別。演化模型的優(yōu)點(diǎn)是:試說明演化模型軟件開發(fā)方法的基本過程,比較它的優(yōu)點(diǎn)和缺點(diǎn)。答:瀑布模型規(guī)定了各項(xiàng)軟件工程活動(dòng),包括:制定軟件項(xiàng)目計(jì)劃,進(jìn)行需求分析和定義,軟件設(shè)計(jì),程序編碼,測試及運(yùn)行維護(hù)。應(yīng)當(dāng)就風(fēng)格及清晰性對代碼進(jìn)行評(píng)審,而且反過來應(yīng)能直接追溯到詳細(xì)設(shè)計(jì)描述??梢杂靡韵聝煞N方式中的一種對需求進(jìn)行分析和定義。 A (Action) : 軟件演進(jìn)。軟件工程過程有哪幾個(gè)基本過程活動(dòng)?試說明之。試比較軟件發(fā)展的三個(gè)時(shí)期的特點(diǎn),從軟件所指、軟件工作范圍、軟件開發(fā)組織、決定質(zhì)量的因素、開發(fā)技術(shù)和手段等幾個(gè)方面說明它們的差別。(2) 軟件的生產(chǎn)與硬件不同,它沒有明顯的制造過程。這一時(shí)期,與硬件費(fèi)用下降相反,軟件開發(fā)費(fèi)急劇上升。其中,(②)是按事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列。A. 需求分析B. 軟件設(shè)計(jì)C. 軟件測試D. 軟件運(yùn)行/維護(hù)在軟件生存期的模型中,D適合于大型軟件的開發(fā)它吸收了軟件工程中“演化”的概念。程序設(shè)計(jì)時(shí)代的生產(chǎn)方式是個(gè)體手工藝者,程序系統(tǒng)時(shí)代的生產(chǎn)方式是手工作坊,軟件工程時(shí)代的生產(chǎn)方式是工程化。軟件的發(fā)展,到現(xiàn)在為止,經(jīng)歷了三個(gè)階段:程序設(shè)計(jì)、程序系統(tǒng)和軟件工程。A. 可行性研究 B. 需求分析C. 軟件設(shè)計(jì)D. 程序編碼軟件生存期中時(shí)間最長的是D階段。A. 原則 B. 工具 C. 過程 D. 方法三、選擇填空題從供選擇的答案中選出與下列有關(guān)軟件需求分析敘述相對應(yīng)的正確答案,將其編號(hào)填入到相應(yīng)的括 軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括(②)、(⑦)及(⑤)的完整集合。第三階段(1960年代末~1970年代中期)稱為“程序設(shè)計(jì)方法時(shí)代”。它具有抽象性。(7) 軟件成本相當(dāng)昂貴。過程定義了方法使用的順序、要求交付的文檔資料、為保證質(zhì)量和協(xié)調(diào)變化所需要的管理、及軟件開發(fā)各個(gè)階段完成的里程碑。確認(rèn)軟件能夠完成客戶提出的要求;(2) 軟件需求分析和定義 :在這一步詳細(xì)定義分配給軟件的系統(tǒng)元素。(4) 程序編碼 :在設(shè)計(jì)完成之后,用一種適當(dāng)?shù)某绦蛟O(shè)計(jì)語言或CASE工具生成源程序。試論述瀑布模型軟件開發(fā)方法的基本過程,比較它的優(yōu)點(diǎn)和缺點(diǎn)。但無論上述哪一種情況都必須付出高額的代價(jià),并將為軟件開發(fā)帶來不必要的損失。這個(gè)過程是一個(gè)迭代的過程。 原型過快地收斂于需求集合,使得某些基本方面被忽視;及時(shí)對風(fēng)險(xiǎn)進(jìn)行識(shí)別、分析,采取對策,可消除或減少風(fēng)險(xiǎn)的損害。此外,螺旋模型是出現(xiàn)較晚的新模型,遠(yuǎn)不如瀑布模型普及,要讓廣大軟件人員和用戶充分肯定它,還有待于更多的實(shí)踐。但由于外界環(huán)境的變化或軟件工作范圍的變化,在軟件開發(fā)過程中改變需求又是難免的,不能硬性規(guī)定禁止客戶改變需求,只能依靠科學(xué)的產(chǎn)品變更控制技術(shù)來順應(yīng)需求的變更。軟件產(chǎn)品是看不見摸不著的邏輯產(chǎn)品。 不斷改進(jìn)開發(fā)過程。項(xiàng)目管理一、填空題要成功地完成軟件開發(fā)工作的一個(gè)主要的決定性因素是項(xiàng)目管理 。軟件范圍包括功能、性能、限制、接口和可靠性。一是估計(jì)一個(gè)風(fēng)險(xiǎn)發(fā)生的可能性。從宏觀上來看,可將風(fēng)險(xiǎn)分為項(xiàng)目風(fēng)險(xiǎn)、技術(shù)風(fēng)險(xiǎn)和商業(yè)風(fēng)險(xiǎn)。A. 算法 B. 計(jì)算誤差C. 程序復(fù)雜性 D. 效率對于軟件的D,有一種簡單的面向時(shí)間的度量,叫做平均變更等待時(shí)間MTTC(Mean Time To Change)。A. 分解 B. 類推C. 推導(dǎo) D. 評(píng)估1自底向上估算軟件成本的方法主要是把待開發(fā)軟件A,直到每一個(gè)子任務(wù)都已經(jīng)明確所需要的開發(fā)工作量,然后把它們加起來,得到軟件開發(fā)的總工作量。若4個(gè)人組成一個(gè)小組共同開發(fā)這個(gè)軟件,在每條通信路徑上耗費(fèi)的工作量是250行/人年。 A.④ B.③ C.⑥ D. ⑧ E. ② F. ⑤供選擇的答案:A~F.① 工程 ② 公共 ③ 活動(dòng) ④ 生存期 ⑤ 方法 ⑥ 工作任務(wù) ⑦ 功能 ⑧ 里程碑從供選擇的答案中選出與下列有關(guān)軟件項(xiàng)目管理敘述相對應(yīng)的正確答案,將其編號(hào)填入到相應(yīng)的括弧B. ⑥ C. ③ D. ② E. ④ F. ① G. ⑥ H. ⑤A~C. ①可見的 ②不可見的 ③“一次性”④“多次”⑤存在 ⑥不存在D~H.①進(jìn)度安排 ②度量 ③風(fēng)險(xiǎn)分析 ④估算 ⑤追蹤和控制 ⑥開發(fā)計(jì)劃從供選擇的答案中選出與下列有關(guān)軟件度量敘述相對應(yīng)的正確答案,將其編號(hào)填入到相應(yīng)的括弧A1 )和( B4 )。 A. ① B. ④ C. ④ D. ① E. ② F. ⑤ G. ⑦ H. ③③成本 ④生產(chǎn)率 F~H.①過程 ②對象 ③人 ④存取 ⑤規(guī)模 ⑥進(jìn)程 ⑦功能 ⑧數(shù)據(jù)從供選擇的答案中選出與下列有關(guān)軟件估算敘述相對應(yīng)的正確答案,將其編號(hào)填入到相應(yīng)的括弧A )。若計(jì)劃人員對每個(gè)功能分別按最佳的、可能的、悲觀的三種情況給出LOC或FP估計(jì)值,記作a, m, b,則LOC或FP 的期望值E的公式為(