Generative Programming: Past, present, and future A panel at GPCE 2004 Vancouver, BC October 27, 2004 Jeff Gray, University of Alabama at Birmingham.

Slides:



Advertisements
Similar presentations
Preparing EU-fin for periodic reporting Interactive user manual for coordinators.
Advertisements

Francisco Hernandez, Purushotham Bangalore, Jeff Gray, and Kevin Reilly Department of Computer and Information Sciences University of Alabama at Birmingham.
File References, Trees, and Computational Thinking Craig Miller School of Computing DePaul University.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
Regression testing Tor Stållhane. What is regression testing – 1 Regression testing is testing done to check that a system update does not re- introduce.
Chapter 3 Software Two major types of software
Unlocking Potential The Accessibility Features of Microsoft Windows Benevolent Bill The things Microsoft got right …
Levels of Independence in Aspect-Oriented Modeling Workshop on Model-driven Approaches to Middleware Applications Development June 17, 2003 Jeff Gray,
Basic HTML e-Learning Tutorial Storyboard Linda Sauerbrun AET/545 February 15, 2015 Dr. Poe.
CDM Developer Workshop. TDWG Andreas Kohlbecker Taxonomic Workflow in the EDIT Platform for Cybertaxonomy Purpose What do you want from this workshop?
Making a Game Linking Slides. To link slides: 1.Prepare your storyboard 2.Complete all slides 3.Link the slides.
A Domain-Specific Modeling Language for Scientific Data Composition and Interoperability Hyun ChoUniversity of Alabama at Birmingham Jeff GrayUniversity.
Graduation Portfolio Template. Directions for use of template: Text in blue font is part of ppt core. Do not erase. Text in grey font is to be replaced.
Computers Are Your Future © 2005 Prentice-Hall, Inc.
Domain-Specific Languages for Composing Signature Discovery Workflows Ferosh Jacob*, Adam Wynne+, Yan Liu+, Nathan Baker+, and Jeff Gray* *Department of.
Hyper/J and Concern Manipulation Environment. The need for AOSD tools and development environment AOSD requires a variety of tools Life cycle – support.
User Support Chapter 8. Overview Assumption/IDEALLY: If a system is properly design, it should be completely of ease to use, thus user will require little.
Implementing a Domain-Specific Modeling Environment For a Family of Thick-Client GUI Components Milosz Muszynski Tanner AG
IBM Software Group ® Context-Sensitive Help with the DITA Open Toolkit Jeff Antley IBM October 4, 2007.
U1_a02_copyright text and images ADD NAME HERE. Insert below a copyright free IMAGE that could be used in your health and safety presentation.
Word What’s New? Carol M. Cram Capilano University, North Vancouver, BC.
Generative Approaches for Application Tailoring of Mobile Devices Victoria M. Davis, Dr. Jeff Gray (UAB) and Dr. Joel Jones (UA) Portions of this research.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
A Model Transformation Approach to Automated Model Construction and Evolution Yuehua Lin Jeff Gray Department of.
The Importance of Concrete Syntax to Support End-User Abstractions Jeff Gray University of Alabama at Birmingham ICSE MiSE Workshop Minneapolis, MN May.
Using SmartBoard Technology to Explore Transformational Geometry Teaching a Technology- Enriched Transformational Geometry Unit iLearn Grade 8 Math Session.
© NCSR, Frascati, July 18-19, 2002 CROSSMARC big picture Domain-specific Web sites Domain-specific Spidering Domain Ontology XHTML pages WEB Focused Crawling.
Samad Paydar WTLab Research Group Ferdowsi University of Mashhad LD2SD: Linked Data Driven Software Development 24 th February.
An AAC Professional Learning Module Book Study based on the AAC publication Scaffolding for Student Success Scaffolding for Student Success Module 4: Five.
Human Computer Interaction Lecture 21 User Support
Eclipse Vorto Alexander Edelmann.
Core LIMS Training: Project Management
AHG Advanced Techniques for PDF Accessibility
Lesson: Sequence processing
Implementation Process
Types for Programs and Proofs
Human Computer Interaction Lecture 21,22 User Support
CSCI-235 Micro-Computer Applications
A Graphical Modeling Environment for the
Designing For Testability
CS1001 Lecture 8.
Sample Presentation. Slide 1 Info Slide 2 Info.
Slides 1-3 are for your information only
The Web Service based approach for data distribution at the IRIS DMC
Locating, Editing, & Using Diagrams in Your Science Lesson
Tables, Smart Art and Templates
Microsoft Word - Formatting Pages
My Project Title (Track: Startup)
Technical update 05 of April 2017
Computers Are Your Future
Microsoft Word - Formatting Pages
EVOSS Walkthrough.
Chapter 13 Quality Management
Software Design Lecture : 8
Microsoft PowerPoint 2007 – Unit 2
Regression testing Tor Stållhane.
INTERMEDIATE AND SENIOR PHASE
Model Comparison: A Key Challenge for Transformation Testing and Version Control in Model Driven Software Development Yuehua Lin, Jing Zhang, Jeff Gray.
Draft Proposal for an Eclipse Mobile Development Suite Architecture
22nd Annual CUNA Lending Council Conference
Shake, Rattle, and Roll: Using Games in Math Workshop, Grades 3-5
Learning Areas Levels Objectives Software Description Author
Learning Areas Levels Objectives Software Description Author
Layered Quadrants Diagram for PowerPoint
4 Step Simple Diagram Sample text Sample text Sample text Sample text
Meet the CoTESOL Members’ Wiki
Setting the Default Thumbnail Image for SB3 Websites
Software Architecture & Design
Presentation transcript:

Generative Programming: Past, present, and future A panel at GPCE 2004 Vancouver, BC October 27, 2004 Jeff Gray, University of Alabama at Birmingham

“How to teach it?” …to my mother Assist in automating tasks that are mundane and manual, such that error prone nature is removed and productivity is improved. Context: Real Estate Legal Forms 15 different documents 6 different participants with specific contact information Numerous places within each document where parts of contact information is to be inserted Note: Some internal generator living within word processor…

“How to teach it?” … to my father-in-law - Reducing all images to common sizes, producing thumbnails, providing a general index, linking all pictures in a slide show… - Many hours to do manually – about 20 seconds in “Web Picture Creator” Assist in mitigating effects of accidental complexities.

“How to teach it?” … to my grad students The previous were somewhat embarrassingly simple examples, but perhaps offers insight into essential characteristics of GP that could be understood by laypersons  A key is relating experiences “with” and “without” the availability of certain tools For Grad students:  Provide a 5k SLOC sample application  Traditional Adaptation: Ask them to perform an adaptation using “traditional” development (e.g., plain Java in Eclipse)  Metaprogramming and reflection: Introduce core literature and related tools; request students to perform same changes using OpenJava, Javassist, JMangler, etc  AOSD: introduce core literature in AOSD and tools; request students to perform same changes using AspectJ  Metamodeling: introduce core literature and GME; request students to perform generative tasks on domain-specific models More info:

“What do we do next?” Key challenge  managing the syntactic mismatch between abstraction layers Examples  Debugging and testing a DSL program (e.g., debugging YACC output) It would be desirable to do this at the abstraction of the conceptual artifact  Version control of models/visualization Forced to view differences as flat text files (perhaps in XML!), rather than the abstraction provided by the modeling tool