软件体系结构体系结构评审ArchitecturalReviews.ppt
《软件体系结构体系结构评审ArchitecturalReviews.ppt》由会员分享,可在线阅读,更多相关《软件体系结构体系结构评审ArchitecturalReviews.ppt(49页珍藏版)》请在三一文库上搜索。
1、软件体系结构 体系结构评审 Architectural Reviews,孙志岗 , ,2,2019/8/1,Architectural Reviews,Architectural reviews are a key step in architecture-based development. They include a method (such as SAAM or ATAM), but the full practice includes more than that. 体系结构评审是开发过程中的一个重要环节。有专门的评审方法(SAAM、ATAM),但在实践中并不仅仅是这些 We wil
2、l discuss cost/benefits of architectural reviews different architectural review techniques preconditions for an architectural review architectural review activities outputs from an architectural review, ,3,2019/8/1,Costs of Architectural Reviews,There are three different types of costs of holding re
3、gular architectural reviews. direct staff costs 直接员工开销 organizational overhead 组织管理开销 indirect staff costs 间接员工开销, ,4,2019/8/1,Examples of Direct Staff Costs,AT&T 300 full-scale reviews done on projects of 700 staff-days or longer 全面评审了300个项目,每个项目的开发时间都是700人日以上 average cost per review: 70 staff days
4、 每次评审的平均开销:70人日 Rational Software 30 reviews done on projects with at least 500 KSLOC each 评审了30个项目,每个项目最少500 KSLOC average cost per review: $50,000 评审平均花费:$50,000, ,5,2019/8/1,Examples of Direct Staff Costs,SAAM evaluations 12 reviews done on projects ranging from 100 KSLOC to 1,000 KSLOC 12次评审,项目规
5、模从100 KSLOC到1,000 KSLOC average cost per review: 14 to 20 staff-days 平均花费:14到20人日 ATAM evaluations 12 reviews done on projects ranging from 250 KSLOC to 2,500 KSLOC 12次评审,项目规模从250 KSLOC到2,500 KSLOC average cost per review: 40 to 70 staff days 平均花费:40到70人日, ,6,2019/8/1,Example of Organizational Overh
6、ead,Costs of establishing a corporate review unit 建立评审组的开销 management overhead communication expenses staffing the unit 给评审组配备人手 relocating personnel to a central location training, ,7,2019/8/1,Example of Indirect Staff Costs,Using senior designers for evaluations instead of designing 让高级设计人员参与评审而不是
7、设计 loss of productivity (due to reassignment of superior designers) 生产力的下降(高级设计师被委派新任务) time spent training staff in review techniques 培训员工评审技术的时间消耗, ,8,2019/8/1,Benefits of Architectural Reviews,Five different types of benefits result from holding architectural reviews. financial forces preparation
8、 for review 为评审做准备也是一种推动力 early detection of problems 尽早地发现问题 validation of requirements 确认需求 improved architectures 提高体系结构质量, ,9,2019/8/1,Financial Benefits of Reviews,AT&T estimated that each reviewed project saves 10% of total cost as a result of the review. Thus, a 70-staff-day review of project
9、s of 700 staff-days pays for itself. AT&T估算,每个被评审的项目节省10%的成本 Consultants who perform architecture evaluations report 80% repeat business. 参与评审的顾问报告了80%的重复项目, ,10,2019/8/1,Forces Preparation for Review,Documentation/specifications must be provided, hence they must exist or be created. 文档和说明书必须存在 Some
10、 reviews use standard questions, and the architect can prepare ahead to ensure that the architecture scores well. 评审有一些标准问题。体系结构师可以事先准备,确保这个体系结构可能得高分 Reviews make the criteria for evaluation explicit by prioritizing requirements or quality goals. 通过排定需求和质量目标的顺序,评审使评估的标准变得清晰, ,11,2019/8/1,Early Detec
11、tion of Problems,The problems that can be found by an architectural level inspection include 在体系结构层进行检查可以发现的问题 unreasonable requirements performance problems problems associated with potential future modifications 与未来的修改有关的问题 The earlier in the life cycle that problems are found, the easier it is to
12、 fix them., ,12,2019/8/1,Validation of Requirements,Reviews put stakeholders in the same room with each other, often for the first time. 评审使各种角色坐在同一个房间内。通常,这是第一次 uncovers conflicts and tradeoffs 解开冲突和寻找折中 provides a forum for negotiated resolution of problems 提供了一个论坛,来磋商问题的解决办法 It often results in t
13、he generation of new requirements or the clarification of existing requirements. 结果通常会是产生新的需求和净化已有的需求, ,13,2019/8/1,Improved Architectures,Development organizations anticipate types of questions raised at reviews and 开发者预期在评审时会被发现的问题,然后 design architectures with questions in mind 在设计时,问题会时刻围绕脑海 prep
14、are documentation of the type needed at review 准备评审时需要的文档 give explicit consideration to qualities to be reviewed 对将被评审的质量因素进行更深入的考虑, ,14,2019/8/1,Review Techniques,There are a variety of techniques for performing architectural reviews; each has a different cost and provides different information. 有
15、很多种评审技术。每种需要不同的开销,提供不同的信息 These techniques fall into one of two categories. questioning techniques: applied to evaluate any aspect of an architecture for any given reason 提问技术:用来评价体系结构的任何方面 measuring techniques: applied to answer questions about a specific quality 度量技术:回答关于某项质量的问题, ,15,2019/8/1,Ques
16、tioning Techniques,Scenario-based techniques describes a specific interaction between stakeholders and a system 描述角色与系统交互的过程 example: SAAM, ATAM (partially) Questionnaire-based techniques(基于问卷的技术) Some questions apply to all architectures (especially those in a single domain). 有些问题被用于所有的体系结构,尤其是在单一领
17、域内 Some questions ask about details of a specific architecture. 有些问题询问一个特定结构的细节 Some ask about the development process. “Is there a single architect?” “How do you ensure conformance?” “你们怎样保证一致性?”, ,16,2019/8/1,Questioning Techniques,Questionnaires are reused; they reflect more maturity or experienc
18、e within a domain. 问卷可以重用;它们体现了在一个领域内的成熟度和经验是否丰富 Scenarios must be developed anew for each system. 场景必须为每个系统重新开发, ,17,2019/8/1,Measuring Techniques,Metrics: quantitative interpretations of observable measures 量度:可测质量的定量说明 complexity metrics identify areas where modifications may be difficult 复杂度的测量指
19、明在哪个区域修改会很困难 performance metrics suggest areas where bottlenecks may occur 性能的测量提示瓶颈会在哪里发生 Reviews tend to focus on results of metrics 度量的结果 assumptions underlying the interpretation of the metrics (e.g., assumed event distribution) 对度量的解释中的潜在假定, ,18,2019/8/1,Measuring Techniques,Simulations, protot
20、ypes, experiments: domain specific models of an architecture or performance model 仿真、原型、实验:建立体系模型或者性能模型 are expensive to create often exist as part of development anyway May answer issues raised by questioning technique 可以回答提问技术提出的问题 “What evidence do you have that performance is adequate?” “你凭什么说可以
21、达到这个性能?”, ,19,2019/8/1,Properties of Review Techniques, ,20,2019/8/1,Review Process,An architectural review has three major elements. preconditions: the set of necessary assets and conditions that must be in place before a review can be performed successfully 前提:评审成功进行之前,必要的资源和条件必须到位 activities of t
22、he review itself 活动:评审本身 outputs: the report of review results 输出:评审结果报告, ,21,2019/8/1,Review Preconditions,Understand the context of the review 理解评审的上下文 Assemble the right people 集合正确的人 Set organizational expectations and support 期望和支持 Prepare for review 为评审做准备 Obtain representation of the architec
23、ture 获得体系结构文档, ,22,2019/8/1,Preconditions: Context,Planned review part of normal development activity 正常开发活动的一部分 non-adversarial(非敌对性的) scheduled well in advance(事先安排好日程) built into projects schedule and budget 包含在项目日程和预算之内 Unplanned usually occurs when project is in trouble 通常在项目出现问题时采用 often devol
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 体系结构 评审 ArchitecturalReviews
链接地址:https://www.31doc.com/p-3212493.html