Question-Answer System For Object-Oriented Analysis and Design
Question-Answer System For Object-Oriented Analysis and Design
ABSTRACT: This paper describes the results of studies and implementations which can add basic Rational
Unified Process (RUP) flows by a special workflow to support "Interaction with experience”. Such workflow
is developed with orientation on RUP on the basis of a special NetWIQA system that supports question-
answer reasoning of a design team. NetWIQA allows designers to create the drafts of the basic RUP samples
for their subsequent coding and use in RUP environment or without reference to RUP; set of samples based
on the protocol of QA reasoning, its analysis and necessary transformations. NetWIQA is the client-server
QA processor with the special command system.
naturally.
Our purpose to develop automated means of interac- Here presented studies and techniques are based
tion with experience is caused by a number of rea- on the following hypothesis:
sons, e.g.: QA interaction with experience consists of natu-
1. We are sure that modeling of experience is ral and artificial components being a complex unit.
much more important than modeling of knowledge Such interaction may be much more effective if:
for future development of Artificial Intelligence. 1 Question-Answer Reasoning of the designers is
To prove it we should realize that human intelli- step-by-step registered in a special database of
gence appeared while evolution, and was an answer the project.
to a question "What can add the genetic forms of ex- 2 The results of QAR registering (QA protocol) are
perience?" While its evolution, Intelligence got the investigated, transformed to useful models, and
functions of self-organization, self-development, used to support the next steps of interaction with
transfer and use of out-genetic components of ex- experience in designing.
perience.
Person It has a number of useful interpretations such as:
1 QA protocol registers any design process as a re-
Experience search experiment, so representing “the primary
Knowledge
measuring information” about design process and
about the used control facilities.
2 Contents of the protocol reflect a real reasoning,
Rational skills Automatic which can be investigated to increase the knowl-
skills edge about a “phenomenon of reasoning and
questions”.
3 Each of the registered questions and answers ad-
mits its interpretation as an event essential for
reasoning and design process, that allows to con-
Figure 1 Experience and knowledge
sider the protocol as “a network of events” or- design team. NetWIQA has a rich set of operations
dered in time. to interact with all models of experience.
4 Protocol is a data structure (QA structure) with its
practically useful set of operations. Such interpre-
tation of QA structure corresponds to the experi- 5 QA PROCESSOR
ence of Computer Science in the area of data
structuring for adequate presentation of a QA First of all processor NetWIQA is a system for sup-
protocol. porting of the collaborative design process. This sys-
tem gives the members of design team an opportu-
nity of QA recording of the step-by-step designing
4 COMPARISON WITH RUP to the uniform QA protocol.
NetWIQA is the client-server processor with the
To indicate the place and role of our NetWIQA sys- special command system with the following func-
tem in OOAD framework, we present its possible tions:
association with RUP. − to make QA protocols of QAR;
Scheme on Figure 2 generally shows that Net- − to represent the protocols or their parts as the ap-
WIQA allows designers to create: plied models (dynamically visualized and con-
− drafts of the basic RUP samples (for example, all trolled graphs; models of prototypes for sample
kinds of UML diagrams: Use-Case, Classes, Col- actions; the arguments, motivation and purposes);
laboration, Activity and so on) for their subse- − to transform the protocols to network structures
quent coding and use in RUP environment or (QA event nets, QA Pert nets and QA Petri nets);
other related OOAD means; − to analyze texts of questions and answers (the
− drafts of the basic RUP samples for their applica- analysis is aimed at decoding and representing of
tion in the current project without reference to semantics of reasoning with first-order predicate
RUP (using only the possibilities of NetWIQA); logic).
− a set of samples based on the protocol of QA rea-
soning, its analysis and necessary transformations Representations: Transformations:
(such samples are presented below). :
Visualization QA protocols QA event
schemes nets
Patterns, templates and
Other units of RUP Experience Other needed Motivation and
Experience purposes QA Pert
Construction Informatics Digital Library http://itc.scix.net
schemes diagram
R
Design team Precedent
schemes QA Petri
nets
A Argumentation
schemes
Net WIQA
P Analysis of text
Figure 2 RUP and NetWIQA QA processor has two set of the commands, e.g.
instruction dialogue through the visual list of alter-
The system is based both on RUP models of ex- native commands; and plug-in mechanism that pro-
perience and personal experience of the members of
vides an access to default commands and new acces- 6 QA TECHNOLOGY
sible functions.
These operations of QA processor are enough for QA command system supports the workflow "Inter-
development both the basic UML and RUP samples, actions with Experience" as the special set of appli-
and QAR samples (Fig. 3). In more detail, our proc- cations, each of which perform the certain task of
essor is developed according to the component ap- QA technique. At present we have developed about
proach as the 3-layer architecture on the basis of 40 utilities that are accessible to designers through
Borland MIDAS technology. WEB-environment of a client workstation. The
It consists of layers: structure and the access to the service utilities are
1 QA database and Experience database (Libraries realized according to the interactive RUP-model.
of QA templates and other samples of experi- Each service task is submitted as:
ence), − its QA pattern that are copied to QA database of
2 business-logic kernel (server), the project and applied at the next case of the ser-
3 presentation layer ("thin client”). vice task;
The business-logic layer provides direct data ac- − interactive form to support its convenient applica-
cess for the clients, and performs all data processing. tion.
Server component of QA processor consists of an To demonstrate the functions of these applica-
application server, system magazine, synchronizer tions let us name a few of them, e.g. "To solve a
and etc. connected through TCP/IP sockets with task", " To answer a question", "To construct the an-
Borland Socket Manager utility. swer", "To prove the answer", "To discuss the an-
The third presentation layer of the system archi- swer", " To fill-in the pattern", "To set the require-
tecture involves a client library, a library of syn- ment", " To generate the specification", " To
chronizing flows, a library of configuration, a client determine the front of work", "To plan", "To control
workstation, and the configuration utility to adjust visualization of QAR fragment", "To generate the
users, working groups and projects. The client work- educational unit", "To control knowledge". The
station uses plug-ins to connect necessary functional given utilities show that some applications of QA
modules to expand the set of QA applications, and in processor support also operative training for the
such a way additional applications to work with de- members of a design team, e.g. to learn the certain
sign experience and knowledge are built-in QA en- design process.
vironment. QA technology is applied in any project as coor-
QA processor has the distributed and shared dinated performance of the set of utilities and tasks
structure. The separate components can function on appointed to the members of a design team. At any
Construction Informatics Digital Library http://itc.scix.net
different computers in the local business network. time each designer usually works with the dynamic
QA processor should ensure automated perform- set of the service and project tasks.
ance of the following main tasks: The common work begins with the utility "Con-
− effective information and control support in ceptual design", which calls the following task "To
Computer-Aided Conceptual Design of the auto- open the project" as the initial condition of QA data-
mated systems; base of the project. The initial condition of a task-
− current unified documenting of processes and tree is submitted in Figure 4.
products, open for intellectual interaction; QA templates of documents
Z.0
− development of data and knowledge bases of Z.0.1. < Feasibility Study Report>
complex projects and their interactive use while Z.0.2. <Conception>
the conceptual design; Z.0.3. < Statement of Work for Design >
− controlled forming and accumulation of employ- Z.0.4. <Technical report of the project>
ees experience as QA databases of a design or- Z.1 Z.1.0 Service tasks for:
ganization;
− control of automated designing, e.g. due to the ra- < Defining the text of the main task>
tional choice of the direction of processes while <Prototype of the main task>
<Motivation and purposes schemes>
design decision-making; Other service tasks
− controlled interaction between designers in col- Z.1.1 The first iteration
laborative work in the structure of a corporate de-
sign network; Z1.1.0
− communicative document circulation in the cor- Z1.1.1
porate network;
− controlled training and learning during designing Z1.1.2
and operation of complex systems.
Z.1.2 The second iteration
Figure 4 Task structure of the project Questions and answers get symbolic codes and
The standard QA patterns of further documenting indexes appropriate to their types and place in the
are loaded at the initial state of QA database. So, e.g. project. Questions have two subtypes, i.e. Z-task and
the State Russian Standards require that any Q-quiry. Q-quiries require the answers to be got
CAD/CAM/CAE system includes the standard from experience database. If any Q has not got the
documents, i.e. "Conception" (analogue of "Vision" answer, it is changed to Z-subtype.
in RUP), "Statement of Work for Design" and "Fea- The answer class is wider and includes subtypes
sibility Study Report". Each pattern of documenting "A-answer", "I-idea", "H-hypothesis", "S-
represents the system of normative questions which specification", "R-requirement", "M-motive", "O-
should be copied to QA database and answered dur- purpose", "E-decision", "P-procedure" and "F-
ing design process. formula".
The system service utilities provide "interaction The QA structure of any task is a dynamic data
with experience" for the definite project tasks, which structure composed during the decision-making and
are formulated and solved during design. reasoning. There are 3 types of questioning activity:
At any moment, design and service tasks make a − automatic reference to experience "automatic
uniform graph, where each task is interpreted as a skill"
“question -task". − rational reference to experience, e.g. with a ques-
Each task is coded by a symbol "Z" and index tion of Q-subtype;
appropriate to a place of this task in the project (in- − rational reference to experience, e.g. with a ques-
dex "0" specifies that a task has utility functions). tion of Z-subtype;
Indexes allow designers to determine not only inner
project tasks from utilities, but also the tasks of dif- The model of QA process is extended to the event
ferent iterations of the project. QA networks and other network models of coherent
Each task in a tree can be in one of the following sets of questions and answers. It requires to solve the
conditions - "decided/solved", "unsolvable", "post- tasks of detection of questions, their identification,
poned" and "executed". Any task has the set of at- adequate coding and modeling, and effective appli-
tributes with references to its templates in QA data- cation. For these purposes QA processor has the
base. means of text analysis with automated translation to
Each project work is supported by QAR while PROLOG-like and semantic net languages.
decision of the task. NetWIQA step-by-step proto-
cols all questions and answers and their relations
(Fig. 5) in QA database of the project. Here we see 7 QA PROCESS
Construction Informatics Digital Library http://itc.scix.net
terns, concrete definition (for types, assignment Burger J. et al 2001. Issues, Tasks and Program Structures to
of meanings to attributes (as to the phenomenon Roadmap Research in Question & Answering (QA). NIST.
Galic M., Macisaac B., Popescu D. Using a Single Business
of event type, argumentation. Pattern with the Rational Unified Process.
2 For answers: creation, assignment of a type, http://www.redbooks.ibm.com/, REDP-3877-00.
change of a type, registration of a condition, edit- Han P., Shen R., Yang F. 2002.The application of Case Based
ing of the contents, assignment of meanings to at- Reasoning on Q&A System. Proc of the 15th Australian
tributes (as to the phenomenon of event type, ar- Joint Conference on Artificial Intelligence (AI2002), Can-
berra, Australia: 31-37.
gumentation. Henninger S. 2003.Tool Support for Experience-Based Soft-
3 For QA groups: transformation to the node, ex- ware Development Methodologies. Advances in Computers
pansion into QA structure, transformation to the Vol. 59: 29-82.
event net, visualization of a network, analysis of a Hirschman L.& Gaizauskas R. 2001. Natural Language Ques-
condition, choice of a direction of development, tion Answering: The View from Here. Natural Language
Engineering Vol. 7: 67-87.
scrolling of dynamics (on inquiries. Kroll P.& Kruchten Ph. 2003. The Rational Unified Process
4 For text: creation, transformation, grammar Made Easy: A Practitioners Guide to the RUP. Addison-
analysis, semantic analysis, transformation to the Wesley.
semantic graph, visual analysis, supporting of a Yang F., Shen R., Han P. 2003. Adaptive Question and An-
phenomenon of attention. swering Engine Base on Case Based and Reasoning
Technology, Journal of Computer Engineering Vol.29
No.1: 27-28.