Industry Best Practices - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Industry Best Practices

Description:

a technique or methodology that, through ... Keep mini (no more than 1-2 days (hours)) Milestones are 0/1. Cover all tasks ... Daily Smoke and Build Test ... – PowerPoint PPT presentation

Number of Views:44
Avg rating:3.0/5.0
Slides: 15
Provided by: Robert9
Category:

less

Transcript and Presenter's Notes

Title: Industry Best Practices


1
Industry Best Practices
  • CS2335
  • Fall 2003

2
What are best practices?
  • Good practice comes from experience, and
    experience comes from bad practice.
  • Fred Brooks

a technique or methodology that, through
experience and research, has proven to reliably
lead to a desired result.
3
Evaluate Best Practices
  • Potential reduction of schedule
  • Improvement of project visibility
  • Effect on development risk
  • Improved use of resources
  • Improvement in quality
  • Chance of success

4
Miniature Milestones
  • Problem Im 90 done.
  • Technique
  • Like the pioneers going west
  • Developers create their own estimate.
  • Keep mini (no more than 1-2 days (hours))
  • Milestones are 0/1
  • Cover all tasks
  • Use to cover short-term
  • Assess and re-estimate frequently.
  • Often used in project recovery

5
Change Board
  • Problem Uncontrolled changes, lack of
    prioritization on bug fixes, Code/Fix cycle
  • Technique
  • Create a board of representatives
  • Board has authority to accept/reject changes
  • Changes are considered before they are made
  • Side Effects are considered
  • Controls changes after component is baselined

6
Daily Smoke and Build Test
  • Problem Unsuccessful Integration, low quality,
    poor progress visibility
  • Technique
  • All code modules turned in frequently.
  • Developers keep code in buildable form.
  • All interfaces are stubbed out.
  • Dummy code used where necessary.
  • Smoke tests does it fry when turned on?
  • Smoke tests run automatically.
  • Breaking the build usually earns a prize.
  • Provides good project visibility

7
Incremental Integration
  • Problem Code integration fails. Big-bang
    approach frequently used. Excessive schedule
    spent in integration phase.
  • Technique
  • Use proven integration technique
  • Top-down
  • Bottom-up
  • Hybrid

8
Signing Up
  • Problem Lack of commitment, poor morale
  • Technique Have developers commit (Sign Up) to
    complete a component within a specific schedule.
  • Risks Inefficiency, burn-out, reduced talent,
    reduced visibility

9
Design Digression
  • The next 4 slides come from
  • Robert Martin Principles and Patterns
  • http//www.objectmentor.com/resources/articles/Pri
    nciples_and_Patterns.PDF

10
OO Design Digression
  • Open Closed Principle
  • Modules are open for extension, closed for
    modfication.
  • Liskov Substitution Principle
  • Subclasses should be substitutable for their base
    classes.
  • Consider behavior, not just is a
  • Square/rectangle problem
  • Dependency Inversion Principle
  • Depend upon abstractions, not concretions

11
More Design Digression
  • Interface Segregation Principle
  • Many client-specific interfaces are better that a
    single general-purpose interface
  • Release-Reuse Equivalency Principle
  • The granule of reuse is the granule of release.
  • Common Closure Principle
  • Classes that change together belong together
  • Common Reuse Principle
  • Classes that are not reused together do not
    belong together.

12
Still more design digression
  • Acyclic Dependency Principle
  • The dependencies between packages must not form
    cycles.
  • Stable Dependency Principle
  • Depend in the direction of stability
  • Ci incoming dependencies
  • Co outgoing dependencies
  • Instability (I) Co / (Ci Co)
  • Depend on packages whose I metric is lt you

13
Yet more design digression
  • Stable Abstractions Principle
  • Stable packages should be abstract packages
  • Nc number of classes in a package
  • Na number of abstract classes in package
  • Abstractness (A) Na / Nc
  • Distance A I -1

14
Next Time
  • Design Patterns, How do we do some of this stuff?
Write a Comment
User Comments (0)
About PowerShow.com