Your SlideShare is downloading. ×
Quality attributes in software architecture
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Quality attributes in software architecture


Published on

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. QUALITY ATTRIBUTES : SOFTWARE ARCHITECTURE Dr. Himanshu Hora SRMS College of Engineering & Technology, Bareilly (U.P.), INDIA
  • 2. Introduction 2  Functionality and Quality Attributes are orthogonal  Overall factors that affect run-time behavior, system design, and user experience Software quality is the degree to which software possesses a desired combination of attributes(e.g., reliability, interoperability) [IEEE 1061].
  • 3. Architecture and Quality Attributes 3  Architecture, by itself, is unable to achieve qualities  Architecture should include the factors of interest for each attribute
  • 4. Quality Attributes Scenario 4  Is a quality-attribute-specific requirement  It consists of six parts:  Source of stimulus  Stimulus  Environment  Artifact  Response  Response measure Figure 1: Quality attributes Parts
  • 5. Common Quality Attributes 5  It categorizes the attributes in various specific areas  Design qualities  Runtime qualities  System qualities  User qualities  Non-runtime qualities  Architecture qualities  Business qualities
  • 6. Design Quality Attributes 6  Conceptual Integrity:  Defines the consistency and coherence of the overall design  Includes the way that components or modules are designed  Maintainability:  Ability of the system to undergo changes with a degree of ease  Reusability:  Defines the capability for components and subsystems to be suitable for use in other applications
  • 7. Runtime Quality Attributes 7  Interoperability:  Ability of a system or different systems to operate successfully by communicating and exchanging information with other external systems written and run by external parties  Manageability:  Defines how easy it is for system administrators to manage the application  Reliability:  Ability of a system to remain operational over time
  • 8. 8  Scalability:  Ability of a system to either handle increases in load without impact on the performance of the system, or the ability to be readily enlarged  Performance:  Indication of the responsiveness of a system to execute any action  Security:  Capability of a system to prevent malicious or accidental actions outside of the designed usage
  • 9. 9  Availability:  Proportion of time that the system is functional and working  Measured as a percentage of the total system downtime over a predefined period
  • 10. 10 Figure 2: Availability of general scenario
  • 11. 11 Figure 3: Sample performance scenario Figure 4: Sample security scenario
  • 12. System Quality Attributes  Supportability:  Ability of the system to provide information helpful for identifying and resolving issues when it fails to work correctly  Testability:  Measure of how easy it is to create test criteria for the system and its components 12 Figure 5: Sample testability scenario
  • 13. User Quality Attributes  Usability:  Defines how well the application meets the requirements of the user and consumer by being intuitive 13 Figure 6: Sample usability scenario
  • 14. Non-runtime Quality Attributes 14  Portability:  Ability of a system to run under different computing environments  Reusability:  Degree to which existing applications can be reused in new applications  Integrability:  Ability to make the separately developed components of the system work correctly together
  • 15. 15  Modifiability:  Ease with which a software system can accommodate changes to its software Figure 7: Sample modifiability scenario
  • 16. Architecture Quality Attributes 16  Correctness:  Accountability for satisfying all requirements of the system  Conceptual Integrity:  Integrity of the overall structure that is composed from a number of small architectural structures
  • 17. Business Quality Attributes 17  Cost and schedule:  Cost of the system with respect to time to market, expected project lifetime, and utilization of legacy and COTS systems  Marketability:  Use of the system with respect to market competition
  • 18. 18 THANK YOU Dr. Himanshu Hora SRMS College of Engineering & Technology, Bareilly (U.P.), INDIA