Software Engineering with Reusable Components - PowerPoint PPT Presentation

About This Presentation
Title:

Software Engineering with Reusable Components

Description:

Sametinger's book :: Chapters 19, 20 and 21. Ana Paula Cavalcanti. 11/5/09. 2. Summary. Reuse Measurement in Literate Programs ... Evaluation of white-box reuse ... – PowerPoint PPT presentation

Number of Views:70
Avg rating:3.0/5.0
Slides: 21
Provided by: anapaulac
Category:

less

Transcript and Presenter's Notes

Title: Software Engineering with Reusable Components


1
Software Engineeringwith Reusable Components
  • RiSEs Seminars
  • Sametingers book Chapters 19, 20 and 21
  • Ana Paula Cavalcanti

2
Summary
  • Reuse Measurement in Literate Programs (Chapter
    19)
  • Motivation
  • Line and Word Runs
  • Case Study
  • Documentation Reuse (Chapter 20)
  • Motivation
  • Source Code Inheritance
  • Documentation Inheritance
  • Conclusion (Chapter 21)
  • A Paradigm Shift
  • Limits of Component Reuse
  • Prospects

3
Reuse Measurement in Literate Programs
4
Motivation
Reuse Measurement in Literate Programs Chapter
19
  • To focus is to determine the amount of ad-hoc
    reuse in literate programs (description of
    problems and solutions)
  • Provide and example of reuse measurement
  • Demonstrate the need fort systematic reuse of
    documentation

5
Line and Word Runs
Reuse Measurement in Literate Programs Chapter
19
  • Similarities and differences of texts have to be
    determined
  • Comparison of lines and words

L line Len Length
  • high line reuse ? Good indication of reuse
  • low line reuse, high word reuse ? much reuse has
    taken place, modification
  • low reuse low, low word reuse ? not much reuse

6
Case Study
Reuse Measurement in Literate Programs Chapter
19
  • TEX converts plain text file containing
    document markup into a device independent
    graphics metafile
  • MetaFont reads a source file (metadescription)
    and does graphics interpretations
  • MetaPost file layouts as input and book
    quality figures as output

7
Case Study ? consequences
Reuse Measurement in Literate Programs Chapter
19
  • Reuse measurement based on line and word runs can
    be used for many different purposes
  • Evaluation of white-box reuse
  • Finding (legal/illegal) reuse in
    technical/scientific papers, determining the
    amount of modifications from one version of
    software to another
  • Finding potential locations for redesign
  • Finding the amount of reuse in programs handed
    in by students for programming courses

8
Documentation Reuse
9
Motivation
Documentation Reuse Chapter 20
Adequate documentation is mandatory for software
maintenance as well as for economic reuse of
software components. Overlapping information is
typical both for source code and for
documentation. Therefore, the inheritance
mechanism should be applied to the documentation
as well.
10
Source Code Inheritance
Documentation Reuse Chapter 20
  • A class may inherit structure and behavior of
    another class and additionally extend and modify
    it.

11
Documentation Inheritance
Documentation Reuse Chapter 20
  • Inherits the content of its base documentation
  • Chapters Classes
  • Sections Methods
  • Abstract Classes
  • Predefined structure for a certain group of
    elements guarantees uniform and consistent
    appearance
  • Information should not be spread over several
    files and/or directories Inclusion and
    References

12
Documentation Inheritance
Documentation Reuse Chapter 20
  • Information filtering is important for efficient
    access
  • Categories definition
  • Various views
  • To meet different documentation needs of various
    readers
  • Documentation Hierarchies

The goal is to have software systems built from
reusable components and to have their
documentation built upon theses components
documentation.
13
Conclusion
14
A Paradigm Shift
Conclusion Chapter 20
There is still a long way to go until systematic
reuse of software components, especially beyond
company boundaries. It requires more research in
various areas as well as commitment from
companies to systematic reuse.
  • unexpected discoveries may prove inconsistent
    with the prevailing paradigm. This may trigger a
    scientific revolution.
  • Involve the development of new ideas, concepts,
    methods and problems
  • Provides a way of doing software engineering
    better and more efficiently.

15
Software reuse and software components contribute
to a paradigm shift in Software Engineering?
16
A Paradigm Shift ? Software Components
Conclusion Chapter 20
  • Components arbitrary reusable entities
    including macros and functions.
  • Component-based systems as a system that has
    components as primitive description units and
    communication between components as computation
    units.

17
A Paradigm Shift ? Software reuse
Conclusion Chapter 20
  • Many new activities for software engineering are
    introduced through software reuse
  • Domain analyses
  • Development for/with reuse, reuse measurement
  • Reuse certification
  • Reuse classification
  • Repository compilation
  • Discipline concerned with construction related
    systems that share many commonalties and very in
    regular and identifiable ways

18
Limits of Component Reuse
Conclusion Chapter 20
  • The most challenging aspect is component
    integration
  • Coordination
  • Communication
  • Interoperation
  • Can we raise abstraction levels of components and
    at the same time achieve high-performance systems
    by using these components?

19
Prospects
Conclusion Chapter 20
Different way to build software systems
  • More productivity
  • The goal to evolve software
  • The landscape of software systems will constantly
    change from closed monolithic to open systems of
    reusable components.

20
References
  • SAMETINGER, J. Software Engineering with Reusable
    Components. Springer-Verlag, 1997.
Write a Comment
User Comments (0)
About PowerShow.com