From Research to Startup: Experiences in Interoperability - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

From Research to Startup: Experiences in Interoperability

Description:

Maturity levels indicate stability/immutability. www.program-transformation.org/xt ... Use language technology as basis for reverse and re-engineering research. Goal: ... – PowerPoint PPT presentation

Number of Views:53
Avg rating:3.0/5.0
Slides: 23
Provided by: arievan
Category:

less

Transcript and Presenter's Notes

Title: From Research to Startup: Experiences in Interoperability


1
From Research to Startup Experiences in
Interoperability
  • Arie van Deursen
  • Leon Moonen
  • 23 January 2001

2
The ASFSDF Experience
Bergstra, Heering, Klint Alg. Specification, 1989
  • Describe language
  • SDF abstract concrete syntax
  • ASF language processors
  • Generate tools
  • Parser, pretty printer, structure editor
  • Type checker, evaluator, transformer
  • Meta-Environment

Van Deursen, Heering, Klint Language Prototyping,
1996
Klint, TOSEM 1993
3
(Meta) Environment Architecture
  • Heterogeneous tools
  • Annotated terms
  • ToolBus coordination architecture

Bergstra, Klint, SCP, 1998
4
Independent Tools
  • Size matters
  • use sharing to deflate large data
  • Format wars hard to avoid
  • AsFix 1, 2, and 1.5.
  • (AsFix local AST representation format)
  • Installing independent tools
  • requires appropriate bundling

5
Agreeing on Grammars
  • Abstract syntax schema.
  • Tools for one language share grammar?
  • Different tasks require different variations
  • Evolving grammars implies divergence
  • Our best attempt a grammar base
  • Set of reference grammars.
  • Maturity levels indicate stability/immutability

www.program-transformation.org/xt/
6
Talking to Industry
  • Discuss maintenance problems with
  • ABN AMRO Bank
  • Software house Roccade
  • Use language technology as basis for reverse and
    re-engineering research
  • Goal
  • Strengthen generic technology
  • Start with Cobol instantiation

7
Dealing with Data Flow
  • Many data flow problems reimplemented for
    different languages
  • Dhal Framework
  • map languages to common representation
  • variable definitions and uses
  • control flow (structured unstructured)
  • framework performs control flow normalization
  • generic data flow solutions on Dhal

Re-use DFA library
Multi-language systems
8
Object Identification
9
Object Identification
  • Tools used SDF, jasfix, grok, MySQL, concept,
    dot, Tcl/Tk
  • Wired by perl/make
  • Pragmatic, fine for research

10
Object Identification
  • Cobol Grammar
  • Reused modified
  • Other tools out of sync

11
Object Identification
ICSE99, IWPC2000
12
Spinning Off
  • Software Improvement Group (SIG)
  • Documentation Generation
  • Program Transformation
  • Strategic Consultancy
  • Mission
  • Help companies with their legacy problems
  • Transfer of CWI reengineering technology
  • Employees 2000, 2001, 2002 4, 8, 16

13
DocGen
ICSM 1999, WCRE 2000
  • Analyze Cobol system and redocument it using
    hypertext and graphs.
  • Operational characteristics
  • Processing 50.000.000 lines of code
  • ASP operate via Internet
  • On-site installation
  • No bugs please

14
DocGen Architecture
Mainframe
Cobol Programs
DocGen
Analyzer
SQL
Documentation Server
Page Request
Documentation
Clients
15
Analysis Interoperability
Mainframe
  • Source key properties
  • Island grammars
  • Use 3d party parser?

Cobol Programs
DocGen
Analyzer
SQL
Documentation Server
Page Request
Documentation
Clients
16
Query/view Interoperability
Mainframe
Cobol Programs
DocGen
Analyzer
SQL
Documentation Server
Page Request
Metric tools Graph visualization Clustering tools
Documentation
Clients
17
The DocGen Data Model
  • call
  • comments
  • controlflow
  • copy
  • copyrecord
  • created
  • sourceInfo
  • source
  • subsystems
  • summaries
  • words

entities flatfileInfo flatfileOps flatFileRecords
parameters
  • Evolve data model as we get along

18
Data Model Conversion
  • Customer request
  • Reuse DocGen data for other tool set
  • Extend DocGen with data from this tool set
  • Exchange through XML
  • Planned approach
  • Describe source and target model
  • Generate reader visitor for source data
  • Refine visitor to construct target data

19
Presentation
  • Describe structure of pages
  • Using a grammar
  • JJForester generates Java classes visitors
  • Composing a page
  • Construct abstract structure
  • Use visitor to emit HTML
  • (You want XML? Specialize visitor)

20
Summary Experience Report
  • ToolBus-based cooperation
  • Grammar-based data exchange
  • Collect reference grammars
  • Benefit from code generation
  • DHAL data flow framework
  • DocGen Cobol data model
  • Open up tools with jdbc, http, JavaDoc

21
Discussion (I)
  • Systematic interoperability is not for free
  • Opening up tools and adhering to standards takes
    effort
  • Standards may evolve
  • What is the reward?
  • Who gets the reward?
  • Start with bilateral cooperations

22
Discussion (II)
  • Encourage explicit schemas
  • Collect and discuss the schemas we use
  • Distribute schemas (Susans zoo)
  • Sooner or later they may get reused, or even
    refactored into a reference schema.
  • Strengthen communication
  • Use on line forum a la wiki?
  • (lightweight collaborative web discussion forum)
Write a Comment
User Comments (0)
About PowerShow.com