Glossary · Automation software engineering and architecture
Reusable component
Also known as: Reusable software component
German: Wiederverwendbare Komponente
In software engineering, a reusable component is a software component designed, tested and documented so that it can be used in several products or projects without modification, typically configured through parameters and defined interfaces.
- Software engineering
In one sentence
A reusable component is designed, tested and documented to be used in several products or projects without modification.
Example
The machine builder's standard function block for pneumatic cylinders is used in every machine, configured only by parameters for sensors and timeouts.
How it applies
- Engineering: Reuse pays only if the component is stable, versioned and well tested. A reusable component needs an owner, a release process and Semantic versioning so users know when updates are compatible.
- Functional safety: Reusing a component in a safety context requires evidence that it suits the new context; previous use alone is not sufficient.
- Documentation: Documentation of the component should be reusable too: one set of topics for the component, reused in each machine manual. This mirrors reuse in DITA with conref or keys and prevents divergent descriptions of the same function.
Reusable component vs. copy and paste
Copying code into each project creates many diverging versions. A reusable component exists once and is updated centrally, so fixes reach every user.