Assessing the Suitability Assessing the Suitability of UML of UML for Modeling Software for Modeling Software Architectures Architectures Nenad Medvidovic Computer Science Department University of Southern California Los Angeles, CA 90089-0781 [email protected]http://sunset.usc.edu/ ~neno/
26
Embed
Assessing the Suitability of UML for Modeling Software Architectures
Assessing the Suitability of UML for Modeling Software Architectures. Nenad Medvidovic Computer Science Department University of Southern California Los Angeles, CA 90089-0781 [email protected] http://sunset.usc.edu/~neno/. Outline. Overview of software architectures Overview of UML - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Assessing the Suitability of UMLAssessing the Suitability of UMLfor Modeling Software Architecturesfor Modeling Software Architectures
Nenad MedvidovicComputer Science Department
University of Southern CaliforniaLos Angeles, CA 90089-0781
Overview of software architectures Overview of UML Modeling software architectures in UML Lessons learned Current status Conclusions
Software ArchitecturesSoftware Architectures
High-level model of a software system– software components– their interactions – software connectors– their interconnections – configurations
Promise of software architectures– better, more reliable software systems– modeling important system aspects early– ensuring system properties throughout
High-level architecture modeling notations Model architectural structure and behavior Difference in focus Varying degrees of formality Varying levels of tool support Differences in maturity
Example ADLsExample ADLs C2
– focus on style-based topological constraints and evolution
– static component behavior in 1st order logic Wright
– focus on connectors– dynamic subsystem behavior in CSP
Rapide– focus on system events– dynamic system behavior using event patterns and
posets
UUnified nified MModeling odeling LLanguage: anguage: MotivationMotivation Community fragmentation
Academic Approachto Architectures
Industrial Approachto Architectures
Focus on wide range ofdevelopment issues
Focus on analytic evaluation ofarchitectural models
Families of modelsIndividual models
Practicality over rigorRigorous modeling notationsArchitecture as the
“big picture” in developmentPowerful analysis techniques
UUnified nified MModeling odeling LLanguage:anguage:BenefitsBenefits Large, useful set of predefined constructs Extensible Semi-formal definition of syntax and semantics via
– a meta model– descriptive text– constraints
Potential for– wide adoption– standardization– substantial tool support
Basis in experience with mainstream development methods
UUnified nified MModeling odeling LLanguage:anguage:ExtensibilityExtensibility New constructs may be added to address new
development issues Three extensibility mechanisms
– constraints– tagged values – stereotypesStereotype Person for instances of meta class Class[1] A Person can be either female or malepersonGender : enum { female, male }
The meta model may also be extended– results in a new notation– may be incompatible with UML-compliant tools
composition rules and UML notational constructs Develop a UML domain model Develop an (informal) architectural diagram Map domain classes to architectural components Design class (component) interfaces Provide constructs for modeling connectors
– connectors add no functionality at the domain model level Model architectural structure in class and/or