SCENARIO-BASED GENERATION OF DIGITAL LIBRARY SERVICES
Rohit Kelapure, Marcos André Gonçalves, Edward A. FoxVirginia Tech, Blacksburg, VA, USA
Acknowledgements NSF Grants
CITIDEL: DUE-0121679 DL-in-a-box: DUE-0136690 ETANA: ITR-0325579 GetSmart: DUE-0121741 OAD: IIS-0086227
Others AOL Capes (Brazilian funding agency) Mellon: AmericanSouth.org
Outline
Problem Approach 5S, 5SL 5SLGen Case Studies Conclusion and Future Work
Problems Lack of general models for Digital Libraries (DLs)
Little focus on simplifying the process of modeling and building DL services
Divergent DL architectures Monolithic: Tightly integrated and generally inflexible Componentized: A network of interoperable components
aggregated without a design methodology
Problems (contd.)
Lack of DL-specific modeling languages, software toolkits, prototyping and CASE tools
Lack of a scenario-based requirements analysis and design approach to DLs
Implication: Problems with Interoperability Customizability
Approach Based on the formal 5S theory
Streams, Structures, Spaces, Scenarios and Societies
Use of Domain-specific declarative languages (5SL) Scenario-based requirements analysis and design Componentized architectures
Automatic transformations/mappings from models to code
Special attention paid to issues of flexibility, reusability, and extensibility
Approach: 5SLGen
5SLGen is a new generic digital library generator. It has been developed, implemented, and
deployed in several applications.
5SLGen yields implementations of digital library services from models of DL “societies” and “scenarios”
(and from the other “Ss”).
5S Model/ 5SLModel Objective Primitives in 5SL
Streams Describes properties of the DL content
text, audio, video, pictures, …
Structures Specifies organizational aspects of the DL content
digital object, metadata schema, collection, classification schemes, …
Spaces Defines logical properties and presentational views of a DL
vector, probabilistic, metric, …
Scenarios Details the behavior of DL services service, event, message, action, sender, receiver, …
Societies Defines managers, (responsible for running DL services); actors (those who use services) and their relationships
Service Managers, actors (e.g., learners, teachers, naïve users)
5SLGen: Model
Workflow
has
CompositeService
composed of
Service
CollectingService
composed of
binding
ElementaryService
LinkingService
IndexingService
RatingService
…
Scenarioscomposed of
generates
Manager
UserInterface
(component)
ActorsdisplaysSpaces
Societies
SocietiesStreams/Structures
communicates
Scenarios
participates
5SLSocieties Model
Service Manager characteristics: Name, attributes, operations, type, visibility
Service Manager relationships: Associations, generalizations (extends), dependencies
5SLScenarios Model
Overview Architecture for DL Modeling and Generation
5S Meta
Model5SGraph
DL Expert
DL Designer
5SL DL
Models
5SLGen
Practitioner
Researcher
TailoredDL
Services
Teacher
component pool
ODLSearch,ODLBrowse,ODLRate,ODLReview,
…….
5SLGen:Architecture5SLScenarios
Model
DLDesigner
5SLGen
5SLSocieties Model
Societiesconverter
Scenariosconverter
JavaClassesModel
XMI Serialized
5SLSocieties model
JavaController
Class
SynthesizedStatechart
import
import
ComponentPool
ODLBrowse
Java
Wrapping
ODLSearch
Java
WrappingJSPUser
InterfaceView
WebDesigner
DLServices Implementation
5SFramework
Societies-converter: Workflow
JDOMTransform
XMI:ClassModel
Xmi2Java
JavaClassesModel
JavaMapper
XMISerializer
Societies- converter
5SLSocietiesModel
DLDesigner
JDOMTransform
XMI:ClassModel
Xmi2Java
JavaClassesModel
JavaMapper
XMISerializer
XMISerializer
Societies- converter
5SLSocietiesModel
5SLSocietiesModel
DLDesigner
JavaRepresen-
tation.
5SLGen:Architecture
Scenarios-Converter: Workflow
Scenarios-converter
JDOMTransform
5SLScenarios Model
ScenarioSynthesizer
JavaController
Class
Synthesized
Statechart State Machine
Compiler
DLDesigner
State-design pattern
Relevance Feedback Search Service UML Sequence Diagram
Event seq.no. =
3
5SLScenarios instance
Scenarios-converter: Scenario-Synthesis
Scenarios-converter: Scenario-Synthesis (contd.)
Synthesized-Statechart
Component statecharts
Generated DLs
Union Catalog Simple DL with maximum reuse 2 components used: Search and Browse
CITIDEL, including VIADUCT Aggregates all the 5SLSocieties and
5SLScenarios models for its elementary services
Generated DL Services
CITIDEL: Relevance Feedback Search Service Demonstrate extensibility with the ODL Search component
CITIDEL: Profile Based Filtering Service Demonstrate reusability with the ODL Browse component
CITIDEL: Multi-Classification Browsing Service Generate complex services without any component reuse
CITIDEL: Binding Service Complete the set of CITIDEL services
Profile Based Filtering (PBF) Service 5SFramework
Model
Controller
View
ODL-Browse componenent
Conclusion
Introduced a scenario-based approach to the generation of componentized DLs
Applied the 5SFramework for generation of DLs
Partially validated the theory of 5S
Demonstrated that complex DLs can be built on the basis of a formal theory
Adherence to open standards (OAI-PMH, ODL, XMI, UML) and established design patterns (MVC, GOF’s State) ensures relevance and extensibility of our work.
Future Work
Integration of 5SLGen with 5SGraph
Improvements to 5SFramework architecture Scalability of the generated DLs and DL services Automated construction of user-interfaces with statecharts Support for transaction scoping and error handling Web services support Incorporating the uPortal framework
Model Validation
Personalization of the 5S approach using PIPE