Software Architecture A Roadmap - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

Software Architecture A Roadmap

Description:

The software architecture of a program or computing system is ... Dynamically reconfiguring uninterrupted service providing architectures will be need of hour ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 24
Provided by: ashish62
Category:

less

Transcript and Presenter's Notes

Title: Software Architecture A Roadmap


1
Software Architecture - A Roadmap
  • Author - David Garlan
  • Presented by - Ashish Grover

2
Agenda
  • Introduction to Software Architecture
  • Roles of Software Architecture
  • Older techniques
  • Current techniques
  • Supposed future
  • Embedded Software
  • Conclusions and review

3
Introduction to software Architecture
  • The software architecture of a program or
    computing system is the structure or structures
    of the system, which comprise software elements,
    the externally visible properties of those
    elements, and the relationships among them.

4
Software Architecture as a Bridge
Requirements
Software Architecture
Code
5
Roles of Software Architecture
  • Describes a systems gross structure
  • Composure of system as a collection of
    interacting parts
  • Main pathways of interaction b/w parts
  • Key properties of parts

6
Imp role in six aspects
  • Understanding of system
  • Reuse at different levels
  • Construction
  • Evolution
  • Analysis
  • Management

7
Antecedents of Software Architecture
Courtesy David Garlan
8
Older Techniques
  • Informal box and line diagrams
  • New design evolved from previous designs
  • No technique to
  • Do analysis for consistency
  • Check implementation is in accordance with
    architectural description

9
The two trends
  • Shared set of methods, techniques, patterns
  • Use of metaphors such as client server system
  • Significant semantic content which reasoned about
    their paradigms, evolution, relationships and
    concerns
  • Searching similarities in specific domains to
    reuse frameworks
  • Some examples are frameworks, 4GLs, UI toolkits

10
Current Techniques (Yr 2000)
  • Recognition of s/w architecture as a sub-field
  • Organizations now have software architects who
    chair the architecture review boards
  • Emerging use of product line architectures,
    commercial architectural standards, component
    integration frameworks
  • Codification of vocabulary, notations tools for
    architectural design
  • Books/courses on software architecture

11
Current Techniques (contd.)
  • Three significant advancements
  • Architecture Description Languages
  • Product Lines and Standards
  • Codification and Dissemination

12
Current Techniques (Contd.)
  • ADL
  • Required for formal analysis of consistency,
    completeness or correctness, enforcing
    architectural constrains with system evolution
  • Provide framework and syntax for characterizing
    architectures
  • Provide tools for parsing, compiling and
    simulating architectural description
  • Different ADLs provide distinct capabilities

13
Current Techniques (Contd.)
  • Product Lines Standards
  • Exploiting commonality across products
  • Creating product lines within an organization
  • Cross-vendor integration standards

Product Requirements
Product Architecture
Product Line Architecture
Product Line Requirements
14
Current Techniques (Contd.)
  • Codification and Dissemination
  • Using standard architecture styles
  • Styles provide a design vocabulary, assumptions
    and constraints on the use of the vocabulary
  • Styles are a good starting point for software
    architects

15
Supposed future
  • Future architecture will follow the current
    trends in industry.
  • Build Vs Buy
  • Requirement to decrease time to market
  • Vendor built components come in picture
  • But this requires components built on industry
    accepted standards
  • Integrating in-house components with vendors
    components is a nightmare

16
Supposed future (contd.)
  • Network-Centric Computing (challenges)
  • No centralized control
  • Need for architectures which scale
  • Architectures which do not rely on resources as
    resources can be mobile
  • Architectures which handle dynamically evolving
    components
  • Accommodate commercial application service
    providers

17
Supposed future
  • Pervasive Computing (Challenges)
  • Architectures suited for resource constrained
    environments
  • Dynamically reconfiguring uninterrupted service
    providing architectures will be need of hour
  • Handle user mobility

18
Types of Embedded S/W Architecture
  • Control Loop
  • Non Preemptive Multitasking
  • Preemptive timers
  • Preemptive tasks
  • RTOS

19
Diagram of an ARC integrated software platform
20
Conclusions
  • Points for
  • S/W architecture development timeline analyzed
    properly
  • Lot of examples discussed
  • Speculated future work then has really become
    active research areas of today
  • Foresees challenges that might be issued in
    future environments

21
Conclusions (Contd.)
  • Points against
  • Detailed but abstract paper
  • Completely forgets other kind of future
    environments and constraints
  • Security components?
  • How to approach towards building systems for
    these new environments?

22
References
  • http//www.cs.ucl.ac.uk/staff/A.Finkelstein/fose/p
    resent/garlanpres.pdf
  • http//www.arc.com/evaluations/29B12561.1_SW20Cap
    abilities_8-09-04_final.pdf
  • http//www.brainyencyclopedia.com/encyclopedia/e/e
    m/embedded_system.html
  • http//www.iec.org/online/tutorials/vocable/topic0
    6.html
  • Foundations for the study of software
    Architecture by Dewayne E. Perry and Alexander L.
    Wolf
  • http//www-2.cs.cmu.edu/able/presentations/columb
    ia-1-01.pdf

23
  • Questions ?
Write a Comment
User Comments (0)
About PowerShow.com