本堂課系統分析會教什麼?

  • 分析
  • 設計
  • 流程
  • 工具與方法 (維護、更新一點點)

南山失敗主要的錯誤原因?

  • 錯誤1:專案規劃的野心太大
  • 錯誤2:需求訪談不夠仔細,專案預算失控
  • 錯誤3:領導人強勢,團隊專業能力不足

姓名

  • 林至中JLin

電話分機

3420

電郵

jlin@mail.mcu.edu.tw

CH1

說明 類別、物件、封裝、繼承、多形 並Java舉出範例 說明類別、物件、封裝、繼承跟多型

  • 類別:定義同一類別所有對象的變數和方法的藍圖或原型
// 類別
class 學生{
	String name;
	int grade;
 
	int calc(){
		return grade;
	}
}
  • 物件:類別實例化
學生 student = new 學生()
  • 封裝:把有必要的內容對外來公開,沒有必要讓別人看到的內容則隱藏起來。
class 學生{
	private String N;
	public String getN(){
		return N;
	}
	public void setN(String Name){
		N = Name;
	}
}
  • 繼承:基於某個父類別對物件的定義加以擴充,子類別可以繼承父類別原來的某些定義,並也可能增加原來的父類別所沒有的定義,或者是重新定義父類別中的某些特性。
class 研究生 extends 學生{
	private String thesis;
	private Teacher teacher;
 
	public String getThesis(){
		return thesis;
	}
	public void setThesis(String thesis){
		this.thesis = thesis;
	}
	public void setTeacher(Teacher teacher){
		this.teacher = teacher;
	}
	public Teacher getTeacher(){
		return teacher;
	}
 
}
  • 多型:為不同資料類型的實體提供統一的介面。
//研究生繼承自學生
q1 = new 研究生();
q2 = new 研究生();
 
s1 = q1;  //可,因研究生為學生
q1 = s1; //不可,因為學生不一定能滿足研究生

瀑布式(按部就班)與統一式發展程序的特性與適用情況為何? 瀑布:按部就班,一個階段做完後,才做下一個階段,每個階段完成都要經由使用者確認。

適用於很有經驗、知道需求大概什麼

統一程序:反覆式發展、反覆並漸增式的發展、接受改變並調整與適應、時間區間的概念

適用於需求不斷變化的大型程序

系統分析師的基本能力

  1. 資訊技術能力
  2. 邏輯分析能力
  3. 企業領域知識
  4. 人際溝通技能

CH2

  1. 哪五個圖?之間的相關性是什麼?
一、描述使用案例並描繪出使用案例圖。
二、將使用案例敘述,轉換成為操作的方式,就是操作互動系統循序圖,了解使用者與系統操作互動。
三、設計出循序圖後,尋找概念類別,並描繪關於系統內部需要的類別以完成功能物件的初步類別領域類別圖
四、初步類別圖找出類別操作加入類別圖中,修改就成了設計類別圖。
五、類別圖所描繪的物件合作、有次序地完成功能的圖是物件合作循序圖

物件合作設計循序圖跟細部類別設計類別圖是分析階段,操作互動、初步類別是設計階段

CH3

  1. 什麼是FURPS? 需求分為功能需求(Functional Requirement),以及非功能需求(Nonfunctional Requirement) 非功能需求的目標:
  2. 可用性 Usability
  3. 可靠性 Reliability
  4. 績效性 Performance
  5. 安全性 Security