




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Software Engineering for Digital Home軟體處理程序與需求分析 2-1 導論Presenter: AwaySoftware Engineering for Digital Home什麼是軟體? 電腦程式及相關文件,如要求,設計模型和运用手冊 可以是為某位客戶或普通大眾市場所開發的軟體產品 廣義而言:電腦軟體是指一切能夠控制電腦運作的方法與技術 狹義而言:用各種程式語言所寫成的程式Software Engineering for Digital Home什麼是軟體工程? 軟體工程是一門著重在生產軟體各方面知識的工程學科。 軟體工程簡單的說就是有系統的進行軟體的規
2、劃、分析、設計、程式製作、維護等任务,其目的是運用科學化的方法和技術, 來提高軟體的生產力和軟體的品質。 軟體工程所涵括的範圍很廣,主要包括兩方面內容:軟體發展技術和軟體專案管理。 Software Engineering for Digital Home好的軟體應有那些特性? 這些軟體應該提供所需的功能外,而且也應提供运用者可維護性、可靠性和可接受性 Maintainability可維護性 軟體必須演變,以滿足不斷變化的需求; Dependability可靠性 軟體必須是值得信賴的; Efficiency效率 軟體不應該浪費系統資源; Usability可用性 軟體必須設計讓运用者接受. 這
3、表示它需是可以了解、實用且與其他系統能相容Software Engineering for Digital Home軟體工程主要面對的挑戰是什麼? Heterogeneity, delivery and trust. Heterogeneity(異質性的挑戰) 該运用何種開發技術來建立值得信賴、且可處理一致問題的軟體; Delivery開發時間的挑戰 如何能夠在不降低系統品質的條件下,縮短開發時間; Trust信任度的挑戰 如何開發出能讓軟體展现出他值得运用者信任的技術.Software Engineering for Digital Home專業和品德責任 PUBLIC 軟體工程師應該維護大
4、眾的利益 CLIENT AND EMPLOYER 軟體工程師應該以讓他的客戶和雇主得到最正确利益為職責,並且維護大眾利益 PRODUCT 軟體工程師應該確保他的產品和相關的修正能夠儘能够符合最高的專業標準Software Engineering for Digital Home專業和品德責任 JUDGMENT 軟體工程師在專業判斷上應該維持耿直與中立 MANAGEMENT 軟體工程師的經理人和主觀應該軟體開發與維護上支持與提倡符合品德的管理方法 PROFESSION 軟體工程師應該提昇Software Engineering for Digital Home何謂軟體工程方法 軟體工程方法是開發
5、軟體的一些結構方法,他們的目的是要以符合本钱效益的方式生產出高品質的軟體產品。 在1970年代就已經發表了結構式分析與等方法,這些方法主要是找出系統的根本功能元件。 1980-1990年代,這些功能導向的方法又添加了一些物件導向的功能。現在這些方法已經整合成一個統一個方法,稱為UMLUnified Modeling Language 目前為止,軟體工程方法還在發展中,還沒有一個完全理想的方法出現,而且不同方法有各有不同的適合領域。Software Engineering for Digital Home軟體開發、塑模與溝通 在軟體發展的過程中,因為參與開發過程的成員眾多,所以,有效的溝通非常重
6、要。 舉例來說: 客戶與承包商需求反覆溝通,以获得用戶需求 廠商與廠商之間需求有效溝通,以達成相互协作 而開發團隊內部更必須確保溝通,以保證發展方向正確等等 因此軟體開發能夠順利進行,有效且良好的溝通,是不可或缺的要素。Software Engineering for Digital Home軟體開發、塑模與溝通 但軟體發展與其他的文明建設不同,軟體開發通常不像建築物,具有明確的外觀形貌,也沒有所謂建築藍圖或建築模型以供參考。 在大部分狀況下,軟體發展的根本參考,通常只是用戶需求裡的條列式文句。而一样的文句,每個開發人員能够會做出不同的解釋,更因沒有實體或模型可供參考的狀況下,開發軟體很容易呵
7、斥瞎子摸象的後果,不但需求花更多的時間進行溝通,同時也無法保證軟體產出的品質。Software Engineering for Digital Home軟體開發、塑模與溝通 因此,依循其他傳統的文明建設發展軌跡,如建築藍圖或結構模型等胜利經驗,軟體工程也朝向此一建立可討論的模型目標前進。 有可見的藍圖,總比以文字表示的條文容易了解。更進一步,假设有可見的模型,不僅對整體架構有更明確的概念,同時也可確保開發團隊中的每個成員,都有一样且明確的目標,因此可以事半倍,防止無謂虛耗的困擾。 因此,在軟體工程中,塑模的重要性不言可喻Software Engineering for Digital Home
8、物件導向技術具有封裝、繼承和多型特性的物件導向技術,提供系統發展人員在不添加複雜度的情況下擴大系統的方法,最適合用來發展強調再用的軟體系統。Software Engineering for Digital Home物件導向技術在應用方面具有的特征一、 可經由直接塑模企業物件,讓資訊系統與企業管理完全整合。二、 讓應用系統不受限於執行環境、開發環境、程式語言而能彼此互通。三、 讓發展者可以很容易的再用或修正物件。Software Engineering for Digital Home軟體生命週期 將軟體開發程序加以細分就是所謂的生命週期模型 Requirements Engineering D
9、esign Implementation Testing MaintenanceSoftware Engineering for Digital Home軟體開發或演進的一系列活動Software life cycleDevelopment cycleDesignImplementationTestingMaintenanceRequirementsElicitationSystem designObject designAnalysisRequirementsEngineeringSoftware Engineering for Digital HomeRequirements Engine
10、ering Requirements elicitation focuses on describing the purpose of the system.(Requirements elicitation重點集中於描画系統目的) Requirements engineering包含Requirements Elicitation與Analysis兩階段。Software Engineering for Digital HomeDesign 一但知道系統需求達成哪些需求後,設計過程中就必須決定什麼是可以完成需求的最正确系統建構方式在Software life cycle中Design包含 S
11、ystem Design 與 Object Design 兩階段。在System Design階段初期,必須先定義出 Design Goal 作為System Design完成後系統所需達成的事項。Software Engineering for Digital HomeImplementation 將完好的設計轉成程式碼 Software Engineering for Digital HomeTesting 系統經過測試後,可以確保系統能否可以精確且完好滿足运用者的需求.Software Engineering for Digital HomeMaintenance 軟體完成之後的維護與改
12、良Software Engineering for Digital Home什麼是UML? UML是Unified Modeling Language的簡稱,中譯為統一塑模語言。 屬於物件導向領域裡頭用來將設計概念表現出來的一種符號表現法 也就是說,UML是軟體系統發展人員用以建造模型,而這些模型使得任务團隊能夠:將系統具象化(Visualization)、將系統結構及行為規格化(Specification)、建構(Construction)系統、以及記錄(Documentation)發展系統過程中之各項決策。 Software Engineering for Digital HomeUML(
13、Unified Modeling Language) 什麼是塑模?作曲家會將其腦袋中的旋律譜成樂曲,建築師會將其設計之建築物畫成藍圖,行銷廣告人員會將其創意製作成簡報;這些樂曲、藍圖及簡報就是模型(Model),而建構這些模型的過程就稱為塑模(Modeling)。軟體開發好像音樂譜曲及建築設計,其過程中也必須將需求、分析、設計、實作、佈署等各項任务流程之構想與結果予以呈現,這就是軟體系統之塑模。Software Engineering for Digital HomeUML八大模型圖來表達的各種不同的觀點 1. 运用者觀點(User view): 從某些與系統相關角色的运用者觀點來看,运用者會
14、和那些系統互動,相反的也可看出那些运用者會运用到該系統。运用的圖形有运用案例圖(Use Case Diagram)。 2. 結構觀點(Structural view): 從軟體程式或系統的結構觀點來看。运用的圖形有類別圖(Clasa Diagram) 、物件圖。 3. 行為觀點(Behavior view): 從軟體程式行為(流程)觀點來看,尤其是針對物件與物件之間的行為。运用的圖形有循序圖(Sequence Diagram)、协作圖(Collaboration Diagram)、狀態圖(State Diagram)、活動圖(Activity Diagram)。Software Enginee
15、ring for Digital HomeUML八大模型圖來表達的各種不同的觀點 4. 建置觀點(Implementation view): 從建置整個系統的觀點來看,那些軟體元件必須建置在何處。运用的圖形有元件圖(Component Diagram)。 5. 環境觀點(Environment view) : 從整個系統的環境觀點來看,那些硬體和軟體必須佈署在何處。运用的圖形有配置圖(Deployment Diagram)。Software Engineering for Digital HomeUse Case Diagram运用案例圖 在運用Use Case Diagram時的重要課題,是
16、要認清运用者目標use goal與系統互動system interaction兩者之間的差異。圖形內中主要描画行為者Actor與运用個案Use Case的關係。Software Engineering for Digital HomeUse Case Diagram - Symbol26學生查詢課程介紹演員(Actor)凡事會與系統互動的都可以是演員演員不一定是人运用案例(Use Case)独一性表示系統所執行的功能連接線(Association)表是某個演員啟動了某個案例系統(System)當開發系統不需求和其他系統互動時省略Software Engineering for Digital
17、HomeUse Case Diagram Example 定期備份系統27時間備份系統Software Engineering for Digital HomeClass Diagram類別圖 Class diagram 是用來描画系統中物件的類型,以及類型間的各種靜態關係。Software Engineering for Digital HomeClass Diagram - Symbols29學生-學號-姓名+修正資料()-驗證資料()#顯示資料()屬性類別名稱方法Software Engineering for Digital HomeClass Diagram Example 老師和課程的關聯30老師課程開設Software Engineering for Digital HomeSequence Diagram 順序圖 在UML裡面,Scenario指的是一個use case中的某一個單一實行路徑,也就是在一個use case中某幾個特殊狀況,結合在一同的情形。而用來描画Scenario的工具即是Sequence Diagram。Software Engineering for Digital HomeSequence Diag
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- ××超市资源调配规定
- 多方合作基金投资协议
- 实习经历及工作表现证明(5篇)
- 关于勤奋学习的讨论话题展开论述议论文创作12篇
- 人工智能技术研发经历证明书(6篇)
- 2025年物业管理师职业能力测试卷:智慧社区管理案例分析试题
- 2025年金属硫蛋白(MT)、高纯度MT、MT多糖项目提案报告
- 2025年电工(高级)职业技能鉴定实操试卷:电力系统节能技术考核
- 2025年自动驱鸟设备项目规划申请报告
- 国际贸易合同执行及业务经历证明书(7篇)
- 移动宽带营销培训
- 2025年二级建造师矿业工程考试真题及答案
- 2025年上半年湖北恩施州事业单位统一考试公开招聘278人易考易错模拟试题(共500题)试卷后附参考答案
- 甘肃省兰州市(2024年-2025年小学六年级语文)统编版小升初真题((上下)学期)试卷及答案
- 热力行业安全培训课件
- 临床常用降压药物
- 公交驾驶员职业病健康讲座
- 教师培训课件:关于教师的专业发展
- 感染性休克指南解读
- 绿色施工实施策划方案
- 【MOOC】天文探秘-南京大学 中国大学慕课MOOC答案
评论
0/150
提交评论