第一章軟件工程導論
,單擊此處編輯母版標題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,單擊此處編輯母版標題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,單擊此處編輯母版標題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,單擊此處編輯母版標題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,高級軟件工程,張驥先,,導言,你們學,過,過軟件,工,工程這,門,門課嗎,?,?,軟件工,程,程這門,課,課是講,什,什么的,?,?,你們覺,得,得軟件,工,工程這,門,門課有,意,意思嗎,?,?,課程目,的,的,體驗軟,件,件工程,各,各階段,的,的主要,工,工作,,特,特別注,意,意吸取,教,教訓;,學會與,他,他人合,作,作,培,養(yǎng),養(yǎng)團隊,精,精神。,現在開,始,始,,分,分組(,每,每組,3,人左右,),),組長責,任,任,組長負,責,責:組,織,織、分,工,工、控,制,制進度,;,對每個,組,組員成,績,績有,5,分浮動,調,調整權,;,;,組長獎,罰,罰:引,起,起過半,數,數組員,不,不滿,,改,改選組,長,長;,帶領全,組,組順利,完,完成任,務,務,總,評,評,+5,。,成績評,定,定:課,堂,堂發(fā)言,40,項目,60,分,時間(,進,進度),安,安排,14周,項目調研,工具學習,5周,確定各小組的項目內容,67周,需求設計演講,89周,分析設計演講,10,11,周,系統設計演講,1,2,1,3,周,對象設計演講,1,0,1,6,周,編碼,17,周,測試設計及結果演講,18,周,系統交付,進行總結,參考教,材,材,面向對,象,象軟件,工,工程,-,使用,UML,、模式,與,與,JAVA,,第三,版,版清華,大,大學出,版,版社,OBJECT-ORIENTEDSOFTWAREENGINEERINGUsing UML,,,Patterns,,,andJava,,,ThirdEdition,1.1,軟件工,程,程的失,誤,誤,iPhone4,手機每,年,年元旦,鬧,鬧鐘失,靈,靈,玉兔號,故,故障,CSDN,社區(qū)的,密,密碼泄,露,露事件,軟件設,計,計、開,發(fā),發(fā)周期,、,、安全,1.2,什么是,軟,軟件工,程,程,軟件工,程,程是一,項,項,創(chuàng)造性,的,的,活動,軟件工,程,程是一,項,項,事物基,本,本原理,指,指導的,活動,軟件工,程,程是一,項,項,建模,活動,軟件工,程,程是一,項,項,實現,活動,1.2,什么是,軟,軟件工,程,程,建模,對系統,抽,抽象的,表,表示,,可,可以了,解,解未知,的,的系統,和,和領域,恐龍骨,骼,骼,原,始,始人壁,畫,畫、青,銅,銅器,應用域,模,模型,從用戶,角,角度去,描,描述的,系,系統,有什么,功,功能(,功,功能性,需,需求),如何操,作,作(交,互,互設計,),),性能如,何,何(非,功,功能性,需,需求),界面美,觀,觀嗎(,界,界面設,計,計),解答域,模,模型,從開發(fā),者,者的角,度,度去描,述,述的系,統,統,評,估,估具體,實,實現時,不,不同的,方,方案,采用定,制,制的硬,件,件還是,基,基于普,通,通,pc,采用,Windows,還是,Linux,采用,j2ee,技術還,是,是,.net,BS,架構還,是,是,CS,架構,面向對,象,象的方,法,法將應,用,用域建,模,模和解,答,答域建,模,模合二,為,為一,采用,UML,對應用,域,域及解,答,答域建,模,模,然,后,后將其,轉,轉化為,具,具體實,現,現,一般問,題,題求解,-,軟件工,程,程,明確問,題,題,-,需求獲,取,取,分析問,題,題,-,需求分,析,析,尋找解,決,決方案,-,系統設,計,計,選定合,適,適的解,決,決方案,-,對象設,計,計,執(zhí)行方,案,案,-,實現,基本原,理,理,了解系,統,統及其,功,功能是,不,不夠的,,,,還需,要,要了解,背,背后的,原,原理,洗手臺,設,設置高,低,低兩個,位,位置,手機上,的,的,home,鍵,IC,卡電話,機,機非常,結,結實,.,例子,開發(fā)一,個,個系統,所,所需的,必,必要前,提,提,市場,,心,心理學,,,,行為,學,學,目,標,標人群,,,,專業(yè),知,知識等,例如,HP,的,WebOS,,手機,研,研發(fā)出,來,來后發(fā),現,現運營,商,商,應,用,用開發(fā),者,者,用,戶,戶觀念,都,都跟不,上,上,而,且,且沒有,一,一個好,的,的盈利,模,模式。,1.3,軟件工,程,程概念,參與者,參與到,項,項目中,的,的所有,人,人員,角色,分配了,具,具體職,責,責的參,與,與者,客戶,-,負責系,統,統的高,層,層需求,用戶,-,系統最,終,終的使,用,用者,開發(fā)者,-,負責系,統,統設計,及,及開發(fā),測試人,員,員,-,負責系,統,統的測,試,試,模型,在系統,未,未完成,之,之前對,系,系統的,各,各種抽,象,象表示,硬件如,房,房屋設,計,計圖,,水,水電布,線,線圖,軟件如,類,類圖,,對,對象圖,,,,序列,圖,圖,活,動,動圖,系統,需要完,成,成的系,統,統,文檔,操作手,冊,冊(可,交,交付),規(guī)格說,明,明(可,交,交付),需求、,分,分析、,狀,狀態(tài)報,告,告(內,部,部工作,產,產品),可運行,程,程序(,可,可交付,),),代碼(可交,付,付,內部工,作,作產品),活動,為完成某一,具體目的,而實施的行,為,為,如項目,中,中需求獲取,、,、交付產品,、,、周例會、,月,月例會、評,審,審會等,任務,可實施,、,可管理,的具體工作,,,,如本周完,成,成,JPEG,解碼庫的移,植,植,本月完,成,成,1,公里的高速,公,公路建設,資源,人力,設備(硬件,,,,軟件等),時間,功能性需求,系統必須支,持,持功能的規(guī),格,格說明,播放器具有,在,在線聽歌的,功,功能,相機具有實,時,時錄像的功,能,能,汽車具有,ABS,防抱死功能,非功能性需,求,求,是對系統運,行,行的一些約,束,束,指導著,系,系統如何去,實,實現,用戶點擊后,反,反饋時間不,得,得超過,0.3,秒,界面針對,25,歲以下群體,設,設計,并發(fā)訪問量,有,有,10,萬,1.4,軟件工程開,發(fā),發(fā)活動,需求獲取,分析,系統設計,對象設計,實現,測試,需求獲取,客戶和開發(fā),者,者定義系統,目,目標,其結,果,果是使用,參與者,和,用例,來描述系統,,,,包括功能,性,性需求和非,功,功能性需求,用例名稱,購買單程車票,參與者,旅客,事件流,1.,旅客選擇始發(fā)地和目的地,2.,售票系統顯示價格,3.,旅客投入不少于價格的錢,4.,售票系統輸出指定車票并找回多余的錢,入口條件,旅客站到售票系統前,出口條件,旅客拿到了車票和找回的錢,質量需求,如果系統超過一分鐘沒有結果則退回投入的錢,分析,將需求分析,中,中產生的用,例,例轉化,順序圖,和,狀態(tài)圖,系統設計,體系結構,-,選擇構建系,統,統的策略,,完,完成軟件,/,硬件部署圖,定制硬件,,還,還是普通,PC,加個觸摸屏,Linux,,,Windows,J2EE,.NET,B/S,C/S,模塊劃分,-,把系統分解,成,成為單個團,隊,隊可實現的,較,較小子系統,相關對象的,內,內聚,對外提供服,務,務(接口),對象設計,準確描述對,象,象及子系統,接,接口,優(yōu)化對象模,型,型,完善,類圖,及,對象圖,實現,用面向對象,語,語言將之前,的,的設計實現,測試,單元測試(,代,代碼是否與,設,設計相符,,開,開發(fā)人員完,成,成),集成測試(,功,功能是否與,需,需求相符,,測,測試人員完,成,成),1.5,管理軟件開,發(fā),發(fā),溝通,最關鍵,最,耗,耗時的活動,約定俗成:,UML,圖,文檔模,板,板,會議記,錄,錄模板,統,一,一術語。,交流:月例,會,會,周例會,,,,關鍵技術,討,討論,配置管理,代碼版本維,護,護,項目文,檔,檔管理,通,信,信系統(郵,件,件,,IME,,,FTP,),項目管理,制定計劃,,里,里程碑,階,段,段性驗證總,結,結,1.6,思考,為騰訊公司,設,設計一部手,機,機,你怎么,考,考慮這個問,題,題?,下列描述的,基,基本原理是,什,什么?,公交站臺要,高,高出路面?,為什么,iPhone,的屏幕尺寸,不,不超過,4,寸,而,Samsung,的手機一般,都,都超過,4,寸,女性使用的,手,手機設計應,該,該考慮哪些,基,基本原理?,藍牙耳機的,通,通話時間不,超,超過,6,個小時?,下列那些是,功,功能性需求,,,,哪些是非,功,功能性需求,瀏覽器支持,html5,、,css2,及,JavaScript,程序開發(fā)語,言,言使用,Java,點擊開機鍵,后,后點亮屏幕,不,不能超過,1.5,秒鐘,下面哪些項,是,是在需求分,析,析或者系統,設,設計時決定,的,的,播放器必須,提,提供歌詞同,步,步功能,播放器服務,器,器采用,J2EE,架構開發(fā),播放器針對,Android,平臺開發(fā),以前,Android,系統每安裝,新,新的應用時,會,會將新安裝,的,的應用放在,菜,菜單的第一,個,個,而現在,Android,系統會將新,安,安裝的圖標,放,放在菜單的,最,最后一個,,你,你如何看待,這,這個問題?,