Intentional’s knowledge engineering process is using an agile and iterative process consisting of three major activities that are performed in very rapid iterations (hours-to-days).
- Domain Engineering. A domain expert together with a software engineer, which is now a meta developer compared to the traditional approach, jointly design a Knowledge Processor with domain specific languages required to express the knowledge in a specific knowledge domain. The software engineer uses the Intentional Domain Workbench, which is a workbench to build knowledge workbenches, to build the Knowledge Workbench and its domain languages including:
- structure using domain schemas,
- notations using projections,
- meaning and semantics using transformations and validations, and
- generators for any desired work products using transformations.
- Knowledge Acquisition. Using the Knowledge Workbench, which is knowledge sensitive in that it understands the meaning of the content specific to that business domain, the domain expert records the business knowledge. As opposed to using Word or Excel to record their knowledge, the Knowledge Workbench can process the knowledge at the level of what the intention is, not unlike a equation in a spreadsheet or a grammar check in a word processor.
- Knowledge Application. The final activity is applying the knowledge content . Examples of using the knowledge content can be interactive calculations and validations of the knowledge similar to a spreadsheet. Work products that can be generated includes software, web sites, test cases, documentation, check lists, education material etc. These knowledge intensive work products may not be new in themselves, but traditionally they have been very labor intensive to create. Now they can be created at a far lower cost, much more rapidly and at a significantly higher quality.
To see an example of the Intentional knowledge process in action, see the case study.