Education Ontology for Software Engineering UML TEST ENVIRONMENT ASYA STOYANOVA-DOYCHEVA EMIL DOYCHEV 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION.

Slides:



Advertisements
Similar presentations
Formal Modelling of Reactive Agents as an aggregation of Simple Behaviours P.Kefalas Dept. of Computer Science 13 Tsimiski Str Thessaloniki Greece.
Advertisements

Ontological Logic Programming by Murat Sensoy, Geeth de Mel, Wamberto Vasconcelos and Timothy J. Norman Computing Science, University of Aberdeen, UK 1.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
ELSE – eLearning in Software Engineering Stanimir Stoyanov, Distributed eLearning Center (DeLC), University of Plovdiv.
ETX Workshop OOPSLA 2003 Prism pattern recognition for aspect mining Prism is Research in Software Modularization Charles Zhang and Hans-Arno Jacobsen.
Selbo 2 SCORM Editor for eLearning Based on Ontologies Part of eLSE project Damyan Mitev University of Plovdiv “Paisii Hilendarski”
SOFTWARE ENGINEERING ONTOLOGY A DEVELOPMENT METHODOLOGY Projects: eLSE & SELBO Iveta Georgieva.
Intelligent Services in Selbo 2 SCORM Editor for eLearning Based on Ontologies Part of eLSE project Damyan Mitev University of Plovdiv “Paisii Hilendarski”
Interaction and adaptation in SCORM-based SE course Todorka Glushkova, University of Plovdiv, Bulgaria
8th Workshop "Software Engineering Education and Reverse Engineering", Durres RFAgent – an eLearning Supporting Tool Asya Stoyanova-Doycheva University.
Introduction To System Analysis and Design
Two main requirements: 1. Implementation Inspection policies (scheduling algorithms) that will extand the current AutoSched software : Taking to account.
1 Senn, Information Technology, 3 rd Edition © 2004 Pearson Prentice Hall James A. Senn’s Information Technology, 3 rd Edition Chapter 11 Creating Enterprise.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Distributed eLearning Center Stanimir Stoyanov, University of Plovdiv 1 10th Workshop “Software Engineering Education and Reverse Engineering”, Ivanjica,
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
SELBO SCORM Editor for eLearning Based on Ontologies Part of eLSE project Damyan Mitev University of Plovdiv “Paisii Hilendarski”
Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu.
GAME ORIENTED EDUCATION A. Petrov, V. Valkanova 13 th Workshop ‘Software Engineering Education and Reverse Engineering’ Bansko, Bulgaria August 2013.
ACM/JETT Workshop - August 4-5, 2005 UML Modeling using MagicDraw UML for Java Programmers.
Object-Oriented Analysis and Design
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Semantic Interoperability Jérôme Euzenat INRIA & LIG France Natasha Noy Stanford University USA.
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
BiodiversityWorld GRID Workshop NeSC, Edinburgh – 30 June and 1 July 2005 Metadata Agents and Semantic Mediation Mikhaila Burgess Cardiff University.
Mapping Designs to Code Larman, Chapter 20 CSE432 Object Oriented Software Engineering.
VIRTUAL EDUCATION SPACE S. STOYANOV, V. VALKANOVA.
Spoken dialog for e-learning supported by domain ontologies Dario Bianchi, Monica Mordonini and Agostino Poggi Dipartimento di Ingegneria dell’Informazione.
Prepared by Afra`a Sayah. Introduction. Weekly Tasks. Plane Phase. Analysis Phase. Design Phase. Report Rules. Conclusion. 2.
1 Chapter 5 Software Engineering Practice. 2 What is “Practice”? Practice is a broad array of concepts, principles, methods, and tools that you must consider.
Introduction To System Analysis and Design
Semantic Web Fred: Project Objectives & SWF Framework Michael Stollberg Reinhold Herzog Peter Zugmann - 07 April
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Košice, 10 February Experience Management based on Text Notes The EMBET System Michal Laclavik.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Object Modeling.
WSMX Execution Semantics Executable Software Specification Eyal Oren DERI
CORPORUM-OntoExtract Ontology Extraction Tool Author: Robert Engels Company: CognIT a.s.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
ETM Toolkit: A Development Tool Based On Extended Topic Map Lu Jiang, Jun Liu, Zhaohui Wu, Qinghua Zheng, Yanan Qian Speaker: Zhaohui Wu Xi’an Jiaotong.
The Grid System Design Liu Xiangrui Beijing Institute of Technology.
Selected Topics in Software Engineering - Distributed Software Development.
Valkanova V., Valkanov V. 14th Workshop SEERE, Sinaia, Romania 24th-30th August 2014.
Apps.  Understand the list of applications or application components that are required, based on the baseline Application Portfolio, what the requirements.
1 Intrusion Detection Methods “Intrusion detection is the process of identifying and responding to malicious activity targeted at computing and networking.
Supporting Scenario-Based Requirements Engineering IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 24, NO. 12, DECEMBER, 1998 A. G. Sutcliffe, N. A. M.
ARTIFACT UML Actor A Use Case 1 Use Case 2 Actor B Document FileManager GraphicFile File Repository DocumentList FileList Customer name addr withdraw()
Formal Foundations of Software Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group.
Intelligent Robot Architecture (1-3)  Background of research  Research objectives  By recognizing and analyzing user’s utterances and actions, an intelligent.
Software Design. A well-known phenomenon You will learn…. –Thinking "object oriented“ –Define requirements and analyze the problem domain. –Design of.
STASIS Open WorkshopPage 1 Modelling Interoperability: The Modelling Framework of BREIN STASIS Open Workshop BOC Asset Management.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Model View Controller (MVC) an architecture Rick Mercer with help from many of others 1.
Asya Stoyanova-Doycheva University of Plovdiv Bulgaria eLSEBuilder and RFAgent – eLearning Supporting Tools in Software Engineering 1.
UML - Development Process 1 Software Development Process Using UML.
DIAMON Project Project Definition and Specifications Based on input from the AB/CO Section leaders.
ArgoUML Peterson Lorins Chi-Hwa John Marcos Dawid Trawczynski Leticia Izquierdo EEL5881 Software Engineering I Spring 2002 – Dr. Schiavone.
1 SWE Introduction to Software Engineering Lecture 14 – System Modeling.
Blended Learning in Software Engineering with SCORM TH WORKSHOP ON “SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING” BOHINJ, SLOVENIA
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
PAPYRUS Tutorial CSOS 손 태 용.
OBJECT ORIENTED VS STRUCTURED WHICH ONE IS YOUR CHOICE.
1 Ontological Foundations For SysML Henson Graves September 2010.
New MSc curriculum (one year experience)
Building Graphical User Interface with Swing a short introduction
Teaching Java with the assistance of harvester and pedagogical agents
Presentation transcript:

Education Ontology for Software Engineering UML TEST ENVIRONMENT ASYA STOYANOVA-DOYCHEVA EMIL DOYCHEV 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

DigLib in Virtual Education Space 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014 Ontologies SCOs elements e-packages in SCORM Test Questions Date Bases Statistic Data Bases QuestionerAgents ContentA ePackA StatisticA TestA digLibAssistent SCOA Teacher Assistant Student Assistent Repositories Operatives Management

UML Test Environment Functionality Main function of the environment is to create tests about UML, present them to students in an appropriate way and check the answers, given by the users. Such test contains a number of questions, which are designed to be a short answer questions. All of the questions in one test are different. 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

UML –Test Environment (Architecture) Front-end component – Graphical User Interface (GUI), which users use for communicating with the environment to make the UML test; Back-end component – set of Intelligent Agents (IA), which generate the tests, check the user’s answers and analyze the results. For this task they use the UML ontology as knowledge base. The main two agents in the environment are named respectively Questioner Agent (QA) and Assessment Agent (AA). Each of them has its own specific tasks. Assessment Agent 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Implementation of the knowledge base The knowledge base is an ontology in the UML domain. Its aim is to provide knowledge for the UML elements – which are they and what relations have between each other. Our ontology contains over 850 axioms, so that gives variety of questions that can be asked by UML TE. 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Implementation of the UML Test Environment 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Implementation of the Questioner Agent The most interesting and important behavior of this agent is QuestionGenerationService. It implements the logic for composing the questions, using the knowledge from the ontology ◦For example if the picked class is InteractionDiagram, the question will be “InteractionDiagram is”. The user has to finish the sentence with the correct UML element. In this case that is behavioral diagram, because the interaction diagram is a kind of behavioral diagram. ◦For example, it is chosen UseCase to be the class and the picked expression says that it can be related by the property hasRelationship with the classes BidirectionalAssociation or Include or Extend. The formed question will be UseCase hasRelationship and the user should finish the sentence. 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Implementation of the Assessment Agent Behaviors of the Assessment Agent: receive, the name of the class and the string of the axiom from QA. They are extracted in OWLClass and OWLAxiom objects, so they can be used for the checking later. Receive the answer of the question from the GUI Assessment Service is activated, when the question and the answer are received. SendCorrectAnswersService - send the results, when they are asked. 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Assessment Service Algorithm 1. Is the answer string empty? 2. Is there such class in the ontology? 3. Defining the type of the question? 3.1 If the type of the question is “Is” - the answer should match with one of the super or equivalent classes of the question class. 3.2 If the type of the question is not “is”, we will use the axiom that was sent by QA: 3.2.1: The Agent founds matching in ontology Doesn't found matching - we have to divide this case to several subcases, because of the different types of axioms - ObjectAllValuesFrom or ObjectSomeValuesFrom, ObjectUnionOf expression Generate expression from the answer 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Implementation Technologies JAVA JADE Eclipse Protégé OWL OWL API 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

GUI of the Test Environment 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Conclusions FUTURE WORK  We will improve the ontologies in way to be more suitable about question generator ( to be more understandable).  We will improve the implementation of the agents ( for example to collect information about the wrong questions for the each student and include them in their future tests).  We will try to include another type of questions. 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014

Thank you! 14TH WORKSHOP ON "SOFTWARE ENGINEERING EDUCATION AND REVERSE ENGINEERING" SINAIA AUGUST 2014