e brainstorming
DESCRIPTION
Studies on BrainstormingTRANSCRIPT
Semantic Ideation Learning for Agent-Based E-Brainstorming
in partial fulfillment of the requirement for the award of the degree of
BACHELOR OF TECHNOLOGY IN
INFORMATION TECHNOLOGY
ANNA UNIVERSITY: CHENNAI 600 025
ANNA UNIVERSITY: CHENNAI 600 025
BONAFIDE CERTIFICATE
ABSTRACT
Brainstorming can assist organizations in generating creative ideas using
teamwork and collaboration. It is the best known tools for creative problem solving.
Brainstorming can simply be defined as a group process for generating ideas by using the
four divergent thinking guidelines, namely, deferring judgment (the process of stopping
to judge ideas and options until after there are many ideas generated), striving for
quantity (more ideas generated leads to higher quality ideas), freewheeling (giving
participants the opportunity to be playful and to strive for imagination), and seeking
combinations (creating ideas that are based upon previously stated ideas). That is, an idea
from one participant can trigger a new idea in another participant, who would otherwise
not have been produced the idea.
This paper integrates the unique association thinking of humans with an
intelligent agent technique to devise an automated decision agent called the Semantic
Ideation Learning Agent (SILA) that can represent a session participant who is actively
participating in brainstorming.
TABLE OF CONTENTS
ACKNOWLEDGEMENT ABSTRACT 1 LIST OF FIGURES 3
CHAPTER TITLE PAGE NO
1. INTRODUCTION1.1 EXISTING SYSTEM1.2 PROPOSED SYSTEM1.3 PURPOSE OF THE PROJECT1.4 FEASIBILITY STUDY1.5 SYSTEM REQUIREMENTS
2. LITERATURE REVIEW
3. DATA MINING 3.1 DATABASE 3.2 DATA MINING (DM) 3.3 ARCHITECTURE 3.4 KNOWLEDGE DISCOVERY IN
DATABASE
4. ONTOLOGIES 4.1 WEB SERVICE 4.2 WEB SERVICES DESCRIPTION LANGUAGE (WSDL)
4.3 SIMPLE OBJECT ACESSS PROTOCOL (SOAP)
5. SERVICE ORIENTED ARCHITECTURE 5.1 DEFINITION 5.2 SERVICE ARCHITECTURE 5.3 SOA INFRASTRUCTURE
6. IMPLEMENTATION
6.1 STEPS 6.2 DATA FLOW DIAGRAM
7. MODULES DESCRIPTION
7.1 UI MODULE7.2 COLLECTIVE BRAINSTORMING BLACKBOARD
7.3 SEMANTIC IDEATION LEARNING AGENT
7.4 PROFILE MODULE 7.5 IDEA CHOSEN MODULE
8. TESTING
8.1 SOFTWARE TESTING 8.2 UNIT TESTING 8.3 INTEGRATION TESTING 8.4 WHITEBOX TESTING 8.5 BLACKBOX TESTING 9. SCREENSHOTS
10. CONCLUSION 10.1 FUTURE ENHANCEMENTS
11. REFERENCES APPENDIX 1.1 APPENDIX 1.2 APPENDIX 1.3
APPENDIX 1.4
CHAPTER-1
INTRODUCTION
BRAINSTORMING is an effective means of “getting a large number of ideas
from a small number of people in a short time”. Brainstorming can help organizations
and individuals in generating creative ideas through teamwork and collaboration.
Creativity then refers to the ability of bringing something new into being for some
purpose. In this paper, we shared a definition of creativity developed by the
organizational psychologist Reginald Talbot, who defined creativity as “making a change
that sticks.” The word “making” indicates that creativity is about bringing something into
being. The word “change” means the introduction of something new, which can fall
anywhere along the continuum from continuous change (that is, incremental
improvement) to discontinuous change (that is, paradigm breaking). The phrase “that
sticks” then indicates that the creative product or idea serves some need or purpose. E-
brainstorming is a form of brainstorming that employs computer-mediated electronic
communication to replace verbal communications. E-brainstorming often utilizes special
software that gathers employees’ ideas and shares them with other group members to
encourage faster collaboration. In general, e-brainstorming generates more ideas than
verbal brainstorming groups. This improvement of e-brainstorming over the conventional
brainstorming process comes from factors such as production blocking and evaluation
apprehension.
Furthermore, the number of ideas generated has been viewed as the dominant measure of
e-brainstorming effectiveness. (The issue of opportunities to build relationships with
other people or individual growth is beyond the scope of this study.) This work seeks to
consider whether the effectiveness of e-brainstorming could further be enhanced.
Furthermore, aside from improving group creativity, this study explores the application
of idea generation to the era of the service economy. This study seeks to better
understand human’s capabilities in generating ideas and attempts to devise an
architecture and inference mechanism adopted by intelligent agents in order to achieve
effective e-brainstorming (which might be useful to some intelligent e-services). This
study develops an inference mechanism of Semantic Ideation Learning Agent (SILA,
which performs idea associations and generation, and an architecture of Collective
Brainstorming Decision System (CBDS), which provides an environment where SILAs
could learn and share their knowledge. These intelligent agents could not only represent
the session participants and attend brainstorming session when they could not be present
but also report the session process and productions to their clients after completing the
brainstorming discussion.
1.1 EXISTING SYSTEMS:
Most ideation research either implicitly or explicitly conjecture that if people
generate more ideas, then they will produce more good ideas.
Previous ideation literatures were inconsistent in the arguments.
1.2 PROPOSED SYSTEM:
E-brainstorming might be useful to some intelligent e-services.
E-brainstorming often utilizes special software that gathers employees’ ideas and
shares them with other group members to encourage faster collaboration.
E-brainstorming eliminates the production blocking.
SILA can learn to understand the task and utilize external stimulus without
restrictions in the working memory or attention span.
This project is proposed to find the hidden connections in any organization and
helps people to work together, share social resources to achieve common goals.
This system designs to unlock valuable business intelligence without explicit
human involvement
1.3 USES OF BRAINSTORMING:
Use it when new ideas are required, to generate a large list of possibilities.
Use it when a solution to a problem cannot be logically deduced.
Use it when information about a problem is confused and spread across several
people, to gather the information in one place.
The creative synergy of a Brainstorming session is also useful in helping a team
bind together.
1.3 PURPOSE OF THE PROJECT:
This system aims at constructing a new e-brainstorming decision model,
integrating semantic expression with the three ideation association capabilities into SILA
agents that are supported and facilitated with the system architecture of CBDS. This
Project develops an inference mechanism of Semantic Ideation Learning Agent (SILA),
which performs idea associations and generation, and architecture of Collective
Brainstorming Decision System (CBDS).
1.4 FEASIBILITY STUDY
For solving any defined problem successfully the constraints bounding the
problem must be defined. There may be different ways of checking whether a system is
feasible or not. The reliability of the system should also be encountered for the feasibility
study.
There are three dimensions of software analysis:
Operational
Technical
Economical
The following feasibility studies were performed to gauge the Feasibility of the system.
OPERATIONAL FEASIBILITY
In this test the operational scope of the system is checked. The system under
consideration should have enough operational reach. This E-Brainstorming Project is
very user friendly. Users generally have to find it easier to get accomplish tasks that
require fewer actions on their part. Every thing to one page also reduces user interactions
since there is no clicking or typing to get to another page.
TECHNICAL FEASIBILITY
The technology is the first step of feasibility for a project. This test includes the
study of Function, Performance and Constraints that may affect the ability to achieve an
acceptable system. This test begins with an assessment of the technical viability of the
proposed project. One of the main factors to be accessed is implementation of the
proposed project. The technology should be within the state art, where the defect can be
reduced to a level matching the application.
ECONOMICAL FEASIBILITY
The development of the E-Brainstorming project can be completed at an
affordable cost which any client can afford. The E-Brainstorming is very much
financially feasible. Transfer of data from source to sinks can be carried out at a faster
rate when compared to the existing one. The organizations must have all the resources to
acquire this system.
PRODUCT PERSPECTIVE
This System use of semantic ideation agents (SILAs) in the e-brainstorming
process in order to reach automatic collective decisions by e-brainstorming. In this process,
SILAs collaborate with CBDS e-brainstorming system architecture. Although a big gap still
CBDS
exists between artificial brainstorming and creative human brainstorming, this study advances
existing e-brainstorming research by crossing the three key boundaries of the human ideation
capability (understanding, cognition, and endurance). The proposed agent-based e-brainstorming
system improves e-service recommendation and delivery by creating a novel reasoning process
for recommender systems, focusing on producing creative recommendations.Fig.1 shows the
overall System architecture.
Fig. 1
UI Module
Collective Brainstorming Blackboard
Idea chosen Module
Semantic Ideation Learning Agent
Profile module
Bookkeeping Agent
Open Problem & Participants
Valued Ideas Notification
User Profile
Idea Knowledge
Base
1.5 SYSTEM REQUIREMENTS:
1.5.1 Software Requirements
Windows Operating System 2000 and above.
Jdk1.5 and above.
Apache Tomcat 6.0.
Spring
Java Server Pages
Oracle 10G/Derby
Ontology
JES
1.5.2 Hardware Requirements
Hard Disk: 10GB and Above
RAM: 256MB and Above
Processor: Pentium III and Above
CHAPTER-2
LITERATURE REVIEW
2.1 Bounded Ideation Theory: A New Model of the Relationship between Idea-Quantity and Idea-Quality during Ideation
Bounded Ideation Theory (BIT) to explain the relationship between the number-
of-ideas and the number-of-good-ideas contributed during ideation session and
the total number of ideas contributed.
BIT posits that certain cognitive and physical boundaries cause the ideation
function to be an inflected curve that transitions from a positive-but-increasing
slope to a positive-but decreasing slope.
The ideation function, the relationship between idea-quantity and idea-quality,
might inform the development of more productive ideation processes by linking
idea-quality to the rich body of existing research on idea-quantity.
Bounded Ideation Theory must now undergo rigorous empirical testing to see the
propositions of cause-and-effect it posits are useful models of the ideation
function; whether observed ideation functions are consistent with those posited by
the model.
The model implies that once an understanding of the task has been achieved, the
relationship between number-of-good-ideas and total-ideas ideas will be a
curvilinear function with a positive but decreasing slope.
2.2 Effective Meetings through Electronic Brainstorming
Electronic Brainstorming (EBS) is designed to change the behavior of groups. It
is designed to help employees communicate effectively during meetings in a
painless and efficient way.
Electronic brainstorming is used as part of a regular organizational meeting
process. It gives organizations the opportunity to efficiently gather ideas, organize
those ideas, and to later make decisions.
It speeds the meeting process at which it is used, increases productivity, and
allows the focus to remain on the ideas rather than on the people who spawned
them. When members run out of ideas, they access the ideas produced by the
group.
Electronic brainstorming (EBS) has recently been introduced into organizations as
a means of generating ideas; it makes use of computers to allow members to
interact and to exchange ideas.
Electronic brainstorming is a form of brainstorming that makes use of computer-
mediated electronic communication in order to replace verbal communications.
CHAPTER-3
DATAMINING
3.1 Database:
A database is a collection of information organized into interrelated tables of data
and specifications of data objects. It is designed to offer an organized mechanism for
storing, managing and retrieving information. They do so through the use of tables.
Database tables consist of columns and rows. Each column contains a different type of
attribute and each row corresponds to a single record.
3.2 Data mining (DM):
Also called Knowledge-Discovery in Databases (KDD) or Knowledge-Discovery
and Data Mining, is the process of automatically searching large volumes of data for
patterns using tools such as classification, association rule mining, clustering, etc.. Data
mining is a complex topic and has links with multiple core fields such as computer
science and adds value to rich seminal computational techniques from statistics,
information retrieval, machine learning and pattern recognition.
It involves sorting through large amounts of data and picking out relevant information. It
is usually used by businesses and other organizations, but is increasingly used in the
sciences to extract information from the enormous data sets generated by modern
experimentation.
There are two types of data mining. They are
Structured data mining
It is the process of finding and extracting useful information from raw datasets.
This page may one day describe mining for general data structures. Graph mining
is a special case of Structured Data Mining.
Unstructured data mining
It refers to masses of (usually) computerized information which do not have a
data structure easily readable by a machine. Examples of unstructured data may
include audio, video and unstructured text such as the body of an email or word
processor document.
The other name for data mining is clustering. Clustering is a data mining (machine
learning) technique used to place data elements into related groups without advance
knowledge of the group definitions.
Other definitions
The nontrivial extraction of implicit, previously unknown, and potentially useful
information from data.
The science of extracting useful information from large data sets or databases.
Data Mining in Business
Through the use of automated statistical analysis (or “data mining”) techniques,
businesses are discovering new trends and patterns of behavior that previously went
unnoticed. Once they’ve uncovered this vital intelligence, it can be used in a predictive
manner for a variety of applications.
The steps involved in data mining are
Gathering Data
The first step toward building a productive data mining program is to gather
data. Most businesses already perform these data gathering tasks to some
extent the key here is to locate the data critical to your business, refine it and
prepare it for the data mining process.
Selecting an Algorithm
The next step is to select an algorithm. Generally there are two algorithms.
Regression
Regression is the oldest and most well-known statistical technique that the data mining
community utilizes. Basically, regression takes a numerical dataset and develops a
mathematical formula that fits the data.
Classification
Working with categorical data or a mixture of continuous numeric.
The Foundations of Data Mining
Data mining techniques are the result of a long process of research and product
development. This evolution began when business data was first stored on computers,
continued with improvements in data access, and more recently, generated technologies
that allow users to navigate through their data in real time. Data mining takes this
evolutionary process beyond retrospective data access and navigation to prospective and
proactive information delivery. Data mining is ready for application in the business
community because it is supported by three technologies that are now sufficiently mature:
Massive data collection
Powerful multiprocessor computers
Data mining algorithms
The Scope of Data Mining
Data mining derives its name from the similarities between searching for valuable
business information in a large database — for example, finding linked products in
gigabytes of store scanner data — and mining a mountain for a vein of valuable ore. Both
processes require either sifting through an immense amount of material, or intelligently
probing it to find exactly where the value resides. Given databases of sufficient size and
quality, data mining technology can generate new business opportunities by providing
these capabilities:
Automated prediction of trends and behaviors. Data mining automates
the process of finding predictive information in large databases. Questions that
traditionally required extensive hands-on analysis can now be answered directly
from the data — quickly. A typical example of a predictive problem is targeted
marketing. Data mining uses data on past promotional mailings to identify the
targets most likely to maximize return on investment in future mailings. Other
predictive problems include forecasting bankruptcy and other forms of default,
and identifying segments of a population likely to respond similarly to given
events.
Automated discovery of previously unknown patterns. Data mining
tools sweep through databases and identify previously hidden patterns in one step.
An example of pattern discovery is the analysis of retail sales data to identify
seemingly unrelated products that are often purchased together. Other pattern
discovery problems include detecting fraudulent credit card transactions and
identifying anomalous data that could represent data entry keying errors.
Data mining techniques can yield the benefits of automation on existing software and
hardware platforms, and can be implemented on new systems as existing platforms are
upgraded and new products developed. When data mining tools are implemented on high
performance parallel processing systems, they can analyze massive databases in minutes.
Faster processing means that users can automatically experiment with more models to
understand complex data. High speed makes it practical for users to analyze huge
quantities of data. Larger databases, in turn, yield improved predictions.
Databases can be larger in both depth and breadth:
More columns. Analysts must often limit the number of variables they
examine when doing hands-on analysis due to time constraints. Yet variables that
are discarded because they seem unimportant may carry information about
unknown patterns. High performance data mining allows users to explore the full
depth of a database, without preselecting a subset of variables.
More rows. Larger samples yield lower estimation errors and variance, and allow
users to make inferences about small but important segments of a population.
A recent Gartner Group Advanced Technology Research Note listed data mining and
artificial intelligence at the top of the five key technology areas that “will clearly have a
major impact across a wide range of industries within the next 3 to 5 years.”2 Gartner
also listed parallel architectures and data mining as two of the top 10 new technologies in
which companies will invest during the next 5 years. According to a recent Gartner HPC
Research
The most commonly used techniques in data mining are:
Artificial neural networks: Non-linear predictive models that learn through
training and resemble biological neural networks in structure.
Decision trees: Tree-shaped structures that represent sets of decisions. These
decisions generate rules for the classification of a dataset. Specific decision tree
methods include Classification and Regression Trees (CART) and Chi Square
Automatic Interaction Detection (CHAID)
Genetic algorithms: Optimization techniques that use processes such as
genetic combination, mutation, and natural selection in a design based on the
concepts of evolution.
Nearest neighbor method: A technique that classifies each record in a
dataset based on a combination of the classes of the k record(s) most similar to it
in a historical dataset (where k ³ 1). Sometimes called the k-nearest neighbor
technique.
Rule induction: The extraction of useful if-then rules from data based on
statistical significance.
Many of these technologies have been in use for more than a decade in specialized
analysis tools that work with relatively small volumes of data. These capabilities are now
evolving to integrate directly with industry-standard data warehouse and OLAP
platforms. The appendix to this white paper provides a glossary of data mining terms.
How Data Mining Works
The technique that is used to perform these feats in data mining is called modeling.
Modeling is simply the act of building a model in one situation where you know the
answer and then applying it to another situation that you don’t. Computers are loaded up
with lots of information about a variety of situations where an answer is known and then
the data mining software on the computer must run through that data and distill the
characteristics of the data that should go into the model. Once the model is built it can
then be used in similar situations where you don’t know the answer.
3.3 Architecture
Fig 1- Data Mining Architecture
An OLAP (On-Line Analytical Processing) server enables a more sophisticated end-user
business model to be applied when navigating the data warehouse. The multidimensional
structures allow the user to analyze the data as they want to view their business –
summarizing by product line, region, and other key perspectives of their business. The
Data Mining Server must be integrated with the data warehouse and the OLAP server to
embed ROI-focused business analysis directly into this infrastructure. An advanced,
process-centric metadata template defines the data mining objectives for specific business
issues like campaign management, prospecting, and promotion optimization. Integration
with the data warehouse enables operational decisions to be directly implemented and
tracked. As the warehouse grows with new decisions and results, the organization can
continually mine the best practices and apply them to future decisions.
This design represents a fundamental shift from conventional decision support
systems. Rather than simply delivering data to the end user through query and reporting
software, the Advanced Analysis Server applies users’ business models directly to the
warehouse and returns a proactive analysis of the most relevant information. These
results enhance the metadata in the OLAP Server by providing a dynamic metadata layer
that represents a distilled view of the data. Reporting, visualization, and other analysis
tools can then be applied to plan future actions and confirm the impact of those plans.
3.4 Knowledge Discovery in Databases: KDD refers to the overall process of
discovering useful knowledge from data.
Basic Definitions: KDD is the nontrivial process of identifying valid, novel,
potentially useful, and ultimately understandable patterns in data.
Fig 2-KDD Process
KDD Process:
The KDD process is interactive and iterative, involving numerous steps with many
decisions made by the user. First is developing an understanding of the application
domain and the relevant prior knowledge and identifying the goal of the KDD process
from the customer’s viewpoint.
Selection: selecting a data set, or focusing on a subset of variables or data
samples, on which discovery to be performed.
Data cleaning and Preprocessing: Basic operations include removing
noise appropriate, collecting the necessary information to model or account for
noise, deciding on strategies for handling missing data fields, and accounting for
time-sequence information and known changes.
Data reduction and Projection: Finding useful features to represent the
data depending on the goal of the task. With dimensionality reduction or
transformation methods, the effective number of variables under consideration
can be reduced, or invariant representations for the data can be found.
Data Mining: Matching the goals of the KDD process (step 1) to a particular
data-mining method. For example, summarization, classification, regression,
clustering, and so on.
Exploratory Analysis and model and hypothesis selection: choosing
the data mining algorithm(s) and selecting method(s) to be used for searching for
data patterns. This process includes deciding which models and parameters might
be appropriate (for example, models of categorical data are different than models
of vectors over the real) and matching a particular data-mining method with the
overall criteria of the KDD process (for example, the end user might be more
interested in understanding the model than its predictive capabilities).
Pattern Generation: searching for patterns of interest in a particular
representational form or a set of such representations, including classification
rules or trees, regression, and clustering. The user can significantly aid the data-
mining method by correctly performing the preceding steps.
Interpretation and Evaluation: It is interpreting mined patterns, possibly
returning to any of steps 1 through 7 for further iteration. This step can also
involve visualization of the extracted patterns and models or visualization of the
data given the extracted models.
Knowledge: It is acting on the discovered knowledge using the knowledge
directly, incorporating the knowledge into another system for further action, or
simply documenting it and reporting it to interested parties. This process also
includes checking for and resolving potential conflicts with previously believed
(or extracted) knowledge.
CHAPTER-4
ONTOLOGIES
Ontologies are used to capture knowledge about some domain of interest.
Ontology describes the concepts in the domain and also the relationships that hold
between those concepts. Different ontology languages provide different facilities. The
most recent development in standard ontology languages is OWL from the World Wide
Web Consortium (W3C). Like Prot´eg´e OWL makes it possible to describe concepts but
it also provides new facilities. It has a richer set of operators - e.g. and, or and negation. It
is based on a different logical model which makes it possible for concepts to be defined
as well as described. Complex concepts can therefore be built up in definitions out of
simpler concepts. Furthermore, the logical model allows the use of a reasoner which can
check whether or not all of the statements and definitions in the ontology are mutually
consistent and can also recognise which concepts fit under which definitions. The
reasoner can therefore help to maintain the hierarchy correctly. This is particularly useful
when dealing with cases where classes can have more than one parent.
3.1 The Three Species of OWL
OWL ontologies may be categorised into three species or sub-languages: OWL-Lite,
OWL-DL and OWL- Full. A defining feature of each sub-language is its expressiveness.
OWL-Lite is the least expressive sub-langauge. OWL-Full is the most expressive sub-
language. The expressiveness of OWL-DL falls between that of OWL-Lite and OWL-
Full. OWL-DL may be considered as an extension of OWL-Lite and OWL-Full an
extension of OWL-DL.
3.1.1 OWL-Lite
OWL-Lite is the syntactically simplest sub-language. It is intended to be used in
situations where only a simple class hierarchy and simple constraints are needed. For
example, it is envisaged that OWL-Lite will provide a quick migration path for existing
thesauri and other conceptually simple hierarchies.
3.1.2 OWL-DL
OWL-DL is much more expressive than OWL-Lite and is based on Description Logics
(hence the suffix DL). Description Logics are a decidable fragment of First Order Logic2
and are therefore amenable to automated reasoning. It is therefore possible to
automatically compute the classification hierarchy3 and check for inconsistencies in an
ontology that conforms to OWL-DL. This tutorial focuses on OWL- DL.
3.1.3 OWL-Full
OWL-Full is the most expressive OWL sub-language. It is intended to be used in
situations where very high expressiveness is more important than being able to guarantee
the decidability or computational completeness of the language. It is therefore not
possible to perform automated reasoning on OWL-Full ontologies.
3.1.4 Choosing the Sub-Language to Use
For a more detailed synopsis of the three OWL sub-languages see the OWL Web
Ontology Language Overview4. Although many factors come into deciding the
appropriate sub-language to use, there are some simple rules of thumb.
• The choice between OWL-Lite and OWL-DL may be based upon whether the simple
constructs of OWL-Lite are sufficient or not.
• The choice between OWL-DL and OWL-Full may be based upon whether it is
important to be able to carry out automated reasoning on the ontology or whether it is
important to be able to use highly expressive and powerful modelling facilities such as
meta-classes (classes of classes).
3.2 Components of OWL Ontologies
OWL ontologies have similar components to Prot´eg´e frame based ontologies. However,
the terminology used to describe these components is slightly different from that used in
Prot´eg´e. OWL ontology consists of Individuals, Properties, and Classes, which roughly
correspond to Prot´eg´e Instances, Slots and Classes.
Figure: Representation of Individuals
3.2.1 Individuals
Individuals, represent objects in the domain that we are interested in5. An important
difference between Prot´eg´e and OWL is that OWL does not use the Unique Name
Assumption (UNA). This means that two different names could actually refer to the same
individual. For example, “Queen Elizabeth”, “The Queen” and “Elizabeth Windsor”
might all refer to the same individual. In OWL, it must be explicitly stated that
individuals are the same as each other, or different to each other — otherwise they might
be the same as each other, or they might be different to each other. Figure shows a
representation of some individuals in some domain – in this tutorial we represent
individuals as diamonds in diagrams. Individuals are also known as instances. Individuals
can be referred to as being ‘instances of classes’.
3.2.2 Properties
Properties are binary relations6 on individuals - i.e. properties link two individuals
together7. For example, the property hasSibling might link the individual Matthew to the
individual Gemma, or the property hasChild might link the individual Peter to the
individual Matthew. Properties can have inverses.
For example, the inverse of hasOwner is isOwnedBy. Properties can be limited to having
a single value – i.e. to being functional. They can also be either transitive or symmetric.
These ‘property characteristics’ are explained in detail section 4.8. Figure shows a
representation of some properties linking some individuals together.
Properties are roughly equivalent to slots in Prot´eg´e . They are also known as roles in
description logics and relations in UML and other object oriented notions. In GRAIL and
some
Figure: Representation Of Properties
Figure: Representation Of Classes (Containing Individuals)
3.2.3 Classes
OWL classes are interpreted as sets that contain individuals. They are described using
formal (mathematical) descriptions that state precisely the requirements for membership
of the class. For example, the class Cat would contain all the individuals that are cats in
our domain of interest.8 Classes may be organised into a superclass-subclass hierarchy,
which is also known as taxonomy. Subclasses specialize (‘are subsumed by’) their
superclasses. For example consider the classes Animal and Cat – Cat might be a subclass
of Animal (so Animal is the superclass of Cat). This says that, ‘All cats are animals’, ‘All
members of the class Cat are members of the class Animal’, ‘Being a Cat implies that
you’re an Animal’, and ‘Cat is subsumed by Animal’. One of the key features of OWL-
DL is that these superclass-subclass relationships (subsumption relationships) can be
computed automatically by a reasoner – more on this later. Figure shows a representation
of some classes containing individuals – classes are represented as circles or ovals, rather
like sets in Venn diagrams. The word concept is sometimes used in place of class.
Classes are a concrete representation of concepts. In OWL classes are built up of
descriptions that specify the conditions that must be satisfied by an individual for it to be
a member of the class.
CHAPTER-5
SOFTWARE
HISTORY OF JAVA
Java has been around since 1991, developed by a small team of Sun Microsystems
developers in a project originally called the Green project. The intent of the project was
to develop a platform-independent software technology that would be used in the
consumer electronics industry. The language that the team created was originally called
Oak.
The first implementation of Oak was in a PDA-type device called Star
Seven (*7) that consisted of the Oak language, an operating system called GreenOS, a
user interface, and hardware. The name *7 was derived from the telephone sequence that
was used in the team's office and that was dialed in order to answer any ringing telephone
from any other phone in the office.
Around the time the First Person project was floundering in consumer
electronics, a new craze was gaining momentum in America; the craze was called "Web
surfing." The World Wide Web, a name applied to the Internet's millions of linked
HTML documents was suddenly becoming popular for use by the masses. The reason for
this was the introduction of a graphical Web browser called Mosaic, developed by ncSA.
The browser simplified Web browsing by combining text and graphics into a single
interface to eliminate the need for users to learn many confusing UNIX and DOS
commands. Navigating around the Web was much easier using Mosaic.
It has only been since 1994 that Oak technology has been applied to the Web. In
1994, two Sun developers created the first version of Hot Java, and then called Web
Runner, which is a graphical browser for the Web that exists today. The browser was
coded entirely in the Oak language, by this time called Java. Soon after, the Java
compiler was rewritten in the Java language from its original C code, thus proving that
Java could be used effectively as an application language. Sun introduced Java in May
1995 at the Sun World 95 convention.
Web surfing has become an enormously popular practice among millions
of computer users. Until Java, however, the content of information on the Internet has
been a bland series of HTML documents. Web users are hungry for applications that are
interactive, that users can execute no matter what hardware or software platform they are
using, and that travel across heterogeneous networks and do not spread viruses to their
computers. Java can create such applications.
CHAPTER-6
IMPLEMENTATION
6.3 Data Flow Diagram
Level 0:
Level 1:
Level 2:
User/Input Collective Brainstorming Blackboard.
Semantic Ideation
Learning Agent
Request Request
Semantic Ideation
Learning Agent
Participant
RequestSend
.
Idea Ontology
User Profile
Idea Knowledge
Base
Collective Brainstorming
BlackboardIdea Chosen
ModuleOutput to client
Level 3:
Fig 7- Data Flow Diagram
User/Input
Collective Brainstorming Blackboard.
Participant
RequestSemantic Ideation
Learning Agent
Idea Ontology User Profile Idea
Knowledge BaseIdea Chosen
Module
Output to client
Response
Sequence Diagram
Usecase Diagram
Activity Diagram
CHAPTER-7
MODULES
Brainstorming is one of the best known tools for creative problem
solving. The term brainstorming was first used by Osborn.
Brainstorming can simply be defined as a group process for generating
ideas by using the four divergent thinking guidelines, namely,
deferring judgment (the process of stopping to judge ideas and options
until after there are many ideas generated), striving for quantity (more
ideas generated leads to higher quality ideas), freewheeling (giving
participants the opportunity to be playful and to strive for imagination),
and seeking combinations (creating ideas that are based upon
previously stated ideas). Accordingly, brainstorming engenders
synergy; that is, an idea from one participant can trigger a new idea in
another participant, who would otherwise not have been produced the
idea.
E-brainstorming utilizes electronic communication to replace verbal communications and
thus eliminates problems such as production blocking. For example, group support
systems (GSSs) have been applied to assist in the idea generation process. A GSS is a
suite of collaborative software tools that operates over a computer network and allows
people to anonymously contribute ideas. Some works have revealed that the application
of GSS in idea generation improves both the quantity and the quality of ideas generated.
Further indicated that the types of ideas generated are affected by the stimulus contained
within a GSS group memory.
The Modules are
UI Module
Collective Brainstorming Blackboard Module
Semantic Ideation Learning Agent Module
Profile Module
Idea Chosen Module
7.1 UI Module:
This module has two components. First one is Open Problem & Participants
component. The Open Problem and Participants Component represent the given open
problem and the participants and send two input parameters. Second one is Valued Ideas
Notification Component. This receives the set of valued ideas and the ideation map from
the Idea Chosen Module and delivers them to the session participants.
Input:
Enter the open problem
Choose participant
7.2 Collective Brainstorming Blackboard:
The Collective Brainstorming Blackboard receives system parameters Initial Idea
and Clients from the Open Problem and Participants Component, then spontaneously
initializes each client’s SILA, and builds a communication platform to provide an
environment in which SILAs can learn and share their knowledge.
Input:
Input Ideation
Output:
Generate idea for each ideation round
7.3 Semantic Ideation Learning Agent:
A SILA is an intelligent agent that represents its client to attend the brainstorming
session and manage the process of ideas association. The Function of a SILA are
receiving the Input Idea from the Collective Brainstorming Blackboard, accessing a
client’s domain knowledge from Personal Data Manger Component, creating a creative
idea based on its inference engine, and returning creative ideas to the Collective
Brainstorming Blackboard.
Bookkeeping Agents, the knowledge of SILAs can also be learned and evolved with the
feedback (that is, ranking of the value ideas) collected from the clients, and their Idea
Knowledge Base can also be updated.
Input: Input Ideation
Output:
Generated Idea from idea Ontology
7.4 Profile Module:
The User Profile stores fundamental information about a client. The Idea
Knowledge Base records every client’s domain knowledge, which comprises idea
instances and the relationships between these instances. It assumes the existence of a
given set of ideation participants and their relevant knowledge.
Input: User Profile input
User Knowledge Base.
7.5 Idea Chosen Module:
The Idea-Chosen Module can perform a valued idea selection according to a user-
set criterion after a brainstorming process finishes. For instance, a creative idea is
selected as a valued idea if its Idea Chosen Value (IEV) is over a particular bound.
Input: Generated Idea from blackboard.
Output:
Sorted Valued Idea.
CHAPTER-8
TESTING
8.1 Software Testing
Software Testing is the process used to help identify the correctness, completeness,
security, and quality of developed computer software. Testing is a process of technical
investigation, performed on behalf of stakeholders, that is intended to reveal quality-
related information about the product with respect to the context in which it is intended to
operate.
Steps in testing:
Requirements Analysis: Testing should begin in the requirements phase of
the software development life cycle. During the design phase, testers work
with developers in determining what aspects of a design are testable and
under what parameter those tests work.
Test Planning: Test Strategy, Test Plan(s), Test Bed creation.
Test Development: Test Procedures, Test Scenarios, Test Cases, and Test
Scripts to use in testing software.
Test Execution: Testers execute the software based on the plans and tests
and report any errors found to the development team.
Test Reporting: Once testing is completed, testers generate metrics and
make final reports on their test effort and whether or not the software
tested is ready for release.
Retesting the Defects
8.2 Unit testing:
Unit testing is a procedure used to validate that individual units of source code are
working properly. A unit is the smallest testable part of an application. In procedural
programming a unit may be an individual program, function, procedure, web page, menu
etc, while in object-oriented programming, the smallest unit is always a Class; which may
be a base/super class, abstract class or derived/child class. Units are distinguished from
modules in that modules are typically made up of units.
8.3 Integration testing:
Integration testing (sometimes called Integration and Testing, abbreviated I&T) is the
phase of software testing in which individual software modules are combined and tested
as a group. It follows unit testing and precedes system testing.
Integration testing takes as its input modules that have been unit tested, groups them
in larger aggregates, applies tests defined in an integration test plan to those aggregates,
and delivers as its output the integrated system ready for system testing. The purpose of
integration testing is to verify functional, performance and reliability requirements placed
on major design items. The overall idea is a “building block” approach, in which verified
assemblages are added to a verified base which is then used to support the integration
testing of further assemblages.
8.4 White Box Testing:
A software testing technique whereby explicit knowledge of the internal workings of
the item being tested are used to select the test data. White box testing uses specific
knowledge of programming code to examine outputs.
8.5 Black box testing:
It takes an external perspective of the test object to derive test cases. These tests can
be functional or non-functional, though usually functional. The test designer selects valid
and invalid input and determines the correct output. There is no knowledge of the test
object’s internal structure.
CHAPTER-10
CONCLUSION
This paper presents the use of semantic ideation agents (SILAs) in the e-
brainstorming process in order to reach automatic collective decisions by e-
brainstorming. In this process, SILAs collaborate with CBDS e-brainstorming system
architecture. Although a big gap still exists between artificial brainstorming and creative
human brainstorming, this study advances existing e-brainstorming research by crossing
the three key boundaries of the human ideation capability (understanding, cognition, and
endurance). The proposed agent-based e-brainstorming system improves e-service
recommendation and delivery by creating a novel reasoning process for recommender
systems, focusing on producing creative recommendations.
10.1 FUTURE ENHANCEMENTS:
However, the proposed mechanism still has limitations, owing to the confined scopes
of SILA’s association capabilities and ideation ontologies, and the rigidity of the protocol
for ideation map construction. Future work will incorporate new association techniques
and flexible agent ideation protocols and explore different semantic ideation ontologies
and idea evaluation systems. Additionally, the dynamic evolution of ideation ontologies
and possible scopes of future applications will be addressed.
Dynamic Ideation
Important keywords are store in database
When two staffs are in discussion, at that time system monitor them and
check, in which domain their discussion is going and match their domain with database
and store their discussion. Discussions are done by Mail or Instant Messaging.
CODINGS
Knowldegecenter.jsp
<%@ include file="/client/include.jsp" %>
<%@ include file="/client/Menu.jsp" %>
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>New Page 1</title>
<style>
<!--
p.MsoNormal
{mso-style-parent:"";
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";
margin-left:0mm; margin-right:0mm; margin-top:0mm}
-->
</style>
<script>
function showSettings(){
var divArea = document.getElementById("divsettings");
if (document.getElementById("ownsettings").checked){
divArea .style.visibility = 'visible';
}
else{
divArea .style.visibility = 'hidden';
}
}
function SelectSubCat(){
removeAllOptions(document.knowledgeCenterFrm.subTopic);
if(document.knowledgeCenterFrm.topic.value == 'java'){
addOption(document.knowledgeCenterFrm.subTopic,"jsp", "JSP");
addOption(document.knowledgeCenterFrm.subTopic,"servlet", "Servlet");
addOption(document.knowledgeCenterFrm.subTopic,"ejb", "EJB");
}
if(document.knowledgeCenterFrm.topic.value == 'MS'){
addOption(document.knowledgeCenterFrm.subTopic,"asp", "ASP");
addOption(document.knowledgeCenterFrm.subTopic,"Cricket", "VB");
addOption(document.knowledgeCenterFrm.subTopic,"net", ".net");
}
}
//////////////////
function removeAllOptions(selectbox)
{
var i;
for(i=selectbox.options.length-1;i>=0;i--)
{
//selectbox.options.remove(i);
selectbox.remove(i);
}
}
function addOption(selectbox, value, text )
{
var optn = document.createElement("OPTION");
optn.text = text;
optn.value = value;
selectbox.options.add(optn);
}
</script>
</head>
<body bgcolor="#808080">
<form method="POST" action="KnowledgeCenter.htm"
name="knowledgeCenterFrm">
<font size="4"> </font><u><b><font size="4">Knowledge
center</font></b></u>
<p class="MsoNormal" align="left">
<u><font size="3"><b>Add New Entry</b></font></u></p>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse:
collapse" bordercolor="#111111" width="50%" id="AutoNumber1">
<tr>
<td width="50%">Topic</td>
<td width="50%"><select size="1" name="topic" id="topic"
onChange="SelectSubCat()">
<option selected value="java">Java</option>
<option value="MS">Microsoft</option>
</select></td>
</tr>
<tr>
<td width="50%">Sub Topic</td>
<td width="50%"><select size="1" name="subTopic">
<option selected value="jsp">JSP</option>
<option value="servlet">Servlet</option>
<option value="ejb">EJB</option>
</select></td>
</tr>
<tr>
<td width="50%">Document Type</td>
<td width="50%"><select size="1" name="docType">
<option selected>PDF</option>
<option>DOC</option>
<option>Flat File</option>
</select></td>
</tr>
<tr>
<td width="50%">Location</td>
<td width="50%"><input type="text" name="docLocation" size="20"></td>
</tr>
<tr>
<td width="50%">
<p class="MsoNormal">Short Description</td>
<td width="50%"><textarea rows="2" name="shortDesc"
cols="20"></textarea></td>
</tr>
<tr>
<td width="50%"> </td>
<td width="50%"> </td>
</tr>
</table>
<p>Personal knowledge <input type="checkbox" name="ownsettings" id
="ownsettings"value="ON" onclick="showSettings()"></p>
<div id = "divsettings" style="width: 900; height: 133">
<p>
<b><u>Update Own Knowledge Center</u></b></p>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse:
collapse" bordercolor="#111111" width="50%" id="AutoNumber2" height="65">
<tr>
<td width="50%" height="22">
<p class="MsoNormal">Department</td>
<td width="50%" height="22"><select size="1" name="department">
<option selected value="hrdep">HR</option>
<option value="dev">Development</option>
</select></td>
</tr>
<tr>
<td width="50%" height="42">
<p class="MsoNormal">Interest</p>
<p class="MsoNormal"> </td>
<td width="50%" height="42"><textarea rows="2" name="interest"
cols="27"></textarea></td>
</tr>
</table>
</div>
<c:forEach items="${model.knowledge}" var="knowledge">
</c:forEach>
<p align="center"><input type="submit" value="Submit" name="B1"><input
type="reset" value="Reset" name="B2"></p>
<table boder="1">
<tr>
<td> Select </td>
<td>topic </td>
<td>subTopic </td>
<td>docType</td>
<td>docLocation</td>
<td>shortDesc</td>
<td>department</td>
<td>interest</td>
</tr>
<c:forEach items="${model.knowledge}" var="knowledge">
<tr>
<td><input type ="checkbox" name="ad_mark" value=<c:out value='$
{knowledge.emp_id}'/>/>
<td> <c:out value="${knowledge.topic}"/> </td>
<td> <c:out value="${knowledge.subTopic}"/> </td>
<td> <c:out value="${knowledge.docType}"/> </td>
<td> <c:out value="${knowledge.docLocation}"/> </td>
<td> <c:out value="${knowledge.shortDesc}"/> </td>
<td> <c:out value="${knowledge.department}"/> </td>
<td> <c:out value="${knowledge.interest}"/> </td>
</tr>
</c:forEach>
</table>
</form>
</body>
</html>
SEARCHSUBMITCONTROLLER.JAVA
package com.gts.brainstorm.controller;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.output.XMLOutputter;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import com.gts.brainstorm.search.util.FindKnowledgeUtil;
public class SearchSubmitController implements Controller{
public ModelAndView handleRequest(HttpServletRequest req,
HttpServletResponse res) throws Exception {
String xmlStr=BuildInputXML(req);
String stringToReverse = URLEncoder.encode("INBA", "UTF-8");
String proxy =
findProxy(req.getParameter("searchKey"),req.getParameter("keyoptions"));
HttpSession session = req.getSession();
if(proxy!=null && proxy.equals("")){
session.setAttribute("resultHtml", "Proxy Not Found");
return new ModelAndView("SearchResults","resultHtml","Proxy Not
Found");
}
URL url = new URL("http://"+proxy+":8080/bs/UnitController");
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
OutputStreamWriter out = new OutputStreamWriter(
connection.getOutputStream());
out.write(xmlStr);
out.close();
BufferedReader in = new BufferedReader(
new InputStreamReader(
connection.getInputStream()));
String decodedString="";
String tempstr="";
while ((decodedString = in.readLine()) != null) {
tempstr=decodedString;
}
in.close();
session = req.getSession();
session.setAttribute("resultHtml", tempstr);
return new ModelAndView("SearchResults","resultHtml",decodedString);
}
private String BuildInputXML(HttpServletRequest req) throws JDOMException,
IOException{
String searchText=req.getParameter("txtmsg");
String recipients=req.getParameter("txtrecipients");
String globalSsearch=req.getParameter("globalsch");
String advSearch=req.getParameter("advsch");
String searchKey=req.getParameter("searchKey");
String optionKey=req.getParameter("keyoptions");
Element root = new Element("Search");
Document doc = new Document(root);
Element input =new Element("input");
Element e_searchText =new Element("key");
e_searchText.addContent(searchText);
Element e_recipients = new Element("recipients");
e_recipients.addContent(recipients);
Element e_global = new Element("global");
e_global.addContent(globalSsearch);
Element e_adv_search = new Element("advSearch");
e_adv_search.addContent(advSearch);
Element e_searchKey = new Element("key");
e_searchKey.addContent(searchKey);
Element e_optionKey = new Element("option");
e_optionKey.addContent(optionKey);
input.addContent(e_searchText);
input.addContent(e_recipients);
input.addContent(e_global);
input.addContent(e_adv_search);
input.addContent(e_searchKey);
input.addContent(e_optionKey);
root.addContent(input);
XMLOutputter outputter = new XMLOutputter();
String hello = outputter.outputString(doc);
return hello;
}
private String findProxy(String dep,String subTopic){
int depId = FindKnowledgeUtil.findDepId(dep);
int knowledgeId=-1;
ArrayList<String> depIdList = new ArrayList<String>();
ArrayList<String> proxyList = null;
if(depId != -1){
knowledgeId = FindKnowledgeUtil.getKnowledgeId(dep,
subTopic);
}
if(knowledgeId != -1){
depIdList =
FindKnowledgeUtil.knowledgeMappingWithDep(knowledgeId);
}
if(depIdList.size() > 0) {
proxyList =
FindKnowledgeUtil.findKnowledgeController(depIdList);
}
if(proxyList !=null && proxyList.size()>= 0)
return proxyList.get(0);
else{
return "";
}
}
}
CHAPTER-11
REFERENCES
[1] J. Geoffrey Rawlinson, Creative Thinking and Brainstorming. Halsted Press, 1981.
[2] R.J. Talbot, “Taking Style on Board,” Creativity and Innovation Management, vol. 6, no. 3, pp. 177-184, 1997.
[3] G. Kay, “Effective Meetings through Electronic Brainstorming,” Management Quarterly, vol. 35, no. 4, pp. 15-26, 1995.
[4] R.B. Gallupe, L.M. Bastianutti, and W.H. Copper, “Unblocking Brainstorming,” J. Applied Psychology, vol. 76, no. 21, pp. 137-142, 1991.
[5] A.R. Dennis and B. Reinicke, “Beta vs. VHS and the Acceptance of Electronic Brainstorming Technology,” MIS Quarterly, vol. 28, no. 1, pp. 1-20, 2004.
[6] M.J. Garfield, N.J. Taylor, A.R. Dennis, and J.W. Satzinger, “Modifying Paradigms: Individual Differences, Creativity Techniques and Exposure to Ideas in Group Idea Generation,” Information Systems Research, vol. 12, no. 3, pp. 322-333, 2001.
[7] A.R. Dennis and M.L. Williams, “Electronic Brainstorming: Theory, Research, and Future Directions,” Group Creativity, Oxford Univ. Press, 2003.
[8] A.R. Dennis, A. Pinsonneault, K.M. Hilmer, H. Barki, R.B. Gallupe, M. Huber, and F. Bellavance, “Patterns in Electronic Brainstorming: The effects of Synergy and Social
Loafing on Group Idea Generation,” Int’l J. e-Collaboration, vol. 1, no. 4, pp. 38-57, 2005.
[9] W.-L. Chang and S.-T. Yuan, “iCare Home Portal: A Quest for Quality Aging e-Service Delivery,” Proc. First Workshop Ubiquitous and Pervasive Health Care (UbiCare ’06), 2006.
[10] A.F. Osborn, “Applied Imagination: Principles and Procedures of Creative Problem-Solving,” Creative Education Foundation, third revised ed., 1993.
APPENDIX-1.1
Appendix A: Glossary
IEEE The Institute of Electrical and Electronics Engineers, Inc.HTML Hyper Text Markup LanguageHTTP Hyper Text Transport ProtocolSRS Software Requirements SpecificationOWL Web Ontology Language SB Semantic BrokerRFC Request For CommentsJ2EE Java 2 Platform Enterprise EditionJSP Java Server PageFP6 Sixth Framework ProgramOS Operating System
Table Design
1) Table Name: bs_addressbook
Column Name Data Typebs_first_name varchar(15)
bs_last_name varchar(15)bs_phone_number varchar(15)bs_email_id varchar(15)bs_department varchar(15)bs_interest varchar(15)
2) Table Name: bs_user_knowledge
Column Name Data Typebs_topic varchar(30)
bs_sub_topic varchar(30)bs_doc_type varchar(20)
bs_doc_location varchar(100)bs_short_desc varchar(250)bs_department varchar(20)
bs_interest varchar(250)
3) Table Name: org_details
Column Name Data TypeOrg_name varchar(30)
org_address1 varchar(30)org_address2 varchar(30)org_street1 varchar(30)org_street2 varchar(30)
org_city varchar(30)org_nation varchar(30)
org_zip_code varchar(30)org_phone1 varchar(30)org_phone2 varchar(30)org_email1 varchar(30)org_email2 varchar(30)
4) Table Name: org_dep_details
Column Name Data Typedep_id Integer Not Null(PK)dep_short varchar(10)
dep_long varchar(30)dep_display varchar(100)
5) Table Name: dep_knowledge_info
Column Name Data Typedep_id Integer Not Nullknowledge_id Integer
6) Table Name: knowledge_info
Column Name Data TypeKnowledge_id Integer NOT NULL(PK)bs_topic varchar(100)bs_sub_topic1 varchar(100)bs_sub_topic2 varchar(100)bs_topic_desc varchar(500)bs_topic_display_name varchar(300)
7) Table Name: opposite_knowledge_info
Column Name Data Typeopposite_knowledge_id Integer Not Null(PK)knowledge_id Integertopic_display_name varchar(300)
8) Table Name: dep_knowledge_controller_map
Column Name Data Typedep_id Integercontroller_id Integercontroller_name varchar(50)controller_ip varchar(30)controller_system_name varchar(50)controller port_number Integer
9) Table Name: org_emp_details
Column Name Data Typeemp_id Integer Not Null(PK)emp_dep_id Integer
emp_name varchar(15)emp_mid_name varchar(10)emp_last_name varchar(15)emp_phone_no varchar(30)emp_email_id varchar(30)
10) Table Name: emp_interest
Column Name Data Typebs_emp_id Integerknowledge_id Integer
11) Table Name: user_knoledge_info
Column Name Data Typeuser_knowledge_doc_id Integer Not Null(PK)user_id Integerknowledge_id Integerdoc_type_id Integerdoc_location varchar(300)user_doc_desc varchar(500)
12) Table Name: bs_doc_map
Column Name Data Typedoc_type_id Integer Not Null(PK)doc_type_short_name varchar(10)doc_type_long_name varchar(30)doc_display_name varchar(100)
13) Table Name: search_trace
Column Name Data Typeknowledge_id Integeruser_knowledge_doc_id Integerhit_count Integeruser_rating Integer
SCREENSHOTS
63