Nov 20, 2008

Product customizations

After my recent post on vendor product usage scenarios, one of my colleagues asked me to elaborate what I meant by product customizations... Here's how I think about it. Please join this discussion to help define it...

Customization: You've customized a software product, when you've made a change in the product that the vendor doesn't provide a published and supported* mechanism for...

* The published and supported mechanism for change in a software's behavior are through configuration and API.

Tests to detect customizations:
- Did you use published and supported mechanisms (configuration, API) in the product to change product behavior?

- Will your changes be compatible with new product versions? I.e. will your changes work seamlessly after you've upgraded the software product to a newer version? (This test is necessary but not sufficient, as any changes to published and supported configuration and/or API can also make this test true)

- Does the vendor support your changes through its "regular" support or does it charge you extra?

- ?

Open question: How does this differ between Open Source Software and proprietary vendor software?

No comments:

Post a Comment