摘要:系統(tǒng)架構(gòu)設(shè)計師考試屬于全國軟件水平考試中高級級別的考試。該文根據(jù)2009年11月網(wǎng)絡(luò)規(guī)劃設(shè)計師考試試題的情況,分析了考試的難點和重點。
關(guān)鍵詞:結(jié)構(gòu)分析;難點分析;資格和水平考試
中圖分類號:TP311文獻標(biāo)識碼:A文章編號:1009-3044(2009)35-10026-03
2009 System Planning Designer of the Second Half of the Examination
SHI You1, WANG Yong2
(1.Hunan Normal University, Changsha 410081, China; 2.Department of XiSai, Changsha 410081, China)
Abstract: In this paper, we analyze the examination of System Planning Designer held in November 2009. This examination consists of three parts that one part held in the morning and the others held in the afternoon. we also analyze the emphases and difficulties of the exam.
Key words: structure analysis; difficulty analysis; qualification and level test
今年系統(tǒng)架構(gòu)設(shè)計師首次開考,從考試試題來看,系統(tǒng)架構(gòu)設(shè)計師考試充分體現(xiàn)了“專業(yè)化”??荚囋囶}以系分試題為原型,并大幅提升了架構(gòu)方面試題的比例,保持了軟件工程與面向?qū)ο笤囶}比例,同時刪減了以數(shù)學(xué)為代表的很多基礎(chǔ)知識試題,使考查的知識點集中于“架構(gòu)設(shè)計”這一主題,本文將詳細(xì)分析本次考試的試題結(jié)構(gòu)。
1 信息系統(tǒng)綜合知識試題
2009年11月考試信息系統(tǒng)綜合知識試題考查的知識點分布如表1所示。
在本次考試中,上午試題具有以下幾個突出特點:1)專業(yè)化突出,架構(gòu)方面試題+軟件工程+面向?qū)ο笤囶}達到了44分;2)數(shù)學(xué)方面試題比例相對其它高級考試大幅降低,只考了2分。
2 系統(tǒng)架構(gòu)設(shè)計案例分析
系統(tǒng)架構(gòu)設(shè)計案例分析試題結(jié)構(gòu)沿襲系統(tǒng)分析師考試案例分析試題的風(fēng)格:試題一為必答題,試題二至試題四任選兩題作答。
試題一:
這是一道軟件質(zhì)量特性的試題,軟件質(zhì)量特性是軟件架構(gòu)以及軟件架構(gòu)設(shè)計師的一個重要關(guān)注點。因為如果在軟件架構(gòu)的設(shè)計階段不考慮軟件質(zhì)量特性,則產(chǎn)生的軟件質(zhì)量隱患是在后期的設(shè)計與開發(fā)中無法彌補的。所以在希賽教育的模擬試題中,有多道試題涉及到這個知識點。
軟件質(zhì)量特性主要包括:功能性、可靠性、易使用性、效率、可維護性、可移植性。而每個特性又包括了一些子特性,如表2所示。
解答試題第1問只需要了解質(zhì)量特性即可,但若要解答試題第2問,則需要進一步的了解每個質(zhì)量特性在開發(fā)中體現(xiàn)于哪些場景,或哪些需求對應(yīng)著哪些特性。這方面的內(nèi)容大家可以參看《系統(tǒng)架構(gòu)設(shè)計師教程(第2版)》8.2架構(gòu)需求與軟件質(zhì)量屬性,里面有詳細(xì)說明。
試題二:
這是一道流程圖與數(shù)據(jù)流圖的試題,主要考查系統(tǒng)流程圖與數(shù)據(jù)流圖的區(qū)別、以及數(shù)據(jù)流圖的基本應(yīng)用。這個試題對于以前參加過軟件設(shè)計師考試的考生而言就非常容易了。因為數(shù)據(jù)流圖是軟設(shè)考試當(dāng)中的必考題,每年都會考到,希賽教育出的全系列軟設(shè)輔導(dǎo)書籍對這個知識點都有詳細(xì)說明。
問題1主要考查系統(tǒng)流程圖與數(shù)據(jù)流圖的區(qū)別。
系統(tǒng)流程圖是描繪物理系統(tǒng)的傳統(tǒng)工具。它的基本思想是用圖形符號以黑盒子形式描繪系統(tǒng)里面的每個部件(程序、文件、數(shù)據(jù)庫、表格、人工過程等)。系統(tǒng)流程圖表達的是部件的信息流程,而不是表示對信息進行加工處理的控制過程。
數(shù)據(jù)流圖就是采用圖形方式來表達系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達工具及用于表示軟件模型的一種圖示方法。
問題2是找錯誤數(shù)據(jù)流以及根據(jù)低層數(shù)據(jù)流圖來畫高層數(shù)據(jù)流圖。這是軟件設(shè)計師的經(jīng)典考查形式。主要依據(jù)的原則是:數(shù)據(jù)平衡原則。這個平衡原則有兩方面的意思,一方面是分層數(shù)據(jù)流圖的數(shù)據(jù)平衡原則,另一方面每張數(shù)據(jù)流圖的數(shù)據(jù)平衡原則。更詳細(xì)的說明及問題3所提及的高級設(shè)計原則請參看《軟件設(shè)計師考試考點分析與真題詳解(最新版)》第18章 數(shù)據(jù)流圖設(shè)計的“數(shù)據(jù)流圖”和“系統(tǒng)流程圖”小節(jié)。
試題三:
這是一道嵌入式系統(tǒng)架構(gòu)試題,題目以宇航嵌入式設(shè)備的研制為背景??疾榛拒浖軜?gòu)以及嵌入式操作系統(tǒng)相關(guān)的一些知識。題目所述的項目中提出了一種新型的架構(gòu)TLS,由于是項目中提出的架構(gòu),大家必然對這種架構(gòu)感覺比較陌生,但從圖中,我們可以很明顯的看到,架構(gòu)是分層的結(jié)構(gòu)。這也就回到了我們熟悉的技術(shù)框架之內(nèi)了。所以對基本軟件架構(gòu)風(fēng)格的了解是必要的。關(guān)于基本軟件架構(gòu)風(fēng)格的詳細(xì)知識請參看《系統(tǒng)架構(gòu)設(shè)計師考試全程指導(dǎo)》第12章軟件架構(gòu)設(shè)計。
VxWorks5.5與Linux是兩種常見的嵌入式操作系統(tǒng),關(guān)于這兩者的具體特性請參看《系統(tǒng)架構(gòu)設(shè)計師考試全程指導(dǎo)》第3章嵌入式系統(tǒng)。
試題四:
這是一道系統(tǒng)軟件架構(gòu)選擇的試題,題目以開發(fā)一個車輛定速巡航控制系統(tǒng)為背景。考查考生對架構(gòu)風(fēng)格的理解。并給出兩種架構(gòu)風(fēng)格“面向?qū)ο蟆迸c“控制環(huán)路”,考生需要將這兩種架構(gòu)風(fēng)格的特點與系統(tǒng)的描述進行結(jié)合,分析哪一種架構(gòu)更為適合當(dāng)前的系統(tǒng)。值得注意的是,任何一個系統(tǒng)在選擇架構(gòu)時,可以選擇的架構(gòu)并非唯一,也許一個系統(tǒng)中,某些功能(或是質(zhì)量屬性)用A架構(gòu)實現(xiàn)比較合適,而另一部分功能用B架構(gòu)更好。此時,我們需要考慮系統(tǒng)的主要目標(biāo)以核心功能架構(gòu)需求為準(zhǔn),同時可以采用混合架構(gòu)揚長避短。本題正是考查架構(gòu)的選擇,與混合架構(gòu)的應(yīng)用。
試題五:
這是一道信息系統(tǒng)安全的試題。對于任何一個系統(tǒng)而言,安全性都是至關(guān)重要的,可以說一個系統(tǒng)的安全性如果得不到保障,那么該系統(tǒng)的功能越強大,造成的危害也就越大。
本題問題1是概念題,安全風(fēng)險有多種分類的方式,從安全風(fēng)險源的角度劃分,安全威脅可以分為自然事件風(fēng)險、人為事件風(fēng)險、軟件風(fēng)險、軟件過程風(fēng)險、項目管理風(fēng)險、應(yīng)用風(fēng)險、用戶使用風(fēng)險等。
問題2考到了認(rèn)證方式,認(rèn)證方式是大家平時接觸得非常多的一項技術(shù)。如最簡單的就是用戶名/密碼方式、持卡方式的IC門卡、生物技術(shù)認(rèn)證方式的指紋、網(wǎng)上銀行通常用例的數(shù)字證書等。相關(guān)技術(shù)的具體概念以及適用范圍請參看《系統(tǒng)架構(gòu)設(shè)計師教程(第2版)》15.6.1身份認(rèn)證技術(shù)。
問題3屬于技術(shù)應(yīng)用型的題。給出了一些現(xiàn)象,讓考生分析原因,分析缺陷。從描述來看,我們可以很明顯得知系統(tǒng)缺乏安全審計的策略。而在安全體系中,審計占有非常重要的地位,安全審計系統(tǒng)可以幫助發(fā)現(xiàn)系統(tǒng)入侵和漏洞、幫助發(fā)現(xiàn)系統(tǒng)性能上的不足、為一些安全案件提供有效的追糾證據(jù)。
3 系統(tǒng)架構(gòu)設(shè)計論文
系統(tǒng)架構(gòu)設(shè)計論文出題形式也是沿襲了系統(tǒng)分析師試題的風(fēng)格,四選一??蛇x擇的余地較大。
試題一:論基于DSSA的軟件架構(gòu)設(shè)計與應(yīng)用
這是一道關(guān)于DSSA的試題。DSSA的概念以及基本活動,題目中都進行了簡要的說明。值得注意的是在論文的寫作選材方面,作者的項目需要具備一定的行業(yè)特色。如電力行業(yè),通信行業(yè),鐵路系統(tǒng)等。關(guān)于DSSA所具備的特征以及如何用DSSA的體系來具體創(chuàng)建系統(tǒng)的軟件架構(gòu),希賽教育平臺有相關(guān)模擬試題。如果沒有DSSA軟件架構(gòu)設(shè)計經(jīng)驗的朋友想以此方向試題練筆,可以參看《系統(tǒng)架構(gòu)設(shè)計師考試全程指導(dǎo)》12.4特定領(lǐng)域軟件架構(gòu),根據(jù)書上描述的詳細(xì)流程,結(jié)合自己的項目來進行寫作。
試題二:論信息系統(tǒng)建模方法
這是一道關(guān)于信息系統(tǒng)的建模的試題。值得注意的是,有不少考生把該試題的建模方法理解成了開發(fā)模型與架構(gòu),這都是不正確的。信息系統(tǒng)的建模方法可以分為:面向過程的建模、面向數(shù)據(jù)的建模、面向信息的建模、面向決策的建模和面向?qū)ο蟮慕N宸N。
面向過程的建模方法是把過程看作系統(tǒng)模型的基本部分,數(shù)據(jù)是隨著過程而產(chǎn)生的。最有影響的面向過程的設(shè)計方法是Yourdon設(shè)計法。
面向數(shù)據(jù)的建模方法把模型的輸入輸出看成是最為重要的,因此,首先定義的是數(shù)據(jù)結(jié)構(gòu),而過程模塊是從數(shù)據(jù)結(jié)構(gòu)中導(dǎo)出的,即功能跟隨數(shù)據(jù)。最有影響的面向數(shù)據(jù)的設(shè)計方法是Jackson設(shè)計法。
面向信息的建模方法與面向數(shù)據(jù)建模方法的區(qū)別就是信息和數(shù)據(jù)的區(qū)別。信息和數(shù)據(jù)都是信息系統(tǒng)中最基本的術(shù)語,數(shù)據(jù)是指記載下來的事實,是客觀實體屬性的值,而信息是構(gòu)成一定含義的一組數(shù)據(jù)。面向信息建模方法是從整個系統(tǒng)的邏輯數(shù)據(jù)模型開始的,通過一個全局信息需求視圖來說明系統(tǒng)中所有基本數(shù)據(jù)實體及其相互關(guān)系,然后,在此基礎(chǔ)上逐步構(gòu)造整個模型,信息模型記錄系統(tǒng)運作所需的信息實體,如:人員,地點,事物,觀念等,為分析現(xiàn)行系統(tǒng)提供信息的圖形化表示。數(shù)據(jù)建模的目的是設(shè)計和實現(xiàn)滿足系統(tǒng)信息需求的數(shù)據(jù)庫結(jié)構(gòu),即數(shù)據(jù)建模支持系統(tǒng)設(shè)計。
決策支持系統(tǒng)由數(shù)據(jù)庫、模型庫和各自的管理系統(tǒng)組成。決策支持系統(tǒng)模型需要反映的問題是系統(tǒng)的決策制訂原則和機理、系統(tǒng)的組織機構(gòu)和人員配置。通過對決策系統(tǒng)的建模,企業(yè)的領(lǐng)導(dǎo)可以對企業(yè)有一個細(xì)致的了解,從而發(fā)現(xiàn)其中問題。如組織結(jié)構(gòu)臃腫,職權(quán)劃分不清,權(quán)力范圍不合理等,據(jù)此進行相應(yīng)的改革。比較成熟的決策支持系統(tǒng)建模方法有Petri網(wǎng)和GRAI法。
面向?qū)ο蟮姆治龇椒ㄊ抢妹嫦驅(qū)ο蟮男畔⒔8拍?,如實體、關(guān)系、屬性等,同時運用封裝、繼承、多態(tài)等機制來構(gòu)造模擬現(xiàn)實系統(tǒng)的方法。傳統(tǒng)的結(jié)構(gòu)化設(shè)計方法的基本點是面向過程,系統(tǒng)被分解成若干個過程。而面向?qū)ο蟮姆椒ㄊ遣捎脴?gòu)造模型的觀點,在系統(tǒng)的開發(fā)過程中,各個步驟的共同的目標(biāo)是建造一個問題域的模型。在面向?qū)ο蟮脑O(shè)計中,初始元素是對象,然后將具有共同特征的對象歸納成類,組織類之間的等級關(guān)系,構(gòu)造類庫。在應(yīng)用時,在類庫中選擇相應(yīng)的類。
在完成該論文時,首先應(yīng)對上面的方法進行介紹,然后說明自己的系統(tǒng)中采用了哪種方法,具體是怎么樣來使用這種方法的。
試題三:論基于REST服務(wù)的Web應(yīng)用系統(tǒng)設(shè)計
這是一道關(guān)于REST服務(wù)的試題。REST是一種輕量級的Web Service架構(gòu)風(fēng)格,所以本題實際上是在考查SOA的實現(xiàn)技術(shù)。REST主要針對網(wǎng)絡(luò)應(yīng)用設(shè)計和開發(fā),它可以降低開發(fā)的復(fù)雜性,提高系統(tǒng)的可伸縮性。REST提出了一些設(shè)計概念和準(zhǔn)則:1) 網(wǎng)絡(luò)上的所有事物都被抽象為資源(resource);2) 每個資源對應(yīng)一個唯一的資源標(biāo)識(resource identifier);3) 通過通用的連接器接口(generic connector interface)對資源進行操作;4) 對資源的各種操作不會改變資源標(biāo)識;5) 所有的操作都是無狀態(tài)的(stateless)。
在進行論文的內(nèi)容組織時,可以從這些方面來分析它與傳統(tǒng)的Web服務(wù)之間的差異。
試題四:論軟件可靠性設(shè)計與應(yīng)用:
這是一道關(guān)于軟件可靠性設(shè)計的試題,主要考查影響軟件可靠性的因素以及軟件可靠性設(shè)計技術(shù)和應(yīng)用。本題需要特別注意的一點是:文章不能以“系統(tǒng)可靠性設(shè)計與應(yīng)用”為主線組織內(nèi)容。“系統(tǒng)可靠性設(shè)計”與“軟件可靠性設(shè)計”的區(qū)別在于:系統(tǒng)可靠性包括了系統(tǒng)硬件的可靠性和系統(tǒng)軟件的可靠性。
參考文獻:
[1] 張友生,王勇.系統(tǒng)架構(gòu)設(shè)計師考試全程指導(dǎo)[M].北京:清華大學(xué)出版社,2009.
[2] 王勇,唐強.軟件設(shè)計師考試考點分析與真題詳解[M].北京:電子工業(yè)出版社,2009.
[3] 謝希仁.計算機網(wǎng)絡(luò)[M].4版.北京:電子工業(yè)出版社,2003.
[4] 張智勇.基于IPv6技術(shù)的CNGI駐地網(wǎng)設(shè)計[J].湖南師范大學(xué):自然科學(xué)學(xué)報,2009,32(1):36-39.
[5] 張智勇.一些具有非固定步循環(huán)圖中生成樹的個數(shù)[J].湖南師范大學(xué):自然科學(xué)學(xué)報,2007(3):18-21.