1 / 10

Software Architecture Research and Practice

Software Architecture Research and Practice. Nenad Medvidovic University of Southern California neno@usc.edu http://sunset.usc.edu/~neno/. Rapid and continuous growth of software size, complexity, heterogeneity, distribution reliance on legacy software

duena
Download Presentation

Software Architecture Research and Practice

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. Software ArchitectureResearch and Practice Nenad MedvidovicUniversity of Southern Californianeno@usc.eduhttp://sunset.usc.edu/~neno/

  2. Rapid and continuous growth of software size, complexity, heterogeneity, distribution reliance on legacy software Interoperability with heterogeneous hardware each hardware device runs its own software The Motivation • Engineering systems of systems

  3. The tools OO database - RPC mechanism GUI toolkit - event-broadcast mechanism System costs estimated: 6 months, 1 person-year actual: 24 months, 5 person-years Result huge system sluggish performance difficult to maintain A Motivating ExampleBuilding a Software Environment from Existing Tools • The underlying causes were architectural! But, where was the architecture hidden?

  4. What is the Problem? This is a simple software system!

  5. The Usual Tool: Design Abstraction We have to do better!

  6. Events Connectors Components Architectural Abstraction

  7. Early, high-level system model Stakeholder understanding and communication Focus on specific system properties Separation of concerns Early analysis and simulation Tool-supported implementation Improved processes and project management Why Software Architecture?

  8. Introduce intermediate form Transform on the fly Attach adapter to A Separate B’s essence from its packaging or B B A Publish abstraction of A’s form Provide B with import/export converter Maintain multiple versions of A Negotiate to find common form for A and B Make B multilingual Change A’s form to B’s form Role and Challengeof Software Connectors How do we enablecomponents A and B to interact? B A What is the right answer?

  9. Understanding and exploiting software connectors Architectural representation and analysis Architecture-based system composition and generation Architectural styles and product line architectures Architecting processes Key challenges formalism vs. understandability tradeoff formalism vs. incompleteness and incrementality Key Contribution Areas

  10. Direct product of research HLA Tokyo Electric Power Company ADAGE Motorola Indirect, but clear influence of research Siemens Component interoperability platforms Recent Success Stories

More Related