TopCoder Software - PowerPoint PPT Presentation

About This Presentation
Title:

TopCoder Software

Description:

Second-Hand Shopping: Efficient Component Reuse. TopCoder, Inc. Sean Campion, Project Manager ... CI Component Identification time. IT Component Integration time. ... – PowerPoint PPT presentation

Number of Views:121
Avg rating:3.0/5.0
Slides: 23
Provided by: daveta4
Category:

less

Transcript and Presenter's Notes

Title: TopCoder Software


1
(No Transcript)
2
Second-Hand Shopping Efficient Component Reuse
  • TopCoder, Inc.
  • Sean Campion, Project Manager
  • scamp

3
Agenda
  • High-Level CBSE Overview
  • Audience
  • Reuse Maturity Levels
  • Features
  • Searching
  • Metrics
  • Wrap Up

4
High-Level CBSE Overview
  • Component-Based Software Engineering.
  • Component Granularity.
  • Cost-Benefit
  • (n (CI IT)) RBE MT lt (n (BE
    MT))
  • n number of times item/component is reused.
  • CI Component Identification time.
  • IT Component Integration time.
  • RBE Reuse Build Effort time.
  • MT Maintenance Time
  • BE Build Effort
  • Component Library

Source Engineering Reuse Savings How to
Really Cut the Costs of Software Development,
Messinger David, .Net Developers Journal, August
2005.
5
Audience
  • Internal Consumption
  • External Consumption
  • Management
  • Developers
  • Architects

6
Reuse Maturity Levels
  • Level 0 Ad-Hoc Reuse
  • Individuals find assets on their own, sharing
    with colleagues as they choose. File system or
    minimal web-site, email.

Source Reuse Comes in Several Flavors, Achieving
a Better Return on Software Series, 2 Griss,
Martin.
7
Reuse Maturity Levels
  • Level 1 Facilitated Reuse
  • Organization encourages and supports reuse with
    limited resources, infrastructure, and policies
    to make reuse easier.
  • Self-use repository or web-site, submitters may
    add some metadata to improve search and
    evaluation.

Source Reuse Comes in Several Flavors, Achieving
a Better Return on Software Series, 2 Griss,
Martin.
8
Reuse Maturity Levels
  • Level 2 Managed Reuse
  • Organization enforces reuse practice through
    policies, resources, tools, and people.
  • Registrar-monitored repository, extensive
    metadata, multi-project source control, asset
    quality assurance, change notification,
    utilization measurements.

Source Reuse Comes in Several Flavors, Achieving
a Better Return on Software Series, 2 Griss,
Martin.
9
Reuse Maturity Levels
  • Level 3 Designed Reuse
  • Organization invests in carefully designed assets
    for reuse, choosing assets for domain or product
    line. Assets are architected or reengineered to
    fit together.
  • Requirements and portfolio management tools
    frameworks, standards, generators change
    management tools.

Source Reuse Comes in Several Flavors, Achieving
a Better Return on Software Series, 2 Griss,
Martin.
10
Features
  • Produce
  • Publish components and specifications.
  • Notify consumers of new components or problems.
  • Use component specifications as starting point
    for design.
  • Publish undocumented or informally designed
    components.

Source Configuration Management and Component
Libraries Hedley Apperly, in Component-Based
Software Engineering Putting the Pieces
Together, George T. Heineman, William T.
Councill, Addison-Wesley, 2001.
11
Features
  • Manage
  • Manage library repositories.
  • Manage library users.
  • Manage catalogues.
  • Assure quality components.
  • Manage components.
  • Make components available.
  • Manage the versioning of components.

Source Configuration Management and Component
Libraries Hedley Apperly, in Component-Based
Software Engineering Putting the Pieces
Together, George T. Heineman, William T.
Councill, Addison-Wesley, 2001.
12
Features
  • Consume
  • Search for necessary components.
  • Fulfill identified gaps.
  • Use or reuse component specifications.
  • Use or reuse components.
  • Deploy components.
  • Register interest in components.

Source Configuration Management and Component
Libraries Hedley Apperly, in Component-Based
Software Engineering Putting the Pieces
Together, George T. Heineman, William T.
Councill, Addison-Wesley, 2001.
13
Features
  • Consume (continued)
  • Receive new component notification.
  • Review new components.

Source Configuration Management and Component
Libraries Hedley Apperly, in Component-Based
Software Engineering Putting the Pieces
Together, George T. Heineman, William T.
Councill, Addison-Wesley, 2001.
14
Searching
  • The perceived Level of Effort of searching,
    understanding, and using a component must be less
    than the perceived effort of developing the
    component again for reuse to be practical and
    effective.

15
Searching
  • User Search Space Definition
  • L1 User Known L4 User Unknown
  • L2 User Familiar with K Actual Space
  • L3 User belief R Search Results

Source Supporting Reuse by Delivering
Task-Relevant and Personalized Information, Ye,
Fischer, Department of Computer Science,
University of Colorado Boulder 2002.
16
Searching
  • Measurement
  • Precision Number of components returned that
    belong to the set of items that ideally should
    have been returned.
  • Precision (R) R n Q / Q
  • Recall The total number of components returned,
    regardless of whether they belong to the ideal
    set or not.
  • Recall (R) R n Q / R

Source Toward Automated Retrieval for a Software
Component Repository, Luqi, Jiang Guo, Dept. of
Computer Science, Naval Postgraduate School.
17
Searching
  • Two basic approaches
  • Use the information within the component (source
    code, documentation, diagrams) for searching.
  • Use external, metadata information about the
    component for searching.

18
Searching
  • Internal Methods
  • Signature Matching
  • Keyword
  • Specification Matching

Source Toward Automated Retrieval for a Software
Component Repository, Luqi, Jiang Guo, Dept. of
Computer Science, Naval Postgraduate School.
19
Searching
  • External
  • Categorization
  • Facets
  • Meta Data
  • User Feedback
  • Combination

Source Finding a Needle in a haystack a
technique for ranking matches between components,
Tansalarak, Claypool, Department of Computer
Science, University of Massachusets Lowell.
20
Metrics
  • Tracking Methods
  • Lines of Code
  • Level of Effort
  • Downloads vs. actual usage
  • Project Tracking
  • (n (CI IT)) RBE MT lt (n (BE
    MT))

Source Engineering Reuse Savings How to
Really Cut the Costs of Software Development,
Messinger David, .Net Developers Journal, August
2005.
21
Wrap-Up
  • Software reuse is only effective if the
    architects and developers are able to efficiently
    find and use components. Specifically, the
    perceived LE to search for components must be
    less than the perceived LE to create that
    component.
  • The correct software repository for your
    organization is needed to ensure efficient
    software reuse.

22
Sources
  1. Reuse Comes in Several Flavors, Achieving a
    Better Return on Software Series, 2, Martin
    Griss.
  2. Configuration Management and Component Libraries,
    Hedley Apperly, in Component-Based Software
    Engineering Putting the Pieces Together, George
    T. Heineman, William T. Councill, Addison-Wesley,
    2001.
  3. Toward Automated Retrieval for a Software
    Component Repository, Luqi, Jiang Guo, Dept. of
    Computer Science, Naval Postgraduate School.
  4. Finding a Needle in a haystack a technique for
    ranking matches between components, Tansalarak,
    Claypool, Department of Computer Science,
    University of Massachusets Lowell.
  5. Supporting the Construction and Evolution of
    Component Repositories, Scott Henninger,
    Department of Computer Science Engineering,
    University of Nebraska. 1996.
  6. Supporting Reuse by Delivering Task-Relevant and
    Personalized Information, Ye, Fischer, Department
    of Computer Science, University of Colorado
    Boulder 2002.
  7. The Return on Investment on Commercial
    Off-The-Shelf (COTS) Software Components, Brooke
    Chris, ComponentSource, 2002.
  8. Engineering Reuse Savings How to Really Cut
    the Costs of Software Development, Messinger
    David, .Net Developers Journal, August 2005.
Write a Comment
User Comments (0)
About PowerShow.com