




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.1Chapter 8nArchitectural DesignSlide Set to accompanySoftware Engineering: A Practitioners Approach, 7/e by Roger S. PressmanSlides copyright 1996, 2001, 2005, 2009 by Roger S. Pressm
2、anFor non-profit educational use onlyMay be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioners Approach, 7/e. Any other reproduction or use is prohibited without the express written permission of the author.All copyright inform
3、ation MUST appear if these slides are posted on a website for student use.整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.2Why Architecture?analyze the effectiveness of the designconsider architectural alternativesreduce the risks整
4、理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.3Why is Architecture Important?nRepresentations of software architecture are an enabler for communication between all parties (stakeholders) interested in the development of a computer
5、-based system.nThe architecture highlights early design decisions that will have a profound impact on all software engineering work that follows and, as important, on the ultimate success of the system as an operational entity.nArchitecture “constitutes a relatively small, intellectually graspable m
6、ode of how the system is structured and how its components work together” BAS03.整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.4Architectural DescriptionsnThe IEEE Computer Society has proposed IEEE-Std-1471-2000, Recommended Prac
7、tice for Architectural Description of Software-Intensive System, IEE00nto establish a conceptual framework and vocabulary for use during the design of software architecture, nto provide detailed guidelines for representing an architectural description, and nto encourage sound architectural design pr
8、actices.nThe IEEE Standard defines an architectural description (AD) as a “a collection of products to document an architecture.” nThe description itself is represented using multiple views, where each view is “a representation of a whole system from the perspective of a related set of stakeholder c
9、oncerns.”整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.5Architectural GenresnGenre implies a specific category within the overall software domain. nWithin each category, you encounter a number of subcategories. nFor example, with
10、in the genre of buildings, you would encounter the following general styles: houses, condos, apartment buildings, office buildings, industrial building, warehouses, and so on. nWithin each general style, more specific styles might apply. Each style would have a structure that can be described using
11、a set of predictable patterns.整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.6Architectural StylesnData-centered architecturesnData flow architecturesnCall and return architecturesnObject-oriented architecturesnLayered architectur
12、esset of componentsset of connectors constraintssemantic models整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.7Data-Centered Architecture整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright
13、 2009 by Roger Pressman.8Data Flow Architecture整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.9Call and Return Architecture整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger
14、 Pressman.10Layered Architecture整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.11Architectural PatternsnConcurrencyapplications must handle multiple tasks in a manner that simulates parallelism n operating system process managemen
15、t patternntask scheduler patternnPersistenceData persists if it survives past the execution of the process that created it. Two patterns are common: na database management system pattern that applies the storage and retrieval capability of a DBMS to the application architecturenan application level
16、persistence pattern that builds persistence features into the application architecturenDistribution the manner in which systems or components within systems communicate with one another in a distributed environmentnA broker acts as a middle-man between the client component and a server component.整理课
17、件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.12Architectural DesignnThe software must be placed into contextnthe design should define the external entities (other systems, devices, people) that the software interacts with and the n
18、ature of the interactionnA set of architectural archetypes should be identifiednAn archetype is an abstraction (similar to a class) that represents one element of system behaviornThe designer specifies the structure of the system by defining and refining software components that implement each arche
19、type整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.13Architectural Contexttarget system: Security FunctionusesusespeershomeownerSafehome ProductInternet-based systemsurveillance functionsensorscontrol panelsensorsuses整理课件Software
20、Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.14ArchetypesFi gure 10. 7 UM L rel ati onshi ps for SafeHom e securi ty functi on archetypes (adapted from BOS00)Control l erNodecom m uni cates wi thDetectorI ndi cator整理课件Software Engineering: A
21、 Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.15Component StructureSaf eHom e Executi veExternal Com m uni cati on Managem entGUI I nter net I nter f aceFuncti on sel ecti onSecur i tySur vei l l anceHom e m anagem entControl panelprocessi ngdetector m ana
22、gem ental arm processi ng整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.16Refined Component StructuresensorsensorsensorsensorsensorsensorsensorsensorExternal Com m uni cati on M anagem entGUI I nternet I nterfaceSecuri tyContr ol
23、panelpr ocessi ngdetector m anagem ental ar m pr ocessi ngKeypad pr ocessi ngCP di spl ay f uncti onsschedul ersensorsensorsensorsensorphone com m uni cati onal ar m SafeHom e Executi ve整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressm
24、an.17Analyzing Architectural Design整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.18Architectural Complexitynthe overall complexity of a proposed architecture is assessed by considering the dependencies between components within t
25、he architecture Zha98nSharing dependencies represent dependence relationships among consumers who use the same resource or producers who produce for the same consumers.nFlow dependencies represent dependence relationships between producers and consumers of resources.nConstrained dependencies represe
26、nt constraints on the relative flow of control among a set of activities.整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.19ADLnArchitectural description language (ADL) provides a semantics and syntax for describing a software archi
27、tecturenProvide the designer with the ability to: ndecompose architectural componentsncompose individual components into larger architectural blocks and nrepresent interfaces (connection mechanisms) between components. 整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slid
28、es copyright 2009 by Roger Pressman.20An Architectural Design Methodfour bedrooms, three baths,lots of glass .customer requirementsarchitectural design整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.21Deriving Program Architecture整
29、理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.22Partitioning the Architecturen“horizontal” and “vertical” partitioning are required整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009
30、by Roger Pressman.23Horizontal Partitioningndefine separate branches of the module hierarchy for each major functionnuse control modules to coordinate communication between functions整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.2
31、4Vertical Partitioning: Factoringndesign so that decision making and work are stratifiedndecision making modules should reside at the top of the architectureworkersdecision-makers整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.25Wh
32、y Partitioned Architecture?nresults in software that is easier to testnleads to software that is easier to maintainnresults in propagation of fewer side effectsnresults in software that is easier to extend整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2
33、009 by Roger Pressman.26Structured Designnobjective: to derive a program architecture that is partitionednapproach: na DFD is mapped into a program architecturenthe PSPEC and STD are used to indicate the content of each modulennotation: structure chart整理课件Software Engineering: A Practitioners Approa
34、ch, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.27Flow CharacteristicsTransform flowTransactionflowThis edition of SEPA does not cover transaction mapping. For a detailed discussion see the SEPA website整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009).
35、Slides copyright 2009 by Roger Pressman.28General Mapping Approach整理课件Software Engineering: A Practitioners Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.29General Mapping ApproachnIsolate the transform center by specifying incoming and outgoing flow boundariesnPerform first-level factoring.”nThe program architecture derive
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 19152-4:2025 EN Geographic information - Land Administration Domain Model (LADM) - Part 4: Valuation information
- 2025至2030中国白三烯a4水解酶行业产业运行态势及投资规划深度研究报告
- 2025至2030中国畜产品行业市场占有率及投资前景评估规划报告
- 2025至2030中国瑜伽砖行业市场占有率及投资前景评估规划报告
- 2025至2030中国玉米面筋粉(CGM)行业产业运行态势及投资规划深度研究报告
- 2025至2030中国牵引带式装载机行业产业运行态势及投资规划深度研究报告
- 学生自信心培养与行为表现的关系
- 管理人员能力提升培训
- 教育机器人如何改变课堂?教学助手视角
- 探索在线教育在医疗领域的发展趋势与前景
- 共同借款人合同借条3篇
- 节约集约建设用地标准 DG-TJ08-2422-2023
- 手术室物品清点原则与制度
- 药品批发企业现代物流基本要求DB41-T 2318-2022
- GB/T 625-2024化学试剂硫酸
- 采血针市场发展前景分析及供需格局研究预测报告
- 气胸完整版本
- 重庆市智慧园林绿化管理信息系统-可行性研究报告(国信咨询)
- 2023-2024学年山东省泰安市泰山区七年级(下)期末数学试卷(五四学制)(含答案)
- 2024住院患者静脉血栓栓塞症预防护理与管理专家共识要点(全文)
- 2024车辆挂靠证明
评论
0/150
提交评论