S- Situation: I'm glad you ask. A relevant example being at my last company
TATA MOTOR where I collaborated with mainframe developers to
produce a new vehicle module for our Transportation WPF Product
using the MVVM architectural pattern.
T-Task: My task was to design and develop software to maintain their
manufacturing material data for different types of Vehicle
like Bicycle, Car, Truck etc....
A-Action: In the software designing phase after soliciting requirements from
stakeholders I define and create an abstract polymorphism pattern.
I created an abstract vehicle class for types of vehicle, to reuse the
common behavior that can be use from the derived types of vehicle class..
By creating an abstract vehicle class I force all sub vehicle derived
classes to implement the common abstract methods.
R-Result: In the end I produced a successful loose-couple, extensible, and testable
module for our transportation module. The stakeholders were pleased with the
product.