Distributed eLearning Center
Stanimir Stoyanov,University of Plovdiv
110th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Presentation Outline
• Rationale, Goals• DeLC Infrastructure• Education portal• CA3
• Problems
210th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Rationale
• Master program in SE – 10 years experience: Started 2001– 2009/2010: 50 students (around the optimum) – Only full-time: 5 years accreditation for the full-time
program - but we can change the form without new accreditation
– Problem: Logistics• Restructuring of the program
– From full-time to mixed form– Using DeLC
310th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Goals
• Implementation of an eLearning environment which can be used in the real education … but in the same time – Interactive– Personal– Proactive
• Framework for research activities – Context-aware and adaptable architecture
410th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Mobile Devices(with Intelligent Agents acting
as Personal Assistants formobile users)
(with Profile Managers)
LaptopCellularphone
PDA
(with up-to-date copies ofuser/service profiles)
Second tier: InfoStations
InfoStation CenterFirst tier:
Third tier:
DeLC Infrastructure
5
eLearningNode
eLearningNode
eLearningNodeFixed
access
Mobile access
InfoStation Network
10th Workshop “Software Engineering Education and Reverse Engineering”, Ivanjica, Serbia, 5-12 September 2010
eLearning Nodes • Fixed access eLearning node (mainly practical)
– Education portal– External eLearning tools
• Software engineering education– eLSEBuilder, RFAgent, SE eDictionary
• SCORM Editor (Reload)• Creativity Assistant
• Mobile access eLearning node (mainly research)– Context-aware and adaptable middleware supporting the
provision of mobile eLearning services– CA3 (Context-Aware and Adaptable Architecture)
610th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Portal Structure
710th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Portal Architecture
8
Presentation LayerPresentation Layer
Enterprise Service BusEnterprise Service Bus
LDAP ServerLDAP ServerUser ServicesUser ServiceseServiceseServices
LIFERAY PortletsLIFERAY Portlets DeLC SCORM Portlets
DeLC SCORM Portlets
DeLC Exam PortletsDeLC Exam Portlets DeLC System Portlets
DeLC System Portlets
Content ServicesContent Services Collaboration ServicesCollaboration Services
Legacy Content StoreLegacy Content StoreLegacy Content StoreLegacy Content Store LIFERAY
DatastoreLIFERAY
DatastoreDELC DatastoreDELC Datastore
Persistence LayerPersistence Layer
SCORM RuntimeSCORM Runtime
DESE / RELOADDESE /
RELOAD
10th Workshop “Software Engineering Education and Reverse Engineering”, Ivanjica, Serbia, 5-12 September 2010
Education portal: Home page
10th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010 9
eLearning Services• Pre-education services
– Information, education process organization & preparation, …• Education services
– eLectures• SCORM 2004 editors and SCORM RT Engine
– eTesting• eTest Editors, eTest Engine and eTest Evaluator
• Post-education services– Education process documentation & recording, archive
keeping, student & lecturer reports, …
1010th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Education services: eLectures• Content preparation – by external editors
– SCORM compatible: Reload Editor (Bulgarian version supported by our group)
– No standard format: Selbo 2 environment• Portal services
– Lecturers:• Import of SCORM content• Add comprehensive and well designed lecture annotation• Set user (students) rights• Configure detailed time schedule for lecture availability
– Students:• View lecture annotation• Play SCORM course
1110th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Education services: eTesting• Lecturers:
– Question DB preparation– Test pattern preparation
• Set test’s assessment scale• Define test’s availability (time schedule and user rights)
– Review and manually evaluate open questions– Review completed tests– Print examination protocol– Review Statistics about the evaluated tests
• eTesting engine:– Generation of personal tests– Automatically evaluate closed questions & Evaluation
completion by using the assessment scale– Generation of examination protocols
1210th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
eTesting: Student services
• Execute a test• Receive immediately after completing the test
the earned points for the closed questions• Later review lecturer notes about the
evaluation of the open questions• Review the complete assessment for the
whole test based on the automatic evaluation of the closed questions and manual evaluation of the open questions made by the teacher
1310th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
eTesting: Question types
• One possible answer• More than one possible answers• Connect letter with digit• Connect questions with answers• Open question (answer in free text)
1410th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Personalization and proactivity
• Different definitions in the literature• We use intuitive definitions• From experiments and our experience we try
to draw precise definitions for our case and we introduce different levels
1510th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
First level of personalization: User classification
16
OrganizationsOrganizationsPagesPages Organization Roles
RolesRoles
Users
User GroupsUser Groups
CommunitiesPagesPages Community RolesCommunity Roles
10th Workshop “Software Engineering Education and Reverse Engineering”, Ivanjica, Serbia, 5-12 September 2010
First level of proactivity: reminding engine
• Reminding engine works with events• The administrator can define system events which are
supported for all users• Each user can define private events
– Exam, lecture, birth day, ….• A event is described by different parameters
– Message, time, communication type (mobile, e-mail) • RE generate and send messages according the indicated
parameters
1710th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Implementation • Development environments & tools
– Life Ray portal framework– SCORM engine– JEE components– RDBS
• Real testing: 2010/2011– Question DB: Java, SE,AI– Master program
1810th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Next work• Typical extantions
– Pre- and post-education services– New education services
• Second level of proactivity and personalization – Enhance the architecture by intelligent
components - Personal assistants• Lecturers • Students
– Ontologies
1910th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
CA3: Two-component architecture
• Middleware– Context-awareness – locate and identify the
changes in the environment– Adaptability – ensure a correct and effective
service running
• eServices – Implementation of application functionality– For example - eLearning
2010th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
CA3: Context • Dey’s definition:
– Context is any information that can be used to characterize the situation at an entity
• Entity can be person, place, object, … which are significant for interaction between user and application
• Different types of context:– Place – Identity – Activity – Time
2110th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
CA3: Context-awareness• Device mobility
– Changing of user place• User mobility
– Changing of user device• Communication type
– Changing the type of mobile communication• Bluetooth or WiFi (or WiMax)
• User identity (Personalization)– Domain dependent – eLearning
• Domain, student, pedagogical models
2210th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
CA3: Adaptability
• In order to adapt the architecture to possible changes in the environment, detected by the context-aware component, we investigate two possibilities: – Usage of different kinds of agents
• Resident agents• Operative agents
– The agents can activate different behaviors
23
10th Workshop “Software Engineering Education and Reverse Engineering”, Ivanjica, Serbia, 5-12 September 2010
Mobile Devices
Info Station
CA3: Three Axes
Context-awareness
Adaptability
Request management
Time management
2410th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
CA3: Logical Structure
2510th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
System support
Middleware Activation Layer
Middleware Layer
Service Interface Layer
W(eb)Services
H(ussein)Services
S(CORM)Services
CA3: Service models
2610th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Middleware Layer
W Service H Service S Service
S SE E
Problem 1: Which service model?
2710th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
W Services H Services S Services
C&A - ++ +
Development + -- -
Research -- ++ +
Standard ++ - +
Middleware compatibility
+ ++ +
Domain independence
++ ++ --
Problem 2: Formalization
• Ambients– Description of CA3 components and operating
scenarios as ambients– CCA
• JTempura– Time-management components
• Agent-oriented
2810th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Problem 3: Testing
• To test the behavior of the middleware and to experiment with new theoretical concepts we are developing a specialized simulation environment
• 4 levels:– Scenarios– Resident and operative agents– Multi-agents communication– Agents behaviors
2910th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010
Thank you !
3010th Workshop “Software Engineering Education and Reverse Engineering”,
Ivanjica, Serbia, 5-12 September 2010