1 A Web Specific Language for Content Management Systems Viðar Svansson, Roberto E. Lopez-Herrejon Computing Laboratory University of Oxford.

Slides:



Advertisements
Similar presentations
GenArch: Automatic Product Derivation in Multi-agent Systems Product Line Elder Cirilo.
Advertisements

Component Development for the Component Description Framework (CDF) Training Dr.-Ing. Ulrich Dinger.
IAAnalyzer: Towards a Model-Driven Modeling and Analysis Framework for C ONNECT(ors) Massimo Tivoli, University of L’Aquila (UNIVAQ)
MAE Training for User July 8, Agenda Wiki FishEye Crucible Stash.
The Documentum Team Lance Callaway, Brooke Durbin, Perry Koob, Lorie McMillin, Jennifer Song Missouri University of Science and Technology Rolla, Missouri.
Mobyle XML Vivek Gopalan Version history: First version for training Nick and Art – Vivek, 02/07/2011.
Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
IEC Substation Configuration Language and Its Impact on the Engineering of Distribution Substation Systems Notes Dr. Alexander Apostolov.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
IELM 511: Information System design
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
IBM Software Group © 2005 IBM Corporation University of Nantes Eclipse dayMarch 2005 The Eclipse Modeling Framework and the IBM Model Transformation Framework.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
+ RSS Aggregation and Syndication. + Really Simple Syndication (aka, Rich Site Summary) Image source:
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Presentation By: Brian Mais. What Is It? Content Management Systems(CMS) describes software that manage content, workflow, and collaboration online and.
Midwest Documentum User Group Harley-Davidson Documentum WCM 10/10/2006.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
Web 2.0: Concepts and Applications 2 Publishing Online.
A Practical High Volume Software Product Line Peter Bell CEO/CTO SystemsForge ooPLSA ‘07 Peter Bell CEO/CTO SystemsForge ooPLSA ‘07.
The New Architecture for Collaboration Brent McConnell David LaPalomento.
Creating Page Layouts using SharePoint Designer or Visual Studio Becky Bertram MVP SharePoint Server, MCSD, MCAD
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
© 2006 IBM Corporation IBM WebSphere Portlet Factory Architecture.
PUBLISHING ONLINE Chapter 2. Overview Blogs and wikis are two Web 2.0 tools that allow users to publish content online Blogs function as online journals.
Copyright © 2009 AtlanMod. All Rights Reserved Frédéric Jouault & Hugo Bruneliere AtlanMod team (INRIA & Mines de Nantes) Possible Benefits of Bridging.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
Searching Business Data with MOSS 2007 Enterprise Search Presenter: Corey Roth Enterprise Consultant Stonebridge Blog:
Selected Topics in Software Engineering - Distributed Software Development.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
2007. Software Engineering Laboratory, School of Computer Science S E Web-Harvest Web-Harvest: Open Source Web Data Extraction tool 이재정 Software Engineering.
1 © 1999 Microsoft Corp.. Microsoft Repository Phil Bernstein Microsoft Corp.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
Module 2: Using Microsoft Visual Studio.NET. Overview Overview of Visual Studio.NET Creating an ASP.NET Web Application Project.
Content Management Systems Allyson Falkner Spokane County ISD
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Graphical Modeling Framework (GMF) Richard C. Gronback Project Lead.
Software Design: Principles, Process, and Concepts Getting Started with Design.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
1 Service Creation, Advertisement and Discovery Including caCORE SDK and ISO21090 William Stephens Operations Manager caGrid Knowledge Center February.
Domain Specific Models John D. McGregor M13S1. Tool development Eclipse is an environment intended as a basis for building software engineering tools.
XSDoc, JISBD’ XSDoc an Extensible Wiki-based Infrastructure for Framework Documentation Ademar Aguiar, Gabriel David, Manuel Padilha FEUP, INESC.
March 19th 2007 TANGO collaboration 1 POGO-7 Pascal Verdier ESRF- Hamburg - 25 th of October 2010 A Short History of Pogo A Short History of Pogo New Technology.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
Declarative Languages and Model Based Development of Web Applications Besnik Selimi South East European University DAAD: 15 th Workshop “Software Engineering.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Metadata Driven Aspect Specification Ricardo Ferreira, Ricardo Raminhos Uninova, Portugal Ana Moreira Universidade Nova de Lisboa, Portugal 7th International.
Repository-specific Spoke Scripts Content Repository JSR-170/283 Content Repository for Java Technology API Normalized H&S METS Files METS Import/ExportMETS.
Business Data Integration with MOSS 2007 Naveedullah Khan PMP, MCAD.NET Senior Consultant.
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
1 Budapest University of Technology and Economics Department of Measurement and Information Systems Budapest University of Technology and Economics Fault.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
Application generation Peter Bell SystemsForge Peter Bell SystemsForge Beyond Scaffolding.
Overview Blogs and wikis are two Web 2.0 tools that allow users to publish content online Blogs function as online journals Wikis are collections of searchable,
Towards a framework for architectural design decision support
Summary Report Project Name: Model-Driven Health Tools (MDHT)
CHAPTER 8 Multimedia Authoring Tools
Microsoft Office Illustrated
The Islamia University Bahawalpur
Execute your Processes
International Living Atlases Workshop Madrid 2018
9/8/ :03 PM © 2006 Microsoft Corporation. All rights reserved.
Software Architecture & Design
Presentation transcript:

1 A Web Specific Language for Content Management Systems Viðar Svansson, Roberto E. Lopez-Herrejon Computing Laboratory University of Oxford

2 Motivation Web application development is increasingly complex  Several ways to cope with this complexity Web frameworks  Basic infrastructure for web development  Examples: RubyOnRails, Zope  Problems: hard to master, e.g. API and coding conventions, multiple implementation technologies Content Management System (CMS)  Sophisticated systems for authoring and controlling web applications sometimes built on top of a web framework  General purpose but customizable for the organization profile  Problems: many custom requirements, still hard to master

3 Big Picture Our goal  Facilitate the building of custom CMS by non-experts Our approach  Develop a Domain Specific Language (DSL) Hide programming complexity  Utilize Model-Driven Development technologies openArchitectureWare  Generate a software product line infrastructure reuseable components and configuration profiles

4 Designing DSL Insights Websites are hierarchical  Directories, index.html Webpages are hierarchical  HTML, XML Content workflow can be modeled with state charts CMS systems can be built in terms of their required functionality

5 Web Specific Language (WSL) – Fragment Application: 'application' name=ID '{' (entities+=Entity)* '}' ; Abstract Entity: Metadata | Domain | Feature ; Domain: 'domain' name=ID '{' (entities+=Entity)* '}' ; Abstract Feature: Content | Workflow | Permission ; Abstract Metadata: Description | Title | Author | Version | URL | | Licence ; Abstract Content: Base | Folder | Document | File | Event | Image | Link ; Base: 'content' name=ID '{' (concepts+=Concept)* '}' ; Abstract Stereotype: Required | Searchable | Ordered ; Abstract Containment: Contains | Container ; Contains: 'contains' (containment=ID)* ';' ; Container: 'container' (containment=ID)* ';' ; Abstract Concept: Metadata | Field | Containment ; Field: (stereotypes+=Stereotype)* type=Type name=ID '{' (attributes+=FieldAttribute)* '}' ; Abstract FieldAttribute: Widget | Title | Description | Default | Stereotype ;

6 Akademia Case Study Simple academic web sites An Akademia web site has  Research projects  Research groups  Publications  Other details … application Akademia { domain Research { title "Research Content"; description "Concepts …"; folder ResearchProject { title "Research Project"; contains Publication; reference groups { title "Associated Groups"; type ResearchGroup; } reference projects { title "Related projects"; type ResearchProject, Link; } required text aims { title "Project Aims"; description "A summary…"; } } … } }

7 WSL Architecture wsl2emf WSL xText WSL editor WSL ecore Akademia wsl Akademia emf emf2interfacesemf2archetypesemf2configemf2profile

8 Product Line Infrastructure Profiles – finer degree or variability  System properties, i.e. string values in XML files  Examples: content-types, comments, versioning Tool GenericSetup to select and deploy components  Define permissions and workflows CMS instance composed of multiple profiles

9 Output Examples

10 Lessons Learned Web apps (CMSs) are complex beasts  Require detailed knowledge of the target to automate generation effectively Limitations found  Missing association references in xText translation  Template support for whitespace handling, important when targeting Python code Textual DSL was adequate  Easier to learn, traditional versioning and editing support

11 Related Work Inspired by ArchGenXML (AGX)  Transforms UML diagrams annotated with stereotypes of a Plone UML profile WebDSL – Visser 07  Proposes DSL for web applications with concepts similar to those available in a CMS  Academic web site case study ≠ Models presentation in DSL Feature Oriented Model Driven Development (FOMDD) – Trujillo et. al 07  Combines Feature Oriented Programming (FOP) and MDD  Algebraic representation of composition and synthesis

12 Future Work Application to a larger case study  Assessment with actual web developers Extend DSL to accommodate other CMS functionality  Portlets, composite content-types  Algebraic properties of fields for computed fields Model algebraically as in FOMDD  How the model obtained compares with other case studies? Integrate with a feature modeling tool