Topic 01 SDLC Methodologies
SDLC 內部步驟
Analysis Phase
- Analysis strategy:研究現有系統與問題
- Requirements gathering:收集需求並建立分析模型
- System proposal:提交提案給專案贊助人決定是否繼續
Design Phase
- Design Strategy:決定內部開發或外部採購
- Architecture Design:描述硬體、軟體與網路基礎設施
- Database and File Specifications:定義資料儲存內容與位置
- Program Design:定義需撰寫的程式與功能
Methodology Selection
六大考量因素:Clarity of User Requirements, Familiarity with Technology, System Complexity,
System Reliability, Short Time Schedules,
Schedule Visibility.
常見方法論速記
- Agile Development:適合 Unclear user requirements 與 Short time
schedules;不適合 Unfamiliar technology 與 Complex systems
- Throwaway Prototyping:最適合 Unfamiliar technology, Complex system,
Reliable system
Feasibility and Cost Benefit
三大可行性:Technical, Economic, Organizational。
效益分類:Tangible benefits 與 Intangible benefits。
Topic 02 Project Management
Project Charter 模板
必背七個標題(按此順序寫):
- Background
- Goals
- Scope
- Key Stakeholders
- Project Milestones
- Project Budget
- Constraints and Assumptions
PERT Chart 鐵律
Forward Pass:遇到多個前置活動,Early Start = 前置活動 EF 的 較大者。
Backward Pass:遇到多個後續活動,Late Finish = 後續活動 LS 的 較小者。
Critical Path:所有 Slack = 0 的活動連線。
Topic 03 Analysis and Design Techniques
Requirement Elicitation
五大技巧:Interviews, Joint Application
Design (JAD), Questionnaires, Document
Analysis, Observation.
七大考量因素:Type of information, Depth of information, Breadth of information, Integration of
information, User involvement, Cost, Combining techniques。
技巧之最:JAD = 最高 User involvement 與 Integration;Interviews =
最高 Type 與 Depth。
UI and Data Code Design
- UI 必畫元件:Proper Title、Logical Layout、Action Buttons [Submit] [Cancel]
- 輸入控制項:Text boxes, Radio buttons, Checkboxes, Drop-down list
- Data Code 三元素公式:Prefix/Category + Sequence number + Check digit/Checksum
- 隱私陷阱:不可使用 HKID 或 Phone number 當作公開會員 ID(Privacy issues / Security threats)
Topic 04 System Construction and Conversion
Conversion Strategy 三個層面
導入新系統時必寫下三個名詞:Conversion style, Conversion locations,
Conversion modules.
常考轉換風格
- Direct conversion:新系統瞬間取代舊系統
- Parallel conversion:新舊系統並行使用一段時間,確認新系統穩定後停用舊系統
Topic 05 Software Quality Assurance
QA 必拿滿分定義
Quality Assurance:"Activities performed throughout the development process."
核心句:"Prevent the causes of errors, and detects and correct them early in the
development process."
考場提示:把 Prevent 與 early 這兩個字標粗體或寫大寫,閱卷者一眼看到關鍵字。
Topic 06 Software Testing and JUnit
四大測試階段
Unit Tests, Integration Tests, System Tests, Acceptance Tests(Alpha / Beta)。
System Testing 目標與方法
測試系統是否符合業務需求,包含 User interface testing, Use scenario testing, Data flow testing, System interface testing
等。
Performance Testing 四大指標
- Throughput
- Response time
- Memory utilization
- Input/output rates
CFG 與 Coverage
- Statement coverage:執行路徑必須踩過所有方塊
- Branch coverage:每個決策的 True 與 False 都要被走過
- Path coverage:窮舉所有可能的完整路線組合
JUnit 測試武器
- Assert.assertEquals(expected, actual) 用於數值比較
- Assert.assertTrue(condition) 用於驗證為真
- Assert.assertFalse(condition) 用於驗證為假
最後叮嚀與考前練習建議
- 在廢紙上默寫粗體英文單字兩次:Project Charter 的 7 個標題、Data Code 的 3 個元素、QA 的定義。
- 針對每個 Topic 做 5 分鐘速背:讀題時先找關鍵字再套模板。
- 練習題型:B1 PERT 題 5 題、B3 UI+DataCode 5 題、B4 CFG 10 題、B5 JUnit 5 題。
- 考場策略:先看題幹找關鍵字,畫草稿再寫正式答案,答題格式清楚、關鍵字到位即可得分。
考場速記口訣
SDLC:Analysis → Design → Implementation;
Project Charter:Background, Goals, Scope, Key Stakeholders, Project Milestones, Project Budget,
Constraints and Assumptions;
Data Code:Prefix + Sequence + Check digit;
Testing:Statement, Branch, Path;
JUnit:AAA → Arrange, Act, Assert。