1 數位家庭軟體工程簡介 Deron Liang 1. 2 Agenda Digital Home Applied Area of Digital Home...
-
date post
22-Dec-2015 -
Category
Documents
-
view
229 -
download
4
Transcript of 1 數位家庭軟體工程簡介 Deron Liang 1. 2 Agenda Digital Home Applied Area of Digital Home...
1
數位家庭軟體工程簡介數位家庭軟體工程簡介Deron LiangDeron Liang 1
2
AgendaAgenda
Digital HomeApplied Area of Digital HomeInfrastructure of Digital HomeNon-Functional Requirements of
Digital HomeSoftware Engineering
Digital HomeApplied Area of Digital HomeInfrastructure of Digital HomeNon-Functional Requirements of
Digital HomeSoftware Engineering
2
3
數位家庭平台架構圖 數位家庭平台架構圖
4
居家保全 ( 技術、應用與服務 )
居家保全 ( 技術、應用與服務 )
*Portability*Reliability*Fault Tolerance*Security*Performance*…
5
家庭娛樂 ( 技術、應用與服務 )
家庭娛樂 ( 技術、應用與服務 )
*Portability*Reliability*Performance*…
6
家庭網路 ( 技術、應用與服務 )
家庭網路 ( 技術、應用與服務 )
7
居家照顧 ( 技術、應用與服務 )
居家照顧 ( 技術、應用與服務 )
*Portability*Reliability*Fault Tolerance*Performance*Security*…
8
Non-Functional RequirementsNon-Functional Requirements
應用需求 居家保全 家庭娛樂 居家照顧
Portability V V V
Reliability V V V
Fault Tolerance
V N/A V
Security V N/A V
Performance V V V
… … … …
9
數位家庭軟體工程 數位家庭軟體工程
10
What is the System Development Cycle?
What is the System Development Cycle?
What is an information system (IS)?
What is an information system (IS)?
10
Hardware, software, data, people, and procedures that
work together to produce quality information
Hardware, software, data, people, and procedures that
work together to produce quality information
System—Set of components that interact to achieve
common goal
System—Set of components that interact to achieve
common goal
Businesses use many types of systems
Businesses use many types of systems
11
Software EngineeringSoftware Engineering
Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software or information system.
Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software or information system.
11
Arrange tasks into phases (groups of activities)
Arrange tasks into phases
Develop clearly defined standards(procedures company expects employees to follow)
Involve users(anyone for whom system is being built)
12
Software life cycleSoftware life cycle
12
Software Requirement Specification
Software Requirement Specification
System Design Document
System Design Document User ManualUser Manual
Analysis( 分析 )
Analysis( 分析 )
2
Planning( 計畫 )
Planning( 計畫 )
1
Implementation
( 實做 )
Implementation
( 實做 )
4 Testing( 測試 )Testing( 測試 )
5Design( 設計 )Design( 設計 )
3
Ex. 6
Test Document
Test Document
Maintenance
( 維護 )
Maintenance
( 維護 )
6
13
PlanningPlanning
To answer the question why to do this system( 為什麼要做這系統 )
The company had the gain from the system( 實質利益有哪些 )
To answer the question why to do this system( 為什麼要做這系統 )
The company had the gain from the system( 實質利益有哪些 )
13
14
Planning(cont.)Planning(cont.)
The methods of estimationOperational Feasibility( 操作性分析 )
系統開發完成後能夠有效被利用嗎Technical Feasibility( 技術可行性 )
評估系統開發相關技術,包含硬體、軟體技術取得、支援以及維護
Economic Feasibility( 經濟可行性 )評估系統開發的成本,系統能為企業帶來經濟
效益、系統維護成本之問題
The methods of estimationOperational Feasibility( 操作性分析 )
系統開發完成後能夠有效被利用嗎Technical Feasibility( 技術可行性 )
評估系統開發相關技術,包含硬體、軟體技術取得、支援以及維護
Economic Feasibility( 經濟可行性 )評估系統開發的成本,系統能為企業帶來經濟
效益、系統維護成本之問題
14
15
AnalysisAnalysis
To answer the question what to do this system( 系統要做什麼 )
Try to understand the functions that system should supply( 系統要提供什麼功能 )
Write down the Software Requirements Specification(SRS)( 軟體需求規格文件 )
To answer the question what to do this system( 系統要做什麼 )
Try to understand the functions that system should supply( 系統要提供什麼功能 )
Write down the Software Requirements Specification(SRS)( 軟體需求規格文件 )
15
16
Steps of AnalysisSteps of Analysis
16
Software Requirements Specification
Functional Requirement( 功能性需求 )
Functional Requirement( 功能性需求 )
Requirement Analysis( 需求分析 )
Requirement Analysis( 需求分析 )
Requirement Elicitation( 需求擷取 )
Requirement Elicitation( 需求擷取 )
Scenario
( 劇本 )
Scenario
( 劇本 )Use Case( 使用案
例 )Use Case Diagram
( 使用案例圖 )
Use Case( 使用案例 )
Use Case Diagram
( 使用案例圖 )
17
Requirement ElicitationRequirement Elicitation
Collect data from existed system( 從既有的系統做資料收集 )
Understand knowledge before system developed( 系統開發前的預備知識 )
Communicate with customers and domain expert( 客戶或領域專家溝通 )
Understand the workflow of process in existed systems( 解系統既有的活動流程 )
Collect data from existed system( 從既有的系統做資料收集 )
Understand knowledge before system developed( 系統開發前的預備知識 )
Communicate with customers and domain expert( 客戶或領域專家溝通 )
Understand the workflow of process in existed systems( 解系統既有的活動流程 )
17
18
Requirement Elicitation(cont.)
Requirement Elicitation(cont.)
Review Document( 既有的報表與表單 )
Questionnaire( 問卷 ) Interview( 訪談紀錄 )
訪客利用網際網路查詢課程介紹,當訪客進入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
…
Session( 定期開會 )
Review Document( 既有的報表與表單 )
Questionnaire( 問卷 ) Interview( 訪談紀錄 )
訪客利用網際網路查詢課程介紹,當訪客進入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
…
Session( 定期開會 )18
19
Requirement AnalysisRequirement Analysis
Convert the description of the result of Requirement Elicitation to Functional Requirements
訪客利用網際網路查詢課程介紹,當訪客進入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
Convert the description of the result of Requirement Elicitation to Functional Requirements
訪客利用網際網路查詢課程介紹,當訪客進入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
19
Functional
20
ScenarioScenario
The executing steps about the function
Function may have variety of executing steps訪客利用網際網路查詢課程介紹,當訪客進
入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
The executing steps about the function
Function may have variety of executing steps訪客利用網際網路查詢課程介紹,當訪客進
入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
20
Request Response
1. 訪客瀏覽教學網站首頁 2 . 顯示課程清單
3. 訪客點選課程項目 4. 顯示課程詳細介紹畫面
21
Use CaseUse Case
Combine each of Function with the Functional Requirements and Scenarios to a integrated description, that is Use Case Function Name( 使用案例名稱 ) Description( 描述 ) Actor( 參與者 ) Pre-Condition( 使用前提 ) Post-Condition( 成功後狀態 ) Scenario( 劇本 ) Appendix( 附註 )
Combine each of Function with the Functional Requirements and Scenarios to a integrated description, that is Use Case Function Name( 使用案例名稱 ) Description( 描述 ) Actor( 參與者 ) Pre-Condition( 使用前提 ) Post-Condition( 成功後狀態 ) Scenario( 劇本 ) Appendix( 附註 ) 21
22
Use Case(cont.)
Use Case(cont.)
22
Title( 名稱 ) 查詢課程內容Description( 描述 )
主畫面會顯示所有課程,而每個課程都有其介紹的連結,訪客點入後會看到此課程的介紹
Actors( 參予者 ) 訪客Pre-condition( 前提 )
課程介紹必須存在
Post-condition( 成功後狀態 )
已查看到課程的介紹畫面
Scenario( 劇本 )
Appendix( 註釋 )
Request Response
1. 訪客瀏覽教學網站首頁 2 . 顯示課程清單3. 訪客點選課程項目 4. 顯示課程詳細敘述
Scenario
訪客利用網際網路查詢課程介紹,當訪客進入首頁時,系統顯示課程清單。如果有查到想要修的課程項目點選後,則顯示課程詳細介紹畫面。
23
Use Case DiagramUse Case Diagram
Actor( 角色 )Interaction with the
system.Use Case( 使用案例 )
Indicate the function of the system
Associations( 連接線 )Indicate that the function
may be executed by the actor
Actor( 角色 )Interaction with the
system.Use Case( 使用案例 )
Indicate the function of the system
Associations( 連接線 )Indicate that the function
may be executed by the actor 23
訪客
登入系統
新增作業
老師
24
Use Case Diagram(cont.)Use Case Diagram(cont.)
Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors
Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors
24
查詢課程介紹
訪客
Title( 名稱 ) 查詢課程內容Description( 描述 )
…
Actors( 參予者 ) 訪客Pre-condition( 前提 )
…
Post-condition( 成功後狀態 )
…
Scenario( 劇本 ) …
Appendix( 註釋 )
25
Ex.6Ex.6
訪客必須向教學網站註冊,才可以進行修課的動作。至登入畫面時,系統顯示登入表單,訪客必須輸入帳號與密碼後按送出登入到系統。系統查驗登入資料的正確後,顯示個人首頁畫面。
訪客必須向教學網站註冊,才可以進行修課的動作。至登入畫面時,系統顯示登入表單,訪客必須輸入帳號與密碼後按送出登入到系統。系統查驗登入資料的正確後,顯示個人首頁畫面。
25
Request Response
1. 訪客瀏覽登入畫面 2. 顯示登入的表單3. 訪客輸入登入資料 ( 帳號與密碼 ) 後送出
4. 查驗成功後,顯示個人首頁畫面
26
Ex.6 Use Case
Ex.6 Use Case
26
Title 登入系統Description 訪客登入系統,至其相對應的權限頁面
Actors 訪客Pre-condition 已經註冊Post-condition
可以執行其相對應的權限
Scenario
Appendix
Request Response
1. 訪客瀏覽登入畫面 2. 顯示登入的表單
3. 訪客輸入登入資料( 帳號與密碼 ) 後送出
4. 查驗成功後,顯示個人首頁畫面
訪客必須向教學網站註冊,才可以進行修課的動作。至登入畫面時,系統顯示登入表單,訪客必須輸入帳號與密碼後按送出登入到系統。系統查驗登入資料的正確後,顯示個人首頁畫面。
27
Ex.6 Use Case DiagramEx.6 Use Case Diagram
27
登入系統
訪客
Title( 名稱 ) 登入系統Description( 描述 )
…
Actors( 參予者 ) 訪客Pre-condition( 前提 )
…
Post-condition( 成功後狀態 )
…
Scenario( 劇本 ) …
Appendix( 註釋 )