Learning Scenario
- Introduction
- Learning Scenario
- Ontological foundation
- System architecture
- Educational services
- Evaluation
Effective learning of software DPs requires a constructive approach to be applied in the teaching process. It is very important that students experience software development and the application of DPs on real-world examples, in order to develop a deep understanding of the basic principles behind them and to learn how to apply them in different situations. Having this in mind, we have explored a number of theories and research fields in the area of project-based and computer supported collaborative learning. Based on the guidelines for teaching software engineering to students and our own teaching experience, we have identified the following three as the most important for teaching/learning software DPs: Learning through Design, Project-based learning (PBL) and Engagement theory. More details on pedagogical aspects of this work could be found at. In what follows, we present a usage scenario which illustrates how these theories are applied for learning software DPs in DEPTHS.
A typical scenario for learning software DPs with DEPTHS assumes a project-based learning approach with collaborative learning support. In particular, a teacher defines a specific software design problem that has to be solved in a workshop-like manner by performing several predefined tasks: brainstorming, creating and submitting solutions, evaluating solutions etc.
First, a student is asked to present his ideas about possible ways for solving the problem under study and to discuss and rate his peers’ ideas. In order to get the required information for performing this task, he searches online repositories about software DPs and the related course content. DEPTHS makes this search more effective by providing semantically-enabled context-aware learning services for finding related online and internally produced resources (Fig. 1B). Moreover, to get some initial directions on the performing task, the student uses semantically-enabled peers finding service to find people who have shared interests and are engaged in similar problems. As we explain in the following section, both kinds of services are enabled by leveraging formally represented semantics of the learning context and learning resources (both online resources and those internally produced). Afterwards, the student has to find associations between the gained knowledge and the problem that has to be solved and to propose potential solution strategies. Later, consultations are directed at confirming the idea and refining it to accommodate criticisms.
Previous works on similar problems could be useful for students as they give them opportunities to learn from positive examples; and provide them with new facts, information, and an idea how to apply the same approach (design patterns) in a similar situation. Moreover, exploring previous works provokes critical thinking as it helps the student think about alternatives along with their advantages and disadvantages. DEPTHS context-aware learning services for discovery of relevant learning resources (both external and internal) greatly facilitate this task. These services are powered by semantic annotations of learning resources: ontologies enable capturing and formal representation of the semantics of the content of those resources, as well as the context of their creation and usage.
Having acquired the required knowledge, students should complete the deliverable using the software modeling tool. This learning activity requires students to externalize their knowledge, to analyze possible solutions and to provide a design rationale.
After completing the project, students are asked to evaluate their own project, as well as to perform evaluation of each other’s work. Students reflect critically on their own and others’ contributions, and acquire knowledge about other possible solutions. This helps them recognize possible improvements in their own solutions. DEPTHS uses ontologies to capture the semantic of the students’ evaluations, so that they can be used for recommendations as well as feedback provisioning.

All students’ projects are published and publicly available; they are stored together with contextual semantic-rich metadata which facilitates their discovery and reuse. Students may be anxious that their work will be so visible, but it does seem to push them along to polish their projects. Moreover, students can learn from each other as portions of their projects became available before the final due date.