资源预览内容
第1页 / 共48页
第2页 / 共48页
第3页 / 共48页
第4页 / 共48页
第5页 / 共48页
第6页 / 共48页
第7页 / 共48页
第8页 / 共48页
第9页 / 共48页
第10页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Software Architecture,Wang hunanwanghunanscu.edu.cn,4: Creating an Architecture: Understanding Quality Attributes,2018/10/27,Software Architecture,3/48,2018/10/27,3,Topics,Functionality and Architecture Architecture and Quality Attributes System Quality Attributes Quality Attribute Scenarios in Practice Other System Quality Attributes Business Qualities Architecture Qualities Exercise,2018/10/27,Software Architecture,4/48,2018/10/27,4,Functionality and Architecture,Functionality and quality attributes are orthogonal Functionality may be achieved through the use of any of a number of possible structures. functionality is largely independent of structure. Software architecture constrains its allocation to structure when other quality attributes are important.,2018/10/27,Software Architecture,5/48,2018/10/27,Architecture and Quality Attributes,Achieving quality attributes must be considered throughout design, implementation, and deployment. Usability involves both architectural and nonarchitectural aspects. Modifiability is determined by how functionality is divided (architectural) and by coding techniques within a module (nonarchitectural). Performance involves both architectural and nonarchitectural dependencies.,2018/10/27,Software Architecture,6/48,2018/10/27,quality attributes can never be achieved in isolation.,security and reliability often exist in a state of mutual tension Points of failure almost every quality attribute negatively affects performance,2018/10/27,Software Architecture,7/48,2018/10/27,Quality Attributes,Qualities of the system. availability, modifiability, performance security, testability, usability. Business qualities Architecture qualities,2018/10/27,Software Architecture,8/48,2018/10/27,Three problems for Design Architecture,The definitions provided for an attribute are not operational. A focus of discussion is often on which quality a particular aspect belongs to. Each attribute community has developed its own vocabulary. The performance community has “events“ arriving at a system, the security community has “attacks“ arriving at a system, the availability community has “failures“ of a system, The usability community has “user input.“,2018/10/27,Software Architecture,9/48,2018/10/27,Quality Attribute Scenario,A quality attribute scenario is a (Testable) quality-attribute-specific requirement.,2018/10/27,Software Architecture,10/48,2018/10/27,general scenarios and concrete scenarios,general quality attribute scenarios (general scenarios)those that are system independent and can, potentially, pertain to any system; concrete quality attribute scenarios (concrete scenarios)those that are specific to the particular system under consideration.,2018/10/27,Software Architecture,11/48,2018/10/27,11,Availability Scenario,Availability general scenarios,2018/10/27,Software Architecture,12/48,2018/10/27,12,Sample availability scenario,Concrete scenarios play the same role in the specification of quality attribute requirements that use cases play in the specification of functional requirements.,2018/10/27,Software Architecture,13/48,Example:,2018/10/27,Software Architecture,14/48,2018/10/27,14,QUALITY ATTRIBUTE SCENARIO GENERATION,a systems quality attribute requirements are seldom elicited and recorded in a disciplined way. remedy this situation by generating concrete quality attribute scenarios. quality-attribute-specific tables: general scenarios, checklist,2018/10/27,Software Architecture,15/48,2018/10/27,Topics,Functionality and Architecture Architecture and Quality Attributes System Quality Attributes Quality Attribute Scenarios in Practice Other System Quality Attributes Business Qualities Architecture Qualities,2018/10/27,Software Architecture,16/48,2018/10/27,Quality Attribute Scenarios in Practice,Availability, Modifiability, Performance Security, Testability, Usability.,2018/10/27,Software Architecture,17/48,2018/10/27,AVAILABILITY,Availability is concerned with system failure and its associated consequences.A system failure occurs when the system no longer delivers a service consistent with its specification. Such a failure is observable by the systems userseither humans or other systems. We need to differentiate between failures and faults.,2018/10/27,Software Architecture,18/48,2018/10/27,Software Architecture: Module 1,18,Availability General Scenario Generation,2018/10/27,Software Architecture,19/48,2018/10/27,19,Availability General Scenario Generation (Cont.),2018/10/27,Software Architecture,20/48,2018/10/27,MODIFIABILITY,Modifiability is about the cost of change. What can change (the artifact)? the functions, the platform, the environment, the qualities, and its capacity etc.). When is the change made and who makes it (the environment)? implementation , during compile, during build (by choice of libraries), during configuration setup, or during execution (by parameter setting).,2018/10/27,Software Architecture,21/48,2018/10/27,Software Architecture: Module 1,21,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号