scispace - formally typeset
Search or ask a question
Book ChapterDOI

A constraint-based collaborative environment for learning UML class diagrams

26 Jun 2006-pp 176-186
TL;DR: The architecture, interface and support for collaboration in the new, multi-user system for Collections-UML is presented, to evaluate the effect of using the system on students' learning and collaboration.
Abstract: COLLECT-UML is a constraint-based ITS that teaches object-oriented design using Unified Modelling Language (UML). UMLis easily the most popular object-oriented modelling technology in current practice. We started by developing a single-user ITS that supported students in learning UML class diagrams. The system was evaluated in a real classroom, and the results show that students' performance increased significantly. In this paper, we present our experiences in extending the system to provide support for collaboration. We present the architecture, interface and support for collaboration in the new, multi-user system. A full evaluation study has been planned, the goal of which is to evaluate the effect of using the system on students' learning and collaboration.

Summary (1 min read)

1. Introduction

  • E-learning is becoming an increasingly popular educational paradigm as more individuals who are working or are geographically isolated s ek higher education.
  • Effective collaborative learning includes both learning to effectively collaborate, and collab rate effectively to learn, and therefore a collaborative system must be able to address collaboration issues as well as task-oriented issues [17].
  • The authors have developed COLLECT-UML [2, 3], a single-user version of a constraint-based ITS, that teaches UML class diagrams.
  • Section 4 describes the design and implementation of the collaborative interface as well as the system’s architecture.
  • Conclusi s are given in the last section.

5. Modeling Collaboration

  • The system is able to promote effective interaction by diagnosing students’ actions in the chat area and group diagram using a set of 22 meta-constraints, which represent an ideal model of collaboration.
  • These constraints have the same structure as domain constraint, each containing a relevance condition, a satisfaction condition and a feedback message.
  • On the other hand, there are constraints that c eck whether the student participates in the dialogue.
  • Constraint 237 checks whether the student has specified any justification for their agreement/disagreement with the group solution.
  • A history of all contributions made by each user to the s ared diagram as well as the messages posted to the chat area is maintained on the server, and the metaconstraints are evaluated against this history.

Did you find this useful? Give us your feedback

Content maybe subject to copyright    Report

1
A Constraint-based Collaborative Environment for
Learning UML Class Diagrams
Nilufar BAGHAEI and Antonija MITROVIC
Intelligent Computer Tutoring Group
Department of Computer Science and Software Engineering
University of Canterbury, Private Bag 4800, New Zealand
{n.baghaei, tanja}@cosc.canterbury.ac.nz
Abstract. COLLECT-UML is a constraint-based ITS that teaches object-
oriented design using Unified Modelling Language (UML). UML is easily the
most popular object-oriented modelling technology in current practice. We
started by developing a single-user ITS that supported students in learning UML
class diagrams. The system was evaluated in a real classroom, and the results
show that students performance increased significantly. In this paper, we
present our experiences in extending the system to provide support for
collaboration. We present the architecture, interface and support for
collaboration in the new, multi-user system. A full evaluation study has been
planned, the goal of which is to evaluate the effect of using the system on
students’ learning and collaboration.
1. Introduction
E-learning is becoming an increasingly popular educational paradigm as more
individuals who are working or are geographically isolated seek higher education.
As such students do not meet face to face with their peers and teachers, the support
for collaboration becomes extremely important [8]. Effective collaborative learning
includes both learning to effectively collaborate, and collaborate effectively to learn,
and therefore a collaborative system must be able to address collaboration issues as
well as task-oriented issues [17].
In the last decade, many researchers have contributed to the development of
CSCL and advantages of collaborative learning over individualised learning have
been identified [14]. Some particular benefits of collaborative problem-solving
include: encouraging students to verbalise their thinking; encouraging students to
work together, ask questions, explain and justify their opinions; increasing students’
responsibility for their own learning; increasing the possibility of students solving or
examining problems in a variety of ways; and encouraging them to articulate their
reasoning, and elaborate and reflect upon their knowledge [24, 27]. These benefits,
however, are only achieved by active and well-functioning learning teams [15].
Numerous systems for collaborative learning have been developed; however, the
concept of supporting peer-to-peer interaction in CSCL systems is still in its infancy.
Various strategies for computationally supporting online collaborative learning have

2
been proposed and used, while more studies are needed that test the utility of these
techniques [17].
This paper describes an Intelligent Tutoring System (ITS) that uses Constraint-
Based Modeling (CBM) approach to support both problem-solving and collaborative
learning. CBM has been used successfully in several tutors supporting individual
learning [20]. We have developed COLLECT-UML [2, 3], a single-user version of a
constraint-based ITS, that teaches UML class diagrams. In this paper, we describe
extensions to this tutor, which support multiple students solving problems
collaboratively. We start with a brief overview of related work in Section 2. Section
3 then presents COLLECT-UML and the evaluation study conducted with second-
year university students taking a course in Introduction to Software Engineering.
Section 4 describes the design and implementation of the collaborative interface as
well as the system’s architecture. Section 5 presents the collaborative model, which
has been implemented as a set of meta-constraints. Conclusions are given in the last
section.
2. Related Work
Three categories of CSCL systems can be distinguished in the context of the
collaboration support [1, 17]. The first category includes systems that reflect actions;
the basic level of support a system may offer involves making the students aware of
the participants’ actions. The systems in the second category monitor the state of
interactions; some of them aggregate the interaction data into a set of high-level
indicators, and display them to the participants (e.g. Sharlock II [21]), while others
internally compare the current state of interaction to a model of ideal interaction, but
do not reveal this information to the users (e.g. EPSILON [25]). In the latter case,
this information is either intended to be used later by a coaching agent, or analysed
by researchers in order to understand the interaction [17]. Finally, the third class of
systems offer advice on collaboration. The coach in these systems plays a role
similar to that of a teacher in a collaborative learning classroom. The systems can be
distinguished by the nature of the information in their models, and whether they
provide feedback on strictly collaboration issues or both social and task-oriented
issues. Examples of the systems focusing on the social aspects include Group Leader
Tutor [19] and DEGREE [6], and an example of the systems addressing both social
and task-oriented aspects of group learning is COLER [7].
Although many tutorials, textbooks and other resources on UML are available,
we are not aware of any attempt at developing a CSCL environment for UML
modelling. However, there has been an attempt [25] at developing a collaborative
learning environment for OO design problems using Object Modeling Technique
(OMT) a precursor of UML. The system monitors group members’
communication patterns and problem solving actions in order to identify situations
in which students effectively share new knowledge with their peers while solving
OO design problems. The system first logs data describing the students’ speech acts
(e.g. Request Opinion, Suggest, and Apologise) and actions (e.g. Student 3 created a
new class). It then collects examples of effective and ineffective knowledge sharing,
and constructs two Hidden Markov Models which describe the students’ interaction
in these two cases. A knowledge sharing example is considered effective if one or
more students learn the newly shared knowledge (as shown by a difference in pre-
post test performance), and ineffective otherwise. The system dynamically assesses

3
a group’s interaction in the context of the constructed models, and determines when
and why the students are having trouble learning new concepts they share with each
other. The system does not evaluate the OMT diagrams and an instructor or
intelligent coach’s assistance is needed in mediating group knowledge sharing
activities. In this regard, even though the system is effective as a collaboration tool,
it would probably not be an effective teaching system for a group of novices with
the same level of expertise, as it could be common for a group of students to agree
on the same flawed argument.
CBM has been used successfully in several tutors supporting individual
learning. The main contribution of this research is the use of CBM technique to
support collaborative learning. The system provides feedback on both collaboration
issues (using the collaboration model, represented as a set of meta-constraints) and
task-oriented issues (using the domain model, represented as a set of syntax and
semantic constraints). CBM is also used to model student and group knowledge.
3. COLLECT-U
UU
UM
MM
ML
LL
L: Single-User Version
COLLECT-UML is a problem-solving environment, in which students construct
UML class diagrams that satisfy a given set of requirements. It assists students
during problem-solving, and guides them towards a correct solution by providing
feedback. The feedback is tailored towards each student depending on his/her
knowledge. COLLECT-UML is designed as a complement to classroom teaching and
when providing assistance, it assumes that the students are already familiar with the
fundamentals of UML. For details on system’s architecture, functionality and the
interface refer to [2, 3]; here we present only the basic features of the system.
At the beginning of interaction, a student is required to enter his/her name,
which is necessary in order to establish a session. The session manager requires the
student modeller to retrieve the model for the student, if there is one, or to create a
new model for a new student. Each action a student performs is sent to the session
manager, as it has to link it to the appropriate session and store it in the student’s
log. Then, the action is sent to the pedagogical module. If the submitted action is a
solution to the current problem, the student modeller diagnoses the solution, updates
the student model, and sends the result of the diagnosis back to the pedagogical
module, which generates appropriate feedback.
COLLECT-UML contains an ideal solution for each problem, which is compared
to the student’s solution according to the system’s domain model, represented as a
set of constraints [22]. The system’s domain model contains 133 constraints that
describe the basic principles of the domain. In order to develop constraints, we
studied material in textbooks, such as [12], and also used our own experience in
teaching UML and OO analysis and design.
Figure 1 illustrates a constraint from the UML domain. The relevance condition
identifies a relationship of type aggregation in the ideal solution, and then checks
whether the student’s solution contains the same type of relationship, or a
relationship of a different kind with the same name. The student’s solution is correct
if the satisfaction condition is met, when the matching relationship is of the same
type (i.e. aggregation). The constraint also contains a message which would be given
to the student if the constraint is violated. The last two elements of the constraint
specify that it covers some aspects of relationships, and also identifies the
relationship and the classes to which the constraint was applied.

4
Figure 1. An example constraint
We performed an evaluation study [3] in May 2005 with 38 students enrolled in
a Software Engineering course. The students learnt UML modelling concepts during
two weeks of lectures/tutorials. The study was conducted in two streams of two-hour
laboratory sessions. Each participant sat a pre-test, interacted with the system, and
then sat a post-test and filled a user questionnaire. The pre-test and post-test each
contained four multiple-choice questions, followed by a question where the students
were asked to design a simple UML class diagram. Table 1 presents some general
statistics about the study. The average mark on the post-test was significantly higher
than the pre-test mark (t = 2.71, p = 4.33E-08). The students spent on average 90
minutes interacting with the system.
Table 1. Some statistics about the study
Average s. d.
Attempted problems 5.71 2.59
Solved problems 47% 33%
Attempts per problem 7.42 4.76
Pre-test 52% 21%
Post-test 76% 17%
We also analyzed the log files, in order to identify how students learn the
underlying domain concepts. Figure 2 illustrates the probability of violating a
constraint plotted against the occasion number for which it was relevant, averaged
over all constraints and all participants. The data points show a regular decrease,
which is approximated by a power curve with a close fit of 0.93, thus showing that
students do learn constraints over time. The probability of violating a constraint on
the first occasion of application is halved by the tenth occasion, showing the effects
of learning.
Students were offered individualised feedback on their solutions upon
submission. The mean rating for the usefulness of feedback was 2.8. 67% of the
participants had indicated that they would have liked to see more details in the
feedback messages. The comments we received on open questions pointed out
several features of the system, which can be improved.
The results showed that COLLECT-UML is an effective learning environment.
The participants achieved significantly higher scores on the post-test, suggesting that
they acquired more knowledge in UML modelling. The learning curves also prove
that students do learn constraints during problem solving. Subjective evaluation
shows that most of the students felt spending more time with the system would have
resulted in more learning and that they found the system to be easy to use.
(78
"Check the type of your relationships. You need to use aggregations between some of
your classes."
(and (match IS RELATIONSHIPS (?* "@" ?rel_tag "aggregation" ?c1_tag ?c2_tag ?*))
(or-p (match SS RELATIONSHIPS (?* "@" ?rel_tag ?type ?c1_tag ?c2_tag ?*))
(match SS RELATIONSHIPS (?* "@" ?rel_tag ?type ?c2_tag ?c1_tag ?*))))
(test SS ("aggregation" ?type))
"relationships"
(?rel_tag ?c1_tag ?c2_tag))

5
Figure 2. Probability of constraint violation
4. COLLECT-U
UU
UM
MM
ML
LL
L: Multi-User Version
The collaborative version of COLLECT-UML is designed for sessions in which
students first solve problems individually and then join into small groups to create
group solutions. The system’s architecture is illustrated in Figure 3. The application
server consists of a session manager that manages sessions and student logs, a
student modeller that creates and maintains student models for individual users, a
domain model (i.e. the constraint set), a pedagogical module and a group modeller.
The system is implemented in Allegro Common Lisp.
The interface is shown in Figure 4. The problem description pane presents a
design problem. Students construct their individual solutions in the private
workspace (right), and use the shared workspace (left) to collaborate while
communicating via the chat window (bottom). The private workspace enables
students to try their own solutions and think about the problem before start
discussing it in the group. The group area is initially disabled. When all of the
students indicate readiness to work in the group by clicking on Join the Group
button, the shared workspace is activated. The students select the components’
names from the problem text. The Group Members panel shows the team-mates
already connected. Only one student, the one who has the pen, can update the shared
workspace at a given time. Additionally, this panel shows the name of the student
who has the control of this area and the students waiting for a turn.
A recent study [23] defines relevant characteristics of good collaboration and
the authors have considered turn-taking as one of those characteristics. According to
their results, explicitly handing over a turn can be a good way of compensating for
the limited communication channel. An implication of providing such protocol is
that deadlocks can be created in cases where one partner cannot proceed with

Citations
More filters
Proceedings ArticleDOI
26 Nov 2012
TL;DR: The results of the study demonstrate that the use of the multi-touch table enables an increase in the equity of participation, enhanced collaboration amongst team members, and the facilitation of parallel-participative design.
Abstract: Multi-touch interfaces facilitate collaborative learning and, thus, represent a promising educational technology. Their ability to synchronously accommodate multiple users is an advantage in co-located collaborative design tasks. This paper explores the multi-touch interface's potential in collaborative Unified Modelling Language (UML) diagramming by comparing it to a PC-based tool. The results of the study demonstrate that the use of the multi-touch table enables an increase in the equity of participation, enhanced collaboration amongst team members, and the facilitation of parallel-participative design.

17 citations

Proceedings ArticleDOI
03 Oct 2012
TL;DR: This exploration is done by looking at how students' collaboration might be enhanced in collaborative software design using Unified Modeling Language (UML) comparing the traditional paper-based environment with the contemporary multi-touch table environment.
Abstract: Encouraging collaborative software design through the use of multi-touch interfaces has become increasingly important, because such surfaces can accommodate more than one user concurrently, which is particularly useful for collaborative software design. In this paper, the potential of using multi-touch MT-CollabUML application for collaborative software design is explored. This exploration is done by looking at how students' collaboration might be enhanced in collaborative software design using Unified Modeling Language (UML) comparing the traditional paper-based environment with the contemporary multi-touch table environment.

16 citations


Cites methods from "A constraint-based collaborative en..."

  • ...There are many research efforts to facilitate collaboration among users in software design using UML, such as COLLECT-UML [13], CoLeMo [14], CAMEL [15], and AUTO-COLLEAGUE [16]....

    [...]

  • ...Unlike COLLECT-UML and CoLeMo, AUTO-COLLEAGUE does not support collaborative drawing for UML diagrams, but offers a chat system as its main collaboration tool....

    [...]

  • ...UML There are many research efforts to facilitate collaboration among users in software design using UML, such as COLLECT-UML [13], CoLeMo [14], CAMEL [15], and AUTO-COLLEAGUE [16]....

    [...]

Journal ArticleDOI
17 Jun 2009
TL;DR: This work stresses the importance of basing customization decisions on a socio-cognitive interpretation of how learners interact in a given learning situation by conducting qualitative interaction analysis oriented toward the improvement of the supporting environment.
Abstract: CSCL systems which follow the dual-interaction spaces paradigm support the synchronous construction and discussion of shared artifacts by distributed or colocated small groups of learners. The most recent generic dual-interaction space environments, either model based or component based, can be deeply customized by teachers for supporting different collaborative learning tasks and different ways of performing them. This work stresses the importance of basing customization decisions on a socio-cognitive interpretation of how learners interact in a given learning situation. The central contribution of this article is a methodological approach for conducting qualitative interaction analysis oriented toward the improvement of the supporting environment which can be applied to any learning task and any environment configuration. This “generic analysis approach” is organized into three levels. At the dialog level, a task-independent dialogical model is proposed for analyzing action/communication traces as “generalized conversations.” A graphical notation is provided for visualizing the syntactical characteristics of collaborative sessions. At the knowledge level, a typology of task-independent collaborative knowledge-building episode types that can occur during such generalized conversations is proposed. Thanks to that classification scheme, recurrent meaningful elements that structure the low-level descriptions can be detected and characterized. These regularities help to pass from local interpretations to a global interpretation of the whole process. At the action level, task-dependent socio-cognitive interpretations of why the collaborative learning process unfolds as observed are proposed. They constitute a firm basis for improving the customization of the generic environment in order to support learners more efficiently.

16 citations


Cites background from "A constraint-based collaborative en..."

  • ...Until now, all existing DIS environments devoted to software engineering representation construction only support a single representation and a single process (e.g., Baghaei and Mitrovic 2006; Soller et al. 2002; Avouris et al. 2004; Constantino-González and Suthers 2001)....

    [...]

01 Jan 2007
TL;DR: Whether modeling Ontology reduces the problem, by giving students of an e-learning summer school the task of developing the model for a domain in under sixty minutes using ontology, and the results suggest this style of authoring can lead to very rapid ITS development.
Abstract: Authoring ITS domain models is a difficult task re quiring many skills. We explored whether modeling Ontology reduces the problem, by g ivin the students of an e-learning summer school the task of developing the model for a simpl e domain in under sixty minutes using ontology. Some students also used our tool to develop a compl ete tutor in around eight hours, which is much faster than they could be expected to author the sy stem without the tool. The results suggest this style of authoring can lead to very rapid ITS devel opment.

10 citations

Journal Article
TL;DR: This work explored whether modeling ontology reduces the problem by giving the students of an e-learning summer school the task of developing the model for a simple domain in under sixty minutes using ontology, and suggests this style of authoring can lead to very rapid ITS development.
Abstract: Authoring ITS domain models is a difficult task requiring many skills. We explored whether modeling ontology reduces the problem by giving the students of an e-learning summer school the task of developing the model for a simple domain in under sixty minutes using ontology. Some students also used our tool to develop a complete tutor in around eight hours, which is much faster than they could be expected to author the system without the tool. The results suggest this style of authoring can lead to very rapid ITS development. We further extend the ontological approach with domain schema: high-level abstractions that describe the semantics of the domain model for a class of domains. Using domain schema reduces the authoring effort to one of describing only those aspects that are unique to this particular domain, and enables the ontology-based approach to model domains with different semantic requirements.

10 citations

References
More filters
Journal ArticleDOI
26 Apr 1985-Science
TL;DR: Computer tutors based on a set of pedagogical principles derived from the ACT theory of cognition have been developed for teaching students to do proofs in geometry and to write computer programs in the language LISP.
Abstract: Cognitive psychology, artificial intelligence, and computer technology have advanced to the point where it is feasible to build computer systems that are as effective as intelligent human tutors Computer tutors based on a set of pedagogical principles derived from the ACT theory of cognition have been developed for teaching students to do proofs in geometry and to write computer programs in the language LISP

3,092 citations

Book
17 Sep 2004
TL;DR: Adaptive Resonance Theory (ART) neural networks model real-time prediction, search, learning, and recognition, and design principles derived from scientific analyses and design constraints imposed by targeted applications have jointly guided the development of many variants of the basic networks.
Abstract: Adaptive Resonance Theory (ART) neural networks model real-time prediction, search, learning, and recognition. ART networks function both as models of human cognitive information processing [1,2,3] and as neural systems for technology transfer [4]. A neural computation central to both the scientific and the technological analyses is the ART matching rule [5], which models the interaction between topdown expectation and bottom-up input, thereby creating a focus of attention which, in turn, determines the nature of coded memories. Sites of early and ongoing transfer of ART-based technologies include industrial venues such as the Boeing Corporation [6] and government venues such as MIT Lincoln Laboratory [7]. A recent report on industrial uses of neural networks [8] states: “[The] Boeing ... Neural Information Retrieval System is probably still the largest-scale manufacturing application of neural networks. It uses [ART] to cluster binary templates of aeroplane parts in a complex hierarchical network that covers over 100,000 items, grouped into thousands of self-organised clusters. Claimed savings in manufacturing costs are in millions of dollars per annum.” At Lincoln Lab, a team led by Waxman developed an image mining system which incorporates several models of vision and recognition developed in the Boston University Department of Cognitive and Neural Systems (BU/CNS). Over the years a dozen CNS graduates (Aguilar, Baloch, Baxter, Bomberger, Cunningham, Fay, Gove, Ivey, Mehanian, Ross, Rubin, Streilein) have contributed to this effort, which is now located at Alphatech, Inc. Customers for BU/CNS neural network technologies have attributed their selection of ART over alternative systems to the model's defining design principles. In listing the advantages of its THOT technology, for example, American Heuristics Corporation (AHC) cites several characteristic computational capabilities of this family of neural models, including fast on-line (one-pass) learning, “vigilant” detection of novel patterns, retention of rare patterns, improvement with experience, “weights [which] are understandable in real world terms,” and scalability (www.heuristics.com). Design principles derived from scientific analyses and design constraints imposed by targeted applications have jointly guided the development of many variants of the basic networks, including fuzzy ARTMAP [9], ART-EMAP [10], ARTMAP-IC [11],

1,745 citations

Book
01 Jan 1997
TL;DR: This book describes a lightweight outline process for OO software development and a good process doesn't need to be complicated, and is a good introduction to objects with the UML.
Abstract: From the Book: Two years ago, Addison-Wesley approached me to write a book about the then-new UML. At that time, there was a lot of interest in the UML, but only a standards document from which to learn about it. We broke many records to quickly produce a short introductory guide to the new UML, something that would provide some guidance until the more detailed and official books were to appear later that year. We didnit expect this book to last after more detailed books appeared. Most people believed that given the choice between a slim overview and a detailed text, everyone would pick the detailed text. Although that was the general view, I believed that even in the presence of detailed books, there was still room for a concise summary. Two years later, my hopes have been realized more than I could have wished. UML Distilled has been, in computer industry terms, a best-seller. Even though good detailed books have appeared on the UML, the book still sells well. Better than that, more slim books have appeared, confirming my belief that in a world with so much information, there is value in well-chosen brevity. Now, thatis all very well, but should you buy this book? Iim going to assume youive heard about the UML. It has become the standard way to draw diagrams of object-oriented designs, and it has also spread into non-OO fields. The major pre-UML methods have all died out. The UML has arrived and ishere to stay. If you want to learn about the UML, this book is one way to do it. The main reason for starting with this book is that itis a small book. Buying a big book will give you more information, but it will also take you longer to read. Iive selected the most important parts of the UML so that you donit have to. With this book, youill pick up the key elements of the notation and what they mean. If you want to move further, you can move to a more detailed book later. If you want a longer tutorial to the UML, I suggest the Unified Modeling Language User Guide (Booch, Rumbaugh, and Jacobson 1999). The User Guide is able to cover a lot more ground. Itis well written and organized in a way that explains how to apply the UML to various modeling problems. Both this book and the User Guide assume that you know something about OO development. Although many people have told me that this book is a good introduction to objects, I didnit write it with that in mind. If youire looking for an introduction to objects with the UML, you should also consider Craig Larmanis book (Larman 1998). Although the main point of this book is the UML, Iive also added material that complements the UML material. The UML is a relatively small part of what you need to know to succeed with objects, and I think that itis important to point out some of the other things here. The most important of these is software process. The UML is designed to be independent of process. You can do anything you like; all the UML does is say what your diagrams mean. However, the diagrams donit make much sense without a process to give them context. I also believe that process is important and that a good process doesnit need to be complicated. So, Iive described a lightweight outline process for OO software development. This provides a context for the techniques and will help to get you going in using objects. The other topics include patterns, refactoring, self-testing code, design by contract, and CRC cards. None of these are part of the UML, yet they are valuable techniques that I use regularly. Structure of the Book Chapter 1 looks at what the UML is, the history of its development, and the reasons why you might want to use it. Chapter 2 discusses the object-oriented development process. Although the UML exists independent of process, I find it hard to discuss modeling techniques without talking about where they fit in with object-oriented development. Chapters 3 through 6 discuss the three most important techniques in the UML: use cases, class diagrams, and interaction models. The UML is a large beast, but you donit need all of it. These three techniques are the core that almost everyone needs. Start with these and add the others as you need them. (Note that since class diagrams are so complicated in themselves, Iive put the key parts of class diagrams in Chapter 4 and the advanced concepts in Chapter 6. ) Chapters 7 through 10 explore the remaining techniques. All of these are valuable, but not every project needs every technique. So these chapters provide enough information to tell you what the technique is and whether you need it. For all of these techniques, I describe the notation, explain what the notation means, and provide tips about using the techniques. My philosophy is to make clear what the UML says and, at the same time, to give you my opinions on how best to use it. Iive also added pointers to other books that provide more detail. Chapter 11 gives a small example to show how the UML fits in with programming using (of course) Java. The inside covers summarize the UML notation. You may find it useful to refer to these as you are reading the chapters so that you can check on the notation for the various modeling concepts. If you find this book interesting, you can find other information on my work related to using the UML, patterns, and refactoring at my home page (see page xxi). Changes for the Second Edition As the UML evolved, and I received feedback about the first edition of the book, I continually updated it. We reprinted every two or three months; nearly every printing contained updates, which resulted in considerable strain on the processes of the publishing industry. With the change from UML 1.2 to 1.3, we decided to do a more thorough overhaul of the book, enough to produce a second edition. Since the book has been so popular, Iive tried not to change the essential spirit of the book. Iive carefully tried to not add much, and to see whether there are things I can take away. The biggest changes are in Chapter 3, about use cases, and Chapter 9, about activity diagrams, which have each received a severe rewrite. Iive also added a section on collaborations to Chapter 7. Elsewhere, Iive taken the opportunity to make a host of smaller changes, based on feedback and my experiences over the last couple of years. Martin Fowler Melrose, Massachusetts April 1999 fowler@acm.org http://ourworld.compuserve.com/homepages/Martin_Fowler

1,087 citations

Proceedings Article
01 Dec 2005
TL;DR: A representative selection of systems that support the management of collaborative learning interaction, and characterize them within a simple classification framework, is presented in this paper, which distinguishes between mirroring systems, which display basic actions to collaborators, metacognitive tools, which represent the state of interaction via a set of key indicators, and coaching systems which offer advice based on an interpretation of those indicators.
Abstract: We review a representative selection of systems that support the management of collaborative learning interaction, and characterize them within a simple classification framework. The framework distinguishes between mirroring systems, which display basic actions to collaborators, metacognitive tools, which represent the state of interaction via a set of key indicators, and coaching systems, which offer advice based on an interpretation of those indicators. The reviewed systems are further characterized by the type of interaction data they assimilate, the processes they use for deriving higher-level data representations, the variables or indicators that characterize these representations, and the type of feedback they provide to students and teachers. This overview of technological capabilities is designed to lay the groundwork for further research into which technological solutions are appropriate for which learning situations.

599 citations

Proceedings Article
01 Jan 2001
TL;DR: It is suggested that structured, high-level knowledge of student conversation in context may be sufficient for automating the assessment of group interaction, furthering the possibility of an intelligent collaborative learning system that can support and enhance the group learning process.
Abstract: Students learning effectively in groups encourage each other to ask questions, explain and justify their opinions, articulate their reasoning, and elaborate and reflect upon their knowledge. The benefits of collaborative learning, however, are only achieved by active, well- functioning teams. This paper presents a model of collaborative learning designed to help an intelligent collaborative learning system identify and target group interaction problem areas. The model describes potential indicators of effective collaborative learning, and for each indicator, recommends strategies for improving peer interaction. This collaborative learning model drove the design and development of two tools that automate the coding, and aid the analysis of collaborative learning conversation and activity. Empirical evaluation of these tools confirm that effective learning teams are comprised of active participants who demand explanations and justification from their peers. The distribution of conversational skills used by members of a supportive group committed to their teammates' learning is compared to that of an unfocused, unsupportive group. The results suggest that structured, high-level knowledge of student conversation in context may be sufficient for automating the assessment of group interaction, furthering the possibility of an intelligent collaborative learning system that can support and enhance the group learning process.

501 citations


"A constraint-based collaborative en..." refers background in this paper

  • ...[18], sentence openers should be derived from naturally occurring online text-based free dialogues, while Soller [24] states that it is critical to provide the widest and most appropriate range of sentence openers....

    [...]

  • ...Some particular benefits of collaborative problem-solving include: encouraging students to verbalise their thinking; encouraging students to work together, ask questions, explain and justify their opinions; increasing students’ responsibility for their own learning; increasing the possibility of students solving or examining problems in a variety of ways; and encouraging them to articulate their reasoning, and elaborate and reflect upon their knowledge [24, 27]....

    [...]

  • ...existing literature on characteristics of an effective collaboration, such as [9, 23, 24, 26]....

    [...]

  • ...According to Lazonder et al. [18], sentence openers should be derived from naturally occurring online text-based free dialogues, while Soller [24] states that it is critical to provide the widest and most appropriate range of sentence openers....

    [...]