In our last post we discussed the Morphis low code development framework delivered with our modernized legacy applications to underpin their ongoing maintenance and enhancement. We left the extensibility discussion to this post.
A discussion on extensibility is best illustrated with a real life case study for which we’ll use Ellucian and the modernization of their Banner® Student Information System from Oracle Forms to Java. This modernization included the provision of an extensibility framework which enables Ellucian’s clients to customize their UI data entry forms to ensure adherence to their own unique policies without having to modify the base source code.
This is a key feature of extensibility. No longer does the end user have to update the underlying code, reapply their existing customizations and test functionality (assuming they remember what those customizations are); no longer is Ellucian having to deal with changes to their base code in the field. This is what the extensibility framework has delivered to Ellucian and their customers.
Having modernized the core Banner system there are, of course, many customizations in the field that also need modernizing. To enable scoping of those customizations, Ellucian leverage Morphis’ Inspector tool. The video below is from Ellucian Live in March 2017 where Morphis and Ellucian discuss the process for Ellucian’s clients in modernizing those customizations. Unfortunately the audio is not great but the whole session is audible with a little perseverance.
So what is the Morphis technology underpinning extensibility? The extensibility of Tasks and the inheritance model that Mprphis has implemented uses Morphis Foundations and even Morphis Frames, thereby, also enabling inheritance in Views.
Foundations enables the addition of new business objects, controls, controller methods and service methods, as well as the modification of something that already exists. Different parts of the same Form can even inherit from separate parents while adhering to the single-inheritance rules of .NET and Java.
The basic extensions that can be implemented and combined include:
- Modification of visual properties and items within an existing view;
- Addition of new visual blocks and items to an existing view;
- Creation of new items in existing domain concepts (business objects);
- Creation of new domain concepts (business objects);
- Modification of existing action triggers functionality;
- Addition of new action triggers to baseline or extension elements.
An overview and demonstration of the extensibility process is provided by the following video.
If you have any questions or would like to learn how this can be applied to your situation, please do not hesitate to contact us.