FREE Subscription to Dr. Dobb’s Digest: Same Great Content, New Digital Edition
Site Archive (Complete)
Architecture & Design
Email
Print
Reprint

add to:
Del.icio.us
Digg
Google
Furl
Slashdot
Y! MyWeb
Blink
June 02, 2006
Generative and Transformational Techniques in Software Engineering

Full fledged generic tools are ready and waiting

(Page 1 of 7)
James Litsios
Generative and transformational techniques have evolved from being very specific code generators to full fledged generic tools
James Litsios is CTO and head of development at Actant. He can be contacted at James.Litsios@actant.com.


Generative and transformational techniques (GTT) have been around in the form of tools like Lex and Yacc for more than 30 years. These techniques are all about taking source- or model-level representation, and performing analysis, transformation, and potentially generating new sources or models.

Having now reached a level of maturity, GTT has become the "swiss army knife" of software development. More specifically GTT fills the need for programmable development tools that can deal with unique business or technical domain content. As such its use spreads from adding new features to mainstream languages, process sources in older languages or in new domain-specific languages (for which no compiler exists yet), to providing the glue to blend together sources and models defined at different levels, and effectively be a universal solution to model-driven development. What all these usages have in common is that they fulfill the need to have development systems and tools that work on making and managing transformations of source and models in a fully consistent manner.

To many developers, this is a new approach to software development because it gives up relying on a "single representation" for systems, such as source code. Instead, it focuses on describing systems with multiple representations and the transformations between these representations. For some industries, say game development, transformation-based methodology is now mainstream. Who would think of writing a game purely as source code? Instead, games are built from multiple inputs such as level layouts, character AI, physical and illumination models, then brought together with the help of proprietary and third-party tools.

Transformation-based approaches have not been mainstream because of the limited availability of off-the-shelf transformation tools (parser generators and compilers, for instance) and the difficulty of writing them. Now, new transformation tools are being introduced that are both powerful and flexible, making them real contenders as building blocks for any large development. These tools, their use, and some underlying theory were the subject of Generative and Transformational Techniques in Software Engineering (GTTSE2005).

Sessions covered many of the important usage trends of transformation technology, including:

  • Domain-specific languages.
  • Aspect-oriented programming.
  • The use of features, reflection, modeling in case tools.
  • The mapping and transformation of XML and databases systems.
  • Source-to-source maintenance work.

It is worth mentioning that it is hard to do justice to the quality of the work that was presented at GTTSE2005. The executive committee Ralf Lämmel (Microsoft), and Joãco Saraiva Braga and Joost Visser (both of the Univeristy do Minho, Braga, Portugal) did an excellent job in leading the selection of presentations.

1 Introduction | 2 Models, Code Generation, and Transformations | 3 Transformations In Functional and Database Contexts | 4 Reflections and Aspects | 5 The Men from Austin, Texas | 6 Participant's Workshop | 7 Conclusion Next Page
TOP 5 ARTICLES
No Top Articles.
DR. DOBB'S CAREER CENTER
Looking for a new job? open | close
Search jobs on Dr. Dobb's TechCareers
Function:

Keyword(s):

State:  
  • Post Your Resume
  • Employers Area
  • News & Features
  • Blogs & Forums
  • Career Resources

    Browse By:
    Location | Employer | City
  • Most Recent Posts:



    MICROSITES
    FEATURED TOPIC

    ADDITIONAL TOPICS

    INFO-LINK



     




    Techweb
    Informationweek Business Technology Network
    InformationweekInformationweek 500Informationweek 500 ConferenceInformationweek AnalyticsInformationweek Events
    Informationweek MagazineGlobal CIOIWK Government ITbMightyByte and SwitchDark Reading
    Digital LibraryIntelligent EnterpriseInternet EvolutionNetwork ComputingPlug Into The CloudDr. DobbsContentinople
    space
    TechWeb Events Network
    InteropVoiceConWeb 2.0 ExpoWeb 2.0 SummitEnterprise 2.0Mobile Business ExpoNoJitter
    Black HatGTECEnergy CampCloud ConnectGov 2.0 ExpoGov 2.0 Summit
    space
    Light Reading Communications Network
    Light ReadingLight Reading AsiaUnstrungCable Digital NewsInternet EvolutionPyramid Research
    Heavy ReadingLight Reading LiveLight Reading InsiderEthrnet ExpoTelco TVTower Technology Summit
    space
    Financial Technology Network
    Advanced TradingBank Systems and TechnologyInsurance and TechnologyWall Street and TechnologyAccelerating WallstreetBST SummitBuyside Trading SummitIT Summit
    space
    Microsoft Technology Network
    MSDNTechNetTotal IT ProTotal Dev ProNET Total Dev Pro CommunitySQL Total Dev Pro Community
    space