Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Reuse Course: # 605.703. The Johns-Hopkins University Montgomery County Campus Fall 2004 Session 6 Lecture # 5 – October 12, 2004.

Similar presentations


Presentation on theme: "Software Reuse Course: # 605.703. The Johns-Hopkins University Montgomery County Campus Fall 2004 Session 6 Lecture # 5 – October 12, 2004."— Presentation transcript:

1 Software Reuse Course: # 605.703. The Johns-Hopkins University Montgomery County Campus Fall 2004 Session 6 Lecture # 5 – October 12, 2004

2 Tonight’s Lecture Review to Date You should have accomplished since last week: Completed reading chapter 5 of the text. New Material –Chapter 5:Use Case Components –We have a topic we keep pushing to the next week. Sharing Reusable Assets Tools to Support Reuse

3 Chapter 5: Use Case Components

4 Packaging reusable Software Assets Assets are individual –Requirements Documents –Designs. –Implementation –Test material Assets are cross referential (linked or packaged as sets) –Components that work together (e.g. frameworks) –Components that are different models/life cycle artifacts of the same functional component)

5 Commonality and Variability Packaging must represent, expose, and explain Variation Points Variability mechanisms –Inheritance –Extensions –Parameterization –Generative: Templates Macros

6 Sharing Reusable Assets (left over from last session) Simple Reuse Library Mechanisms –Paper based catalogs. –Spread Sheet based catalogs. –Database based catalogs –Purpose Build catalog applications.

7 Paper Based Reuse Catalogs More useful than you might think! (and cheap, fast, easy to get started) List what is available according to how it can be reused. –What requirements does each software asset fulfill, or… –A simple sub-system or system generic design, and what role each asset fulfills in that design. Problems –Keeping it up to date can become difficult. –Searching a large asset collection is inefficient. –Sharing can be difficult.

8 Spread Sheet Based Catalogs All the benefits (except not as cheap, fast and easy) of a paper based catalog. Additional benefits –Very basic search functionality –Easier to share (mount on a common LAN based folder) –Easier to keep updated. –Contextual description (fielded descriptions) Problems –Lack of change control. Multiple editors can confuse the asset organization. –Multi-user synchronicity problems.

9 Database Based Catalogs About the same benefits as spread sheet based catalog (except the cheaper and easy parts are starting to slip away.) Additional Benefits –Easier to build population, search and retrieval functionality into service focused GUI’s. –RDBMS products are more likely to handle multi-user, with multiple roles. Problems: –Additional functionality is limited to what the database product offers. –Deployment across multiple locations, servers, etc. can be expensive because of licensing issues. –Greater expense (purchase and training) and vendor of database product locks you in.

10 Purpose Built Catalog Applications All the benefits of Database Based Catalogs (except the cheap, fast easy is about gone). Additional Benefits –Complete control of functionality and user interface. –Ability to integrate the Catalog with other software engineering tools and utilities. –Ability to support business process and engineering process rules with the Catalog’s user interface and functionality. Problems –Cost of development and maintenance of the functionality of the catalog has now increased dramatically.

11 Packaging and Documentation How will an application developer use a reusable asset? How will an application developer know that a reusable asset is available? How will an application developer know whether the reusable asset will meet the project’s performance requirements? How will an application developer know how to integrate an asset into their application?

12 Tool Support for a Reuse Driven Process –Domain Analysis –Domain Engineering –Requirements Analysis (of an application) Reuse Potential analysis –High Level Design –Low Level Design –Implementation –Module Test –Integration Test –Analysis of new domain engineering opportunities.

13 Assignments Complete reading of text through chapter 6Objects Components Exercise 1 is not graded yet. –Therefore, exercise 2 will not be assigned till next week. Questions ? See you next week.


Download ppt "Software Reuse Course: # 605.703. The Johns-Hopkins University Montgomery County Campus Fall 2004 Session 6 Lecture # 5 – October 12, 2004."

Similar presentations


Ads by Google