This repository has been archived by the owner on Nov 27, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy paththesis.bib
1212 lines (1118 loc) · 83.9 KB
/
thesis.bib
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
@software{awadBenawadVscodestories2020,
title = {Benawad/Vscode-Stories},
author = {Awad, Ben},
date = {2020-10-31T15:50:43Z},
origdate = {2020-10-29T23:32:51Z},
url = {https://github.com/benawad/vscode-stories},
urldate = {2020-10-31},
abstract = {Stories for VSCode. Contribute to benawad/vscode-stories development by creating an account on GitHub.},
keywords = {example,extension,stories,vscode},
version = {334e1d7}
}
@inproceedings{beckmannVisualDesignTreeoriented2020,
title = {Visual Design for a Tree-Oriented Projectional Editor},
booktitle = {Conference {{Companion}} of the 4th {{International Conference}} on {{Art}}, {{Science}}, and {{Engineering}} of {{Programming}}},
author = {Beckmann, Tom and Ramson, Stefan and Rein, Patrick and Hirschfeld, Robert},
date = {2020-03-23},
pages = {113--119},
publisher = {{ACM}},
location = {{Porto Portugal}},
doi = {10.1145/3397537.3397560},
url = {https://dl.acm.org/doi/10.1145/3397537.3397560},
urldate = {2020-11-14},
abstract = {Projectional editors show promise for a variety of use cases, for example in language composition and domain specific projections. To allow efficient interactions within a projectional editor, it is necessary for the editor to clearly communicate the structure of the program to the user, such that it is clear what editing operations are supported for a given element. Making the abstract syntax tree visible within the editor may provide this clarity, however, it generally also results in considerably increased space usage, potentially also impacting usability. We present an early prototype of a tree-oriented projectional editor for Squeak/Smalltalk that tries to minimize space usage while retaining a clear visualization of the tree structure, balancing the two problems. We describe and discuss our design prototype and do a preliminary evaluation through individual account of experience working with the editor on various projects.},
eventtitle = {{$<$}{{Programming}}{$>$} '20: 4th {{International Conference}} on the {{Art}}, {{Science}}, and {{Engineering}} of {{Programming}}},
file = {C\:\\Users\\krire\\Zotero\\storage\\74M3GAA6\\Beckmann et al. - 2020 - Visual design for a tree-oriented projectional edi.pdf},
isbn = {978-1-4503-7507-8},
keywords = {smalltalk,tree editor},
langid = {english}
}
@inproceedings{borkFrameworkTeachingConceptual2019,
title = {A {{Framework}} for {{Teaching Conceptual Modeling}} and {{Metamodeling Based}} on {{Bloom}}’s {{Revised Taxonomy}} of {{Educational Objectives}}},
author = {Bork, Dominik},
date = {2019-01-08},
doi = {10.24251/HICSS.2019.928},
url = {http://scholarspace.manoa.hawaii.edu/handle/10125/60208},
urldate = {2020-11-18},
abstract = {Conceptual modeling and metamodeling are vital parts in computer and information science study programs at tertiary institutions. Currently, teachers are struggling in ensuring that their teaching approach is comprehensive and in identifying application domains that motivate students, and show that the value of models exceeds pure representative means. This paper uses Bloom’s revised taxonomy of educational objectives as a foundation to define a framework for comprehensive teaching of conceptual modeling and metamodeling. The introduced framework is used to evaluate the comprehensiveness of a Smart City teaching case which has been taught at the Next-generation Enterprise: Modeling in the Digital Age Summer School. The contribution of this paper is threefold: First, a generic framework for comprehensive teaching of conceptual modeling and metamodeling is proposed; Second, a Smart City teaching case is reported; Third, the evaluation of the teaching case leads to a discussion on how to improve teaching of conceptual modeling and metamodeling in the future.},
annotation = {Accepted: 2019-01-03T01:03:54Z},
file = {C\:\\Users\\krire\\Zotero\\storage\\HYFRSU68\\Bork - 2019 - A Framework for Teaching Conceptual Modeling and M.pdf;C\:\\Users\\krire\\Zotero\\storage\\WUU3JL2H\\60208.html},
isbn = {978-0-9981331-2-6},
keywords = {adoption,education},
langid = {english}
}
@inproceedings{boronatCodeFirstModelDrivenEngineering2019,
title = {Code-{{First Model}}-{{Driven Engineering}}: {{On}} the {{Agile Adoption}} of {{MDE Tooling}}},
shorttitle = {Code-{{First Model}}-{{Driven Engineering}}},
booktitle = {2019 34th {{IEEE}}/{{ACM International Conference}} on {{Automated Software Engineering}} ({{ASE}})},
author = {Boronat, A.},
date = {2019-11},
pages = {874--886},
issn = {2643-1572},
doi = {10.1109/ASE.2019.00086},
abstract = {Domain models are the most important asset in widely accepted software development approaches, like Domain-Driven Design (DDD), yet those models are still implicitly represented in programs. Model-Driven Engineering (MDE) regards those models as representable entities that are amenable to automated analysis and processing, facilitating quality assurance while increasing productivity in software development processes. Although this connection is not new, very few approaches facilitate adoption of MDE tooling without compromising existing value, their data. Moreover, switching to MDE tooling usually involves re-engineering core parts of an application, hindering backward compatibility and, thereby, continuous integration, while requiring an up-front investment in training in specialized modeling frameworks. In those approaches that overcome the previous problem, there is no clear indication - from a quantitative point of view - of the extent to which adopting state-of-the-art MDE practices and tooling is feasible or advantageous. In this work, we advocate a code-first approach to modeling through an approach for applying MDE techniques and tools to existing object-oriented software applications that fully preserves the semantics of the original application, which need not be modified. Our approach consists both of a semi-automated method for specifying explicit view models out of existing object-oriented applications and of a conservative extension mechanism that enables the use of such view models at run time, where view model queries are resolved on demand and view model updates are propagated incrementally to the original application. This mechanism enables an iterative, flexible application of MDE tooling to software applications, where metamodels and models do not exist explicitly. An evaluation of this extension mechanism, implemented for Java applications and for view models atop the Eclipse Modeling Framework (EMF), has been conducted with an industry-targeted benchmark for decision support systems, analyzing performance and scalability of the synchronization mechanism. Backward propagation of large updates over very large views is instant.},
eventtitle = {2019 34th {{IEEE}}/{{ACM International Conference}} on {{Automated Software Engineering}} ({{ASE}})},
file = {C\:\\Users\\krire\\Zotero\\storage\\ARNKYVB5\\Boronat - 2019 - Code-First Model-Driven Engineering On the Agile .pdf},
keywords = {agile adoption,automated analysis,Biological system modeling,code-first model-driven engineering,decision support systems,domain model; MDE; EMF; roundtrip synchronization; algebraic specification; performance analysis,domain-driven design,eclipse modeling framework,EMF,explicit view models,Java,MDE tooling,model queries,Object oriented modeling,object-oriented programming,object-oriented software applications,re-engineering core parts,Software,software architecture,software development approaches,software development processes,software quality,Synchronization,Tools,Unified modeling language}
}
@book{brambillaModelDrivenSoftwareEngineering2017,
title = {Model-{{Driven Software Engineering}} in {{Practice}}: {{Second Edition}}},
shorttitle = {Model-{{Driven Software Engineering}} in {{Practice}}},
author = {Brambilla, Marco and Cabot, Jordi and Wimmer, Manuel},
date = {2017},
edition = {2},
publisher = {{Morgan \& Claypool Publishers}},
abstract = {This book discusses how model-based approaches can improve the daily practice of software professionals. This is known as Model-Driven Software Engineering (MDSE) or, simply, Model-Driven Engineering (MDE). MDSE practices have proved to increase efficiency and effectiveness in software development, as demonstrated by various quantitative and qualitative studies. MDSE adoption in the software industry is foreseen to grow exponentially in the near future, e.g., due to the convergence of software development and business analysis. The aim of this book is to provide you with an agile and flexible tool to introduce you to the MDSE world, thus allowing you to quickly understand its basic principles and techniques and to choose the right set of MDSE instruments for your needs so that you can start to benefit from MDSE right away. The book is organized into two main parts. The first part discusses the foundations of MDSE in terms of basic concepts (i.e., models and transformations), driving principles, application scenarios, and current standards, like the well-known MDA initiative proposed by OMG (Object Management Group) as well as the practices on how to integrate MDSE in existing development processes. The second part deals with the technical aspects of MDSE, spanning from the basics on when and how to build a domain-specific modeling language, to the description of Model-to-Text and Model-to-Model transformations, and the tools that support the management of MDSE projects. The second edition of the book features: a set of completely new topics, including: full example of the creation of a new modeling language (IFML), discussion of modeling issues and approaches in specific domains, like business process modeling, user interaction modeling, and enterprise architecture complete revision of examples, figures, and text, for improving readability, understandability, and coherence better formulation of definitions, dependencies between concepts and ideas addition of a complete index of book content In addition to the contents of the book, more resources are provided on the book's website http://www.mdse-book.com, including the examples presented in the book.},
isbn = {978-1-62705-708-0},
keywords = {adoption,mdse},
pagetotal = {208}
}
@inproceedings{bruneliereCombiningModelDrivenEngineering2010,
title = {Combining {{Model}}-{{Driven Engineering}} and {{Cloud Computing}}},
booktitle = {Modeling, {{Design}}, and {{Analysis}} for the {{Service Cloud}} - {{MDA4ServiceCloud}}'10: {{Workshop}}'s 4th Edition (Co-Located with the 6th {{European Conference}} on {{Modelling Foundations}} and {{Applications}} - {{ECMFA}} 2010)},
author = {Bruneliere, Hugo and Cabot, Jordi and Jouault, Frédéric},
date = {2010-06},
location = {{Paris, France}},
url = {https://hal.archives-ouvertes.fr/hal-00539168},
urldate = {2020-11-26},
abstract = {Service-orientation and model-driven engineering are two of the most dominant software engineering paradigms nowadays. This position paper explores the synergies between them and show how they can benefit from each other. In particular, the paper introduces the notion of Modeling as a Service (MaaS) as a way to provide modeling and model-driven engineering services from the cloud.},
file = {C\:\\Users\\krire\\Zotero\\storage\\CXLI8W3Z\\Bruneliere et al. - 2010 - Combining Model-Driven Engineering and Cloud Compu.pdf},
keywords = {adoption,cloud,editor,maas,saas}
}
@article{buchmannConceptualModelingEducation2019,
title = {Conceptual {{Modeling Education}} as a “{{Design Problem}}”},
author = {Buchmann, Robert Andrei and Ghiran, Ana-Maria and Döller, Victoria and Karagiannis, Dimitris},
date = {2019-12-30},
journaltitle = {Complex Systems Informatics and Modeling Quarterly},
volume = {0},
pages = {21--33},
issn = {2255-9922},
doi = {10.7250/csimq.2019-21.02},
url = {https://csimq-journals.rtu.lv/article/view/csimq.2019-21.02},
urldate = {2020-11-18},
abstract = {This article frames Conceptual Modeling education as a design problem, in the sense of the Design Science research framework, motivated by student preconceptions and oversimplifications causing a gap between how the discipline is perceived at the bachelor level and the holistic understanding of model value that is required for research work. The treatment to this design problem must comprise teaching approaches and artifacts capable of positioning Conceptual Modeling as a standalone discipline having a value proposition for any application domain, rather than a technique subordinated to other disciplines. The underpinning thesis is that modeling languages should be primarily understood as purposeful knowledge schemas that can be subjected to agile adaptations in support of model-driven systems or knowledge processes, by analogy to how a database schema is evolved in response to changing requirements of a data-driven system or data analytics needs. This thesis is supported by enablers provided by the Open Models Laboratory and the Agile Modeling Method Engineering framework – resources that support the development of treatments to the design problem framed by the article.},
file = {C\:\\Users\\krire\\Zotero\\storage\\C4UNEPP4\\Buchmann et al. - 2019 - Conceptual Modeling Education as a “Design Problem.pdf;C\:\\Users\\krire\\Zotero\\storage\\JMGKP332\\csimq.2019-21.html},
issue = {21},
keywords = {Agile Modeling Method Engineering,Conceptual Modeling Education,Design Science,OMiLAB,Teaching Artifacts},
langid = {american},
number = {21}
}
@inproceedings{carrascal-manzanaresBuildingMDECloud2015,
title = {Building {{MDE}} Cloud Services with {{DISTIL}}},
booktitle = {International {{Conference}} on {{Model Driven Engineering Languages}} and {{Systems}}},
author = {CARRASCAL-MANZANARES, Carlos and Cuadrado, Jesús Sánchez and de Lara, Juan},
date = {2015-09},
volume = {1563},
pages = {19--24},
location = {{Ottawa, Canada}},
url = {https://hal.archives-ouvertes.fr/hal-01761670},
urldate = {2020-11-26},
abstract = {Model-Driven Engineering (MDE) techniques, like transformations, queries, and code generators, were devised for local, single-CPU architectures. However, the increasing complexity of the systems to be built and their high demands in terms of computation, memory and storage, requires more scalable and flexible MDE techniques, likely using services and the cloud. Nonetheless, the cost of developing MDE solutions on the cloud is high without proper automation mechanisms. In order to alleviate this situation, we present DISTIL, a domain-specific language to describe MDE services, which is able to generate (NoSQL-based) respositories for the artefacts of interest, and skeletons for (single or composite) services, ready to be deployed in Heroku. We illustrate the approach through the construction of a repository and a set of cloud-based services for bento reusable transformation components.},
file = {C\:\\Users\\krire\\Zotero\\storage\\IVFG6CB2\\hal-01761670.html},
keywords = {Cloud Computing,Code Generation,Domain-Specific,Domain-Specific Languages,Index Terms-Model-Driven Engineering,Languages,Model-Driven Engineering,REST services,Service-Oriented Programming},
series = {Model-{{Driven Engineering}} on and for the {{Cloud}}}
}
@online{cheincubatorVscodetheiacomparator,
title = {Vscode-Theia-Comparator},
author = {{Che Incubator}},
url = {https://che-incubator.github.io/vscode-theia-comparator/status.html},
urldate = {2020-10-05},
annotation = {https://github.com/che-incubator/vscode-theia-comparator},
file = {C\:\\Users\\krire\\Zotero\\storage\\D9Y6H6SP\\status.html},
langid = {english},
organization = {{vscode-theia-comparator}}
}
@inproceedings{coulonModularDistributedIDE2020,
title = {Modular and Distributed {{IDE}}},
booktitle = {Proceedings of the 13th {{ACM SIGPLAN International Conference}} on {{Software Language Engineering}}},
author = {Coulon, Fabien and Auvolat, Alex and Combemale, Benoit and Bromberg, Yérom-David and Taïani, François and Barais, Olivier and Plouzeau, Noël},
date = {2020-11-16},
pages = {270--282},
publisher = {{Association for Computing Machinery}},
location = {{New York, NY, USA}},
doi = {10.1145/3426425.3426947},
url = {https://doi.org/10.1145/3426425.3426947},
urldate = {2020-11-26},
abstract = {Integrated Development Environments (IDEs) are indispensable companions to programming languages. They are increasingly turning towards Web-based infrastructure. The rise of a protocol such as the Language Server Protocol (LSP) that standardizes the separation between a language-agnostic IDE, and a language server that provides all language services (e.g., auto completion, compiler...) has allowed the emergence of high quality generic Web components to build the IDE part that runs in the browser. However, all language services require different computing capacities and response times to guarantee a user-friendly experience within the IDE. The monolithic distribution of all language services prevents to leverage on the available execution platforms (e.g., local platform, application server, cloud). In contrast with the current approaches that provide IDEs in the form of a monolithic client-server architecture, we explore in this paper the modularization of all language services to support their individual deployment and dynamic adaptation within an IDE. We evaluate the performance impact of the distribution of the language services across the available execution platforms on four EMF-based languages, and demonstrate the benefit of a custom distribution.},
file = {C\:\\Users\\krire\\Zotero\\storage\\44RUTF2B\\Coulon et al. - 2020 - Modular and distributed IDE.pdf},
isbn = {978-1-4503-8176-5},
keywords = {cloud,editor,Generative approach,IDE,Microservice,theia},
series = {{{SLE}} 2020}
}
@online{CustomWebviewEditor,
title = {Custom Webview Editor {{API}} · {{Issue}} \#77131 · Microsoft/Vscode},
url = {https://github.com/microsoft/vscode/issues/77131},
urldate = {2020-09-29},
abstract = {Updated: April 24, 2020 The Custom Text Editor API has shipped with VS Code 1.44! Checkout the documentation and example extension to get started creating your custom text editors. If you encounter...},
file = {C\:\\Users\\krire\\Zotero\\storage\\63QTC5CT\\77131.html},
langid = {english},
organization = {{GitHub}}
}
@article{dannenbergStructureEfficientUpdate1990,
title = {A Structure for Efficient Update, Incremental Redisplay and Undo in Graphical Editors},
author = {Dannenberg, Roger B.},
date = {1990-02},
journaltitle = {Software: Practice and Experience},
shortjournal = {Softw: Pract. Exper.},
volume = {20},
pages = {109--132},
issn = {00380644, 1097024X},
doi = {10.1002/spe.4380200202},
url = {http://doi.wiley.com/10.1002/spe.4380200202},
urldate = {2020-11-14},
abstract = {The design of a graphical editor requires a solution to a number of problems, including how to (1) support incremental redisplay, (2) control the granularity of display updates, (3) provide efficient access and modification to the underlying data structure, (4) handle multiple views of the same data and (5) support Undo operations. It is most important that these problems be solved without sacrificing program modularity. A new data structure, called an Iternlist, provides a solution to these problems. IternLists maintain both multiple views and multiple versions of data to simplify Undo operations and to support incremental display updates. The implementation of IternLists is described and the use of IternLists to create graphical editors is presented.},
file = {C\:\\Users\\krire\\Zotero\\storage\\JWIA898N\\Dannenberg - 1990 - A structure for efficient update, incremental redi.pdf},
keywords = {data structure,undo},
langid = {english},
number = {2}
}
@unpublished{davidSiriusCon2018Sirius2018,
title = {[{{SiriusCon}} 2018] {{Sirius Roadmap}}},
author = {David, Pierre-Charles and {Obeo}},
date = {2018-12-11},
url = {https://www.slideshare.net/Obeo_corp/siriuscon-2018-sirius-roadmap},
urldate = {2020-10-06},
abstract = {SiriusCon 2018 - Talk by Pierre-Charles David, Obeo Sirius Roadmap {$<$}},
keywords = {eclipse,sirius},
type = {Technology}
}
@online{dirkbaumerProgressSupportLSP2019,
title = {Progress Support in {{LSP}} · {{Issue}} \#786 · Microsoft/Language-Server-Protocol},
author = {{Dirk Bäumer}},
date = {2019-07-03},
url = {https://github.com/microsoft/language-server-protocol/issues/786},
urldate = {2020-09-23},
abstract = {There are two distinct requests in LSP that ask for progress: one to report work done progress on requests so that clients can show a progress monitor one to report partial results on requests that...},
file = {C\:\\Users\\krire\\Zotero\\storage\\RYV4QNAM\\786.html},
keywords = {LSP},
langid = {english},
organization = {{GitHub}}
}
@online{dumaisEclipseTheia2018,
title = {Eclipse {{Theia}}},
author = {Dumais, Marc},
date = {2018-04-12T11:43:07-04:00},
url = {https://projects.eclipse.org/proposals/eclipse-theia},
urldate = {2020-11-26},
file = {C\:\\Users\\krire\\Zotero\\storage\\IRXVF3F4\\eclipse-theia.html},
langid = {english},
organization = {{projects.eclipse.org}},
type = {Text}
}
@software{EclipseemfcloudEcoreglsp2020,
title = {Eclipse-Emfcloud/Ecore-Glsp},
date = {2020-09-23T18:56:50Z},
origdate = {2020-06-03T14:19:56Z},
url = {https://github.com/eclipse-emfcloud/ecore-glsp},
urldate = {2020-09-29},
abstract = {ecore-glsp. Contribute to eclipse-emfcloud/ecore-glsp development by creating an account on GitHub.},
organization = {{eclipse-emfcloud}}
}
@software{EclipseemfcloudTheiatreeeditor2020,
ids = {EclipseemfcloudTheiatreeeditor2020a,EclipseemfcloudTheiatreeeditor2020b},
title = {Eclipse-Emfcloud/Theia-Tree-Editor},
date = {2020-09-17T16:13:35Z},
origdate = {2020-05-25T15:40:13Z},
url = {https://github.com/eclipse-emfcloud/theia-tree-editor},
urldate = {2020-09-29},
abstract = {theia-tree-editor. Contribute to eclipse-emfcloud/theia-tree-editor development by creating an account on GitHub.},
keywords = {emf,theia,tree},
organization = {{eclipse-emfcloud}}
}
@online{eclipsefoundationEclipseGLSP,
title = {Eclipse {{GLSP}}},
author = {{Eclipse Foundation}},
url = {https://projects.eclipse.org/proposals/eclipse-glsp},
urldate = {2020-09-29},
file = {C\:\\Users\\krire\\Zotero\\storage\\SGU45Z74\\eclipse-glsp.html},
keywords = {eclipse,glsp,lsp},
langid = {english},
organization = {{Eclipse GLSP}}
}
@online{eclipsefoundationEclipseglspGlspclient,
title = {Eclipse-Glsp/Glsp-Client},
shorttitle = {{{GLSP}} Client},
author = {{Eclipse Foundation}},
url = {https://github.com/eclipse-glsp/glsp-client},
urldate = {2020-09-29},
abstract = {Web-based client framework of the graphical language server platform - eclipse-glsp/glsp-client},
file = {C\:\\Users\\krire\\Zotero\\storage\\YE2YX6J7\\protocol.html},
keywords = {eclipse,glsp,lsp},
langid = {english},
organization = {{glsp-client - GitHub}}
}
@online{eclipsefoundationGLSP2020,
title = {{{GLSP}}},
author = {{Eclipse Foundation}},
date = {2020},
url = {https://www.eclipse.org/glsp/},
urldate = {2020-09-29},
abstract = {Diagram editors in the web/cloud with GLSP!},
file = {C\:\\Users\\krire\\Zotero\\storage\\ACUSGSYD\\glsp.html},
keywords = {eclipse,glsp,lsp,theia},
organization = {{GLSP}}
}
@online{EclipseGLSPCommunity,
title = {Eclipse {{GLSP}} Community},
url = {https://spectrum.chat/glsp/?tab=posts},
urldate = {2020-10-05},
abstract = {The graphical language server platform (GLSP) provides extensible components to enable the development of diagram editors in web-applications via a…},
langid = {english},
organization = {{Spectrum}}
}
@software{EclipseglspGlsp2020,
title = {Eclipse-Glsp/Glsp},
date = {2020-09-23T07:26:36Z},
origdate = {2019-10-31T15:14:15Z},
url = {https://github.com/eclipse-glsp/glsp},
urldate = {2020-10-05},
abstract = {Graphical language server platform for building web-based diagram editors},
keywords = {diagram,diagram-editors,glsp,graphical-models,lsp,lsp-server,protocol,sprotty,theia,theia-extension},
organization = {{eclipse-glsp}}
}
@online{EclipseglspGlspserver,
title = {Eclipse-Glsp/Glsp-Server},
url = {https://github.com/eclipse-glsp/glsp-server},
urldate = {2020-10-05},
abstract = {Java-based server framework of the graphical language server platform - eclipse-glsp/glsp-server},
file = {C\:\\Users\\krire\\Zotero\\storage\\VD49JGLX\\kind.html},
langid = {english},
organization = {{GitHub}}
}
@online{eclipsesourceEMFFormsEditors2016,
title = {{{EMF Forms Editors}}},
author = {{Eclipsesource}},
date = {2016-02},
url = {https://eclipsesource.com/blogs/tutorials/emf-forms-editors/},
urldate = {2020-11-11},
abstract = {EMF Forms provides three ready-to-use editors, which can be integrated into any kind of Eclipse IDE or RCP application: The Generic...},
file = {C\:\\Users\\krire\\Zotero\\storage\\HADGHSQT\\emf-forms-editors.html},
keywords = {ecore,emf,emf forms},
langid = {american},
organization = {{EclipseSource}}
}
@software{EclipsesourceGraphicalServerProtocol2019,
title = {Eclipsesource/{{GraphicalServerProtocol}}},
date = {2019-03-14T11:29:38Z},
origdate = {2018-09-19T14:54:08Z},
url = {https://github.com/eclipsesource/GraphicalServerProtocol},
urldate = {2020-10-05},
abstract = {Graphical Server Protocol. Contribute to eclipsesource/GraphicalServerProtocol development by creating an account on GitHub.},
organization = {{EclipseSource}}
}
@online{EMFTutorial,
title = {{{EMF Tutorial}}},
url = {https://eclipsesource.com/blogs/tutorials/emf-tutorial/},
urldate = {2020-10-06},
abstract = {What every Eclipse developer should know about EMF This tutorial is an introduction to EMF and explains the basics of EMF....},
file = {C\:\\Users\\krire\\Zotero\\storage\\USVCAFS9\\emf-tutorial.html},
keywords = {eclipse,ecore,emf},
langid = {american},
organization = {{EclipseSource}}
}
@software{eugenneufeldEclipsesourceCoffeeeditor2020,
title = {Eclipsesource/Coffee-Editor},
shorttitle = {Coffee-Editor},
author = {{Eugen Neufeld} and {Lucal Koehler} and {Martin Fleck} and {Philip Langer} and {Tobias Ortmayr} and {et.al.}},
date = {2020-10-05T08:27:55Z},
origdate = {2018-06-27T08:41:28Z},
url = {https://github.com/eclipsesource/coffee-editor},
urldate = {2020-10-06},
abstract = {An example of how to build the Theia-based tools including graphical editos, form-based editors, tree-based editors, textual DSLs, model analyisis, debugging and more. The coffee editor is part of the emf.cloud project. Please visit the emf.cloud home page for an overview of all features and an online live demonstration!},
keywords = {coffee,coffee-editor,glsp,theia},
organization = {{EclipseSource}},
version = {f9d73c4}
}
@online{ExtensionsCapabilitiesOverview,
title = {Extensions {{Capabilities Overview}}},
url = {https://code.visualstudio.com/api/extension-capabilities/overview},
urldate = {2020-10-29},
abstract = {Learn the details of what's possible with Visual Studio Code's rich extension (plug-in) API.},
file = {C\:\\Users\\krire\\Zotero\\storage\\JPXUTFVP\\overview.html},
keywords = {extension,vscode},
langid = {english}
}
@inproceedings{forwardProblemsOpportunitiesModelcentric2008,
title = {Problems and Opportunities for Model-Centric versus Code-Centric Software Development: A Survey of Software Professionals},
shorttitle = {Problems and Opportunities for Model-Centric versus Code-Centric Software Development},
booktitle = {Proceedings of the 2008 International Workshop on {{Models}} in Software Engineering},
author = {Forward, Andrew and Lethbridge, Timothy C.},
date = {2008-05-10},
pages = {27--32},
publisher = {{Association for Computing Machinery}},
location = {{New York, NY, USA}},
doi = {10.1145/1370731.1370738},
url = {https://doi.org/10.1145/1370731.1370738},
urldate = {2020-11-26},
abstract = {We present some results of a survey of 113 software practitioners conducted between April and December 2007. The aim of the survey was to uncover their attitudes and experiences regarding software modeling, and development approaches that avoid modeling. We were motivated by observations that modeling is not widely adopted; many developers continue to take a code-centric approach. Key findings overall include: Modeling tools are primarily used to create documentation and for up-front design with little code generation; and participants believe that model-centric approaches to software engineering are easier but are currently not very popular as most participants currently work in code-centric environments. Key findings from sub-samples include: problems identified with model-centric approaches are similar regardless of a participant's country. Programmers that model extensively (versus those that do not model much) are more likely to agree that models become out of date and inconsistent with code.},
file = {C\:\\Users\\krire\\Zotero\\storage\\RIEK4LU4\\Forward and Lethbridge - 2008 - Problems and opportunities for model-centric versu.pdf},
isbn = {978-1-60558-025-8},
keywords = {adoption,attitudes,empirical study,questionnaire,software modeling,software practitioners,survey},
series = {{{MiSE}} '08}
}
@online{gronbackEclipseModelingProject,
title = {Eclipse {{Modeling Project}} | {{The Eclipse Foundation}}},
author = {Gronback, Richard},
url = {https://www.eclipse.org/modeling/emf/},
urldate = {2020-10-06},
abstract = {The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 375 open source projects, including runtimes, tools and frameworks.},
file = {C\:\\Users\\krire\\Zotero\\storage\\LJJSPECU\\emf.html},
keywords = {eclipse,ecore,emf},
langid = {english}
}
@online{hannesvogtProvideDependencyGraph2020,
title = {Provide a Dependency Graph via an Existing Language Server · {{Eclipse GLSP}}},
author = {{Hannes Vogt} and {Philip Langer}},
date = {2020-02-20T08:22:20.711Z},
url = {https://spectrum.chat/glsp/general/provide-a-dependency-graph-via-an-existing-language-server~f4d2cf0d-b795-4d8c-88a5-b275e71fdd01},
urldate = {2020-10-05},
abstract = {Hi! I try to understand if GLSP would be a good approach to visualize a dependency graph in my language server. It's a bit hard to understand how the different…},
file = {C\:\\Users\\krire\\Zotero\\storage\\6WPU6FKX\\provide-a-dependency-graph-via-an-existing-language-server~f4d2cf0d-b795-4d8c-88a5-b275e71fdd01.html},
keywords = {glsp},
langid = {english},
organization = {{Spectrum}}
}
@online{helmingEclipseCheVs2018,
title = {Eclipse {{Che}} vs. {{Eclipse Theia}}},
author = {Helming, Jonas and Koegel, Maximilian},
date = {2018-12-03T10:34:54+00:00},
url = {https://eclipsesource.com/blogs/2018/12/03/eclipse-che-vs-eclipse-theia/},
urldate = {2020-10-05},
abstract = {In this article, we compare Eclipse Che with Eclipse Theia and explain their relationship – their differences and their overlap. In...},
file = {C\:\\Users\\krire\\Zotero\\storage\\YMBEC5EK\\eclipse-che-vs-eclipse-theia.html},
langid = {american},
organization = {{EclipseSource}}
}
@online{helmingEclipseTheiaExtensions2019,
title = {Eclipse {{Theia}} Extensions vs. Plugins vs. {{Che}}-{{Theia}} Plugins},
author = {Helming, Jonas and Koegel, Maximilian},
date = {2019-10-10T13:40:57+00:00},
url = {https://eclipsesource.com/blogs/2019/10/10/eclipse-theia-extensions-vs-plugins-vs-che-theia-plugins/},
urldate = {2020-10-05},
abstract = {This article compares Eclipse Theia extensions to Eclipse Theia plugins, Che-Theia plugins and VS Code extensions/plugins},
file = {C\:\\Users\\krire\\Zotero\\storage\\TBHWIL3X\\eclipse-theia-extensions-vs-plugins-vs-che-theia-plugins.html},
langid = {american},
organization = {{EclipseSource}}
}
@online{helmingEclipseTheiaIDE2019a,
ids = {helmingEclipseTheiaIDE2019},
title = {The {{Eclipse Theia IDE}} vs. {{VS Code}}},
author = {Helming, Jonas and Koegel, Maximilian},
date = {2019-12-06T11:55:09+00:00},
url = {https://eclipsesource.com/blogs/2019/12/06/the-eclipse-theia-ide-vs-vs-code/},
urldate = {2020-10-05},
abstract = {In this article, we compare the Eclipse Theia IDE with VS Code. This comparison includes the usability concept, the technology stack, the ecosystem, the existibility and even more criteria.},
file = {C\:\\Users\\krire\\Zotero\\storage\\HM2XHC9T\\the-eclipse-theia-ide-vs-vs-code.html;C\:\\Users\\krire\\Zotero\\storage\\I4KIBFCG\\the-eclipse-theia-ide-vs-vs-code.html},
langid = {american},
organization = {{EclipseSource}}
}
@online{helmingHowCreateDevelop2019,
title = {How to Create/Develop an {{Eclipse Theia IDE}} Extension},
author = {Helming, Jonas and Koegel, Maximilian},
date = {2019-11-21T09:05:23+00:00},
url = {https://eclipsesource.com/blogs/2019/11/21/how-to-create-develop-an-eclipse-theia-ide-extension/},
urldate = {2020-10-05},
abstract = {This article provides an overview on how to extend the Eclipse Theia IDE with custom Theia extensions.},
file = {C\:\\Users\\krire\\Zotero\\storage\\RXR7T7AL\\how-to-create-develop-an-eclipse-theia-ide-extension.html},
keywords = {extension,theia},
langid = {american},
organization = {{EclipseSource}}
}
@online{helmingHowInversifyEclipse2018,
title = {How to Inversify() in {{Eclipse Theia}}},
author = {Helming, Jonas and Koegel, Maximilian},
date = {2018-11-28T09:15:49+00:00},
url = {https://eclipsesource.com/blogs/2018/11/28/how-to-inversify-in-eclipse-theia/},
urldate = {2020-10-05},
abstract = {In this article we will describe the basic concepts of dependency injection in Eclipse Theia using inversify. Dependency injection is used...},
file = {C\:\\Users\\krire\\Zotero\\storage\\4EV4D99Z\\how-to-inversify-in-eclipse-theia.html},
keywords = {di,inversify,theia},
langid = {american},
organization = {{EclipseSource}}
}
@online{helmingWebbasedModelingTool2020,
title = {A Web-Based Modeling Tool Based on {{Eclipse Theia}}},
author = {Helming, Jonas and {Maximilian Koegel}},
date = {2020-07-24T08:20:24+00:00},
url = {https://eclipsesource.com/blogs/2020/07/24/a-web-based-modeling-tool-based-on-eclipse-theia/},
urldate = {2020-09-29},
abstract = {Learn how to design and implement web- and cloud-based tools, domain-specific tools and modeling tools based on Eclipse Theia},
file = {C\:\\Users\\krire\\Zotero\\storage\\UA5GWNQE\\a-web-based-modeling-tool-based-on-eclipse-theia.html},
keywords = {eclipse,glsp,lsp,theia},
langid = {american},
organization = {{EclipseSource}}
}
@online{helmingWebbasedModelingTools2020,
title = {Web-Based Modeling Tools Built with {{Eclipse}} Technologies},
author = {Helming, Jonas},
date = {2020-01-07T09:17:35+00:00},
url = {http://modeling-languages.com/web-based-modeling-with-eclipse/},
urldate = {2020-10-05},
abstract = {Overview of the latest developments and project announcements around building web- and cloud-based modeling tools in the Eclipse ecosystem.},
file = {C\:\\Users\\krire\\Zotero\\storage\\X2I6KLPX\\web-based-modeling-with-eclipse.html},
langid = {american},
organization = {{Modeling Languages}}
}
@online{helmingWelcomeEclipseTheia2018,
title = {Welcome (at {{Eclipse}}), {{Theia}}!},
author = {Helming, Jonas and Koegel, Maximilian},
date = {2018-06-20T10:35:29+00:00},
url = {https://eclipsesource.com/blogs/2018/06/20/welcome-at-eclipse-theia/},
urldate = {2020-10-05},
abstract = {In this article, we provide an overview about Eclipse Theia, an open source platform to build web- and cloud-based IDEs and...},
file = {C\:\\Users\\krire\\Zotero\\storage\\HB4AZUU2\\welcome-at-eclipse-theia.html},
langid = {american},
organization = {{EclipseSource}}
}
@inproceedings{hutchinsonEmpiricalAssessmentMDE2011,
title = {Empirical Assessment of {{MDE}} in Industry},
booktitle = {Proceedings of the 33rd {{International Conference}} on {{Software Engineering}}},
author = {Hutchinson, John and Whittle, Jon and Rouncefield, Mark and Kristoffersen, Steinar},
date = {2011-05-21},
pages = {471--480},
publisher = {{Association for Computing Machinery}},
location = {{New York, NY, USA}},
doi = {10.1145/1985793.1985858},
url = {https://doi.org/10.1145/1985793.1985858},
urldate = {2020-11-17},
abstract = {This paper presents some initial results from a twelve-month empirical research study of model driven engineering (MDE). Using largely qualitative questionnaire and interview methods we investigate and document a range of technical, organizational and social factors that apparently influence organizational responses to MDE: specifically, its perception as a successful or unsuccessful organizational intervention. We then outline a range of lessons learned. Whilst, as with all qualitative research, these lessons should be interpreted with care, they should also be seen as providing a greater understanding of MDE practice in industry, as well as shedding light on the varied, and occasionally surprising, social, technical and organizational factors that affect success and failure. We conclude by suggesting how the next phase of the research will attempt to investigate some of these issues from a different angle and in greater depth.},
file = {C\:\\Users\\krire\\Zotero\\storage\\XET6F8QH\\Hutchinson et al. - 2011 - Empirical assessment of MDE in industry.pdf},
isbn = {978-1-4503-0445-0},
keywords = {adoption,empirical software engineering,industry,model driven engineering},
series = {{{ICSE}} '11}
}
@inproceedings{jacomeSoftwareDevelopmentTools2017,
title = {Software {{Development Tools}} in {{Model}}-{{Driven Engineering}}},
author = {Jácome, Santiago and Ferreira, Juan and Corral-Diaz, Maria},
date = {2017-10-25},
doi = {10.1109/CONISOFT.2017.00024},
abstract = {Model-Driven Engineering (MDE) is a software development approach that considers the systematic use of models to develop software rather than using general purpose programming languages. The development of MDE based on Domain-Specific Languages (DSLs) covers two stages. The first, the creation of a set of artifacts such as DSLs, model transformation mechanisms, code generators. A second stage, where people do not necessarily with computer training using the artifacts created, develop applications simply because of the high level of abstraction allowed by technology. However, there are several obstacles that need to be overcome in order for this new approach to software development to be widely used. One of them, the lack of knowledge of tools and the development process with MDE. In order to minimize this problem, in the present work a categorization and description of the main environments and tools used in MDE are carried out. Using some of the tools analyzed also points out the process of creating a DSL. keywords-Model-Driven Engineering; software development tools, models; MDE; DSL},
file = {C\:\\Users\\krire\\Zotero\\storage\\C5GXPXKM\\Jácome et al. - 2017 - Software Development Tools in Model-Driven Enginee.pdf}
}
@online{jonashelmingGraphicalLanguageServer2019,
title = {The {{Graphical Language Server Platform}}/{{Protocol}} - {{EclipseSource}}},
author = {{Jonas Helming} and {Maximilian Koegel}},
date = {2019-11-04},
url = {https://eclipsesource.com/blogs/2019/11/04/introducing-the-graphical-language-server-protocol-platform-eclipse-glsp/},
urldate = {2020-09-29},
file = {C\:\\Users\\krire\\Zotero\\storage\\BSQCXXBL\\introducing-the-graphical-language-server-protocol-platform-eclipse-glsp.html},
organization = {{EclipseSource}}
}
@online{jonashelmingGraphicalLanguageServer2019a,
title = {The {{Graphical Language Server Platform}}/{{Protocol}}},
author = {{Jonas Helming} and Koegel, Maximilian},
date = {2019-11-04T11:26:05+00:00},
url = {https://eclipsesource.com/blogs/2019/11/04/introducing-the-graphical-language-server-protocol-platform-eclipse-glsp/},
urldate = {2020-10-05},
abstract = {GLSP allows building web-based, browser-based or cloud-based diagram editors for graphical (modeling) languages and migrating existing diagrams to the web.},
file = {C\:\\Users\\krire\\Zotero\\storage\\4C7I32A6\\introducing-the-graphical-language-server-protocol-platform-eclipse-glsp.html},
langid = {american},
organization = {{EclipseSource}}
}
@article{jonwhittleTaxonomyToolrelatedIssues2015,
title = {A Taxonomy of Tool-Related Issues Affecting the Adoption of Model-Driven Engineering},
author = {{Jon Whittle} and {John Hitchinson} and {Mark Rouncefield} and {Håkan Burden} and {Rogard Heldal}},
date = {2015},
doi = {10.1007/s10270-015-0487-8},
abstract = {Although poor tool support is often blamed for the low uptake of model-driven engineering (MDE), recent studies have shown that adoption problems are as likely to be down to social and organizational factors as with tooling issues. This article discusses the impact of tools on MDE adoption and practice and does so while placing tooling within a broader organizational context. The article revisits previous data on MDE use in industry (19 in-depth interviews with MDE practitioners) and reanalyzes that data through the specific lens of MDE tools in an attempt to identify and categorize the issues that users had with the tools they adopted. In addition, the article presents new data: 20 new interviews in two specific companies—and analyzes it through the same lens. A key contribution of the paper is a loose taxonomy of tool-related considerations, based on empirical industry data, which can be used to reflect on the tooling landscape as well as inform future research on MDE tools.},
file = {C\:\\Users\\krire\\Zotero\\storage\\6JID5XLK\\Whittle2017_Article_ATaxonomyOfTool-relatedIssuesA.pdf},
keywords = {adoption}
}
@online{json-rpcworkinggroupJSONRPCSpecification2010,
title = {{{JSON}}-{{RPC}} 2.0 {{Specification}}},
shorttitle = {{{JSON}}-{{RPC Specification}}},
author = {{JSON-RPC Working Group}},
date = {2010-03-26},
url = {https://www.jsonrpc.org/specification},
urldate = {2020-09-23},
file = {C\:\\Users\\krire\\Zotero\\storage\\7XIIR72E\\specification.html},
keywords = {JSON-RPC,LSP},
langid = {english}
}
@inproceedings{kahaniProblemsEclipseModeling2016,
title = {The Problems with Eclipse Modeling Tools: A Topic Analysis of Eclipse Forums},
shorttitle = {The Problems with Eclipse Modeling Tools},
booktitle = {Proceedings of the {{ACM}}/{{IEEE}} 19th {{International Conference}} on {{Model Driven Engineering Languages}} and {{Systems}}},
author = {Kahani, Nafiseh and Bagherzadeh, Mojtaba and Dingel, Juergen and Cordy, James R.},
date = {2016-10-02},
pages = {227--237},
publisher = {{Association for Computing Machinery}},
location = {{New York, NY, USA}},
doi = {10.1145/2976767.2976773},
url = {https://doi.org/10.1145/2976767.2976773},
urldate = {2020-11-17},
abstract = {Eclipse offers a wide range of tools supporting various aspects of modeling and Model-Driven Engineering (MDE). Arguably, the Eclipse ecosystem has been and continues to be one of the most important modeling tool repositories and sources of information about these tools, with, for example, more than 180,000 posts in the modeling forums since 2002. In this paper, we collect and analyze the content of the 30 most widely used Eclipse forums associated with different modeling and MDE tools, such as EMF, Xtext, ATL, Epsilon, and GMF. Using state-of-the-art text mining techniques coupled with manual analysis, we explore these forums with respect to two important questions: What are the primary issues, problems, and challenges raised in the use of these tools? And, perhaps even more important: Which of these issues are most commonly faced by "newbies" in the MDE community? Our study provides supporting evidence for some commonly held but unproven beliefs, such that plug-ins and documentation issues are the most common, and suggests which issues actually present the biggest "barriers to entry" for new users of MDE tools, and how they might be addressed.},
file = {C\:\\Users\\krire\\Zotero\\storage\\5MEPMEGF\\Kahani et al. - 2016 - The problems with eclipse modeling tools a topic .pdf},
isbn = {978-1-4503-4321-3},
keywords = {adoption,eclipse,ecore,emf,model-driven engineering (MDE),topic analysis},
series = {{{MODELS}} '16}
}
@inproceedings{karrerRequirementsExtensibleObjectoriented1990,
title = {Requirements for an Extensible Object-Oriented Tree/Graph Editor},
booktitle = {Proceedings of the 3rd Annual {{ACM SIGGRAPH}} Symposium on {{User}} Interface Software and Technology - {{UIST}} '90},
author = {Karrer, Anthony and Scacchi, Walt},
date = {1990},
pages = {84--91},
publisher = {{ACM Press}},
location = {{Snowbird, Utah, United States}},
doi = {10.1145/97924.97934},
url = {http://portal.acm.org/citation.cfm?doid=97924.97934},
urldate = {2020-11-14},
eventtitle = {The 3rd Annual {{ACM SIGGRAPH}} Symposium},
file = {C\:\\Users\\krire\\Zotero\\storage\\EJ62ZZ46\\Karrer and Scacchi - 1990 - Requirements for an extensible object-oriented tre.pdf},
isbn = {978-0-89791-410-9},
keywords = {editor,graph editor,requirements,tree editor},
langid = {english}
}
@online{koegelEMFDosDon2013,
title = {{{EMF Dos}} and {{Don}}´ts \#9},
author = {Koegel, Maximilian},
date = {2013-05-16T10:54:39+00:00},
url = {https://eclipsesource.com/blogs/2013/05/16/emf-dos-and-donts-9/},
urldate = {2020-11-11},
abstract = {EMF is a very powerful framework and with power comes…responsibility. You can achieve great things with a minimum of effort using...},
file = {C\:\\Users\\krire\\Zotero\\storage\\8QYXSVDZ\\emf-dos-and-donts-9.html},
keywords = {ecore,emf,tree view},
langid = {american},
organization = {{EclipseSource}}
}
@inproceedings{kolovosAssessingUseEclipse2015,
title = {Assessing the {{Use}} of {{Eclipse MDE Technologies}} in {{Open}}-{{Source Software Projects}}},
author = {Kolovos, Dimitrios and Matragkas, Nicholas and Korkontzelos, Ioannis and Ananiadou, Sophia and Paige, Richard},
date = {2015-09-01},
abstract = {We assess the use of several Eclipse-based Model-Driven Engineering technologies (e.g. EMF, GMF, Xtext, Sirius, ATL, QVTO, Epsilon) in open-source software development projects hosted on GitHub. We discuss our data collection and analysis methodology, and present a number of findings related to the extent to which such technologies appear to be used in open-source projects on GitHub. Our study has revealed, among others, a significant number of GitHub repositories that make use of such technologies and a substantial community of increasingly active MDE-literate developers.},
file = {C\:\\Users\\krire\\Zotero\\storage\\Z5UUM2C9\\Kolovos et al. - 2015 - Assessing the Use of Eclipse MDE Technologies in O.pdf},
keywords = {adoption,eclipse,ecore,emf,github}
}
@inproceedings{kuhnExploratoryStudyForces2012,
title = {An {{Exploratory Study}} of {{Forces}} and {{Frictions Affecting Large}}-{{Scale Model}}-{{Driven Development}}},
booktitle = {Model {{Driven Engineering Languages}} and {{Systems}}},
author = {Kuhn, Adrian and Murphy, Gail C. and Thompson, C. Albert},
editor = {France, Robert B. and Kazmeier, Jürgen and Breu, Ruth and Atkinson, Colin},
date = {2012},
pages = {352--367},
publisher = {{Springer}},
location = {{Berlin, Heidelberg}},
doi = {10.1007/978-3-642-33666-9_23},
abstract = {In this paper, we investigate model-driven engineering, reporting on an exploratory case-study conducted at a large automotive company. The study consisted of interviews with 20 engineers and managers working in different roles. We found that, in the context of a large organization, contextual forces dominate the cognitive issues of using model-driven technology. The four forces we identified that are likely independent of the particular abstractions chosen as the basis of software development are the need for diffing in software product lines, the needs for problem-specific languages and types, the need for live modeling in exploratory activities, and the need for point-to-point traceability between artifacts. We also identified triggers of accidental complexity, which we refer to as points of friction introduced by languages and tools. Examples of the friction points identified are insufficient support for model diffing, point-to-point traceability, and model changes at runtime.},
file = {C\:\\Users\\krire\\Zotero\\storage\\G63BCN2A\\Kuhn et al. - 2012 - An Exploratory Study of Forces and Frictions Affec.pdf},
isbn = {978-3-642-33666-9},
keywords = {adoption,Domain Expert,industry,Software Development Process,Software Product Line,Test Engineer,Visual Language},
langid = {english},
series = {Lecture {{Notes}} in {{Computer Science}}}
}
@inproceedings{kuzniarzTeachingModelDrivenSoftware2016,
title = {Teaching {{Model}}-{{Driven Software Development}}: {{A Pilot Study}}},
shorttitle = {Teaching {{Model}}-{{Driven Software Development}}},
booktitle = {Proceedings of the 2016 {{ITiCSE Working Group Reports}}},
author = {Kuzniarz, Ludwik and Martins, Luiz Eduardo G.},
date = {2016-07-09},
pages = {45--56},
publisher = {{Association for Computing Machinery}},
location = {{New York, NY, USA}},
doi = {10.1145/3024906.3024909},
url = {https://doi.org/10.1145/3024906.3024909},
urldate = {2020-11-26},
abstract = {Software development is a process starting with specification of requirements, then providing design of the required software and implementing the design. Introducing understanding of the process and teaching the skills required for conducting the process is an important learning objective in any CS/SE curriculum. Recently a new paradigm -- model-driven software development - has been introduced and extensively used in order to manage increasing complexity in the development of software. We want to investigate and discuss the state-of-the-practice of teaching MDSD and further to provide suggestions on what to include in the teaching curricula and how to teach MDSD in a proper way. The paper presents the results of the work performed by the ITiCSE 2016 "Teaching Model-Driven Software Development" working group. The objective for the work performed at ITiCSE was to elaborate on a foreseen survey based framework for the research by performing a pilot study using the framework. The pilot study was supposed to validate the framework by performing the initial survey, presenting the results, drawing conclusions from the results but also to find out necessary changes and modifications for the research framework so that it could be used for further more extensive research.},
file = {C\:\\Users\\krire\\Zotero\\storage\\HP689S85\\Kuzniarz and Martins - 2016 - Teaching Model-Driven Software Development A Pilo.pdf},
isbn = {978-1-4503-4882-9},
keywords = {adoption,mdse,Model-driven software development,software engineering education},
series = {{{ITiCSE}} '16}
}
@inproceedings{lafontantGentlemanLightweightWebbased2020,
ids = {lafontantGentlemanLightweightWebbased2020a},
title = {Gentleman: A Light-Weight Web-Based Projectional Editor Generator},
shorttitle = {Gentleman},
booktitle = {Proceedings of the 23rd {{ACM}}/{{IEEE International Conference}} on {{Model Driven Engineering Languages}} and {{Systems}}: {{Companion Proceedings}}},
author = {Lafontant, Louis-Edouard and Syriani, Eugene},
date = {2020-10-16},
pages = {1--5},
publisher = {{ACM}},
location = {{Virtual Event Canada}},
doi = {10.1145/3417990.3421998},
url = {https://dl.acm.org/doi/10.1145/3417990.3421998},
urldate = {2020-11-17},
abstract = {In the activity of software development and modeling, users should benefit from as much freedom as possible to express themselves, and this characteristic also extends to the tools they use. In recent years, projectional editors have proven to be a valid approach to obtain such capabilities by enabling language extension and composition and various notations. However, current solutions are heavyweight, platform-specific, and suffer from poor usability. To better support this paradigm and minimize the risk of arbitrary and accidental constraints in expressivity, we introduce Gentleman, a lightweight web-based projectional editor generator. Gentleman allows the user to define a model and projections for its concepts, and use the generated editor to create the model instances. We demonstrate how to define a projectional editor for Mindmap modeling, covering model definition, text and table projection, multi-projection, and styling to showcase its main features.},
eventtitle = {{{MODELS}} '20: {{ACM}}/{{IEEE}} 23rd {{International Conference}} on {{Model Driven Engineering Languages}} and {{Systems}}},
file = {C\:\\Users\\krire\\Zotero\\storage\\EPKBLSBJ\\Lafontant and Syriani - 2020 - Gentleman a light-weight web-based projectional e.pdf;C\:\\Users\\krire\\Zotero\\storage\\JREN4UM3\\Lafontant and Syriani - 2020 - Gentleman a light-weight web-based projectional e.pdf},
isbn = {978-1-4503-8135-2},
keywords = {ecore,projectional editor},
langid = {english}
}
@online{lajmiModelingBrowserWhat2016,
title = {Modeling in the {{Browser}}: {{What DSL Forge}} Gives for Free},
shorttitle = {Modeling in the {{Browser}}},
author = {Lajmi, Amine},
date = {2016-04-14T03:54:58+00:00},
url = {https://modeling-languages.com/modeling-browser-dsl-forge/},
urldate = {2020-11-14},
abstract = {A web front-end for your modeling software thanks to this technology to develop domain-specific language editors for web apps and cloud IDEs},
file = {C\:\\Users\\krire\\Zotero\\storage\\J2G7CBQD\\modeling-browser-dsl-forge.html},
keywords = {cloud ide,dsl,web},
langid = {american},
organization = {{Modeling Languages}}
}
@incollection{markusvolterFrameworkbasierteGUIEntwicklung2004,
title = {Framework-Basierte {{GUI Entwicklung}}},
author = {{Markus Völter}},
date = {2004-05-10},
url = {http://www.voelter.de/data/pub/GUIEntwicklungKapitel.pdf},
urldate = {2020-11-14},
file = {C\:\\Users\\krire\\Zotero\\storage\\QJWH32YF\\GUIEntwicklungKapitel.pdf}
}
@online{martinfowlerLanguageWorkbenchesKillerApp2005,
title = {Language {{Workbenches}}: {{The Killer}}-{{App}} for {{Domain Specific Languages}}?},
shorttitle = {Language {{Workbenches}}},
author = {{Martin Fowler}},
date = {2005-06-12},
url = {https://martinfowler.com/articles/languageWorkbench.html},
urldate = {2020-11-14},
abstract = {Most new ideas in software developments are really new variations on old ideas. This article describes one of these, the growing idea of a class of tools that I call Language Workbenches - examples of which include Intentional Software, JetBrains's Meta Programming System, and Microsoft's Software Factories. These tools take an old style of development - which I call language oriented programming and use IDE tooling in a bid to make language oriented programming a viable approach. Although I'm not enough of a prognosticator to say whether they will succeed in their ambition, I do think that these tools are some of the most interesting things on the horizon of software development. Interesting enough to write this essay to try to explain, at least in outline, how they work and the main issues around their future usefulness.},
file = {C\:\\Users\\krire\\Zotero\\storage\\56Q4C5ND\\languageWorkbench.html},
keywords = {dsl,editor,projectional editing,workbench},
langid = {english},
organization = {{martinfowler.com}}
}
@online{martinfowlerLanguageWorkbenchesModel2005,
title = {Language {{Workbenches}} and {{Model Driven Architecture}}},
author = {{Martin Fowler}},
date = {2005-06-12},
url = {https://martinfowler.com/articles/mdaLanguageWorkbench.html},
urldate = {2020-11-14},
abstract = {There's been a recent surge in development of tools that allow you integrate between multiple Domain Specific Languages (DSL) - tools that I refer to as language workbenches. Much of the discussion around language workbenches is very similar to the discussion around the Object Management Group's Model Driven Architecture (MDA). In my view the MDA means different things to different people - and this effects how we view the relationship between MDA and language workbenches. Certainly there groups of MDA practitioners who are using MDA ideas to build a language workbench. However my feeling is that the help MDA provides is partial, at best. A broader school of Model Driven Development (MDD) echoes many of these ideas without the links to the MDA standards - this is something that is very much in line with the ideas of a language workbench.},
file = {C\:\\Users\\krire\\Zotero\\storage\\8REWTSP2\\mdaLanguageWorkbench.html},
keywords = {language workbench,mda,mof,uml},
langid = {english},
organization = {{martinfowler.com}}
}
@online{martinfowlerProjectionalEditing2008,
title = {{{ProjectionalEditing}}},
shorttitle = {{{ProjectionalEditing}}},
author = {{Martin Fowler}},
date = {2008-01-14},
url = {https://martinfowler.com/bliki/ProjectionalEditing.html},
urldate = {2020-11-14},
abstract = {An alternative to SourceEditing is the idea that the core definition of a system should be held in a model and edited through projections.},
file = {C\:\\Users\\krire\\Zotero\\storage\\48WP8XCR\\ProjectionalEditing.html},
keywords = {editor,projectional editing,tree editor},
langid = {english},
organization = {{martinfowler.com}}
}
@online{maximiliankoegelWebbasedModelingTools2020,
title = {Web-Based Modeling Tools with {{EMF}}.Cloud (Shared)},
author = {{Maximilian Koegel} and {Philip Langer}},
date = {2020},
url = {https://docs.google.com/presentation/d/e/2PACX-1vRVnzfSELGwVrZNk5kfSKXtM5Te9hIbzPpnIoi40IEn7QzwFF3pAaXDtq1bg18RS5X1YfHZ1Xr1qb6K/pub?start=false&loop=false&delayms=3000&usp=embed_facebook},
urldate = {2020-10-06},
abstract = {Web-based modeling tools with EMF.cloud Philip Langer \& Maximilian Koegel EclipseSource},
file = {C\:\\Users\\krire\\Zotero\\storage\\KP6TPX3H\\pub.html},
keywords = {coffee-maker,glsp,theia},
langid = {english},
organization = {{Google Docs}}
}
@online{merksMerksMeanderingsEMF2007,
title = {Merks' {{Meanderings}}: {{Is EMF}} Going to Replace {{MOF}}?},
shorttitle = {Merks' {{Meanderings}}},
author = {Merks, Ed},
date = {2007-10-05},
url = {https://ed-merks.blogspot.com/2007/10/is-emf-going-to-replace-mof.html},
urldate = {2020-11-11},
file = {C\:\\Users\\krire\\Zotero\\storage\\EUKSQTXD\\is-emf-going-to-replace-mof.html},
keywords = {ecore,emf,emof,mof},
organization = {{Merks' Meanderings}}
}
@online{microsoftActivationEvents2020,
title = {Activation {{Events}}},
author = {{Microsoft}},
date = {2020-10-08},
url = {https://code.visualstudio.com/api/references/activation-events},
urldate = {2020-10-30},
abstract = {To support lazy activation of Visual Studio Code extensions (plug-ins), your extension controls when it should be loaded through a set of Activation Events.},
file = {C\:\\Users\\krire\\Zotero\\storage\\AVSHW53J\\activation-events.html},
keywords = {extension,vscode},
langid = {english}
}
@online{microsoftContributionPoints2020,
title = {Contribution {{Points}}},
author = {{Microsoft}},
date = {2020-10-08},
url = {https://code.visualstudio.com/api/references/contribution-points},
urldate = {2020-10-29},
abstract = {To extend Visual Studio Code, your extension (plug-in) declares which of the various Contribution Points it is using in its package.json Extension Manifest file.},
file = {C\:\\Users\\krire\\Zotero\\storage\\WAJ8YRS6\\contribution-points.html},
keywords = {extension,vscode},
langid = {english},
organization = {{Contribution Points}}
}
@online{microsoftExtendingWorkbench2020,
title = {Extending {{Workbench}}},
author = {{Microsoft}},
date = {2020-10-08},
url = {https://code.visualstudio.com/api/extension-capabilities/extending-workbench},
urldate = {2020-10-29},
abstract = {Explain how to extend Visual Studio Code's workbench area with custom UI components},
file = {C\:\\Users\\krire\\Zotero\\storage\\HUD7U3AN\\extending-workbench.html},
keywords = {extension,vscode},
langid = {english}
}
@online{microsoftLanguageServerExtension2020,
title = {Language {{Server Extension Guide}}},
shorttitle = {Language {{Server Extension Guide}}},
author = {{Microsoft}},
date = {2020-09-10},
url = {https://code.visualstudio.com/api/language-extensions/language-server-extension-guide},
urldate = {2020-09-23},
abstract = {Learn how to create Language Servers to provide rich language features in Visual Studio Code.},
file = {C\:\\Users\\krire\\Zotero\\storage\\8HW5NFWW\\language-server-extension-guide.html},
keywords = {LSP},
langid = {english},
organization = {{Language Server Extension Guide}}
}
@online{microsoftLanguageServerProtocol2020,
title = {Language {{Server Protocol Specification}} - 3.15},
shorttitle = {{{LSP}} Specification},
author = {{Microsoft}},
date = {2020-01-14},
url = {https://microsoft.github.io/language-server-protocol/specifications/specification-current/},
urldate = {2020-09-23},
abstract = {This document describes the 3.15.x version of the language server protocol.},
file = {C\:\\Users\\krire\\Zotero\\storage\\KMW4QJ65\\specification-current.html},
langid = {english},
organization = {{Language Server Protocol Specification - 3.15}}
}
@software{microsoftMicrosoftVscode2020,
title = {Microsoft/Vscode},
author = {{Microsoft}},
date = {2020-10-05T08:08:48Z},
origdate = {2015-09-03T20:23:38Z},
url = {https://github.com/microsoft/vscode},
urldate = {2020-10-05},
abstract = {Visual Studio Code. Contribute to microsoft/vscode development by creating an account on GitHub.},
keywords = {editor,electron,microsoft,typescript,visual-studio-code},
organization = {{Microsoft}},
version = {b05887f}
}
@online{microsoftProgrammaticLanguageFeatures2020,
title = {Programmatic {{Language Features}}},
shorttitle = {Programmatic {{Language Features}}},
author = {{Microsoft}},
date = {2020-09-10},
url = {https://code.visualstudio.com/api/language-extensions/programmatic-language-features},
urldate = {2020-09-23},
abstract = {Visual Studio Code language extensions contribute programming language features. These guidelines present the language features available in Visual Studio Code and explain the API.},
file = {C\:\\Users\\krire\\Zotero\\storage\\8W2U9E4H\\programmatic-language-features.html},
keywords = {docs,guide,LSP,vscode},
langid = {english},
organization = {{Programmatic Language Features}}
}
@online{microsoftPublishingExtensions2020,
title = {Publishing {{Extensions}}},
author = {{Microsoft}},
date = {2020-10-08},
url = {https://code.visualstudio.com/api/working-with-extensions/publishing-extension},
urldate = {2020-10-30},
abstract = {Learn how to publish Visual Studio Code extensions to the public Marketplace and share them with other developers.},
file = {C\:\\Users\\krire\\Zotero\\storage\\QDXQ48GR\\publishing-extension.html},
keywords = {extension,publishing,vscode},
langid = {english}
}
@online{microsoftVisualStudioCode2020,
title = {Visual {{Studio Code User Interface}}},
author = {{Microsoft}},
date = {2020-10-08},
url = {https://code.visualstudio.com/docs/getstarted/userinterface},
urldate = {2020-10-29},
abstract = {A quick overview of the Visual Studio Code user interface. Learn about the editor, window management, and special UI to handle source control, extension management, full text search and more.},
file = {C\:\\Users\\krire\\Zotero\\storage\\TG7I3KDH\\userinterface.html},
keywords = {vscode},
langid = {english}
}
@online{microsoftVSCodeAPI2020,
title = {{{VS Code API}}},
author = {{Microsoft}},
date = {2020-11-06},
url = {https://code.visualstudio.com/api/references/vscode-api},
urldate = {2020-11-11},
abstract = {Visual Studio Code extensions (plug-in) API Reference.},
file = {C\:\\Users\\krire\\Zotero\\storage\\IY6FU7E4\\vscode-api.html},
keywords = {api,extension,vscode},
langid = {english}
}
@online{MicrosoftVscodeextensionsamples,
title = {Microsoft/Vscode-Extension-Samples},
url = {https://github.com/microsoft/vscode-extension-samples},
urldate = {2020-09-29},
abstract = {Sample code illustrating the VS Code extension API. - microsoft/vscode-extension-samples},
file = {C\:\\Users\\krire\\Zotero\\storage\\QX6ZIQYB\\custom-editor-sample.html},
keywords = {vscode},
langid = {english},
organization = {{GitHub}}
}
@online{microsoftWebviewAPI,
title = {Webview {{API}}},
author = {{Microsoft}},
url = {https://code.visualstudio.com/api/extension-guides/webview},
urldate = {2020-10-30},
abstract = {Use the Webview API to create fully customizable views within Visual Studio Code.},
file = {C\:\\Users\\krire\\Zotero\\storage\\9G8IGEVQ\\webview.html},
langid = {english}
}
@online{microsoftWhatLanguageServer,
title = {What Is the {{Language Server Protocol}}?},
shorttitle = {Overview},
author = {{Microsoft}},
url = {https://microsoft.github.io//language-server-protocol/overviews/lsp/overview/},
urldate = {2020-09-23},
file = {C\:\\Users\\krire\\Zotero\\storage\\9TARARJN\\overview.html},
keywords = {LSP},
langid = {english},
organization = {{What is the Language Server Protocol?}}
}
@online{microsoftYourFirstExtension2020,
title = {Your {{First Extension}}},
author = {{Microsoft}},
date = {2020-10-08},
url = {https://code.visualstudio.com/api/get-started/your-first-extension},
urldate = {2020-10-30},
abstract = {Create your first Visual Studio Code extension (plug-in) with a simple Hello World example.},
file = {C\:\\Users\\krire\\Zotero\\storage\\VPFBRF9X\\your-first-extension.html},
keywords = {extension,vscode},
langid = {english}
}
@online{MultiLanguageIDEImplemented2017,
title = {Multi-{{Language IDE}} Implemented in {{JS Scope}} and {{Architecture}}},
shorttitle = {Multi-{{Language IDE}}},
date = {2017},
url = {https://docs.google.com/document/d/1aodR1LJEF_zu7xBis2MjpHRyv7JKJzW7EWI9XRYCt48/edit?usp=embed_facebook},
urldate = {2020-09-17},
abstract = {Multi-Language IDE Implemented in JS Scope and Architecture Overview This document details the scope of the IDE framework implemented in JavaScript, HTML and CSS. It also details the architecture choices that will guide the development of the software. Scope The Javascript IDE project has the ...},
file = {C\:\\Users\\krire\\Zotero\\storage\\NT8FRKC8\\edit.html},
keywords = {architecture,design document,scope,theia},
langid = {english},
organization = {{Google Docs}}
}
@online{neilmackenzieSiriusWebXText2020,
title = {Sirius {{Web}} and {{XText}}},
shorttitle = {Eclipse {{Community Forums}}},
author = {{Neil Mackenzie} and {Mélanie Bats}},
date = {2020-09-24},
url = {https://www.eclipse.org/forums/index.php/t/1105347/},
urldate = {2020-10-06},
abstract = {The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 350 open source projects, including runtimes, tools and frameworks.},
file = {C\:\\Users\\krire\\Zotero\\storage\\EV5Y3WZH\\1105347.html},
langid = {english}
}
@online{obeoEclipseSiriusOpensource,
title = {Eclipse {{Sirius}} - {{Open}}-Source Domain-Specific Modeling - {{Obeo Designer}}},
author = {{Obeo}},
url = {https://www.obeodesigner.com/en/product/sirius},
urldate = {2020-10-06},
file = {C\:\\Users\\krire\\Zotero\\storage\\SN3SQLL6\\sirius.html},
organization = {{Eclipse Sirius}}
}
@online{obeoGraphicalServerProtocol,
title = {{{GraphicalServerProtocol}}},
author = {{Obeo}},
url = {https://obeonetwork.github.io/GraphicalServerProtocol/},
urldate = {2020-10-05},
abstract = {Graphical Server Protocol},
file = {C\:\\Users\\krire\\Zotero\\storage\\RQC57YVN\\GraphicalServerProtocol.html},
langid = {english},
organization = {{GraphicalServerProtocol}}
}