




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
資料整理書碼參考《軟件評測師考試考點分析與真題解析》一書下午考試題目章節/章節200520062007200820092010201120122013201420151、軟件評測基礎知識有有有有2、測試用例設計方法有有有有有有有有有有有3、軟件測試技術與應用有有有有有有4、性能測試有有有有有有有有有有5、安全測試與信息安全知識有有有有有有有有6、測試項目管理有有有計算機系統構成及硬件基礎知識(科1大綱1.1)計算機系統的構成硬件系統由中央處理單元CPU(運算器、控制器)、存儲器、輸入設備和輸出設備組成;分為單總線結構、雙總線結構軟件系統由應用軟件和系統軟件給成Ps:輸入設備---存儲器(內)---控制器---輸出設備計算機體系結構分類、按Flynn、馮氏分類Flynn分類:指令流、數據流、多倍性三方面進行分類。單指令流單數據流(SISD):控制器1、處理器1主存模塊1單指令多數據流(SIMD):控制器1、處理器N主存模塊N代表:并行(陣列)處理機、超級向量處理機等多指令流單數據流(MISD):沒有這種計算機多指令流多數據流(MIMD):控制器N、處理器N主存模塊N代表:多計算機馮氏:以計算機系統在單位時間內所能夠處理的最大二進制位數分類。處理機組成運算器:對數據進行加工處理的部件,完成算術運算、邏輯運算和其他操作控制器:從內存中取出指令,并指出下一條指令的存儲位置;控制和協調整個計算機的動作功能程序控制,操作控制,時間控制,數據處理運算器和控制器組成中央處理器CPU。運算器負責完成算術、邏輯運算功能。通常由ALU(算術邏輯單元)、寄存器、多路轉換器、數據總線組成。控制器2012.C1負責方位程序指令,進行指令譯碼,并協調其他設備。通常由程序計數器(PC)、指令寄存器、指令譯碼器、狀態/條件寄存器、時序發生器、微操作信號發生器組成。2012.C1程序計數器2010.C5,也叫IP(EIP)(PC),用來存儲下一條指令的地址。可以通過call,jmp等跳轉指令間接改變,可以用Move,push等讀出其值,但是不可寫。(程序員可以訪問)2010.C5指令寄存器(IR
)用來保存當前正在執行的一條指令。當執行一條指令時,先把它從內存取到內存數據寄存器(MDR)中,然后再傳送至IR。指令寄存器的位數取決于指令的子長。2013.C2對用戶是透明的,用戶不能訪問。2013.C2指令譯碼器:對當前指令進行譯碼狀態/條件寄存器:保存在計算過程中的狀態和條件定時與控制電路PLA:產生各種微操作控制信號。標志寄存器FR:記錄運算器重要狀態或特征。專用寄存器:有特定功能和用途,例如程序計數器,標志寄存器都為專用寄存器通用寄存器:存放運算中間結果。存取數據—>用戶主存與CPU之間的硬連接:主存與CPU的硬連接有三組連線:地址總線(AB)、數據總線(DB)和控制總線(CB)。把主存看作一個黑盒子,存儲器地址寄存器(MAR)和存儲器數據寄存器(MDR)是主存和CPU之間的接口。MAR可以接收由程序計數器(PC)的指令地址或來自運算器的操作數的地址,以確定要訪問的單元。MDR是向主存寫入數據或從主存讀出數據的緩沖部件。MAR和MDR從功能上看屬于主存,但通常放在CPU內。CPU特性:指令周期:取出并執行一條指令所需的時間,也稱機器周期總線周期:指從CPU存儲器或I/O端口存取一個字節所需的時間,也稱為主振周期時鐘周期:指CPU處理動作的最小單位,通常我們說的I5,2.6GHZ(處理一個動作花費1/2.6GHZ)關系:一個指令周期可以劃分為一個或多個總線周期,一個總線周期又可以劃分為幾個時鐘周期字長:CPU進行運算和數據處理的最基本、最有效的信息位長度。參見數據總線基本輸入/出設備紙帶機、卡片機——大型計算機的輸入設備;鍵盤、鼠標;顯示器;——觸摸屏實際上是顯示器與鼠標的結合外存——是主存的輔助和延伸,主要有軟盤、硬盤、光存儲器、磁帶機、閃存打印機圖形圖像攝影輸入設備——包括掃描儀、數碼相機、數字攝像機外設的訪問2010.C12010.C1程序查詢方式:由cpu執行程序控制數據的輸入輸出過程中斷方式:外設準備好輸入數據或接受數據時向CPU發出中斷請求信號,若CPU決定相應該請求,則暫停正在執行的任務,轉而執行中斷服務程序進行數據的輸入和輸出處理,之后再回去執行原來被中斷的任務。DMA:CPU只要想DMA控制器下達指令,讓DMA控制器來處理數據的傳送。數據傳送完畢后再把信息反饋給CPU,這樣就很大程度上減輕的CPU的負擔計算總線數據傳輸速率總線數據傳輸率=時鐘頻率/每個總線包含的時鐘周期x每個總線周期傳送的字節數例如:某系統總線的一個總線周期包含3個時鐘周期,每個總線周期中可以傳送32位數據。若總線的時鐘頻率為33MHz,則總線的帶寬(即傳輸速度)應該是多少?根據上述公式得出:33MHz/3×32b=11M×4=44MB/S直接映射:一種多對一的映射關系,但一個主存塊只能夠復制Cache的一個特定的位置上去。Cache的行號i和主存的塊號j有函數關系i=j/m(m為Cache的總行數)某Cache容量為16KB(可用14位表示),每行的大小為16B(即可用4位表示),則說明其可分為1024行(可用10位表示),主存的低4位為Cache的行內地址,中間10位為Cache行號。如果內存地址為1234E8F8H,那么最后4位就是1000(對應十六進制數的最后一位),而中間10位,則對應E8F(111010001111)中獲取,得1010001111.全相聯映射:將主存中一個塊的地址與塊的內容一起存于Cache的行中,任一主存塊能映射到Cache中任意行。速度更快,但控制復雜。組相聯映射:前兩種方式的折中方案。按照Cache的比例分成區,每個區內分組和Cache分組方式一致As:容量為64塊的Cache采用組相聯的方式映射,字塊大小是128字,每4塊為一組。如主存容量為4096塊,且以字編址,那么主存地址應該為多少位,主存區號為多少位。4096=2^12、128=2^7,因此需19位主存地址內存需要分為4096/64個區,即2^6,因此主存區號需要6位。Cache淘汰算法當Cache數據已滿,并且出現未命中情況時,就要淘汰一些老的數據3鐘淘汰方式:隨機淘汰算法、先進先出淘汰算法(FIFO)、最近最少使用淘汰算法(LRU)Cache存儲器的寫操作在使用Cache時,需要保證數據與主存一致,因此在寫Cache時就要考慮與主存間同步問題。寫直達:命中時同步發生修改。寫回,Cache的數據被換出才寫回主存。標記法:標記有效位。磁帶存儲器順序存取設備,時間長,容量大,用于大數據量的備份。讀寫方式不同:啟停式、數據流式磁盤存儲器計算磁道數:(外半徑-內半徑)*道密度*記錄面數非格式化容量*=位密度*兀*最內圈直徑*總磁道數格式化容量=每道扇區數*扇區容量*總磁道數平局數據傳輸率=每道扇區數*扇區容量*盤片轉數存取時間=旋轉定位時間+尋道時間+數據傳輸時間SCSI接口是小型計算機系統接口的簡稱,它是一種輸入/輸出接口,主要用于光盤機、磁帶機、硬盤掃錨儀、打印機等設備。RAID:獨立磁盤冗余陣列。墮胎磁盤存儲器組成一個快速、大容量、高可靠性的輔助存儲子系統。指令系統基礎指令由操作碼和地址碼兩個部分組成。指令系統中用來確定如何提供操作數或提供操作數地址的方式成為尋址方式和編址方式。分為四大類:立即尋址:直接給出操作數而非地址直接尋址:直接給出操作數地址或所在存儲器號(寄存器尋址)間接尋址:給出的是指向操作數的地址的地址變址尋址:給出的地址需與特定的地址值累加從而得出操作數地址RISC和CISC2013.C52013.C5CISC:復雜指令計算機:為提高操作系統的效率,人們最初選擇向指令系統中添加更多、更復雜指令來實現,導致指令集越來越大RISC:精簡指令計算機:對指令數目和尋址方式做精簡,指令的指令周期相同,采用流水線技術,指令并行執行程度更好。硬布線控制與微程序相結合。目前RISC技術采用并行處理技術,超級流水線,超級標量,超常指令字,大幅度提高運算速度。流水線技術2013.C4:指程序執行時多條指令重疊進行操作的一種任務分解技術。2013.C4計算執行:任務分成N個子任務,每個子任務需要時間t。完成該任務為Nt。若完成k個任務為Nt+(K-1)t。Ps,如果每個子任務所需的時間不同,其時間取決于執行順序中最慢的那個。流水線吞吐率:單位時間流水線完成的任務數量或輸出的結果數量加速比:不采用流水線的執行時間/采用流水線的執行時間。影響流水線的主要因素1、轉移指令2、共享資源訪問的沖突3、響應中斷。并行處理技術:同一時刻或同一時間間隔內完成兩種或兩種以上性質相同或不同的工作。只要在時間上互相重疊,都存在并行性。措施:1、時間重疊(多個處理過程在時間上錯開)2、資源重復(引入多套硬件設備)3、資源設備(輪流使用CPU等)輸入輸出程序查詢、中斷控制、DMA方式、I/O通道控制方式程序查詢方式:由cpu執行程序控制數據的輸入輸出過程中斷方式:外設準備好輸入數據或接受數據時向CPU發出中斷請求信號,若CPU決定相應該請求,則暫停正在執行的任務,轉而執行中斷服務程序進行數據的輸入和輸出處理,之后再回去執行原來被中斷的任務。直接存儲器存取DMA:CPU只要想DMA控制器下達指令,讓DMA控制器來處理數據的傳送。數據傳送完畢后再把信息反饋給CPU,這樣就很大程度上減輕的CPU的負擔循環冗余校驗碼2012.C2:K位數據位后跟R個校驗位。2012.C2浮點數和定點數定點數(FixedPointNumber)。在這種表達方式中,小數點固定的位于實數所有數字中間的某個位置。貨幣的表達就可以使用這種方式,比如99.00或者00.99可以用于表達具有四位精度(Precision),小數點后有兩位的貨幣值。由于小數點位置固定,所以可以直接用四位數值來表達相應的數值。SQL中的NUMBER數據類型就是利用定點數來定義的。還有一種提議的表達方式為有理數表達方式,即用兩個整數的比值來表達實數。定點數的補碼和移碼可表示為2^n個數,而其原碼和反碼只能表示2^(n-1)個數。(0占用了兩個編碼),因此定點數表示范圍比較小,運算容易造成范圍溢出。浮點數;這種表達方式利用科學計數法來表達實數,即用一個尾數(Mantissa),一個基數(Base),一個指數(Exponent)以及一個表示正負的符號來表達實數。比如123.45用十進制科學計數法可以表達為1.2345×102,其中1.2345為尾數,10為基數,2為指數。浮點數利用指數達到了浮動小數點的效果,從而可以靈活地表達更大范圍的實數原碼、補碼、反碼1、原碼就是符號位加上真值的絕對值,即用第一位表示符號,其余位表示值.比如如果是8位二進制:[+1]原
=00000001[-1]原
=10000001第一位是符號位.因為第一位是符號位,所以8位二進制數的取值范圍就是:[11111111,01111111]即-127到1272、反碼的表示方法是:正數的反碼是其本身,負數的反碼是在其原碼的基礎上,符號位不變,其余各個位取反[+1]=[00000001]原=[00000001]反[-1]=[10000001]原
=[11111110]反3補碼的表示方法是:正數的補碼就是其本身,負數的補碼是在其原碼的基礎上,符號位不變,其余各位取反,最后+1.(即在反碼的基礎上+1)[+1]=[00000001]原
=[00000001]反
=[00000001]補[-1]=[10000001]原
=[11111110]反
=[11111111]補補碼的出現,解決了0的符號以及兩個編碼的問題:=1+(-1)=[00000001]原
+[10000001]原
=[00000001]補
+[11111111]補
=[00000000]補=[00000000]原這樣0用[00000000]表示,而以前出現問題的-0則不存在了.而且可以用[10000000]表示-128:(-1)+(-127)=[10000001]原
+[11111111]原
=[11111111]補
+[10000001]補
=[10000000]補-1-127的結果應該是-128,在用補碼運算的結果中,[10000000]補
就是-128.但是注意因為實際上是使用以前的-0的補碼來表示-128,所以-128并沒有原碼和反碼表示.(對-128的補碼表示[10000000]補算出來的原碼是[00000000]原,這是不正確的)使用補碼,不僅僅修復了0的符號以及存在兩個編碼的問題,而且還能夠多表示一個最低數.這就是為什么8位二進制,使用原碼或反碼表示的范圍為[-127,+127],而使用補碼表示的范圍為[-128,127].2010.C22010.C2移碼:移碼最簡單了,不管正負數,只要將其補碼的符號位取反即可。例如:X=-101011,[X]原=10101011
,[X]反=11010100,[X]補=11010101,[X]移=01010101程序語言基礎(科1大綱1.6)程序設計語言基本概念低級語言和高級語言低級語言:機器語言和匯編語言稱為低級語言機器語言是指0、1組成的機器指令序列;匯編語言指用符號表示指令的語言。高級語言:人類的邏輯思維角度出發,面向各類應用還程序語言。高級語言或匯編語言編寫的程序成為源程序。源程序不能直接在計算機上執行。如果源程序是匯編語言編寫的,則需要一個稱為匯編程序的翻譯程序將其翻譯成目標程序,然后才能執行如果源程序是為高級語言時,這個翻譯程序車工那位編譯程序按源程序中語句的執行順序,逐條翻譯并立即執行相關功能的處理程序,稱為解釋程序。編譯執行:編譯階段,把原程序翻譯為目標程序(obj);運行階段,真正執行此目標程序。解釋執行:源程序每個語句一經解釋就立即執行。編譯系統基本原理編譯程序的工作過程可以分為6個階段:詞法分析,語法分析,語義分析,中間代碼生成、代碼優化、目標代碼生成。其中符號管理和出錯處理貫穿前后整個過程。詞法分析:輸入源程序,對構成源程序的字符串掃描和分解,識別出一個個的單詞,刪掉無用信息,報告分析時的錯誤。一個程序語言的基本語法符號分為五類:關鍵字(if等)、標識符(定義的變量)、常量、運算符(+)、界符(小括號、尖括號)。詞法分析其所輸出單詞符號常常表示成如下的二元式:(單詞種別,單詞符號的屬性值)描述詞法規則通常用:正規式和有限自動機狀態轉換圖狀態轉換圖是狀態有限的有向圖,有圓圈表示結點狀態,結點之間有向邊代表狀態轉換,有向邊上可標記字符,表示前一狀態接受某一個字符后的狀態轉移。功能:用于識別一定的字符串要求:狀態(即結點)個數有限、至少一個初始狀態若干終止狀態、每條邊上標有字符(也可以是空字符)表示習慣:初始態用“o”表示。。。終態是雙圈。多度進字符用*表示
正規表達式和正規集//待整理初始態;終止狀態(接收狀態);后繼狀態:有限狀態機在讀入一個字符時,其狀態改變為另一個狀態,則改變后的狀態被稱為后繼狀態。如果有限狀態機每次轉換后狀態時唯一的,則稱為確定有限狀態自動機(DFA)M={s,。。。}編譯工序:詞法分析:編譯過程的第一階段,從左到右逐個字符掃描,從中識別出一個個單詞符號語法分析:根據語言的語法規則將單詞符號序列分解成各類語法單位。編譯檢查語義分析:主要分析程序中各種語法結構的語義信息。靜態語義分析,動態運行在高級程序中:語句用語描述程序中的運算步驟、控制結構和數據傳輸標符:為數據,子程序,函數,變量等命名。操作系統(科1大綱1.2)操作系統的中斷控制、進程管理、線程管理中斷控制作用CPU可以不用等待I/O的狀態,直接去處理其他業務,I/O系統使用中斷信號通知CPU,CPU轉入中斷處理程序中,完成與I/O系統的數據交換,提高了CPU的效率處理方法多中斷信號線法、中斷軟件查詢法、雛菊鏈法、總線仲載法,中斷向量表法中斷優先級控制當不同優先級的多個中斷源同時提出中斷請求時,CPU應優先響應高優先級的中斷源,最先響應高優先級從資源管理的觀點看,操作系統的功能分成5部分:處理機管理,存儲管理,設備管理,文件管理,作業管理(p75)處理機管理進程:是可以與其他程序并發執行的一次執行過程,進程是運行中的程序,是程序的一次運行活動。進程是一個動態的概念,而程序是靜態的概念,是指令的集合。所以進程具有并發性和動態性。進程控制塊(PCB)來標記進程,進程控制塊是進程存在的唯一標志。進程是由進程控制塊、程序和數據構成的。程序塊:描述該進程所要完成的任務數據塊:包括程序在執行時所需的數據和工作區進程控制塊:包括進程的描述信息、控制信息、資源管理信息和CPU現場保護信息等,反映了進程的動態特性進程控制塊PCB(PCB是進程存在的唯一標志)進程標識狀態優先級控制信息隊列訪問權限現場一般情況下,進程的PCB結構都是全部或部分常駐內存的。進程狀態:就緒狀態執行狀態阻塞狀態進程的狀態可以動態的相互轉換,但阻塞狀態不能直接進入執行狀態,就緒狀態不能直接進入阻塞狀態,任何進程都處于且只能處于一種狀態。運行:就是占用了CPU、正在運行;就緒:萬事俱備,只欠CPU資源;阻塞:在等待I/O完成或等到分配所需資源。進程控制是通過進程控制原語實現的。用于進程控制的原語有:創建原語、阻塞原語、撤銷原語、喚醒原語、優先級原語、調度原語通常操作系統中設置3種隊列:執行隊列、就緒隊列、阻塞隊列進程互斥與同步進程互斥:一組并發進程中一個或多個程序段,因共享某一公有資源而導致他們必須以一個不允許交叉執行的單位執行。進程同步:異步環境下得一組并發進程因直接制約而互相發送消息,進行互相合作、互相等待,使得各進程按一定的速度執行的過程。進程通信和管理進程間的通信根據通信內容可以分為:控制信息的傳送、大批量數據的傳送控制信息的傳送,又稱為低級通信大批量數據的傳送,又稱為高級通信進程的同步和互斥是通過信號量進行通信來實現的,屬于低級通信管程:一個由過程、變量及數據結構等組成的集合,即把系統中的資源用數據抽象的表示出來。進程調度與死鎖進程調度方式:剝奪方式、非剝奪方式調度算法:先來先服務、優先數調度、輪轉法信號量與P,V操作進程之間經常會存在互斥和同步兩種關系。信號量:是一種特殊的變量,表現形式是一個數S和一個隊列P操作:稱為wait()操作,使S=S-1,若S<0,進程暫停執行,放入信號量的等待隊列;V操作:稱為signal操作,使S=S+1,若S<=0,歡迎等待隊列中的一個進程。信號量初值(互斥:-1[資源個數])(同步:初始值0)互斥:一次僅允許一個進程訪問的資源成為臨界資源(打印機)。訪問臨界資源的代碼段稱為臨界區。P(S)=1【是否有人在用】同步:進程A在另一個進程B達到L2以前,不應前進到超過點L1.我們規定臨界區的使用原則(也即同步機制應遵循的準則)十六字訣:“空閑讓進,忙則等待,有限等待,讓權等待”–strling。讓我們分別來解釋一下:(1)空閑讓進:臨界資源空閑時一定要讓進程進入,不發生“互斥禮讓”行為。(2)忙則等待:臨界資源正在使用時外面的進程等待。(3)有限等待:進程等待進入臨界區的時間是有限的,不會發生“餓死”的情況。(4)讓權等待:進程等待進入臨界區是應該放棄CPU的使用。同步信號量的用途:防止被搶占初始為空低優先級的任務持有信號量,高優先級的任務需要這個信號量,只有當低優先級的任務give(釋放)信號量,高優先級的任務才能take(獲取)信號量。通過這種機制低優先級的任務就可以防止被高優先級的任務搶占。give和take是分別在兩個任務里做的。
互斥信號量的用途:對臨界區上鎖初始為滿當一個任務想對臨界區訪問時,為了防止別的任務也對該臨界區操作,它需要對該臨界區上鎖,即take(獲取)一個互斥的信號量,以保證獨享。當該任務take(獲取)一個互斥的信號量以后,它仍然能被高優先級的任務搶占,但高優先級的用戶仍然無法訪問它已經上鎖的臨界區。而解鎖也是由上鎖的任務來做的。take和give是在一個任務里完成的。死鎖:指兩個或兩個以上的進程在執行過程中,因爭奪資源而造成的一種互相等待的現象,若無外力作用,它們都將無法推進下去。死鎖發生的必要條件:互斥條件:即一個資源每次只能被一個進程使用。保持和等待條件:有個進程獲得了一些資源,但因正在請求其他資源而被阻塞。不剝奪條件:就是系統不是搶占式的,進程已獲得的資源在未使用完之前,不能剝奪,只能在使用完后由自己釋放。環路等待條件:若干個進程形成環形鏈,每個都占用對方要申請的下一個資源。AS:資源為R、有N個進程互斥、每個進程對R資源的最大需求為WM>=N(W-1)+1時候保證不會發生死鎖N進程和每個進程需求最大的資源為W,M最小取值:M-N+1>=WPS:先給每個進程分配一個資源為N,剩下全部資源分配給一個進程至少能保證等于W,這樣才有可能不死鎖,這個是最低限度,否則會發生死鎖解決死鎖的策略死鎖預防、死鎖避免、死鎖檢測、死鎖解除。預防:摒棄“請求和保持”條件、摒棄“不剝奪”、摒棄環路等待避免:避免死鎖的算法是銀行家算法檢測:判斷系統是否處于死鎖狀態解除:就是剝奪、強行分配產生死鎖的主要原因:供共享的系統資源不足、資源分配策略和進程的推進順序不當產生死鎖的必要條件:互斥條件、保持和等待條件、不剝奪條件、環路等線程線程是進程中的一個實體,是系統實施調度的獨立單位各線程可以并發的運行線程切換時只需保存和設置少量寄存器的內容,而并不涉及存儲器管理方面的操作,所以線程切換的開銷遠遠小于進程的切換(原運行進程狀態的切換還要引起資源轉移及現場保護等問題)存儲管理(p81)對象及目的對象:主存儲器;目的:保存數據功能主存儲器的分配和回收;提高主存儲器的利用率;存儲保護;主存擴充分類分區存儲管理固定分區:靜態分區方式,系統生成時將主存劃分大小不等的區域,易形成碎片可變分區:動態分區方式,作業裝入時劃分,個數可變,大小等于作業的大小,也容易形成碎片可重定位分區:移動所有已分配好的分區,使之成為連續的區域,有效解決磁盤碎片的問題存儲分配算法首次適應算法:起始位置開始查找,一旦找到立即停止循環適應算法:上次結束的地方開始查找最佳適應算法:找到最相近的空間地址最差適應算法:分配給最不適合它的位置,最大空白區分頁存儲管理原理:進程的地址空間劃分為大小相等的區域(頁),主存空間劃分為與頁相同大小的物理塊(塊或頁框),為進程分配主存時,將進程中若干頁分別裝入多個不鄰接的塊中地址結構:由頁號P,偏移量W(頁內地址)頁表:為保證能在主存中找到每個頁面所對應的物理塊,為每個進程建立一張頁面映射表,簡稱為頁表,實現從頁號到物理塊號的地址映射分段存儲管理將作業的地址空間劃分為若干個段,進程的各個段可以分配到主存的不同分區中,為每個進程建立一張段映射表,實現邏輯段到物理主存區的映射段頁式存儲管理結合分頁、分段存儲管理方式,將主存劃分成大小相等的存儲塊(頁框),將進程按程序的邏輯關系分為若干段,并為每個段賦予一個段名,將每個段劃分成若干頁,以頁架為單位離散分配,利用段表和頁表實現邏輯地址到物理地址的映射虛擬存儲管理定義:主存可以將暫時不用的頁(段)調出至磁盤,有足夠的空間將要訪問的頁(段)裝入主存,系統具有的主存容量比實際主存容量大得多,稱這樣的存儲器為虛擬存儲器;實現:請求分頁系統、請求分段系統;請求段頁式系統(在原存儲形式上增加請求和置換功能)特征:離散性、多次性、對換性、虛擬性頁面置換算法:最佳置換算法(將永久不用或長時間內不再訪問的頁置換出去)、先進先出置換算法(將最先進入主存的頁置換出去)、最近最久未使用置換算法LRU(選擇最上次訪問以來所經歷的時間最大頁置換出去)、最近未用置換算法NUR(通過訪問標志,將未使用過的頁面置換出去,)段頁式存儲2013.C212013.C2131242312110段號頁號頁內地址頁的大小為2^12=4096,即4k;頁號長度為12,每個段最大允許有4096個頁,段號部分為8位,即256個段設備管理(p83)分類按數據組織分類:塊設備、字符設備從資源分配角度分類:獨占設備、共享設備、虛擬設備按數據傳輸率分類:低速設備、中速設備、高速設備按輸入輸出對象分類:人機通信和機機通信息設備按是否可交互分類:非交設備和交互設備目標提高設備的利用率(提高CPU與輸入輸出設備之間的并行操作程度),為用戶提供方便統一的界面,任務動態地掌握并記錄設備的狀態、設備分配和釋放、緩沖區管理、實現物理I/O設備的操作、提供設備使用的用戶接口、設備的訪問和控制、I/O緩沖和調度軟件分為四層:中斷處理程序、設備驅動程序、與設備無關的系統軟件、用戶級軟件文件管理(p85)定義文件:是具有符號名的、在邏輯上具有完整意義的一組相關信息項的集合;信息項是構成文件內容的基本單位文件系統:操作系統中實現文件統一管理的一組軟件和相關數據的集合,專門負責管理和存取文件信息的軟件機構。文件類型按性質和用途:系統文件、庫文件、用戶文件按信息保存期限:臨時文件、檔案文件、永久文件按保護方式:只讀文件、讀寫文件、可執行文件、不保護文件UNIX系統分為普通文件、目錄文件、設備文件(特殊文件)文件系統類型:FAT,Vfat,NTFS,Ext2,HPFS文件結構邏輯結構:用戶角度分為具有結構的記錄式文件(定長、可變長)、無結構的流式文件物理結構:存儲器存儲方式分為連續結構、鏈接結構、索引結構文件目錄文件控制塊FCB:每個文件設置用于描述和控制文件的數據結構,包括文件名和存放文件的物理地址,包含基本信息類、存取控制信息類、使用信息類文件目錄:文件控制塊的有序集合,用于文件的檢索,分為一級、二級、多級目錄結構存取方法指讀寫文件存儲器上的一個物理塊方法;包括順序存取、直接存取、按鍵存取存儲空間管理管理方法:空閑區表、位示圖、空閑塊鏈、成組鏈接法(UNIX系統)文件使用文件系統通過用戶給出的文件名,查出對應文件的存放位置,讀出文件內容操作系統在操作級(命令級)和編程級(系統調用和函數)向用戶提供文件服務操作級提供命令:目錄管理類、文件操作類、文件管理類編程級提供調用:創建文件、撤銷文件、打開文件、關閉文件、讀文件、寫文件文件共享不同用戶進程使用同一文件,常見文件鏈接分為硬鏈接和符號鏈接文件保護采用存取控制方式進行保護,涉及存取控制矩陣、存取控制表、用戶權限表、密碼文件安全性可靠性在系統級、用戶級、目錄級、文件級四個級別上對文件進行安全性管理通過轉儲和恢復、日志文件、文件系統的一致性實現文件的可靠性文件命名包括盤符從根目錄下開始的路徑名相對路徑:當前路徑如:java\作業管理(p87)定義系統為完成一個用戶的計算任務(或一次事務處理)所做的工作總和組成由程序、數據和作業說明書組成;作業說明書包括作業基本情況、作業控制、作業資源要求的描述,體現用戶控制意圖管理作業控制:采用脫機和聯機兩種控制方式作業狀態:提交、后備、執行、完成作業控制塊JCB:記錄作業各種有關信息的登記表,是作業存在的唯一標志,包括用戶名、作業名、狀態標志等信息作業后備隊列:將作業控制塊排列成一個或多個隊列,即隊列由JCB組成調度算法:先來先服務、短作業優先、響應比高優先、優先級調度算法、均衡調度算法衡量指標:平均周轉時間或平均帶權周轉時間用戶界面定義:用戶接入口或人機界面,是計算機中實現用戶與計算機通信息的軟件和硬件部分的總稱組成:硬件部分(輸入、輸出裝置)、軟件部分(協議、操作縱命令及處理軟件)發展階段:控制面板式用戶界面、字符用戶界面、圖形用戶界面、新一代用戶界面實存管理單一連續分配、固定分配、可變分區分配。可變分區分配:最佳適應算法:選擇等于或最接近作業大小的內存進行分配。最差適應法:選擇整個主存中最大的內存自由區進行分配。首次適應法:從內存低地址開似乎,尋找第一個可用的自由區。循環首次適應算法:從上次分配的地址繼續向下匹配。虛存管理分頁技術、分段技術、段頁式技術。置換策略最優算法OPT:淘汰不用或最遠的將來采用的頁。理想的算法先進先出算法FIFO、最近最少使用算法LRU作業調度目標響應時間快。分時、實時系統的要求。周轉或加權周轉時間短。批處理系統的要求,周轉時間作業提交到作業完成的時間差,加權周轉時間,作業的周轉時間與作業運行時間之比利用率均衡、吞吐量大。系統反應時間短(作業提交到獲得首次服務時間)調度算法:先來先服務FCFS:不利于短作業短作業優先SJF:不利于長作業響應比高者優先HRN,使用公式(估計運行時間+等待時間)/估計運行時間來計算誰優先優先級調度:即根據預設的優先級進行調度。網絡操作系統和嵌入式操作系統網絡操作系統(P89)功能除具備基本功能外,還應有聯網功能,支持網絡體系結構和各種網絡通信協議,提供網絡互聯功能,支持有效、安全可靠的數據傳送特征硬件獨立性、多用戶支持、支持網絡實用程序及其管理功能、多種客戶端支持、提供目錄服務、支持多種增值服務分類集中模式、客戶機/服務器模式、對等模式嵌入式操作系統(91)概念運行在嵌入式智能芯片環境中,對整個智能芯片以及其控制的各種部件和裝置等資源進行統一協調、調度、指揮和控制的系統軟件特點微型化,可定制,實時性、可靠性,易移植性;與OS相比,占用空間小,執行效率高,便于個性化定制和軟件固化存信開發環境通常配有源代碼級可配置的系統模塊設計、豐富的同步原語、可選擇的調度算法、主存分配策略等常見的嵌入式系統有WindowsCE、PalmOSUNIX操作系統:文件可以分為3大類:普通文件、目錄文件和設備文件輸入和輸出設備看作是特殊文件。操作系統的配置數據庫(科1大綱1.4)數據庫基本原理(p105)基本概念數據庫:長期存儲在計算機內的,有組織的,可共享的數據的集合數據庫管理系統DBMS:是一組對數據進行管理的軟件,是一個可實際運行的,按照數據庫方式存儲、維護和向應用系統提供數據或信息支持的系統數據庫系統:是實現有組織、動態存儲大量相關數據的系統,由數據庫、軟件、硬件和人員組成數據庫技術:是研究數據庫的存儲、結構、設計、管理和使用的一門學科數據模型概念數據模型:對現實世界數據特征的抽象現實世界:數據是客觀存在的各類原始數據,按用戶的觀點對數據和信息建模信息世界:是現實世界在人們頭腦中的反映,數據庫常用術語:實體、實體集、屬性和碼機器世界:按計算機系統的觀點建模,描述數據的常用術語:字段、記錄、文件和記錄碼三要素數據結構:是所研究的對象類型的集合,是對系統靜態特性的描述數據操作:對數據庫中各種對象的實例允許執行的操作及操作規則的集合數據的約束條件:是一組完整性規則的集合E-R模型實體聯系模型,屬于概念數據模型,采用的三個主要概念:實體、聯系和屬性實體:可以區別于其他對象的“事件”或“物體”,如企業中的每個人都是一個實體,由一組特性(屬性)表示聯系:分為實體內部聯系和實體與實體之間的聯系;兩個不同實體集之間可以存在一對一、一對多、多對多的聯系;兩個以上不同實體集之間可以存1:1:1,1:1:n,1:m:n和r:m:n的聯系;同一實體集內的各實體之間可以存在1:1,1:n,m:n的聯系屬性:是實體某方面的特性,分類包括簡單屬性、復合屬性、單值屬性、多值屬性、NULL屬性、派生屬性E-R方法:實體-聯系方法,從現實世界中抽象出實體和實體之間的聯系,采用E-R圖來表示數據模型層次模型屬于基本數據模型,采用樹型結構表示數據與數據間的聯系。每一個結點表示一個記錄類型(實體),記錄之間的聯系用連線表示,除根結點以外,其他結點有且僅有一個雙親結點特點:記錄之間的聯系通過指針實現,比較簡單,查詢效率高缺點:只能表示1:n的聯系網狀模型屬于基本數據模型,是層次模型的一個特例,去掉了層次模型的兩個限制,允許兩個結點之間有多種聯系。每一個結點表示一個記錄類型(實體)。特點:能更為直接的描述現實世界,具有良好的性能,存取效率高缺點:結構復雜關系模型屬于基本數據模型,由若干個關系模式組成的集合數據庫管理系統的功能和特征(p105)功能數據定義、數據庫操作、數據庫運行管理、數據組織、存儲和管理、數據庫的建立和維護、與其他軟件系統的通信功能,不同DBMS之間的轉換功能特征數據結構化且統一管理、有較高的數據獨立性、數據控制功能(安全性保護、完整性、并發控制、故障恢復)關系運算2010.C16:投影、選擇、θ連接、除法、外連接、2010.C16數據庫語言與編程(p116)數據定義定義基本表CREATTable表名修改基本表ALTERTable表名刪除基本表DROPTable表名建立索引CREAT[Unique][Cluster]INDEX索引名ON表名(列名[次序])刪除索引DROPINDEX索引名數據查詢單表查詢、連接查詢、嵌套查詢、集合查詢數據更新插入數據INSERTINTO表名VALUES(<常量>…..)修改數據UPDATE表名SET<列名>[where<條件>]刪除數據DELETEFROM表名[where<條件>]視圖定義視圖:CREATEVIEW<視圖名>[(<列名>[,<列名>])]AS子查詢刪除視圖:DROP視圖名查詢視圖:SELECT字段名FROM視圖名WHERE條件更新視圖: UPDATE視圖名SET<字段值>WHERE條件數據控制授權:GRANT<權限>[ON<對象類型><對象名>]TO<用戶>收回授權:REVOKE<權限>[,<權限>]…[ON<對象類型><對象名>]FROM<用戶>[,<用戶>]。。。數據庫模式:一個數據庫只有一個模式三級模式外模式:子模式、用戶模式,多個外模式模式:概念模式、邏輯模式內模式:存儲模式,一個數據庫只有一個內模式關系模型域:一組具有相同數據類型的集合,性別笛卡兒積:關系:屬性:關系中不同的列可以對應相同的域,為了加以區分,必須每列起個名字,成為屬性。N目關系必有n屬性。候選碼:若關系中某一屬性組的值能唯一地標識一個元組,則稱該屬性組的候選碼主碼:若一個關系有多個候選碼,則選定其中一個為主嗎,(主鍵)基本關系:6個特征列示同質的,每一列中的分量是同一類型的數據,來自同一個域。不同的列可以出自同一個域。列的順序無所謂,即列的次序可以任意交換。任意兩個元組不能完全相同。行的順序無所謂,即行的次序可以任意交換。分量必須取原子值,即每一個分量都必須是不可分的數據項。關系描述稱為關系模式,關系模式是一個五元組,形式化表示為R(U,D,DOM,F)R關系名、U組成該關系的屬性名集合、D屬性組U中屬性所來自的域、DOM屬性向域的映像集合、F屬性間的數據以來關系集合。通常簡記為R(A1……An)規范化理論范式:第一范式:關系模式R的每個關系r的屬性值都似乎不可分的原子值。那么稱R是第一范式的模式,r是規范化的關系。在任何一個關系數據中,第一范式是對關系模式的基本要求,不滿足第一范式(1NF)的數據庫就不是關系數據庫。第二范式:若R是1NF,且每個非主屬性完全函數依賴與候選鍵,那么稱R是2NF。第二范式要求數據庫表中的每個實例或行必須可以被唯一的區分。為實現區分通常加一個列,以存儲各個實例的惟一標識,這列被稱為主關鍵字或主鍵、主碼。例如員工信息表加上了一個員工編號,滿足唯一性。第三范式3NF。如果關系模式是1NF,且每個非主屬性都不依賴與R的候選碼,則稱R為3NF。BC范式(BCNF),若關系模式R是1NF,且每個屬性都不傳遞依賴與R的候選鍵,那么成R是BCNF數據操作查詢:選擇、投影、連接、除、并、交、差。數據更新:插入,刪除,修改計算機網絡基礎知識(科1大綱1.5)網絡分類,體系結構與網絡協議(p131)網絡分類按通信距離分-廣域網、局域網、城域網按信息交換方式分-電路交換網、分組交換網、綜合交換網按網絡拓撲結構分-星形、樹形、環形、總線型按通信介質分-雙絞線網、同軸電纜網、光纖網、衛星網按傳輸帶寬分-基帶網、寬帶網按使用范圍分-公用網、專用網按速率分-高速網、中速網、低速網按通信傳播方式分-廣播式、點到點式體系結構采用ISO/OSI網絡體系結構,OSI參考模型從低到高為物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層;1~3層:負責通信功能,為通信子層5~7層:資源子網層網絡協議局域網協議LAN模型:將數據鏈路層分為介質訪問控制層(MAC)、邏輯鏈接控制層(LLC)以太網(IEEE802.3標準):采用CSMA/CD訪問協議令牌環網(IEEE802.5標準):采用介質訪問控制,編碼方式差分曼徹斯特編碼FDDI(光纖分布式數據接口):使用同軸電纜或雙絞線,編碼方式曼徹斯特編碼廣域網協議點對點(PPP):主要用于拔號上網連接模式,數字用戶線xDSL:數字專線DDN:數字數據網,采用數字傳輸信道傳輸數據信號的通信網綜合業務數字網:建立在數字電話網絡基礎上的網絡,提供端到端的數字連接,將聲音、數據、圖像等不同業務綜合在一個網絡內進行傳送和處理幀中繼FR:在用戶網絡接口之間提供用戶信息流的雙向傳送,并保持順序不變的一種承載業務。異步傳輸模式ATM:是一種面向分組的快速分組交換模式,使用異步時分復用技術,將信息流分割成固定長度的信元,ATM參考模型為分用戶層、ATM適配層、ATM層和物理層X.25協議:是在公用數據網上以分組方式進行操作的DTE(數據終端設備)和DCE(數據通信設備)之間的接口Internet協議TCP/IP為Internet的核心協議TCP/IP分層模型:(低到高)網絡接口層(數據鏈路層)、網際層、傳輸層、應用層網絡接口層協議:只提供接口規范網際層協議-IP(網際)協議、ICMP(Internet控制協議)協議、ARP(地址解析IP->物理地址)協議、RARP(反地址解析物理地址->IP)協議傳輸層協議-TCP(傳輸控制)協議、UDP(用戶數據報)協議應用層協議:NFS、Telnet、SMTP、DNS、SNMP、FTP常用網絡設備網絡傳輸介質互聯設備網絡線路與用戶節點鏈接:T型頭、收發器、RJ-45接口、調制解調器物理層的互聯設備中繼器:實現局域網網段互聯,適用于連接相同的局域網段集線器:一種特殊的多路中繼器,數據鏈路層的互聯設備網橋:工作于MAC子層,兩個網絡MAC子層以上的協議相同,都可以用網橋互聯交換機:采用端口交換、幀交換、信元交換三種交換技術第二層交換機:工作在數據鏈路層第三層交換機:工作在網絡層高層交換機:網絡層網絡層互聯設備路由器:互連的網絡低兩層協議可以不同網關:連接不同類型而協議差別又較大的網絡應用層互聯設備Internet基礎知識及應用(p156)Internet地址域名格式:用戶所在的主機名或地址,由四部組成主機名.本地名.組名.最高層域名IP地址格式:32位由4個小于256的數字組成,分為A(000~127),B(128~191),C(192~223),D(224~239),E(240~255)五類Internet服務DNS域名服務:提供域名地址與IP地址的映射變換,采用客戶機/服務器模式,由解析器和域名服務器組成TELNET遠程登錄服務:在Telnet協議支持下,將用戶端與遠程主機相連,采用客戶機/服務器模式,由客戶軟件、服務器軟件及Telnet通信協議組成;E-mail電子郵件服務:利用計算機進行信息交換的電子媒體信息,基于客戶機/服務器模式,由E-mail客戶軟件、E-mail服務器和通信協議(SMTP、POP)組成WWW服務:一種交互式圖形界面的Internet服務,具有強大的信息連接功能的多媒體信息服務系統,基于客戶機/服務器模式,提供超文本傳輸協議HTTP,由Web服務器、瀏覽器和HTTP通信協議等組成;URL統一資源定位器FTP文件傳輸服務:在計算機之間傳輸文件,采用客戶機/服務器模式,由客戶軟件、服務器軟件和FTP通信協議組成,建立控制連接、數據連接Gopher:將Internet上的信息組織成某種索引,采用客戶機/服務器模式,網絡管理(p162)網絡安全定義:保護計算機、網絡系統的硬件、軟件以及系統中的數據,不因偶然的或惡意的原因而遭到破壞、更改或泄露,確保系統能連續和可靠地運行,使網絡服務不中斷涉及內容:運行系統的安全、信息系統的安全、信息傳播的安全、信息內容的安全信息系統對安全的基本需求:保密性、完整性、可用性、可核查性安全威脅:物理威脅、網絡攻擊、身份鑒別、編程威脅、系統漏洞網絡的信息安全信息的存儲安全:使用的安全(用戶的標識、存取權限限制、安全問題追蹤),計算機防病毒防治,系統安全監控,數據的加密,防止非法的攻擊等內容信息的傳輸安全:鏈路加密,節點加密,端-端加密防火墻技術分類:包過濾型防火墻、應用代理網關防火墻,狀態檢測技術防火墻體系結構:一般由過濾路由器和代理服務器組成;典型防火墻由過濾路由器,雙宿主主機,被屏蔽主機以及被屏蔽子網OSI七層模型物理層:是OSI的最低層或第一層。物理層協議要解決的是主機、工作站等數據終端設備與通信線路上通信設備之間的借口問題。四個特性機械特性:規定了DTE和DCE之間的連接器形式。電氣特性:功能特性:對借口各信號線的功能給出確切定義,說明某些連線上出現的某一電壓表示的意義。規程特性:規定了DTE和DCE之間各接口信號線實現數據傳輸的操作過程。數據鏈路層建立、維持和釋放網絡實體之間的數據鏈路,分為MAC和LLC網絡層:屬于通信子網,通過網絡連接交換傳輸層實體發出的數據,解決的問題是路由選擇,網絡擁塞、異構網絡互聯等問題。代表性協議有IP,IPX傳輸層:實現發送端和接受端的端到端的數據分組傳送,負責保證實現數據包無差錯,按順序,無丟失和無冗余的傳輸。TCP,UDP,SPX會話層:管理和協調不同主機上各種進程之間的通信,即負責建立、管理和終止應用程序之間的會話。表示層:處理流經結點的數據編碼的表示方式問題,以保證一個系統應用層發出的信息可被另一系統的應用層讀出。應用層:直接為端用戶服務,提供各類應用程序的接口和用戶接口。如HTTP,telnet,smtp,ftp等。協議包括以下幾個要素語法:包括數據的控制信息的結構或格式,以及信號電平之類的東西。語義:用于相互協調及差錯處理的控制信息定時關系:時序,包括速度匹配和時序。ABC類IP地址私有地址(Privateaddress)屬于非注冊地址,專門為組織機構內部使用。A類--551-126B類--55128-191C類--55192-2231.A類地址⑴A類地址第1字節為網絡地址,其它3個字節為主機地址。另外第1個字節的最高位固定為0。⑵A類地址范圍:到54。⑶A類地址中的私有地址和保留地址:①到55是私有地址(所謂的私有地址就是在互聯網上不使用,而被用在局域網絡中的地址)。②到55是保留地址,用做循環測試用的。2.B類地址⑴B類地址第1字節和第2字節為網絡地址,其它2個字節為主機地址。另外第1個字節的前兩位固定為10。⑵B類地址范圍:到54。⑶B類地址的私有地址和保留地址①到55是私有地址②到55是保留地址。如果你的IP地址是自動獲取IP地址,而你在網絡上又沒有找到可用的DHCP服務器,這時你將會從到55中臨得獲得一個IP地址。3.C類地址⑴C類地址第1字節、第2字節和第3個字節為網絡地址,第4個個字節為主機地址。另外第1個字節的前三位固定為110。⑵C類地址范圍:到54。⑶C類地址中的私有地址:到55是私有地址。分配給某公司網絡的地址塊是/20,該網絡被劃分為(26)個C類子網,不屬于該公司網絡的子網地址是(27)。
(26)A.4
B.8
C.16
D.32
(27)A.220.17.203.0
B.220.17.205.0C.220.17.207.0
D.220.17.213.0答案:一個C類地址應該有24個子網掩碼,現在有20個,少了4位,所以被劃分成了2^4=16個子網192+0—192+15所以213不屬于這個范圍。軟件工程基礎知識(科1大綱5.1-5.6)軟件工程基礎軟件工程的概念和生存周期軟件工程的概念提出與20世紀60年代的“軟件危機2010.C15”有密不可分的聯系。2010.C15定義指應用計算機科學、數據及管理科學等原理,以工程化的原則和方法來解決軟件問題的工程。工程學方法三要素方法、工具和過程1、方法是指完成軟件開發的各項任務的技術方法;2、工具指為運用方法而提供的軟件工程支撐環境;3、過程是指為獲得高質量的軟件所需要完成的一系列的任務。(使用最廣的工程學方法:結構化方法學和面向對象的方法學)目的指高軟件生產率,提高軟件質量,降低軟件成本2013.C332013.C33生存周期由軟件定義2010.C8(系統分析、項目計劃、需求分析)、軟件開發(設計2009.C182010.C9:概設和詳設、編碼、測試)、軟件維護(時間最長)2010.C14三個階段組成2010.C82009.C182010.C9:概設和詳設2010.C14需求分析任務確定軟件系統的綜合要求導出系統的邏輯模型如有必要,可開發一個原型系統分析軟件系統的數據要求修正項目開發計劃方法軟件需求說明書一般可用數據流圖、數據字典和自然語言書寫結構化分析方法SA:面向數據流的分析方法,自頂向下逐層分。解,分析結果包括數據流圖DFD:用來描述數據流從輸入到輸出的變換流程,數據字典:為數據流圖中每個數據流、文件、加工以及組成數據流或文件的數據項作出說明小數明:對加工進一步進行描述,描述方法結構化語言、判定表、判定樹補充材料功能需求:根據要求的活動來描述需要的行為質量需求:描述一些軟件解決方案必須擁有的質量特性設計約束2011.C36:已經做出的設計決策或對問題的解決方案集的限制的設計決策2011.C36過程約束:對用于構建系統的技術和資源限制軟件系統設計它所要回答的關鍵問題是:應該怎么實現目標系統—概要設計主要任務:設計程序的體系結構(結構設計),也就是確定程序由哪些模塊(組件)組成,以及模塊(組件)之間的關系設計成果:系統設計模型或系統設計說明書使用UML圖和類圖等工具表示軟件組件設計關鍵問題:應該怎樣具體地實現目標系統任務:詳細的設計每個組件,確定實現組件功能所需要的算法和數據結構數據結構和算法很難用UML圖表示,可采用自然語言,形式語言或偽代碼等切合實際的方式加以描述。軟件編碼軟件編碼:就是把軟件設計結果翻譯成用某種程序設計語言(編程語言)書寫的程序編碼是對軟件設計的進一步具體化對于一般的應用系統,應盡量使用高級編程語言,如面向對象的編程語言,可視化編程語言等;對于工控軟件、嵌入式軟件,以及其他一些與時間資源,環境密切相關的軟件,可選用一些層次稍低但執行效率高的程序語言,必要時也可選用匯編語言。軟件測試測試目的:在軟件產品或軟件系統交付運行之前,盡可能多的發現軟件中的錯誤和缺陷。為了發現軟件的錯誤,應竭力設計能暴露軟件錯的測試用例。一個好的測試用例是極可能發現至今為止尚未發現的錯誤的測試用例。一次成功的測試是發現了至今尚未發現的錯誤的測試軟件測試追求的目標是以盡可能少的時間和人力發現軟件產品中盡可能多的錯誤。測試文件分類:測試計劃、測試分析報告測試計劃的編寫從需求分析階段開始,在設計階段結束時完成。測試分析報告:用來對測試結果進行分析說明,并給出評價的結論性意見軟件維護改正性維護、適應性維護、完善性維護、預防性維護改正性:發現了錯誤,修改適應性個人所得稅變化,修改計算工資程序;硬件配置的變化進行修改啊2011.C50個人所得稅變化,修改計算工資程序;硬件配置的變化進行修改啊2011.C502013.C48完善性系統交付后為了應對更多的任務,采用更有效的方法2012.C42:擴充原有的功能,系統交付后為了應對更多的任務,采用更有效的方法2012.C42預防性:提高軟件的可維護和可靠性,主動增加新的功能軟件開發方法及過程結構化開發方法SA結構化分析方法模型:該模型的核心是數據字典,描述了目標系統中使用和生成的所有數據對象。數據設計圍繞這個核心有三種圖數據流圖:描述數據在系統中如何被傳送或變化,用于功能建模,接口設計,系統結構設計實體關系圖:描述數據對象及數據對象之間的關系,用于數據建模,數據設計狀態遷移圖:描述系統對外部事件如何響應,用于行為建模結構化開發方法特點階段性(前一階段的輸出是后一階段的輸入對應著瀑布模型)、推遲實施(分析設計和實施分開)、文檔管理(每一階段都要完成文檔)對應著瀑布模型數據流圖DFD、數據字典DD、實體-關系圖(E-R圖)、以及描述加工處理的結構化語言是結構化分析的常見工具。2010.C262010.C26結構化分析數據流圖用于功能建模2013.C382013.C38DFD的基本成分數據流加工文件源/宿數據流:由一組固定的數據組成,表示數據的流向加工:描述了輸入數據流到輸出數據流之間的變換,也就是輸入數據流做了什么處理后變成了輸出數據流文件:表示數據文件,也可以表示一個數據記錄源/宿:源中系統所需的數據的發源地;宿(也稱作數據池)指系統所產生的數據的歸宿地;無論源或宿,均對應于外部實體,在框內應注明實體的名字。分層數據流一套分層的數據流圖由頂層、底層和中間層組成。頂層圖說明了系統的邊界,底層圖由一些不必分解的基本加工組成。中間層的數據流圖描述了某個加工的分解,而它的組成部分又要進一步被分解。在分層數據流圖中,處于上層的圖成為父圖,處于下層的圖成為子圖。基本原則與注意事項自外向內,自頂向下,逐層細化,完善求精保持父圖與子圖的平衡保持數據守恒加工細節隱蔽簡化加工間關系均勻分解適當的為數據流、加工、文件、源/宿命名忽略枝節表現的是數據流而非控制流每個加工必須既有輸入數據流,又有輸出數據流;在整套數據流圖中,每個文件必須既有讀文件的數據流,又有寫文件的數據流,但在某一張子圖中可能只有讀沒有寫或者只有寫沒有讀數據字典DD定義:數據字典是關于數據的信息的集合,也就是對數據流圖中包含的所有元素的定義的集合。數據流圖和數據字典共同構成系統的邏輯模型。4種類型條目數據項條目:給出某個數據單項的定義,通常為數據項的值類型、允許的取值范圍等數據流條目給出某個數據流的定義,通常是列出該數據流的各組成數據項由低的數據元素(或稱分量),組成更復雜的數據的方式有:順序、選擇、重復、可選文件條目:給出某個文件的定義,通常也是列出其機理的組成數據項加工條目:對數據流圖中每一個異能再分解的基本加工的精確說明結構化語言實際上是一走、種半形式化的語言,結構通常可分為內外兩層。外層接近于形式化語言,而內層近似于自然語言的描述。(介于兩種語言之間的描述)實體—關系圖(E-R圖2009.C28)用于數據建模2009.C28包含實體、關系和屬性3種基本成分。矩形框表示實體,用連接相關實體的菱形框表示關系,用橢圓形或圓角矩形表示實體(或關系)的屬性,并用直線把實體(或關系)與其屬性相連E-R圖通常用于數據庫應用系統。結構化設計SD軟件設計是軟件生命周期的重要組成部分,主要包括體系結構設計、接口設計、數據設計、過程設計。結構化設計方法是一種面向數據流的設計方法,是以結構化分析階段所產生的文檔(包括數據流圖、數據字典、軟件需求說明書等)為基礎,自頂向下,逐步求精和模塊化的過程。結構化設計通常分為:概要設計和詳細設計軟件設計的重要概念和基本原則模塊化:模塊的可分解性、模塊的可組裝性、模塊的可理解性、模塊的連續性、模塊的保護性模塊的連續性:如果對系統需求的微小修改只導致對單個模塊,而不是整個系統的修改,則修改引起的副作用就會被最小化。模塊化有助于實現Parnas提出的“信息隱蔽”原則2010.C302010.C30內聚:一個模塊內各個元素批次結合的緊密程度內聚分為以下幾種,他們之間的內聚度由弱到強排列最好能每個內聚有單獨的關鍵字來判斷最好能每個內聚有單獨的關鍵字來判斷偶然(巧合)內聚、邏輯內聚、瞬時(時間)內聚、過程內聚、通信內聚、順序內聚、功能內聚偶然(巧合)內聚、邏輯內聚某模塊根據輸入的控制信息從文件中讀取或者想文件中寫入記錄2011.C44:由參數確定模塊調用某模塊根據輸入的控制信息從文件中讀取或者想文件中寫入記錄2011.C44瞬時(時間)內聚:同一時間執行過程內聚:通信內聚同一張報表上的操作的所有程序組成一個模塊2012.C37:處理元素在同一個數據結構上操作的同一張報表上的操作的所有程序組成一個模塊2012.C37順序內聚:順序,前一元素輸出是下一功能的輸入功能內聚:各個部分是為了完成某一具體功能耦合:耦合式對一個軟件結構內不同模塊之間互聯程度的度量。耦合強弱取決于模塊接口間的復雜程度,進入或訪問一個模塊的點,以及通過接口的數據。耦合分為以下幾種,他們之間的耦合度由高到低排列內容耦合、公共耦合、外部耦合、控制耦合、-標記耦合-、數據耦合非直接耦合內容耦合一個模塊直接調用另一個模塊的內部數據2013.C42:一模塊訪問另一模塊的內部數據一個模塊直接調用另一個模塊的內部數據2013.C42公共耦合:多個模塊引用一全局數據區外部耦合:軟件意外的環境關聯控制耦合:把開關送入另外個模塊-標記耦合A處理與銷售有關的細節發送一個包含銷售量,價格,和時間的報表到B,AB標記耦合A處理與銷售有關的細節發送一個包含銷售量,價格,和時間的報表到B,AB標記耦合2012.C38數據耦合A模塊通過簡單的數據類型參數訪問B模塊,參數在B內用于計算A模塊通過簡單的數據類型參數訪問B模塊,參數在B內用于計算2011.C46非直接耦合:沒關系,主程序調用模塊的高內聚、低耦合原則成為模塊獨立原則。深度、寬度、扇出和扇入2015.Q42015.Q4深度代表軟件結構中控制的層數。寬度是軟件結構中同一層次上的模塊總數的最大值。一般來說,寬度越大,系統越復雜。對寬度影響最大的因素是模塊的扇出。一個模塊的扇出,該模塊直接調用的下級模塊的個數。扇出大表示模塊的復雜度高,需要控制和協調過多的下級模塊;但是扇出過小(如一直是1)也不好。扇出過大一般由于缺乏中間層次,應該適當增加中間層次的控制模塊。扇出太小時,可以把下級模塊進一步分解成若干子功能模塊,或者合并到它的上級模塊中。一個模塊的扇入,直接調用的下級模塊的個數。扇入大表示模塊的復用程度高。設計良好的軟件結構通常頂層扇出比較大,中間扇出較少,底層模塊扇入較大高扇入,低扇出作用域和控制域模塊的作用域是指受該模塊內一個判定影響的所有模塊的集合。模塊的控制域是指模塊本身,以及被該模塊直接或間接調用的所有模塊的集合。功能的可預測性功能的可預測性是指對相同的輸入數據產生相同的輸出。軟件設計時應保證模塊的功能是可預測的。軟件設計:體系結構設計(概要設計)、接口設計、數據設計、過程設計。根據加工規格說明和控制規格說明進行過程設計根據數據字典和實體關系圖進行數據設計數據流圖進行接口設計和系統結構設計概要設計SD方法采用結構圖來描述程序的結構。構成程序結構圖的主要成分有模塊、調用和數據,結構圖中的模塊由矩形表示,在矩形框內可標上模塊的名字。模塊間如果有箭頭或直線連接,表明它們之間的調用關系。SD方法有時也使用層次圖和HIPO(層次圖加輸入/輸出圖)設計過程復查基本系統模型復查并精化數據流圖確定數據流圖的信息流類型變換流:信息沿著輸入通道進入系統,然后通過變換中心(也稱主加工)處理,再沿著輸出通道離開系統。具有這一特性的信息流稱為變換流。具有變換流形的數據流圖可明顯的分成輸入、變換、輸出3大部分事務流:信息沿著輸入通道到達一個事務中心,事務中心根據輸入信息(即事務)的類型在若干個工作序列(稱為活動流)中選擇一個執行,這種信息流稱為事務流。事務流有明顯的事務中心,各活動以事務中心為起點呈輻射狀流程根據流類型分別實施變換分析或事務分析交換分析是從變換流型的數據流圖導出程序結構圖確定輸入流和輸出流的邊界,從而孤立出變換中心完成第一級分解,設計模塊結構的頂層和第一層完成第二級的分解,也就是輸入控制模塊、變換控制模塊和輸出控制模塊的分解,設計中、下層模塊事務分析是從事務流型的數據流圖導出程序結構圖,具體過程如下確認事務中心和每條活動流的流特性將事務流型數據流圖映射成高層的程序結構,分解出接收模塊、發文模塊(調度模塊),以及發送模塊所控制的下層所有的活動流模塊進一步完成接受模塊和每一個活動流模塊的分解根據軟件設計原則對得到的軟件結構圖進一步優化詳細設計詳細設計工具:程序流程圖:主要特點是對控制流程的描繪很直觀,便于初學者掌握盒圖(N-S圖):由Nassi和Shneiderman提出的一種符合結構化設計原則的圖形描述工具,含有5種基本的控制結構:順序結構、IF-THEN-ELSE型分支結構、CASE型多分支結構、DO-WHILE和DO-UNTIL型循環結構、子程序結構盒圖的特點:功能域明確,可以從盒圖上一眼識別由于沒有箭頭,不可能任意轉移控制容易確定局部和全程數據的作用域容易表示嵌套關系,也可以表示模塊的層次結構PAD圖:問題分析圖(ProblemAnalysisDiagram)的英文縮寫,它用二維樹型結構的圖表示程序的控制流,比較容易翻譯成機器碼PAD圖的特點:使用表示結構化控制結構的PAD符號所設計出來的程序必然是程序化結構PAD圖所描述的程序結構十分清晰用PAD圖表現程序邏輯,易讀,易懂,易記容易將PAD圖轉換成高級語言源程序,這種轉換用軟件工具自動完成PAD圖既可表示程序邏輯,也可用于描繪數據結構PAD圖的符號支持自頂向下、逐步求精方法的使用PDL2010.C10:程序設計語言(ProgramDesignLanguage)的英文縮寫,也稱為偽碼,是一種以文本方式表示數據和處理過程的設計工具。2010.C10常見的詳細設計工具還包括判定樹、判定表面向對象的開發方法面向對象方法學概述對象與封裝對象是系統中用來描述客觀事物的一個實體,它是構成系統的一個基本單位。對象標識:對象的名字,供系統內部唯一地識別對象。屬性:狀態或數據,描述對象的靜態特征。有時稱作成員變量或變量服務:操作、行為、方法等,描述對象的動態特征封裝是對象的一個重要原則。含有2層含義:第一,對象是其全部屬性和全部服務緊密結合而形成的一個不可分割的整體;第二,對象是一個不透明的黑盒子,表示對象屬性的數據和實現操作的代碼都被封裝在黑盒子里面。使用一個對象的時候,只需要知道它向外界提供的接口形式,無須知道它的數據結構細節和實現操作的算法。類:具有相同屬性和服務的一個或一組對象的抽象定義。一個具體的對象被稱為類的一個實例。繼承與多態性繼承:特殊類的對象擁有其一般類的全部屬性和服務,稱作特殊類對一般類的繼承多態性:一般類中定義的屬性或服務被特殊類繼承之后,可以具有不同的數據類型或表現出不同的行為多態有多種不同的形式,其中參數多態和包含多態稱為通用多態,過載多態和強制多態稱為特定多態。綁定:是一個把過程調用和響應調用鎖需要執行的代碼加以結合的過程。編譯時進行為靜態綁定,運行時進行的為動態綁定。消息通信消息包含的信息:提供服務的對象標識、消息名、輸入信息、回答信息消息通信與對象的封裝原則密不可分。封裝使對象稱為一些各司其職、互不干擾的獨立單位;消息通信則為它們提供了唯一合法的多態聯系途徑,使他們的行為能夠互相配合,構成一個有機的系統面向對象方法學的優點與人類習慣的思維方法一致、穩定性好、可重用性好、較易開發大型軟件產品、可維護性好面向對象的分析OMT方法簡介OMT方法的OOA模型包括對象模型、動態模型、功能模型對象模型表示靜態的、結構化的系統的“數據”性質動態模型表示瞬時的、行為化的系統的“控制”性質,規定了對象模型中的對象的合法變化序列,通常用狀態圖表示功能模型表示變化的系統的“功能”性質,它指明了系統應該做什么,通常用數據流圖表示各個模型之間的關系:動態模型展示了對象模型的每個對象的狀態及它接受事件和改變狀態時所執行的操作;而功能模型中的處理則對應于對象模型中的對象所提供的服務。對象模型展示了動態模型中誰改變了狀態和經受了操作;而功能模型中的處理則可能產生動態模型中的事件對象模型展示了功能模型中的動作者、數據存儲、流的結構;而動態模型展示了功能模型中執行加工的順序。建立對象模型確定類與對象確定結構和關聯一般——特殊結構一般——特殊關系整體——部分結構整體——部分關系實例關聯:一個類的屬性中含有另一個類的實例(對象),它反映了對象之間的靜態聯系消息關聯:一個對象在執行自己的服務時需要通過消息請求另一個對象為它完成某個服務,它反映了對象之間的動態聯系劃分主題定義屬性定義服務建立動態模型編寫典型交互行為的腳本從腳本中提取出事件,確定觸發每個事件的動作對象及接受事件的目標對象排列事件發生的次序比較各個對象的狀態圖,檢查它們之間的一致性,確保事件之間的匹配建立功能模型面向對象的設計OOA與OOD的關系設計問題域部件設計人機交互部件設計任務管理部件設計數據管理部件統一建模語言看UML圖看UML圖UML(UnifiedModelingLanguage,統一建模語言)是用于系統的可視化建模語言,可應用于很多領域,如工作流程、業務領域UML是一種語言:軟件藍圖的標準語言UML是一種可視化語言:一組圖形符號UML是一種可用于詳細描述的語言:所建的模型是精確地、無歧義的和完整的UML是一種構造語言:與各種編程語言直接相連,而且有較好的映射關系UML是一種文檔化語言:適用于建立系統體系結構及其所有的細節文檔UML是一種建模語言而非是一種方法,其中并不包括過程的概念,其本身是獨立于過程的,可以再使用過程中使用它。不過與UML結合最好的是用例驅動、以構架為中心的、迭代的、增量的開發過程。UML圖形用例圖:對需求進行建模類圖和對象圖:揭示了系統的結構順序圖:對象之間動態的交互協作圖:對象交互關系和鏈接關系狀態圖:對象狀態和事件之間的關系活動圖:各種活動的次序構件圖部署圖軟件開發模型瀑布模型(考點)生命周期:制定計劃、需求分析、軟件設計、編碼、軟件測試、運行維護等六個基本程序優點可強迫開發人員采用規范的方法;嚴格規定了各個階段必須要提交的文檔;要求每個階段結束后,都要進行嚴格的評審缺點:過于理想化,缺乏靈活性無法在開發規程中明確客戶難以確切表達的需求快速原型模型(考點)一般需求不太明確的時候使用、中小型項目//需要迅速建造一個可以運行的軟件原型,以便理解和澄清問題,使開發人員與用戶達成共識,最終在確定的客戶需求基礎上開發客戶滿意的軟件產品。快速原型模型允許在需求分析階段對軟件的需求進行初步而非完全的分析和定義,快速設計開發出軟件系統的原型,該原型向用戶展示待開發軟件的全部或部分功能和性能;用戶對該原型進行測試評定,給出具體改進意見以豐富細化軟件需求;開發人員據此對軟件進行修改完善,直至用戶滿意認可之后,進行軟件的完整實現及測試、維護。達到目的后拋棄原型//快速原型模型需要迅速建造一個可以運行的軟件原型,以便理解和澄清問題,使開發人員與用戶達成共識,最終在確定的客戶需求基礎上開發客戶滿意的軟件產品。快速原型模型允許在需求分析階段對軟件的需求進行初步而非完全的分析和定義,快速設計開發出軟件系統的原型,該原型向用戶展示待開發軟件的全部或部分功能和性能;用戶對該原型進行測試評定,給出具體改進意見以豐富細化軟件需求;開發人員據此對軟件進行修改完善,直至用戶滿意認可之后,進行軟件的完整實現及測試
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論