![Page 2: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/2.jpg)
0Motivation
B
![Page 3: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/3.jpg)
![Page 4: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/4.jpg)
1Examples
![Page 5: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/5.jpg)
Healthcare
M
![Page 6: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/6.jpg)
Context&MotivationMobileAppsthathelppatientsw/treatmentsMonitorside-effectsandrecommendactionsManagedosageofmedications
![Page 7: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/7.jpg)
Context&MotivationMobileAppsthathelppatientsw/treatmentsMonitorside-effectsandrecommendactionsManagedosageofmedications
“Algorithms“forrecommendationsanddosageatthecoreoftheseapps.Safety-critical,sincetheycouldhurtpatients.
Customerdevelopsmanydifferentapps/algoslikethis,efficiencyofalgodevelopmentiskey.
![Page 8: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/8.jpg)
Context&Motivation
Healthcareprofessionalsdirectly„code“algos,usingasuitablelanguage.Avoidsindirectionsthroughrequirementsdocs.Speedupdevsignificantly.
} PrettytypicalDSL-baseddev-approach.
![Page 9: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/9.jpg)
SomeLanguageImpressionsI
![Page 10: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/10.jpg)
SomeLanguageImpressionsII
![Page 11: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/11.jpg)
SomeLanguageImpressionsIII
![Page 12: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/12.jpg)
Insurance
B
![Page 13: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/13.jpg)
Context&Motivation
InsurancePrograms
Specify/Program
WriteformalcodeinaDSLmixedwithtablesandtext
NotoolsupportwhatsoeverNotesting(exceptinspection)
NoreuseNomodularityNovaribility
![Page 14: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/14.jpg)
Context&Motivation
InsurancePrograms
Specify/Program
WriteformalcodeinaDSLmixedwithtablesandtext
NotoolsupportwhatsoeverNotesting(exceptinspection)
NoreuseNomodularityNovaribility
![Page 15: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/15.jpg)
ArealExample:Legacy
InsurancePrograms
„Pixelcrap“ CCode
Debug
Implement
Specify/Program
WriteformalcodeinaDSLmixedwithtablesandtext
NotoolsupportwhatsoeverNotesting(exceptinspection)
Printed,PDF Developerreads„spec“Veryidiomaticimplementation
DevactsasahumancompilerandimplementsitinC
DebuggingdirectlyinCSearch-for-usebytextsearchDon‘ttrustthedocuments–
maybeoutdated!
NoreuseNomodularityNovaribility
![Page 16: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/16.jpg)
SolutionApproach
InsurancePrograms
WriteformalcodeinaDSLmixedwithtablesandtext
NowwithIDEsupportandexecutabletests
Thesamenotation!
Specify/Program/Test/Debug
![Page 17: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/17.jpg)
ArealExample:Future
InsurancePrograms
CCode
Generate
IncrementalRefinement/Refactoringoflanguages:
PartiallyautomatedmigrationofmodelsAddmodelnaturalnotations(insurance-specific,math)AddSupportformodularity,reuse,variants
StillexactlythesameCcode,orimprovedasneeded.
Specify/Program/Test/Debug
![Page 18: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/18.jpg)
Salary
M
![Page 19: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/19.jpg)
Context&MotivationCalculateSalaries+TaxesforEmployeesVariousdeploymentplatforms
Variabilityover16StatesBasedonevolvingLaw
ComplexBusinessLogic
TemporalData+ArithmeticsReactiveRules
Dates&Currencies
![Page 20: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/20.jpg)
CurrenciesandDates
![Page 21: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/21.jpg)
TemporalData
![Page 22: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/22.jpg)
ResultDataandRules
![Page 23: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/23.jpg)
ResultDataandRules
![Page 24: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/24.jpg)
IDESupport
![Page 25: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/25.jpg)
2ApproachinaNutshell
B
![Page 26: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/26.jpg)
IntegrationofFachler
![Page 27: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/27.jpg)
[BusinessKnowledge]It‘s what makes a business tick.
Distinguishes the business.Business Rules
(Financial) CalculationsData Structures
Mappings or QueriesValidations
Scientific ProcessesContracts
ProcessesUIs
}
![Page 28: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/28.jpg)
[BusinessKnowledge]It‘s what makes a business tick.
Distinguishes the business.
Contributed not by developers
... but typically implemented in software
![Page 29: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/29.jpg)
[BusinessKnowledge]SO HOW DOES IT GETINTO THE SOFTWARE?
Contributed not by developers
... but typically implemented in software
![Page 30: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/30.jpg)
Reality
![Page 31: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/31.jpg)
Goal!?
![Page 32: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/32.jpg)
LetBusiness/Domainpeoplecontributedirectly!
Givethemexpressive,productivetoolstodoso!
![Page 33: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/33.jpg)
ExpressivityforCoreDomainKnowledge
User-FriendlyNotationGreatTool/IDE
Testing
MeaningfulAnalyses
SynthesisofSoftware
![Page 34: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/34.jpg)
SeparationfromTechnology
B
![Page 35: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/35.jpg)
OutdatedTechnologyObscureBusinessLogic
![Page 36: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/36.jpg)
OutdatedTechnologyNon-UnderstandableLogicExpensivetoEvolve
Fachlichkeit„burried“inimplementationcode.
![Page 37: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/37.jpg)
Technology&BusinessLogicnowhaveconnectedlifecycles.
![Page 38: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/38.jpg)
Goal:SeparatetheLifecycles
Fachlichkeit Technology
![Page 39: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/39.jpg)
3Technical
M
![Page 40: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/40.jpg)
![Page 41: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/41.jpg)
OutdatedTechnologyNon-UnderstandableLogicExpensivetoEvolve
BusinessLogic
Technology
![Page 42: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/42.jpg)
MetamodelforBusinessLogic
Clearlydefineddatastructuretoexpressallbusiness-relevantstructures,behaviorsand
non-functionalconcerns.
![Page 43: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/43.jpg)
MetamodelforBusinessLogic {DataStructures
BehavioralRulesExpressionsValidationsSpecialTypes(eg.temporal)...
![Page 44: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/44.jpg)
MetamodelforBusinessLogic {DataStructures
BehavioralRulesExpressionsValidationsSpecialTypes(eg.temporal)...
Domainsoftenhavearichlanguage/vocabularyanyway;itjustneedstobeformalized.(DDD:UbiquituousLanguge)
![Page 45: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/45.jpg)
MetamodelforBusinessLogic
Semantics
Clearlydefineddatastructuretoexpressallbusiness-relevantstructures,behaviorsand
non-functionalconcerns.
Well-definedmeaningofthisdatastructure
![Page 46: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/46.jpg)
MetamodelforBusinessLogic
Clearlydefineddatastructuretoexpressallbusiness-relevantstructures,behaviorsand
non-functionalconcerns.
Well-definedmeaningofthisdatastructure
IDESupportispossibleEvolutionispossiblePortabilityispossible
TypeCheckingSolver-IntegrationModelCheckingContracts
Semantics
![Page 47: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/47.jpg)
TechInfrastructure
MetamodelforBusinessLogic
Clearlydefineddatastructuretoexpressallbusiness-relevantstructures,behaviorsand
non-functionalconcerns.
Well-definedmeaningofthisdatastructure
ExecutionEngine
TechnicalPlatformforcorrect,efficientandscalableexecution
Semantics
![Page 48: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/48.jpg)
MetamodelforBusinessLogic
Clearlydefineddatastructuretoexpressallbusiness-relevantstructures,behaviorsand
non-functionalconcerns.
Well-definedmeaningofthisdatastructure
TechnicalPlatformforcorrect,efficientandscalableexecution
TechInfrastructure
generatecode,deploy
transferdata,interpret
generatecode,deploy
transferdata,interpret
Semantics
![Page 49: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/49.jpg)
MetamodelforBusinessLogic
TechInfrastructure
generatecode,deploy
transferdata,interpret
Semantics
![Page 50: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/50.jpg)
TechInfrastructure
MetamodelforBusinessLogic
SemanticsSyntax
Language
generatecode,deploy
transferdata,interpret
![Page 51: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/51.jpg)
TechInfrastructure
MetamodelforBusinessLogic
SemanticsSyntax
Language
generatecode,deploy
transferdata,interpret
Syntaxiscriticallyimportantfor
ProductivityCommunicationandReviewDomainExpertIntegration
OnlyButtonsandFormsdon‘twork!
![Page 52: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/52.jpg)
TechInfrastructure
MetamodelforBusinessLogic
SemanticsSyntax
Language
generatecode,deploy
transferdata,interpret
![Page 53: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/53.jpg)
LanguageWorbench
TechInfrastructure
MetamodelforBusinessLogic
SemanticsSyntax
Language
generatecode,deploy
transferdata,interpret
![Page 54: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/54.jpg)
ALanguageWorkbench–atoolfordefining,composingandusingecosystemsoflanguages.
![Page 55: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/55.jpg)
TUDelft
itemis/Typefox
CWIAmsterdam
Solmi/Persiani
Rascal
TheWholePlatform
OtherLanguageWorkbenches
![Page 56: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/56.jpg)
http://voelter.de/data/pub/LWB-ResultsAndBenchmarks.pdf
![Page 57: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/57.jpg)
4LessonsLearned
![Page 58: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/58.jpg)
ALanguageisnotEnough
B
![Page 59: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/59.jpg)
Language
GreatIDE
Analyses
Refactorings
Testing
Debuggers
AbstractionsNotations
SyntaxColoringCodeCompletionGotoDefinition
RelevantGoodErrors
AlignedwithProcesses
WriteTestsRunthem
ReportBack
AnimateExecutionSimulators
GOOD
GREAT
LanguageDesign::MorethanLang
![Page 60: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/60.jpg)
NotationNotationNotation
B
![Page 61: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/61.jpg)
Math
InsuranceMath
![Page 62: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/62.jpg)
FeatureModels
ComponentArchitectures
![Page 63: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/63.jpg)
DataflowDiagrams
![Page 64: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/64.jpg)
FormStyle
![Page 65: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/65.jpg)
FormStyle
Fixed
DS
![Page 66: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/66.jpg)
InfluencesontheLanguage
M
![Page 67: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/67.jpg)
DomainStructure
ModelPurpose
Analyze,Generate
UserSkills
SoftwareEngineeringPractices
NonFunctionalsPermissions,IP,Sharing
ToolCapabilities
Notations,Editing,Scale
Sep.ofConcernsDifferentViews
Getabetter tool:-)
RefactortowardsStructure
Educate,Putresultsincontext
LanguageDesign::Influences
![Page 68: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/68.jpg)
DomainStructure
ModelPurpose
Analyze,Generate
UserSkills
SoftwareEngineeringPractices
NonFunctionalsPermissions,IP,Sharing
ToolCapabilities
Notations,Editing,Scale
Sep.ofConcernsDifferentViews
Getabetter tool:-)
RefactortowardsStructure
Educate,Putresultsincontext
LanguageDesign::Influences
![Page 69: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/69.jpg)
HowtomakePeopleprecise?
M
![Page 70: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/70.jpg)
Precision
Programming!={ Formulas,Rules
DataStructuresTablesValues
}PerformanceScalability
RobustnessDeployment
![Page 71: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/71.jpg)
Doesthisscale?
B
![Page 72: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/72.jpg)
Doestheapproachscale?
Ifstructure,formalization,andtoolsupportdon‘tscale,
Whatarethealternatives?Excel?Wikis?ProseDocuments?
thenwhatwill??
![Page 73: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/73.jpg)
Dothetoolsscale?Intermsofoverallsystemsize?Yes,thesystemhastobebrokendownintomodelsofmanageablesize,asusual.Thisrequiressomethought.
Intermsofteamsize?Yes,sincewerelyonestablishedversioncontrolsystems(git)todealwithgroupwareaspects;andyes,diff/mergeworksasexpected.
Intermsoflanguagecomplexity?Yes,inparticular,sinceyoucanmodularizethelanguagedefinitions.
![Page 74: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/74.jpg)
CanIfindthepeopletodothis?Yes,butitisasignificantchange,so:- itmaybeasignificanteducation/trainingeffort.- afewpeoplemightnotgetit- afewpeoplemaynotwanttodoit.
![Page 75: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/75.jpg)
Thisisathreat!
B
![Page 76: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/76.jpg)
PrecisionandFormalityDifferentProcessesHigherEfficiency
->NewSkills->RoleChange->JobLoss
AutomationFocusonEngineeringEmpowerBusinessPpl
->JobLoss->RoleChange->LessImportance
![Page 77: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/77.jpg)
Somepeopleareafraidofthis.Takethemseriously.
![Page 78: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/78.jpg)
Achangeof
thatmustbemanaged!
![Page 79: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/79.jpg)
Isthisthenextlegacysystem?
M
![Page 80: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/80.jpg)
„ “Today‘ssoftwareistomorrow‘slegacysystem.
Orisit?
![Page 81: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/81.jpg)
„ “Today‘ssoftwareistomorrow‘s legacysystem.
BusinesschangeishardTechnologychangeishard
SeparationofConcernsKeepBLfreeoftechnology
Makeit„portable“
![Page 82: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/82.jpg)
LanguageTech1
V1
RuntimeT1
Generator1
![Page 83: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/83.jpg)
LanguageTech1
V1 V2 V3 ....
Evolution
ExistingmodelsbecomeincompatblewithnewlanguageÞ LanguageVersions
MigrationScripts
RuntimeT1
Generator1
![Page 84: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/84.jpg)
LanguageTech1
V1 V2 V3 ....
Evolution
RuntimeT1
Generator1
RuntimeT2
Generator2
Retargetting
RuntimeTechoutdated,uncoolorslowÞKeepLangTechnology
KeepModelsBuildnewGenerator
![Page 85: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/85.jpg)
LanguageTech1 LanguageTech2
....
Migration
V1 V2 V3 .... V4 V5 V6 ....
Evolution Evolution
RuntimeT1
Generator1
RuntimeT2
Generator2 Generator3
LanguageTechoutdated,uncoolÞBuildnewTool
MigrateData Simple,becauseitwell-defineddomainsemanticsandfreefrom„technologystuff“
Retargetting
![Page 86: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/86.jpg)
„ “Today‘ssoftwareistomorrow‘slegacysystem.
No,itisnot.
![Page 87: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/87.jpg)
InconflictwithAgile?
M
![Page 88: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/88.jpg)
MD*andAgileisinConflict.„ “Project Language
DevelopmentSystem
DevelopmentDependon,use
Project1 LanguageDevelopment
Project2 SystemDevelopment
ProjectN…
Dep’don,use
Later:
1
2
![Page 89: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/89.jpg)
MD*andAgileisinConflict.„ “Project Language
DevelopmentSystem
DevelopmentDependon,use
1
Framework
Library
Platform
Managelikeanyotherintra-projectdependency.
Evolutionofclientcodeiseasier thanforF/L/Pbecauseof
migrationsupport!
![Page 90: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/90.jpg)
MD*andAgileisinConflict.„ “Project1 Language
Development
Project2 SystemDevelopment
…Dep’don,use
Later:
2
Framework Library Platform
Managelikeanyother3rdpartydepencency: DevelopmentRoadmap
IssueTrackerReleaseNotes...
![Page 91: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/91.jpg)
MD*andAgileisinConflict.„ “Project2 System
Development3
ModelsandDSLsareanEnabler forAgility: IntegrationofDomainExperts
„Living“RequirementsDecoupledFachlichkeit&Technik
![Page 92: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/92.jpg)
MD*andAgileisinConflict.„ “Project1 Language
Development4
LeadingLWBsaresoproductive,youcanliterallysitwiththedomainexpertsandinteractivelyprototypelanguages(andthencleanuplater)
I’velookedattheimplementationofthe
languageinMPS,butIdidn’tfindmuch.Isthisallthereis?
Where’sthemagic?
[Customer]
![Page 93: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/93.jpg)
MD*andAgileisinConflict.„ “Project1 Language
Development4
LeadingLWBsaresoproductive,youcanliterallysitwiththedomainexpertsandinteractivelyprototypelanguages(andthencleanuplater)
Analyze Build Tryout
Cleanup
Stabilize
Validate
1to3days
1hour
I’velookedattheimplementationofthe
languageinMPS,butIdidn’tfindmuch.Isthisallthereis?
Where’sthemagic?
[Customer]
![Page 94: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/94.jpg)
Skills?
B
![Page 95: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/95.jpg)
Organizationsdonothavethenecessaryskills.True.But...„ “
AI BigData
R ES T
Sobuiltit.Evolve.Hire.Buy.
![Page 96: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/96.jpg)
Rockets????
M
![Page 97: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/97.jpg)
![Page 98: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/98.jpg)
Furtherdomain-specificextensionstoC.Developedbyend-userlangengineer.
![Page 99: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/99.jpg)
InfrastructureSpecifics inC
![Page 100: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/100.jpg)
InfrastructureSpecifics inC
![Page 101: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/101.jpg)
GeneratedDocumentation
![Page 102: Let‘s build like they build · apps/algos like this, efficiency of algo development is key. Context & Motivation Health care professionals directly „code“ algos, using ... Formulas,](https://reader034.vdocument.in/reader034/viewer/2022042102/5e7fd7ce23e73c5a937ca5f2/html5/thumbnails/102.jpg)
Separationofconcernsiskeytoavoidthelegacytrap
DSLscanisolatebusinesslogiccompletelyfromtechnicalconcerns
DSLscanhelpintegratedomainexpertswithcommunication/revieworevencoding
LanguageWorkbenchesenableDSLsbyreducingefforttobuild,composeandmaintainthem
MigratingtoanewLWBisfeasibleb/csemanticsofallmodelsareknown,bydefinition.