In this paper, we discuss methods and concepts of object oriented programming (OOP) for graphical modeling. We illustrate through a set of examples how geometrical models are built, and visualized solutions to logisti...
详细信息
In this paper, we discuss methods and concepts of object oriented programming (OOP) for graphical modeling. We illustrate through a set of examples how geometrical models are built, and visualized solutions to logistics network design problems are obtained. We develop a methodological framework for visual programming and linking of graphical models concepts, and introduce the basic concepts of graphical models: lines, arrows, nodes and coordinates. We use block diagrams and object-orientedprogramming to program and link the concepts of graphical models using Visual Basic for Excel.
Requirements engineering is a process that explores the objectives of the actors and the activities to achieve their objectives, meeting requirements. The use of the natural language oriented requirement model as eLEL...
详细信息
ISBN:
(纸本)9781728106991
Requirements engineering is a process that explores the objectives of the actors and the activities to achieve their objectives, meeting requirements. The use of the natural language oriented requirement model as eLEL is interesting in order to specify the requirements and represent the conceptual level of a system. However, the typing of attributes and the representation of the method of a system that the eLEL model describes do not conform to the rule imposed by object-orientedprogramming to type an attribute and construct a method. But we thought that the information that constitutes them is already described in the universe of discourse (UofD). Our strategy is to extend eLEL in its conceptual representation and the new extended lexicon is called ReLEL. To achieve this, we have added new method concepts to the ReLEL metamodel and extended the attribute format to obey the rule imposed by object oriented programming (POO). Nevertheless, to validate the proposed approach, we evaluated the attribute and method performance of both eLEL and ReLEL requirements models. As a result, we have found that the ReLEL model has more attribute and method level elements than the eLEL model. Therefore, we have proposed an approach to derive a UML class diagram conceptual model from the ReLEL requirement model.
Since distributed software systems are ubiquitous, their correct functioning is crucially important. Static verification is possible in principle, but requires high expertise and effort which is not feasible in many e...
详细信息
Since distributed software systems are ubiquitous, their correct functioning is crucially important. Static verification is possible in principle, but requires high expertise and effort which is not feasible in many eco-systems. Runtime verification can serve as a lean alternative, where monitoring mechanisms are automatically generated from property specifications, to check compliance at runtime. This paper contributes a practical solution for powerful and flexible runtime verification of distributed, object-oriented applications, via a combination of the runtime verification tool LARVA and the active object framework PROACTIVE. Even if LARVA supports in itself only the generation of local, sequential monitors, we empower LARVA for distributed monitoring by connecting monitors with active objects, turning them into active, communicating monitors. We discuss how this allows for a variety of monitoring architectures. Further, we show how property specifications, and thereby the generated monitors, provide a model that splits the blame between the local object and its environment. While LARVA itself focuses on monitoring of control-oriented properties, we use the LARVA front-end STARVOORS to also capture data-oriented (pre/post) properties in the distributed monitoring. We demonstrate this approach to distributed runtime verification with a case study, a distributed store.
Nowadays, it is a common practice to utilize supervisory control and data acquisition (SCADA) based system for centralized power flow management and control of all scales of power systems. That ranges from national wi...
详细信息
ISBN:
(纸本)9781728152899
Nowadays, it is a common practice to utilize supervisory control and data acquisition (SCADA) based system for centralized power flow management and control of all scales of power systems. That ranges from national wide common utility to small isolated micro-grid. However, the software development cycle including design, deployment, debugging and test is rather complicated due to the numerous situations that might occur as well as the large number of input/output involved. This paper presents a flexible software utility that can be reconfigured to simulate wide range of AC micro-grid configurations and operation scenarios. The utility is designed using object oriented programming paradigm, and implemented using C++ programming language. The design allows for providing simulation results for SCADA platform in real-time. It allows multi-level of modeling and numerical solution. In this paper, the RungeKutta and Newton-Raphson methods are combined to simulate different scenarios of AC micro-grid operation. The consistency of results and efficiency of dynamic simulation indicates the effectiveness of proposed utility.
Mapping the logical software architecture of a vehicle to a technical solution is not a straightforward task. A particular challenge is communication: software components developed by different teams and deployed acro...
详细信息
ISBN:
(纸本)9781728105604
Mapping the logical software architecture of a vehicle to a technical solution is not a straightforward task. A particular challenge is communication: software components developed by different teams and deployed across the E/E architecture need to be able to exchange data. Middleware solutions have been developed to enable low coupling of distributed logical software components. Building a distributed architecture on a middleware solution is mostly accomplished by encapsulating logical components into middleware wrappers. This is not only time-consuming, but also requires platform specific understanding, and results in a multitude of architectural variants tailored for particular set-ups. For instance, lengthy validation processes ensuring functional correctness and safety require simulations of intelligent vehicle systems in different simulators, environments, and on different abstraction levels. This leads to the necessity of individual integration schemes for both simulation and deployment. We propose a component-based modeling approach separating platform agnostic logical models from middleware aspects. Therefore, the model compiler is instrumented with middleware tags related to the elements of the logical model. Generating the required middleware code automatically, we aim at better component re-usability minimizing the need for hand-crafted glue-code for interprocess and simulator integration.
This Research to Practice Full Paper describes a case study of a course that uses problem-based learning (PBL) to integrate the subjects of object-orientedprogramming, Data Structures and Software Design. We aimed to...
详细信息
ISBN:
(纸本)9781728117461
This Research to Practice Full Paper describes a case study of a course that uses problem-based learning (PBL) to integrate the subjects of object-orientedprogramming, Data Structures and Software Design. We aimed to explore student learning when this teaching-learning approach was applied in the second term of a Computer Engineering undergraduate program. Data collection and analysis was qualitative, using semi-structured interviews and both open and axial coding. Results were organized in terms of qualitative themes describing course organization, problem conception, learned concepts and skills. This thorough exploration of such issues allows course developers to reflect on the impact of PBL and curriculum integration in student learning.
Information-flow security type systems ensure confidentiality by enforcing noninterference: a program cannot leak private data to public channels. However, in practice, programs need to selectively declassify informat...
详细信息
ISBN:
(纸本)9783030341756;9783030341749
Information-flow security type systems ensure confidentiality by enforcing noninterference: a program cannot leak private data to public channels. However, in practice, programs need to selectively declassify information about private data. Several approaches have provided a notion of relaxed noninterference supporting selective and expressive declassification while retaining a formal security property. The labels-as-functions approach provides relaxed noninterference by means of declassification policies expressed as functions. The labels-as-types approach expresses declassification policies using type abstraction and faceted types, a pair of types representing the secret and public facets of values. The original proposal of labels-as-types is formulated in an object-oriented setting where type abstraction is realized by subtyping. The object-oriented approach however suffers from limitations due to its receiver-centric paradigm. In this work, we consider an alternative approach to labels-as-types, applicable in non-object-oriented languages, which allows us to express advanced declassification policies, such as extrinsic policies, based on a different form of type abstraction: existential types. An existential type exposes abstract types and operations on these;we leverage this abstraction mechanism to express secrets that can be declassified using the provided operations. We formalize the approach in a core functional calculus with existential types, define existential relaxed noninterference, and prove that well-typed programs satisfy this form of type-based relaxed noninterference.
With the strong computation capability, NUMA-based multi-GPU system is a promising candidate to provide sustainable and scalable performance for Virtual Reality (VR) applications and deliver the excellent user experie...
详细信息
ISBN:
(纸本)9781450366694
With the strong computation capability, NUMA-based multi-GPU system is a promising candidate to provide sustainable and scalable performance for Virtual Reality (VR) applications and deliver the excellent user experience. However, the entire multi-GPU system is viewed as a single GPU under the single programming model which greatly ignores the data locality among VR rendering tasks during the workload distribution, leading to tremendous remote memory accesses among GPU models (GPMs). The limited inter- GPM link bandwidth (e.g., 64GB/s for NVlink) becomes the major obstacle when executing VR applications in the multi-GPU system. By conducting comprehensive characterizations on different kinds of parallel rendering frameworks, we observe that distributing the rendering object along with its required data per GPM can reduce the inter-GPM memory accesses. However, this object-level rendering still faces two major challenges in NUMA-based multi- GPU system: (1) the large data locality between the left and right views of the same object and the data sharing among different objects and (2) the unbalanced workloads induced by the software- level distribution and composition mechanisms. To tackle these challenges, we propose object-oriented VR rendering framework (OO-VR) that conducts the software and hardware co-optimization to provide a NUMA friendly solution for VR multi-view rendering in NUMA-based multi-GPU systems. We first propose an object-oriented VR programming model to exploit the data sharing between two views of the same object and group objects into batches based on their texture sharing levels. Then, we design an object aware runtime batch distribution engine and distributed hardware composition unit to achieve the balanced workloads among GPMs and further improve the performance of VR rendering. Finally, evaluations on our VR featured simulator show that OO-VR provides 1.58x overall performance improvement and 76% inter-GPM memory traffic reduction over the s
In this paper, we provide a formal definition of symbolic execution in terms of a symbolic transition system and prove its correctness with respect to an operational semantics which models the execution on concrete va...
详细信息
ISBN:
(纸本)9783030309411;9783030309428
In this paper, we provide a formal definition of symbolic execution in terms of a symbolic transition system and prove its correctness with respect to an operational semantics which models the execution on concrete values. We first introduce such a formal model for a basic programming language with a statically fixed number of programming variables. This model is extended to a programming language with recursive procedures which are called by a call-by-value parameter mechanism. Finally, we show how to extend this latter model of symbolic execution to arrays and object-oriented languages which feature dynamically allocated variables.
In our attempt to support object-orientedprogramming (OOP) learning for beginners, we designed a novel microworld called PrOgO. It is based on a three-dimensional (3D) constructive game metaphor for describing OOP ba...
详细信息
暂无评论