1 / 13

Marrying Software Architecture with Configuration Management Techniques

Marrying Software Architecture with Configuration Management Techniques. Roshanak Roshandel roshande@usc.edu ARR February 2001. Background. Software Architecture Elements Components, connectors, configurations, architectural style, architecture description languages (ADL), subtyping

teva
Download Presentation

Marrying Software Architecture with Configuration Management Techniques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Marrying Software Architecture with Configuration Management Techniques Roshanak Roshandel roshande@usc.edu ARR February 2001 USC - Center for Software Engineering

  2. Background • Software Architecture Elements • Components, connectors, configurations, architectural style, architecture description languages (ADL), subtyping • Configuration Management Elements • Change management at source code level, versioned archive, revisions, locks, branches, version tree, system models, configurations USC - Center for Software Engineering

  3. Word Processor develops Architecture Implementation Design Scenario USC - Center for Software Engineering

  4. Architecture System Model • Based on software architecture concepts • ADL and style independent • Component, connector, and interface types • Component, connector, and interface instances • Versioning types to capture architectural evolution USC - Center for Software Engineering

  5. VariantConnectorType VariantComponentType InterfaceType ComponentType InterfaceInstance ConnectorInstance ComponentInstance ConnectorType VariantComponentType Name Revision Representation Ascendant Descendant Name ComponentType | VariantComponentType Name Revision VariantPropertyName Ascendant Descendant Subtype Name Direction InterfaceType Name, Revision, Representation, Ascendant, Descendant, Interface instances, Component instances, Connector instances, Behaviors, Constraints, Subtype, Style Name Source Interface Destination Interface ConnectorType VariantConnectorType ComponentType System Model USC - Center for Software Engineering

  6. Mae • Architectural evolution environment • Instance of the generic system model • Mapping onto C2SADEL ADL USC - Center for Software Engineering

  7. Graphical environment for specifying versioned software architecture Environment for supporting architecture based evolution Mae Ménage Dradel Implementation Expansion and loose integration USC - Center for Software Engineering

  8. Example Application USC - Center for Software Engineering

  9. Mae USC - Center for Software Engineering

  10. Name = tSpellChecker Revision = 2 Interface = { iSpellCheck } Component = { iTokenizer, iResultCollector} Connector = { iC2bus1, iC2bus3 } Behavior = { iSpellCheck* } Constraint = { } Representation = { << … >> } Ascendant = { tSpellChecker 1 } Descendant = {tSpellChecker 3} Style = { C2 } SubType = { beh \and int } Spell Checker Name = tSpellChecker Revision = 3 Interface = { iSpellCheck } Component = { iTokenizer, iResultCollector, iStatistics, collectStatistics,true } Connector = { iC2bus1, iC2bus2, collectStatistics, true, iC2bus3 } Behavior = { iSpellCheck* } Constraint = { } Representation = { << … >> } Ascendant = { tSpellChecker 2 } Descendant = { } Style = { C2 } SubType = { beh \and int } USC - Center for Software Engineering

  11. Benefits of Mae • Automated change script generation • Architectural level patches • Subtyping relationship to suggest candidate versions of components for replacement • Multi-version connectors • Reliable component upgrade USC - Center for Software Engineering

  12. Future work • Additional design-time functionality for evolving architectural elements • Tight integration of development-time architectural evolution with the evolution of a deployed system, at run-time • Enhancing the Mae environment USC - Center for Software Engineering

  13. Acknowledgement • Andre van der Hoek • Marija Rakic • Roshanak Roshandel • Nenad Medvidovic Additional information: “Taming Architectural Evolution”, Andre van der Hoek, Marija Rakic, Roshanak Roshandel, Nenad Medvidovic Technical Report: USC-CSE-2000-523 USC - Center for Software Engineering

More Related