資源描述:
《面向?qū)ο筌浖こ獭酚蓵T上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、董威面向?qū)ο筌浖こ虈揽萍即髮W計算機學院12021/7/241面向?qū)ο蟮能浖_發(fā)方法學OO的思想體系OO的方法:OOA(面向?qū)ο蟮男枨蠓治龇椒?OOD(面向?qū)ο蟮能浖O計方法)OOT(面向?qū)ο蟮能浖y試方法)OO的開發(fā)過程OO的開發(fā)工具主要內(nèi)容22021/7/242主要內(nèi)容3OO的思想體系OOAOODOOT基于OO的軟件開發(fā)過程OO支持工具/環(huán)境2021/7/2431.掌握面向?qū)ο蟮能浖_發(fā)方法學面向?qū)ο蟮乃枷塍w系面向?qū)ο蟮男枨蠓治?、軟件設計的技術和方法面向?qū)ο蟮能浖_發(fā)工具課程目標2.能夠熟練利用面向?qū)ο蟮姆椒ā⒓夹g和工
2、具,進行大、中型軟件項目的需求分析、軟件設計和軟件測試43.為未來從事軟件方法學的進一步研究奠定軟件工程方面的基礎2021/7/2441.在實踐中體會面向?qū)ο蟮能浖_發(fā)方法學的思想、方法和技術,在實踐中提高學習方法2.課外實踐與課堂教學同步展開53.培養(yǎng)自頂向下的抽象思維能力4.培養(yǎng)獨立解決問題的能力和合作精神2021/7/2451.《軟件工程》,齊治昌、譚慶平、寧洪,高等教育出版社,2004參考書目2.《UML精粹》,MartinFowler,中譯本,20023.《UML應用建模實踐過程》,尤克濱,機械工業(yè)出版社,2003
3、64.《MasteringUMLwithRationalRose》,電子工業(yè)出版社,20005.《統(tǒng)一軟件開發(fā)過程》,IvarJacobson,et.al,機械工業(yè)出版社,20022021/7/2461.問題描述建立自動柜員機(ATM)系統(tǒng)軟件。整個ATM系統(tǒng)包括ATM、中央服務器、ATM系統(tǒng)軟件及界面軟件。ATM系統(tǒng)軟件的任務是處理ATM與銀行電腦之間的交易:查賬存款取款使用本系統(tǒng)的銀行有多家。每家銀行都有各自的電腦系統(tǒng),處理其客戶的帳號和交易。所有ATM均通過一臺中央服務器與每家銀行的電腦系統(tǒng)通信。對所有從ATM上發(fā)生的
4、交易,必須記錄詳細的日志信息。必須考慮系統(tǒng)未來的擴展,如增加Web客戶端。面向?qū)ο蟮拈_發(fā)過程概覽72021/7/2472.OOA(建立問題的OOA模型)面向?qū)ο蟮拈_發(fā)過程概覽82021/7/2483.OOD(描述OOA模型中的對象如何協(xié)作完成任務)面向?qū)ο蟮拈_發(fā)過程概覽92021/7/2493.OOD(描述OOA模型中的對象如何協(xié)作完成任務)面向?qū)ο蟮拈_發(fā)過程概覽102021/7/24104.OOP(根據(jù)OOD模型生成C++/Java程序)面向?qū)ο蟮拈_發(fā)過程概覽11classCATM:publicCAgent{public:
5、CATM(CStringstrId,CStringstrName,CStringstrLocation);virtual~CATM();public://get/setfunctionsCStringgetLocation()const;//commandfunctionsintlogin(CCard*pCard,CStringstrPsw,int*pnSessionId);intlogout(intnSessionId);private:CStringm_strLocation;};2021/7/24114.OOP(根據(jù)O
6、OD模型生成C++/Java程序)面向?qū)ο蟮拈_發(fā)過程概覽12classCAccount{public:CAccount(CStringstrCustomerId,CStringstrCustomerName,floatfInitSaving);virtual~CAccount();public://get/setfunctionsCStringgetCustomerID()const;CStringgetCustomerName()const;//commandfunctionsintdeposit(floatfAmount
7、,intnDurationType);intdraw(floatfAmount);private:TransactionRecordm_transactionRecord;};2021/7/2412面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法的區(qū)別13OO方法:對現(xiàn)實世界中的實體或者概念對象分進行建模對象各負其責對象通過消息進行協(xié)同,完成復雜的任務結(jié)構(gòu)化方法:研究功能分解的方法通過復雜的功能組合實現(xiàn)系統(tǒng)功能2021/7/2413直觀、自然、簡單支持遞增式開發(fā)支持軟件重用軟件結(jié)構(gòu)更科學,更能夠適應未來變化……面向?qū)ο蠓椒ǖ膬?yōu)越性142021/7/
8、2414第一章軟件工程概論§1.2軟件工程的原則§1.1軟件工程的目標§1.3軟件質(zhì)量控制15§1.4軟件工程與軟件開發(fā)實踐2021/7/2415在給定成本、進度的前提下,開發(fā)出具有:§1.1軟件工程的目標正確性、可靠性、有效性、18可理解性、可修改性、可維護性、可移植性、可重用性和可追蹤