軟考系統分析師第一章要點知識
第一章
1、軟件的概念:軟件是一種邏輯實體,而不是具體的物理實體
軟件(software)是計算機系統中與硬件(hardware)相互依存的另一部分,它包括程序(program)、相關數據(data)及其說明文檔(document)。
其中:程序--按事先設計的功能和性能要求執行的指令序列;數據--使程序能正常操操縱信息的數據結構;文檔--與程序開發、維護和使用有關的圖文材料。
2、軟件的特點:軟件的生產與硬件不同;軟件沒有明顯的制造過程。一旦研制開發成功,就可以大量拷貝同一內容的副本。軟件對硬件和環境有著不同程度的依賴性。這導致了軟件移植的問題。軟件的開發至今尚未完全擺脫手工作坊式的開發方式,生產效率低。軟件是復雜的,而且以后會更加復雜。軟件工作牽涉到很多社會因素。軟件的運行和使用期間,沒有硬件那樣的機械磨損,老化問題。
3、軟件的分類:
1.基于軟件功能:系統軟件(OS,DBMS)、 支撐軟件(各種軟件開發包等)、 應用軟件(各種MIS系統)。
2.基于軟件工作方式: 實時處理軟件、分時軟件、交互式軟件、批處理軟件。
3.基于軟件規模:微型軟件、小型軟件、中型軟件、大型軟件、甚大型軟件、超大型軟件。
4、系統開發的生命周期:系統開發生命周期(Software Development Life Cycle,SDLC)是指這樣的一個過程,包括:理解信息系統對業務需求的支持,設計系統,構建系統,以及把系統移交給用戶。計劃、分析、設計、實現。
各階段的任務及結束標志
計劃階段是理解為什么要創建信息系統和確定項目團隊將如何來開發它的基本過程。計劃階段由2個步驟組成:
1)在項目啟動期間,要確定系統給組織帶來的業務價值。主要通過技術可行性、經濟可行性、組織可行性分析來完成。
2)項目批準后,進入項目管理。
分析:分析階段說明此系統由誰來用,用作什么,在哪里用,以及什么時候用這些問題。在此階段,項目團隊調查現有系統,確定可改進的地方,以及開發新系統的方案。主要步驟如:
1)開發分析策略來指導項目團隊工作。
2)收集需求。
3)分析結果,系統方案和模型組合成系統建議書。
設計:設計階段確定系統將如何運行,涉及硬件、軟件和網絡基礎設施;將要使用的用戶界面,窗口、窗體和報表;所需的專用程序、數據庫和文檔。具體步驟如下:
1)創建設計策略。
2)開發系統的基本架構設計,描述要用到的軟、硬件和網絡設施。
3)開發數據庫和文檔規格。
4)開發程序設計規格,定義需要編寫的程序和每個程序確切要做的事情。
實現階段是SDLC的最后階段,是系統實際構建階段。主要步驟如下:
1)系統構建。
2)系統安裝。
3)建立系統的支持計劃。
5、系統開發方法:結構化和面向對象
結構化:(1)、瀑布式開發
每個階段都是在前一階段完成的基礎之上才進行。
優點: 系統中編程之前就已確定; 項目進行期間變動不大。
缺點: 編程之前需要充分的設計; 需求的變動無法及時得到解決。
(2)、并行開發:在概要設計完成之后分成多個子系統,然后分別進行設計和實現,最后再組合成一個系統。
優點: 提高了項目開發的效率。
缺點: 子項目間可能會相互影響; 項目中加入了子項目的集成。
(3)、快速應用開發(Rapid Application Development,RAD)是指結構化方法的基礎上創建,用于解決結構化方法中的編程之前需要充分設計和在開發過程中需求變更無法得到及時響應的缺點,使用RAD,可以使系統的部分功能更快的開發并提交給用戶。
遵循RAD的方法主要有:過程為中心,數據為中心,面向對象。
。4)、敏捷開發(Agile Development)是一種新興的開發方法,它是以編程為中心,注重簡化過程,強調迭代式的開發。
遵循敏捷開發的方法主要有:極限編程(eXtremeProgramming,XP),Scrum和動態系統開發方法(Dynamic Systems Development Method,DSDM)。
開發方法的選擇主要考慮以下因素:
用戶需求的清晰度、技術的屬性程度、系統復雜度、系統可靠性、項目的時間進度要求、項目的進度可見性。
6、文檔項目文檔包括所有的可交付物,有關該項目的歷史記錄。常見的文檔:可行性研究報告;各種計劃、需求分析、系統各種設計、程序代碼,測試腳本,數據庫腳本等,各種分析報告。