Journal "Software Engineering"
a journal on theoretical and applied science and technology
ISSN 2220-3397

Issue N8 2018 year

DOI: 10.17587/prin.9.339-348
Extensible Toolkit for the Development of Viable Systems with Knowledge Bases
V. V. Gribova, gribova@iacp.dvo.ru, A. S. Kleshchev, kleschev@iacp.dvo.ru, F. M. Moskalenko, philipmm@iacp.dvo.ru, V. A. Timchenko, vadim@dvo.ru, E. A. Shalfeeva, shalf@iacp.dvo.ru, Institute of Automation and Control Processes, Far Eastern Branch of the Russian Academy of Sciences (IACP FEB RAS), Vladivostok, 690041, Russian Federation
Corresponding author: Gribova Valeriya V., Research Deputy Director, IACP FEB RAS, Vladivostok, 690041, Russian Federation E-mail: gribova@iacp.dvo.ru
Received on June 5, 2018
Accepted on June 20, 2018

The paper presents the concept and architecture of an extensible toolkit for the development and maintenance of Knowledge Based Systems (KBSs). Such extensibility is a necessary condition for KBS viability in the course of changes of domain, user requirements and operating environment. The importance of provision of the toolkit extensibility by both its developers and users is justified. The key requirements for such a toolkit are identified: the possibility of its extensibility; the existence of a unified environment and instrumental support for the development and improvement of both KBSs and the toolkit itself. A three-level architecture of the extensible toolkit is proposed. It contains such levels as: an instrumental kernel, a basic and an extensible set of tools. The instrumental kernel defines the basic principle for the development of applied and instrumental services (systems): their software and information components are formed on the basis of a two-level approach. The instrumental kernel is sufficient to create information components by their structural models and to manage them and to specify declarative models of software components of all types. The basic toolkit includes a set of models and software sufficient to create and manage a KBS with the use of the basic technology. An extensible toolkit can include the following: new technologies for KBS development and their instrumental support (including tools for collective development and management), KBS shells, libraries of reusable components. The described concept is implemented within the toolkit of the IACPaaS cloud platform. It includes evolution mechanisms based on a unified declarative representation of information and software components with automatic generation of editors for their formation.

Keywords: knowledge-based system (KBS), KBS development technology, software system maintenance, instrumental support for KBS development, development tools, model description language, model editor, problem solver editor, editor generator
pp. 339–348
For citation:
Gribova V. V., Kleshchev A. S., Moskalenko F. M., Timchenko V. A., Shalfeeva E. A. Extensible Toolkit for the Development of Viable Systems with Knowledge Bases, Programmnaya Ingeneria, 2018, vol. 9, no. 8, pp. 339—348.

This work was partially supported by the Russian Foundation for Basic Research, project nos. 18-07-01079 and 16-07-00340 and by PFI "Far East"project no 18-MNT-009.