4,103 research outputs found
A Unifying Theory for Graph Transformation
The field of graph transformation studies the rule-based transformation of graphs. An important branch is the algebraic graph transformation tradition, in which approaches are defined and studied using the language of category theory. Most algebraic graph transformation approaches (such as DPO, SPO, SqPO, and AGREE) are opinionated about the local contexts that are allowed around matches for rules, and about how replacement in context should work exactly. The approaches also differ considerably in their underlying formal theories and their general expressiveness (e.g., not all frameworks allow duplication). This dissertation proposes an expressive algebraic graph transformation approach, called PBPO+, which is an adaptation of PBPO by Corradini et al. The central contribution is a proof that PBPO+ subsumes (under mild restrictions) DPO, SqPO, AGREE, and PBPO in the important categorical setting of quasitoposes. This result allows for a more unified study of graph transformation metatheory, methods, and tools. A concrete example of this is found in the second major contribution of this dissertation: a graph transformation termination method for PBPO+, based on decreasing interpretations, and defined for general categories. By applying the proposed encodings into PBPO+, this method can also be applied for DPO, SqPO, AGREE, and PBPO
On the real world practice of Behaviour Driven Development
Surveys of industry practice over the last decade suggest that Behaviour Driven Development is a popular Agile practice. For example, 19% of respondents to the 14th State of Agile annual survey reported using BDD, placing it in the top 13 practices reported. As well as potential benefits, the adoption of BDD necessarily involves an additional cost of writing and maintaining Gherkin features and scenarios, and (if used for acceptance testing,) the associated step functions. Yet there is a lack of published literature exploring how BDD is used in practice and the challenges experienced by real world software development efforts. This gap is significant because without understanding current real world practice, it is hard to identify opportunities to address and mitigate challenges. In order to address this research gap concerning the challenges of using BDD, this thesis reports on a research project which explored: (a) the challenges of applying agile and undertaking requirements engineering in a real world context; (b) the challenges of applying BDD specifically and (c) the application of BDD in open-source projects to understand challenges in this different context.
For this purpose, we progressively conducted two case studies, two series of interviews, four iterations of action research, and an empirical study. The first case study was conducted in an avionics company to discover the challenges of using an agile process in a large scale safety critical project environment. Since requirements management was found to be one of the biggest challenges during the case study, we decided to investigate BDD because of its reputation for requirements management. The second case study was conducted in the company with an aim to discover the challenges of using BDD in real life. The case study was complemented with an empirical study of the practice of BDD in open source projects, taking a study sample from the GitHub open source collaboration site.
As a result of this Ph.D research, we were able to discover: (i) challenges of using an agile process in a large scale safety-critical organisation, (ii) current state of BDD in practice, (iii) technical limitations of Gherkin (i.e., the language for writing requirements in BDD), (iv) challenges of using BDD in a real project, (v) bad smells in the Gherkin specifications of open source projects on GitHub. We also presented a brief comparison between the theoretical description of BDD and BDD in practice. This research, therefore, presents the results of lessons learned from BDD in practice, and serves as a guide for software practitioners planning on using BDD in their projects
Language Design for Reactive Systems: On Modal Models, Time, and Object Orientation in Lingua Franca and SCCharts
Reactive systems play a crucial role in the embedded domain. They continuously interact with their environment, handle concurrent operations, and are commonly expected to provide deterministic behavior to enable application in safety-critical systems. In this context, language design is a key aspect, since carefully tailored language constructs can aid in addressing the challenges faced in this domain, as illustrated by the various concurrency models that prevent the known pitfalls of regular threads. Today, many languages exist in this domain and often provide unique characteristics that make them specifically fit for certain use cases. This thesis evolves around two distinctive languages: the actor-oriented polyglot coordination language Lingua Franca and the synchronous statecharts dialect SCCharts. While they take different approaches in providing reactive modeling capabilities, they share clear similarities in their semantics and complement each other in design principles. This thesis analyzes and compares key design aspects in the context of these two languages. For three particularly relevant concepts, it provides and evaluates lean and seamless language extensions that are carefully aligned with the fundamental principles of the underlying language. Specifically, Lingua Franca is extended toward coordinating modal behavior, while SCCharts receives a timed automaton notation with an efficient execution model using dynamic ticks and an extension toward the object-oriented modeling paradigm
Pristup specifikaciji i generisanju proizvodnih procesa zasnovan na inΕΎenjerstvu voΔenom modelima
In this thesis, we present an approach to the production process specification and generation based on the model-driven paradigm, with the goal to increase the flexibility of factories and respond to the challenges that emerged in the era of Industry 4.0 more efficiently. To formally specify production processes and their variations in the Industry 4.0 environment, we created a novel domain-specific modeling language, whose models are machine-readable. The created language can be used to model production processes that can be independent of any production system, enabling process models to be used in different production systems, and process models used for the specific production system. To automatically transform production process models dependent on the specific production system into instructions that are to be executed by production system resources, we created an instruction generator. Also, we created generators for different manufacturing documentation, which automatically transform production process models into manufacturing documents of different types. The proposed approach, domain-specific modeling language, and software solution contribute to introducing factories into the digital transformation process. As factories must rapidly adapt to new products and their variations in the era of Industry 4.0, production must be dynamically led and instructions must be automatically sent to factory resources, depending on products that are to be created on the shop floor. The proposed approach contributes to the creation of such a dynamic environment in contemporary factories, as it allows to automatically generate instructions from process models and send them to resources for execution. Additionally, as there are numerous different products and their variations, keeping the required manufacturing documentation up to date becomes challenging, which can be done automatically by using the proposed approach and thus significantly lower process designers' time.Π£ ΠΎΠ²ΠΎΡ Π΄ΠΈΡΠ΅ΡΡΠ°ΡΠΈΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ΅Π½ ΡΠ΅ ΠΏΡΠΈΡΡΡΠΏ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠΈ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΠ° Π·Π°ΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΈΠ½ΠΆΠ΅ΡΠ΅ΡΡΡΠ²Ρ Π²ΠΎΡΠ΅Π½ΠΎΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈΠΌΠ°, Ρ ΡΠΈΡΡ ΠΏΠΎΠ²Π΅ΡΠ°ΡΠ° ΡΠ»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡΠΈ ΠΏΠΎΡΡΡΠΎΡΠ΅ΡΠ° Ρ ΡΠ°Π±ΡΠΈΠΊΠ°ΠΌΠ° ΠΈ Π΅ΡΠΈΠΊΠ°ΡΠ½ΠΈΡΠ΅Π³ ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π°ΡΠ° ΠΈΠ·Π°Π·ΠΎΠ²Π° ΠΊΠΎΡΠΈ ΡΠ΅ ΠΏΠΎΡΠ°Π²ΡΡΡΡ Ρ Π΅ΡΠΈ ΠΠ½Π΄ΡΡΡΡΠΈΡΠ΅ 4.0. ΠΠ° ΠΏΠΎΡΡΠ΅Π±Π΅ ΡΠΎΡΠΌΠ°Π»Π½Π΅ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΠ° ΠΈ ΡΠΈΡ
ΠΎΠ²ΠΈΡ
Π²Π°ΡΠΈΡΠ°ΡΠΈΡΠ° Ρ Π°ΠΌΠ±ΠΈΡΠ΅Π½ΡΡ ΠΠ½Π΄ΡΡΡΡΠΈΡΠ΅ 4.0, ΠΊΡΠ΅ΠΈΡΠ°Π½ ΡΠ΅ Π½ΠΎΠ²ΠΈ Π½Π°ΠΌΠ΅Π½ΡΠΊΠΈ ΡΠ΅Π·ΠΈΠΊ, ΡΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ ΡΠ°ΡΡΠ½Π°Ρ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠ±ΡΠ°Π΄ΠΈ Π½Π° Π°ΡΡΠΎΠΌΠ°ΡΠΈΠ·ΠΎΠ²Π°Π½ Π½Π°ΡΠΈΠ½. ΠΡΠ΅ΠΈΡΠ°Π½ΠΈ ΡΠ΅Π·ΠΈΠΊ ΠΈΠΌΠ° ΠΌΠΎΠ³ΡΡΠ½ΠΎΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΎΠ²Π°ΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΠ° ΠΊΠΎΡΠΈ ΠΌΠΎΠ³Ρ Π±ΠΈΡΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠ½ΠΈ ΠΎΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈ ΡΠΈΠΌΠ΅ ΡΠΏΠΎΡΡΠ΅Π±ΡΠ΅Π½ΠΈ Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡΠΈΠΌ ΠΏΠΎΡΡΡΠΎΡΠ΅ΡΠΈΠΌΠ° ΠΈΠ»ΠΈ ΡΠ°Π±ΡΠΈΠΊΠ°ΠΌΠ°, Π°Π»ΠΈ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΠ° ΠΊΠΎΡΠΈ ΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ΠΎΠ΄ΡΠ΅ΡΠ΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌ. ΠΠ°ΠΊΠΎ Π±ΠΈ ΠΌΠΎΠ΄Π΅Π»Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΠ° Π·Π°Π²ΠΈΡΠ½ΠΈΡ
ΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ ΡΠΈΡΡΠ΅ΠΌΠ° Π±ΠΈΠ»ΠΎ ΠΌΠΎΠ³ΡΡΠ΅ Π½Π° Π°ΡΡΠΎΠΌΠ°ΡΠΈΠ·ΠΎΠ²Π°Π½ Π½Π°ΡΠΈΠ½ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠ°ΡΠΈ Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠ΅ ΠΊΠΎΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΠ·Π²ΡΡΠ°Π²Π°ΡΡ, ΠΊΡΠ΅ΠΈΡΠ°Π½ ΡΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠ°. Π’Π°ΠΊΠΎΡΠ΅ ΡΡ ΠΊΡΠ΅ΠΈΡΠ°Π½ΠΈ ΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΈ ΡΠ΅Ρ
Π½ΠΈΡΠΊΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅, ΠΊΠΎΡΠΈ Π½Π° Π°ΡΡΠΎΠΌΠ°ΡΠΈΠ·ΠΎΠ²Π°Π½ Π½Π°ΡΠΈΠ½ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΡ ΠΌΠΎΠ΄Π΅Π»Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΠ° Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡΠΈΡ
ΡΠΈΠΏΠΎΠ²Π°. Π£ΠΏΠΎΡΡΠ΅Π±ΠΎΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎΠ³ ΠΏΡΠΈΡΡΡΠΏΠ°, Π½Π°ΠΌΠ΅Π½ΡΠΊΠΎΠ³ ΡΠ΅Π·ΠΈΠΊΠ° ΠΈ ΡΠΎΡΡΠ²Π΅ΡΡΠΊΠΎΠ³ ΡΠ΅ΡΠ΅ΡΠ° Π΄ΠΎΠΏΡΠΈΠ½ΠΎΡΠΈ ΡΠ΅ ΡΠ²ΠΎΡΠ΅ΡΡ ΡΠ°Π±ΡΠΈΠΊΠ° Ρ ΠΏΡΠΎΡΠ΅Ρ Π΄ΠΈΠ³ΠΈΡΠ°Π»Π½Π΅ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΡΠ΅. ΠΠ°ΠΊΠΎ ΡΠ°Π±ΡΠΈΠΊΠ΅ Ρ Π΅ΡΠΈ ΠΠ½Π΄ΡΡΡΡΠΈΡΠ΅ 4.0 ΠΌΠΎΡΠ°ΡΡ Π±ΡΠ·ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³ΠΎΠ΄Π΅ Π½ΠΎΠ²ΠΈΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠ° ΠΈ ΡΠΈΡ
ΠΎΠ²ΠΈΠΌ Π²Π°ΡΠΈΡΠ°ΡΠΈΡΠ°ΠΌΠ°, Π½Π΅ΠΎΠΏΡ
ΠΎΠ΄Π½ΠΎ ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠΊΠΈ Π²ΠΎΠ΄ΠΈΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡ ΠΈ Π½Π° Π°ΡΡΠΎΠΌΠ°ΡΠΈΠ·ΠΎΠ²Π°Π½ Π½Π°ΡΠΈΠ½ ΡΠ»Π°ΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈΠΌΠ° Ρ ΡΠ°Π±ΡΠΈΡΠΈ, Ρ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ ΠΎΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π° ΠΊΠΎΡΠΈ ΡΠ΅ ΠΊΡΠ΅ΠΈΡΠ°ΡΡ Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΡΠΎΡΠ΅ΡΡ. Π’ΠΈΠΌΠ΅ ΡΡΠΎ ΡΠ΅ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎΠΌ ΠΏΡΠΈΡΡΡΠΏΡ ΠΌΠΎΠ³ΡΡΠ΅ ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»Π° ΠΏΡΠΎΡΠ΅ΡΠ° Π°ΡΡΠΎΠΌΠ°ΡΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠ΅ ΠΈ ΠΏΠΎΡΠ»Π°ΡΠΈ ΠΈΡ
ΡΠ΅ΡΡΡΡΠΈΠΌΠ°, Π΄ΠΎΠΏΡΠΈΠ½ΠΎΡΠΈ ΡΠ΅ ΠΊΡΠ΅ΠΈΡΠ°ΡΡ ΡΠ΅Π΄Π½ΠΎΠ³ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠΊΠΎΠ³ ΠΎΠΊΡΡΠΆΠ΅ΡΠ° Ρ ΡΠ°Π²ΡΠ΅ΠΌΠ΅Π½ΠΈΠΌ ΡΠ°Π±ΡΠΈΠΊΠ°ΠΌΠ°. ΠΠΎΠ΄Π°ΡΠ½ΠΎ, ΡΡΠ»Π΅Π΄ Π²Π΅Π»ΠΈΠΊΠΎΠ³ Π±ΡΠΎΡΠ° ΡΠ°Π·Π»ΠΈΡΠΈΡΠΈΡ
ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π° ΠΈ ΡΠΈΡ
ΠΎΠ²ΠΈΡ
Π²Π°ΡΠΈΡΠ°ΡΠΈΡΠ°, ΠΏΠΎΡΡΠ°ΡΠ΅ ΠΈΠ·Π°Π·ΠΎΠ²Π½ΠΎ ΠΎΠ΄ΡΠΆΠ°Π²Π°ΡΠΈ Π½Π΅ΠΎΠΏΡ
ΠΎΠ΄Π½Ρ ΡΠ΅Ρ
Π½ΠΈΡΠΊΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ, ΡΡΠΎ ΡΠ΅ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎΠΌ ΠΏΡΠΈΡΡΡΠΏΡ ΠΌΠΎΠ³ΡΡΠ΅ ΡΡΠ°Π΄ΠΈΡΠΈ Π½Π° Π°ΡΡΠΎΠΌΠ°ΡΠΈΠ·ΠΎΠ²Π°Π½ Π½Π°ΡΠΈΠ½ ΠΈ ΡΠΈΠΌΠ΅ Π·Π½Π°ΡΠ°ΡΠ½ΠΎ ΡΡΡΠ΅Π΄Π΅ΡΠΈ Π²ΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΡΠ΅ΠΊΡΠ°Π½Π°ΡΠ° ΠΏΡΠΎΡΠ΅ΡΠ°.U ovoj disertaciji predstavljen je pristup specifikaciji i generisanju proizvodnih procesa zasnovan na inΕΎenjerstvu voΔenom modelima, u cilju poveΔanja fleksibilnosti postrojenja u fabrikama i efikasnijeg razreΕ‘avanja izazova koji se pojavljuju u eri Industrije 4.0. Za potrebe formalne specifikacije proizvodnih procesa i njihovih varijacija u ambijentu Industrije 4.0, kreiran je novi namenski jezik, Δije modele raΔunar moΕΎe da obradi na automatizovan naΔin. Kreirani jezik ima moguΔnost modelovanja proizvodnih procesa koji mogu biti nezavisni od proizvodnih sistema i time upotrebljeni u razliΔitim postrojenjima ili fabrikama, ali i proizvodnih procesa koji su specifiΔni za odreΔeni sistem. Kako bi modele proizvodnih procesa zavisnih od konkretnog proizvodnog sistema bilo moguΔe na automatizovan naΔin transformisati u instrukcije koje resursi proizvodnog sistema izvrΕ‘avaju, kreiran je generator instrukcija. TakoΔe su kreirani i generatori tehniΔke dokumentacije, koji na automatizovan naΔin transformiΕ‘u modele proizvodnih procesa u dokumente razliΔitih tipova. Upotrebom predloΕΎenog pristupa, namenskog jezika i softverskog reΕ‘enja doprinosi se uvoΔenju fabrika u proces digitalne transformacije. Kako fabrike u eri Industrije 4.0 moraju brzo da se prilagode novim proizvodima i njihovim varijacijama, neophodno je dinamiΔki voditi proizvodnju i na automatizovan naΔin slati instrukcije resursima u fabrici, u zavisnosti od proizvoda koji se kreiraju u konkretnom postrojenju. Time Ε‘to je u predloΕΎenom pristupu moguΔe iz modela procesa automatizovano generisati instrukcije i poslati ih resursima, doprinosi se kreiranju jednog dinamiΔkog okruΕΎenja u savremenim fabrikama. Dodatno, usled velikog broja razliΔitih proizvoda i njihovih varijacija, postaje izazovno odrΕΎavati neophodnu tehniΔku dokumentaciju, Ε‘to je u predloΕΎenom pristupu moguΔe uraditi na automatizovan naΔin i time znaΔajno uΕ‘tedeti vreme projektanata procesa
UMSL Bulletin 2023-2024
The 2023-2024 Bulletin and Course Catalog for the University of Missouri St. Louis.https://irl.umsl.edu/bulletin/1088/thumbnail.jp
UMSL Bulletin 2022-2023
The 2022-2023 Bulletin and Course Catalog for the University of Missouri St. Louis.https://irl.umsl.edu/bulletin/1087/thumbnail.jp
- β¦