The use of knowledge-based systems has been limited to an area of very specific
applications where special methodologies and tools are used (di!erent from the techniques
applied for software engineering) oriented to model, according to di!erent
conventions of knowledge representation, the expertise in several commercially relevant
"elds. The software engineering "eld has been mainly focused in information systems
development improving the reliability and e$ciency of data services. However, the
current users of these services are increasingly interested in deeper functions integrated in
to the information systems supported by the knowledge related to the data conceptual
domains.
The relationship between both approaches has been produced only in the area of
knowledge-based support to software engineering tasks. Lowry and Duran (1989)
summarize this recent evolution in two main trends: (1) improvement of automatic
program synthesis techniques aiming at transforming high-level speci"cations in operative
programs using set theory and logic such as the commercial system REFINE or the
experimental system KIDS Smith (1988) built on top of REFINE, and (2) broadening the
automatic programming scope to the entire software life cycle by building knowledgebased
assistants for acquiring validating and maintaining speci"cations. These capacities
have been embedded in CASE tools. However, three circumstances are creating a di!erent
situation.
f The need for a more open architecture in applications to ensure an adequate
human}machine interaction according to the recent approaches for design that
follow a user-centred view.
f The need of software reuse which requires an open structure: (1) to easily understand
the contents of any software component and (2) to be able to accept changes in its
contents according to the speci"c needs of the application where the component is
going to be reused.
f The improvements on reliability and capacity of representation produced in the last ten
years in the "eld of knowledge representation and knowledge-acquisition methods,
giving birth to a collection of mature technologies supported by experimental tools,
but providing levels of services very close to that of industrial requirements.
Therefore, now it is possible to formulate and to build an application by using directly
the knowledge modelling concepts supported by adequate tools instead of formulating
the application using information-structuring concepts and data-processing algorithms
as in the case of usual software environments. This is a very important feature because it
brings the design phase closer to the conceptual speci"cation phase, which usually in the
traditional software world are separated by a bigger gap and, hence, subject to more
errors than those possible between the conceptual model and the knowledge model, the
latter being closer to the conceptual abstractions.
However, not many attempts have been made by the AI community to produce
something like cognitive programming environments in an operational way where
reasoning steps using domain models are applicable to describe and to explain the
answers of the application. AI has to invade the area of applications with practical views.
Although the paradigm modelling e!orts must continue as focus of research, an additional
focus should be the advanced modelling of complex applications using the
available paradigms.
This paper aims precisely to propose a type of this structured knowledge model
formulation based on a tool oriented to support the design and implementation of
general applications using the knowledge engineering approach which means to understand
the current applications from a richer conceptual perspective. The interest of the
paper is to provide some initial results on the possibilities of this class of tools to be
acceptable by the general applications development community.
First, a summary of the actual requirements for software development is given. Then,
the concept, the structure and the organization of the Knowledge Structure Manager
(KSM) tool is presented which is conceived to support and extend the state of the art in
knowledge modelling approach. Then, an application using KSM for real-time emergency
management is described where practical comments are included. Finally, some
general conclusions are proposed about the role of the knowledge-oriented approach in
the context of software engineering by evaluating the behaviour of the model experimented
with respect to the usual parameters and criteria applied for software evaluation.
The use of knowledge-based systems has been limited to an area of very specific
applications where special methodologies and tools are used (di!erent from the techniques
applied for software engineering) oriented to model, according to di!erent
conventions of knowledge representation, the expertise in several commercially relevant
"elds. The software engineering "eld has been mainly focused in information systems
development improving the reliability and e$ciency of data services. However, the
current users of these services are increasingly interested in deeper functions integrated in
to the information systems supported by the knowledge related to the data conceptual
domains.
The relationship between both approaches has been produced only in the area of
knowledge-based support to software engineering tasks. Lowry and Duran (1989)
summarize this recent evolution in two main trends: (1) improvement of automatic
program synthesis techniques aiming at transforming high-level speci"cations in operative
programs using set theory and logic such as the commercial system REFINE or the
experimental system KIDS Smith (1988) built on top of REFINE, and (2) broadening the
automatic programming scope to the entire software life cycle by building knowledgebased
assistants for acquiring validating and maintaining speci"cations. These capacities
have been embedded in CASE tools. However, three circumstances are creating a di!erent
situation.
f The need for a more open architecture in applications to ensure an adequate
human}machine interaction according to the recent approaches for design that
follow a user-centred view.
f The need of software reuse which requires an open structure: (1) to easily understand
the contents of any software component and (2) to be able to accept changes in its
contents according to the speci"c needs of the application where the component is
going to be reused.
f The improvements on reliability and capacity of representation produced in the last ten
years in the "eld of knowledge representation and knowledge-acquisition methods,
giving birth to a collection of mature technologies supported by experimental tools,
but providing levels of services very close to that of industrial requirements.
Therefore, now it is possible to formulate and to build an application by using directly
the knowledge modelling concepts supported by adequate tools instead of formulating
the application using information-structuring concepts and data-processing algorithms
as in the case of usual software environments. This is a very important feature because it
brings the design phase closer to the conceptual speci"cation phase, which usually in the
traditional software world are separated by a bigger gap and, hence, subject to more
errors than those possible between the conceptual model and the knowledge model, the
latter being closer to the conceptual abstractions.
However, not many attempts have been made by the AI community to produce
something like cognitive programming environments in an operational way where
reasoning steps using domain models are applicable to describe and to explain the
answers of the application. AI has to invade the area of applications with practical views.
Although the paradigm modelling e!orts must continue as focus of research, an additional
focus should be the advanced modelling of complex applications using the
available paradigms.
This paper aims precisely to propose a type of this structured knowledge model
formulation based on a tool oriented to support the design and implementation of
general applications using the knowledge engineering approach which means to understand
the current applications from a richer conceptual perspective. The interest of the
paper is to provide some initial results on the possibilities of this class of tools to be
acceptable by the general applications development community.
First, a summary of the actual requirements for software development is given. Then,
the concept, the structure and the organization of the Knowledge Structure Manager
(KSM) tool is presented which is conceived to support and extend the state of the art in
knowledge modelling approach. Then, an application using KSM for real-time emergency
management is described where practical comments are included. Finally, some
general conclusions are proposed about the role of the knowledge-oriented approach in
the context of software engineering by evaluating the behaviour of the model experimented
with respect to the usual parameters and criteria applied for software evaluation.
การแปล กรุณารอสักครู่..