0 votes
826 views
in Best Practices by

1 Answer

0 votes
by (30.6k points)

Reuse principles that hold in BPM / BAW projects:

  1. Reuse by dependency, not by copy - toolkits with snapshots; copying artifacts between apps creates versions nobody maintains.
  2. Reuse stable things - domain business objects, integration facades, UI house style, utilities (logging, error handling, configuration). Processes themselves rarely reuse well; sub-processes / linked processes only for genuinely identical steps (approval loop, document request).
  3. Small toolkits by purpose, one owner each, semantic versions, additive changes within a version line.
  4. Interfaces over implementations - a reused service has a documented contract (inputs, outputs, errors, side effects) and a test dashboard; callers depend on the contract.
  5. Configuration, not variants - one service with EPV / options beats three copies with small differences.

When reuse becomes too much:

  • A "common" toolkit that every app depends on and that changes weekly - each change forces every app to re-test; split it.
  • Generic services with many mode flags ("action = create|update|delete|validate") that nobody dares to change - the coupling is now in the parameters.
  • Reusing a coach view by giving it 40 configuration options - a second, simpler view is cheaper than the option jungle.
  • Toolkit dependency chains five levels deep - upgrades take days; flatten.
  • Reuse across teams without an owner - the artifact rots; if nobody owns it, inline it.

The yardstick: reuse pays when the reused artifact changes less often than its consumers and has one owner; when the reused part changes with every project, it is shared code in disguise and should be split or copied deliberately (with a note where it came from).

References

Related questions

+1 vote
2 answers 6.6k views
0 votes
1 answer 2.7k views
0 votes
1 answer 789 views
+1 vote
2 answers 7.5k views
0 votes
1 answer 2.3k views
+1 vote
1 answer 5.6k views
0 votes
1 answer 1.4k views
0 votes
1 answer 1.0k views
0 votes
1 answer 1.8k views

723 questions

807 answers

98 comments

4.9k users

Join BPM Community Discord Channel

Welcome to BPM Tips Q&A, Community wiki/forum where you can ask questions and receive answers from other IBM BPM experts and members of the community. Users with 2000 points will automatically be promoted to expert level.
Created by Dosvak LLC
Our Youtube Channel
...