Q9.
當我們嘗試由原始程式碼來推測其軟體設計時,我們是在作下列何項工作?
電腦軟體設計共同科目 · 乙級 · Q9
難易度分析
3 / 5
本題要求考生能精確區分軟體維護中數個相似的專業術語。由於選項中包含多個容易混淆的相關概念,必須對各項定義有明確的掌握才能做出正確判斷。
正確答案:②反向工程 (Reverse Engineering)
② 反向工程 (Reverse Engineering):反向工程(Reverse Engineering) 正是從既有原始程式碼或可執行檔出發,透過分析推導出系統的設計規格、架構圖或文件,屬於軟體維護階段的重要技術手段。
錯誤選項解析
- ① 企業流程再造(Business Process Reengineering):企業流程再造(BPR) 是針對企業營運流程進行根本性重新設計以提升績效,與從原始程式碼推測軟體設計無關,其焦點在於組織管理層面而非技術分析。
- ③ 軟體工程再造(Software Reengineering):軟體工程再造 是在反向工程取得設計資訊後,進一步對系統進行重構、重寫或架構改善的完整過程,涵蓋範圍比單純從程式碼推測設計更廣泛。
- ④ 重整 (Refactoring):重整(Refactoring) 是在不改變軟體外部行為的前提下改善內部結構,屬於程式碼優化技術,而非從程式碼逆向推導設計文件的分析工作。
Learning Tip
"本題核心考點在於區分反向工程(由程式碼推導設計文件)與軟體再造(反向工程+正向工程的完整循環)的差異。常考陷阱是將重整與反向工程混淆——重整僅改善程式碼結構,不涉及設計文件的產出。實務上,反向工程常用於遺留系統(Legacy System) 的維護與文件補齊。"
學員答題分佈
①企業流程再造(Business Process Reengineering)0%
②反向工程 (Reverse Engineering)0%
③軟體工程再造(Software Reengineering)0%
④重整 (Refactoring)0%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!