COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User...

29
COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE

Transcript of COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User...

Page 1: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

COERCESoftware

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation without COERCE

Page 2: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

talks

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation without COERCE

COERCESoftware

Page 3: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

talks

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

modifies SourceCode

Simulation Adaptation without COERCE

COERCESoftware

Page 4: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

modifies

Compiler

Simulation Adaptation without COERCE

talks

uses

COERCESoftware

Page 5: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

modifies

Compiler

reads

ProgramInstance

writes

Simulation Adaptation without COERCE

talks

uses

COERCESoftware

Page 6: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Compiler

reads

ProgramInstance

writes

runs, observes

Simulation Adaptation without COERCE

talks

modifies

uses

COERCESoftware

Page 7: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Compiler

reads

ProgramInstance

writes

runs, observes

Simulation Adaptation without COERCE

talks

modifies

uses

... and repeatuntil the programinstance fulfillsthe requirements.

COERCESoftware

Page 8: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

COERCESoftware

Page 9: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

talks

COERCESoftware

Page 10: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

uses

talks

ExistingSoftware

uses

COERCESoftware

Page 11: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

usesFlex MLLibraries

SAX, DOMLibraries

writes Flex MLDocument

calls

talks

uses

COERCESoftware

Page 12: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

usesFlex MLLibraries

SAX, DOMLibraries

writes Flex MLDocument

calls

talks

uses

Do we manuallymodify orautomaticallysearch?

COERCESoftware

Page 13: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

ExistingSoftware

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

usesFlex MLLibraries

SAX, DOMLibraries

writes Flex MLDocument

calls

talks

uses

modifies

COERCESoftware

Page 14: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

OptimizationGUI

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

SAX, DOMLibraries

Flex MLDocument

uses

talks

uses writescalls

ExistingSoftware

uses

modifies

COERCESoftware

Page 15: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

SAX, DOMLibraries

Flex MLDocument

calls

talks

uses

uses

writescalls

ExistingSoftware

uses

modifies

COERCESoftware

OptimizationGUI

OptimizationLibraries

Page 16: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

SAX, DOMLibraries

readsFlex ML

Document

calls

talks

uses

calls

uses

writescalls

ExistingSoftware

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

Page 17: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

calls

uses

ConstraintChecker

writescalls

SAX, DOMLibraries

ExistingSoftware

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

Page 18: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

calls

uses

ConstraintChecker

ExistingSoftware

writescalls

SAX, DOMLibraries

calls

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

Page 19: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: DocumentGeneratedSoftware

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writescalls

SAX, DOMLibraries

calls

ExistingSoftware

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

Page 20: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: Document

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

Page 21: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

Page 22: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

Page 23: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

modifies

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

talks

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes

Page 24: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

modifies

talks

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes

Page 25: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

modifies

talks

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes

Page 26: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

modifies

talks

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

Do we manuallymodify orautomaticallysearch?

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes

Page 27: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

talks

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

modifies

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes

Page 28: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

modifies

talks

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes

Page 29: COERCE Software Existing Software KEY: Document Generated Software Simulationist Domain Expert User Source Code Simulation Adaptation without COERCE.

modifies

talks

KEY: Document

ProgramInstance

Simulationist

DomainExpert

User

SourceCode

Simulation Adaptation with COERCE

Flex MLEditor

Swing GUILibraries

Flex MLLibraries

Flex MLDocument

calls

uses

uses

calls

uses

InstanceGenerator

ConstraintChecker

BeautyJLibraries

writes

calls

SAX, DOMLibraries

calls

ExistingSoftware

GeneratedSoftware

writescalls

uses

... and repeatuntil the programinstance fulfillsthe requirements.

OptimizationGUI

COERCESoftware

OptimizationLibraries

reads

reads

observes