Arieh Bibliowicz | Technion Israel Institute of Technology (original) (raw)

Uploads

Papers by Arieh Bibliowicz

Research paper thumbnail of A Graph Grammar-Based Formal Validation of Object-Process Diagrams

Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Mo... more Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Most modeling methodologies satisfy only one of these apparently contradicting requirements, usually comprehensibility, leaving aside problems of correctness and ambiguousness that are associated with expressiveness. Some formal modeling languages do exist, but in these languages a complete model of a complex system is fairly complicated to understand. Object-Process Methodology (OPM) is a holistic systems modeling methodology that combines the two major aspects of a system—structure and behavior—in one model, providing mechanisms to manage the complexity of the model using refinement-abstraction operations, which divide a complex system into many interconnected diagrams. Although the basic syntax and semantics of an OPM model are defined, they are incomplete and leave room for incorrect or ambiguous models. This work advances the formal definition of OPM by providing a graph grammar for c...

Research paper thumbnail of A Graph Grammar-Based Formal Validation of an Object-Process Diagram

Conceptual modeling is the field where humans model natural or artificial systems. The basic requ... more Conceptual modeling is the field where humans model natural or artificial systems. The basic requirements of a model is for it to be both easy to understand and to describe correctly and unambiguously the system that it is modeling. Although these goals are trivial, over time most modeling methodologies have been able to satisfy only one of the requirements fully, regularly the ease to understand, while leaving the correctness and ambiguousness problems aside. There exist some formal modeling languages but a full model is fairly complicated to understand in these languages. OPM is an holistic system modeling methodology that combines all of the aspects of a system in one model, and at the same time provides mechanisms to manage the complexity of the model with zooming and folding operations, which divide the complexity of a large system into many models that are interconnected. Although the basic syntax and semantics of an OPM system model are already defined, this definitions is no...

Research paper thumbnail of Creating Domain-Specific Modeling Languages with OPM/D A Meta-modeling approach

Abstract: Domain-specific languages and model-driven development are two promising approaches for... more Abstract: Domain-specific languages and model-driven development are two promising approaches for tackling the complexity of software systems development. However, creating domain-specific modeling languages is a complex and lengthy task which makes the creation of DSMLs only feasible in large and complex projects. To alleviate this difficulty, we developed OPM/D, a visual meta-modeling language for the definition of domain-specific modeling languages. Languages in OPM/D are defined via a static structural meta-model of the language and a set of validation rules that define the non-structural constraints of the language. The language editor is created on-the-fly through interpretation of the static structure and validation rules, minimizing the time between language definition and its use. Our approach has been applied to define a subset of the OPM modeling language, and a prototype tools is being developed using the Eclipse platform and technologies. 1

Research paper thumbnail of Toward integrating systems engineering with software engineering through Object-Process Programming

International Journal of Information Technology

Modern systems comprise hardware and software components that together provide value through enab... more Modern systems comprise hardware and software components that together provide value through enabling the functionality that the system is intended to provide. Systems engineering (SE) and software engineering (SwE) are therefore interdependent, tightly coupled, and complementary activities that must be carefully aligned and coordinated throughout the system development process. Yet, these two disciplines have historically grown quite separated from each other, with too little interaction and mutual learning. In this work, we develop and evaluate Object-Process Programming (OPP) as a proof-of-concept for a common framework that integrates SE and SwE based on ISO 19450-Object-Process Methodology. The ability of designers to use the same paradigm for engineering the software, the hardware, and the system as a whole, using the same concepts and principles and the same design environment, described and discussed in this work, is a major step towards the integration and streamlining of engineering new systems that feature significant hardware and software components. To evaluate OPP, we established a focus group and conducted an experiment in which participants were asked to develop systems using OPP. Overall, the results were positive in terms of usability and understandability. In particular, the language and the environment were far superior in comparison to textual languages. OPP will contribute to the continuous endeavor to bridge the gap between SE and SwE by providing a seamless, easy-to-learn environment. Non-technical stakeholders can also benefit from OPP by improving their communication with technical stakeholders. The ideas underlying OPP have already served to augment OPM with computational capabilities.

Research paper thumbnail of Creating Domain-Specific Modeling Languages with OPM/D - A Meta-modeling approach

ICSOFT

Domain-specific languages and model-driven development are two promising approaches for tackling ... more Domain-specific languages and model-driven development are two promising approaches for tackling the
complexity of software systems development. However creating domain-specific modeling languages is a
complex task that makes the definition of new languages difficult. To alleviate this difficulty, we developed
OPM/D, a visual meta-modeling language for the definition of domain-specific modeling languages. Languages in OPM/D are defined via a static structural meta-model of the language and a set of validation rules
applied at edit time. The language editor is created on-the-fly through language interpretation, minimizing the
time between language definition and its use. Our approach has been applied to define a subset of the OPM
modeling language, and is developed using the Eclipse platform and technologies.

Research paper thumbnail of A Graph Grammar-Based Formal Validation of Object-Process Diagrams

Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Mo... more Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Most modeling methodologies satisfy only one of these apparently contradicting requirements, usually comprehensibility, leaving aside problems of correctness and ambiguousness that are associated with expressiveness. Some formal modeling languages do exist, but in these languages a complete model of a complex system is fairly complicated to understand.
Object-Process Methodology (OPM) is a holistic systems modeling methodology that combines the two major aspects of a system—structure and behavior—in one model, providing mechanisms to manage the complexity of the model using refinement-abstraction operations, which divide a complex system into many interconnected diagrams. Although the basic syntax and semantics of an OPM model
are defined, they are incomplete and leave room for incorrect or ambiguous models.
This work advances the formal definition of OPM by providing a graph grammar for creating and checking OPM diagrams. The grammar provides a validation methodology of the semantic and syntactic correctness of a single Object-Process Diagram.

Research paper thumbnail of A graph grammar-based formal validation of object-process diagrams

Software and System Modeling

Two basic requirements from a system’s conceptual model are correctness and comprehensibility. Mo... more Two basic requirements from a system’s conceptual model are correctness and comprehensibility. Most modeling methodologies satisfy only one of these apparently contradicting requirements, usually comprehensibility, leaving aside problems of correctness and ambiguousness that are associated with expressiveness. Some formal modeling languages do exist, but in these languages a complete model of a complex system is fairly complicated to understand. Object-process methodology (OPM) is a holistic systems modeling methodology that combines the two major aspects of a system—structure and behavior—in one model, providing mechanisms to manage the complexity of the model using refinement-abstraction operations, which divide a complex system into many interconnected diagrams. Although the basic syntax and semantics of an OPM model are defined, they are incomplete and leave room for incorrect or ambiguous models. This work advances the formal definition of OPM by providing a graph grammar for creating and checking OPM diagrams. The grammar provides a validation methodology of the semantic and syntactic correctness of a single object-process diagram.

Research paper thumbnail of A Graph Grammar-Based Formal Validation of Object-Process Diagrams

Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Mo... more Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Most modeling methodologies satisfy only one of these apparently contradicting requirements, usually comprehensibility, leaving aside problems of correctness and ambiguousness that are associated with expressiveness. Some formal modeling languages do exist, but in these languages a complete model of a complex system is fairly complicated to understand. Object-Process Methodology (OPM) is a holistic systems modeling methodology that combines the two major aspects of a system—structure and behavior—in one model, providing mechanisms to manage the complexity of the model using refinement-abstraction operations, which divide a complex system into many interconnected diagrams. Although the basic syntax and semantics of an OPM model are defined, they are incomplete and leave room for incorrect or ambiguous models. This work advances the formal definition of OPM by providing a graph grammar for c...

Research paper thumbnail of A Graph Grammar-Based Formal Validation of an Object-Process Diagram

Conceptual modeling is the field where humans model natural or artificial systems. The basic requ... more Conceptual modeling is the field where humans model natural or artificial systems. The basic requirements of a model is for it to be both easy to understand and to describe correctly and unambiguously the system that it is modeling. Although these goals are trivial, over time most modeling methodologies have been able to satisfy only one of the requirements fully, regularly the ease to understand, while leaving the correctness and ambiguousness problems aside. There exist some formal modeling languages but a full model is fairly complicated to understand in these languages. OPM is an holistic system modeling methodology that combines all of the aspects of a system in one model, and at the same time provides mechanisms to manage the complexity of the model with zooming and folding operations, which divide the complexity of a large system into many models that are interconnected. Although the basic syntax and semantics of an OPM system model are already defined, this definitions is no...

Research paper thumbnail of Creating Domain-Specific Modeling Languages with OPM/D A Meta-modeling approach

Abstract: Domain-specific languages and model-driven development are two promising approaches for... more Abstract: Domain-specific languages and model-driven development are two promising approaches for tackling the complexity of software systems development. However, creating domain-specific modeling languages is a complex and lengthy task which makes the creation of DSMLs only feasible in large and complex projects. To alleviate this difficulty, we developed OPM/D, a visual meta-modeling language for the definition of domain-specific modeling languages. Languages in OPM/D are defined via a static structural meta-model of the language and a set of validation rules that define the non-structural constraints of the language. The language editor is created on-the-fly through interpretation of the static structure and validation rules, minimizing the time between language definition and its use. Our approach has been applied to define a subset of the OPM modeling language, and a prototype tools is being developed using the Eclipse platform and technologies. 1

Research paper thumbnail of Toward integrating systems engineering with software engineering through Object-Process Programming

International Journal of Information Technology

Modern systems comprise hardware and software components that together provide value through enab... more Modern systems comprise hardware and software components that together provide value through enabling the functionality that the system is intended to provide. Systems engineering (SE) and software engineering (SwE) are therefore interdependent, tightly coupled, and complementary activities that must be carefully aligned and coordinated throughout the system development process. Yet, these two disciplines have historically grown quite separated from each other, with too little interaction and mutual learning. In this work, we develop and evaluate Object-Process Programming (OPP) as a proof-of-concept for a common framework that integrates SE and SwE based on ISO 19450-Object-Process Methodology. The ability of designers to use the same paradigm for engineering the software, the hardware, and the system as a whole, using the same concepts and principles and the same design environment, described and discussed in this work, is a major step towards the integration and streamlining of engineering new systems that feature significant hardware and software components. To evaluate OPP, we established a focus group and conducted an experiment in which participants were asked to develop systems using OPP. Overall, the results were positive in terms of usability and understandability. In particular, the language and the environment were far superior in comparison to textual languages. OPP will contribute to the continuous endeavor to bridge the gap between SE and SwE by providing a seamless, easy-to-learn environment. Non-technical stakeholders can also benefit from OPP by improving their communication with technical stakeholders. The ideas underlying OPP have already served to augment OPM with computational capabilities.

Research paper thumbnail of Creating Domain-Specific Modeling Languages with OPM/D - A Meta-modeling approach

ICSOFT

Domain-specific languages and model-driven development are two promising approaches for tackling ... more Domain-specific languages and model-driven development are two promising approaches for tackling the
complexity of software systems development. However creating domain-specific modeling languages is a
complex task that makes the definition of new languages difficult. To alleviate this difficulty, we developed
OPM/D, a visual meta-modeling language for the definition of domain-specific modeling languages. Languages in OPM/D are defined via a static structural meta-model of the language and a set of validation rules
applied at edit time. The language editor is created on-the-fly through language interpretation, minimizing the
time between language definition and its use. Our approach has been applied to define a subset of the OPM
modeling language, and is developed using the Eclipse platform and technologies.

Research paper thumbnail of A Graph Grammar-Based Formal Validation of Object-Process Diagrams

Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Mo... more Two basic requirements from a system‘s conceptual model are correctness and comprehensibility. Most modeling methodologies satisfy only one of these apparently contradicting requirements, usually comprehensibility, leaving aside problems of correctness and ambiguousness that are associated with expressiveness. Some formal modeling languages do exist, but in these languages a complete model of a complex system is fairly complicated to understand.
Object-Process Methodology (OPM) is a holistic systems modeling methodology that combines the two major aspects of a system—structure and behavior—in one model, providing mechanisms to manage the complexity of the model using refinement-abstraction operations, which divide a complex system into many interconnected diagrams. Although the basic syntax and semantics of an OPM model
are defined, they are incomplete and leave room for incorrect or ambiguous models.
This work advances the formal definition of OPM by providing a graph grammar for creating and checking OPM diagrams. The grammar provides a validation methodology of the semantic and syntactic correctness of a single Object-Process Diagram.

Research paper thumbnail of A graph grammar-based formal validation of object-process diagrams

Software and System Modeling

Two basic requirements from a system’s conceptual model are correctness and comprehensibility. Mo... more Two basic requirements from a system’s conceptual model are correctness and comprehensibility. Most modeling methodologies satisfy only one of these apparently contradicting requirements, usually comprehensibility, leaving aside problems of correctness and ambiguousness that are associated with expressiveness. Some formal modeling languages do exist, but in these languages a complete model of a complex system is fairly complicated to understand. Object-process methodology (OPM) is a holistic systems modeling methodology that combines the two major aspects of a system—structure and behavior—in one model, providing mechanisms to manage the complexity of the model using refinement-abstraction operations, which divide a complex system into many interconnected diagrams. Although the basic syntax and semantics of an OPM model are defined, they are incomplete and leave room for incorrect or ambiguous models. This work advances the formal definition of OPM by providing a graph grammar for creating and checking OPM diagrams. The grammar provides a validation methodology of the semantic and syntactic correctness of a single object-process diagram.