Searcharxiv⌕ Search

arXiv subjects

Sabah Al-Fedaghi

Publications and source records attributed to Sabah Al-Fedaghi.

At least 73 records · Page 4Linked to original sources

Modeling Physical/Digital Systems: Formal Event-B vs. Diagrammatic Thinging Machine

Models are centrally important in many scientific fields. A model is a representation of a selected part of the world, which is the model s target system. Here, a system consists of a software portion as a component among many others. Event-B is a modeling method for formalizing and developing systems whose components can be modeled based on set theory and first-order logic. The thinging machine (TM) is a diagram-based model establishes three levels of representation: (1) a static structural description, which is constructed upon the flow of things in five generic operations (activities; i.e., create, process, release, transfer, and receive); (2) a dynamic representation, which identifies hierarchies of events based on five generic events; and (3) a behavioral representation according to the chronology of events. This paper is an exercise in contrasting the formal Event-B to the diagrammatic TM. The purpose is to further understand modeling in computer science. This is motivated by the claim that computer scientists should not invent specific languages to do the modeling. Important notions such as events and behavior are contrasted, and a case study system of traffic on a bridge is modeled in Event-B and TM. The results seem to indicate the need for both modeling approaches.

cs.SE↗

Causality in Static Models as an Initial Constraint on the Chronology of Events in System Behavior

This paper analyzes the notion of causality in a conceptual model, mainly as applied in software engineering. Conceptual system modeling can be considered a three-level process that begins with building a static structural description to develop a dynamic model that will identify events used to specify the chronology of events. In this context, the model involves a representation of a portion of reality, based on ontology of different kinds of things and their basic relations to each other. Relations are defined in terms of their participating entities. This paper concerns relations between events, specifically causal relations among events in modeling. We examine causality in many fields of study to understand its role in modeling. The problem is that, according to many researchers, causation is so inextricably bound up in misleading associations that it is hard to define and is shrouded in mystery, controversy, and caution. We study and clarify the notion of causality through several examples, utilizing an event definition as a time thing/machine in a new conceptual modeling methodology. In conclusion, we claim that the purpose of causal relations in a system s static description is to constrain the system s behavior and thus exclude some possible chronologies of events.

cs.SE↗

Three Levels of Modeling: Static (Structure/Trajectories of Flow), Dynamic (Events) and Behavioral (Chronology of Events)

Constructing a conceptual model as an abstract representation of a portion of the real world involves capturing the (1) static (things/objects and trajectories of flow), (2) the dynamic (event identification), and (3) the behavior (e.g., acceptable chronology of events) of the modeled system. This paper focuses on examining the behavior notion in modeling and current works in the behavior space to illustrate that the problem of behavior and its related concepts in modeling lacks a clear-cut systematic basis. The purpose is to advance the understanding of system behavior to avoid ambiguity-related problems in system specification. It is proposed to base the notion of behavior on a new conceptual model, called the thinging machine, which is a tool for modeling that establishes three levels of representation: (1) a static structural description that is constructed upon the flow of things in five generic operations (activities; i.e., create, process, release, transfer and receive); (2) a dynamic representation that identifies hierarchies of events based on five generic events; and (3) a chronology of events. This is shown through examples that support the thinging machine as a new methodology suitable for all three levels of specification.

cs.SE↗

Modeling Network Architecture: A Cloud Case Study

The Internet s ability to support a wide range of services depends on the network architecture and theoretical and practical innovations necessary for future networks. Network architecture in this context refers to the structure of a computer network system as well as interactions among its physical components, their configuration, and communication protocols. Various descriptions of architecture have been developed over the years with an unusually large number of superficial icons and symbols. This situation has created a need for more coherent systematic representations of network architecture. This paper is intended to refine the design, analysis, and documentation of network architecture by adopting a conceptual model called a thinging (abstract) machine (TM), which views all components of a network in terms of a single notion: the flow of things in a TM. Since cloud computing has become increasingly popular in the last few years as a model for a shared pool of networks, servers, storage, and applications, we apply the TM to model a real case study of cloud networks. The resultant model introduces an integrated representation of computer networks.

cs.SE↗

Modeling the Realization and Execution of Functions and Functional Requirements

Requirements engineering plays a critical role in developing software systems. One of the most difficult tasks in this process is identifying functional requirements. A critical problem in many projects is missing requirements until late in the development cycle. In this paper, our core interest is function modeling, which refers to building models of systems based on their functionalities and on the functionalities of their subcomponents. We present a framework as the basis for specifying functional requirements via a modeling language that produces a high-level diagrammatic representation. The aim is to deliver an overall system description, facilitate communication and understanding, construct a holistic view of the system above the domains of different expertise, and lay the foundation for the design phase. We analyze the notion of function and its elementary types and apply examples of natural language description and scenarios. The results reveal a new method that lays a foundation for works on functionality and viable methodology for capturing its requirements.

cs.SE↗

Modeling Network Security: Case Study of Email System

We study operational security in computer network security, including infrastructure, internal processes, resources, information, and physical environment. Current works on developing a security framework focus on a security ontology that contributes to applying common vocabulary, but such an approach does not assist in constructing a foundation for a holistic security methodology. We focus on defining the bounds and creating a representation of a security system by developing a diagrammatic representation (i.e. a model) as a means to describe computer network processes. The model, referred to a thinging machine, is a first step toward developing a security strategy and plan. The general aim is to demonstrate that the representation of the security system plays a key role in making thinking visible through conceptual description of the operational environment, a region in which active security operations are undertaken. We apply the proposed model for email security by conceptually describing a real email system.

cs.SE↗

Modeling Events and Events of Events in Software Engineering

A model is a simplified representation of portion of reality that hides a system s nonessential characteristics. It provides a means for reducing complexity as well as visualization and communication and a basis for building it. Most models involve graphic languages during many of the software lifecycle phases. A new model, called thinging machine (TM), has recently been developed as an extension of the input-process-output framework. The paper focuses on events in a TM, offering a new perspective that captures a system s dynamic behaviors and a means of diagrammatically modeling events. The event notion is an important factor in giving semantics to specifications and providing a natural way to specify the interfaces and observable behavior of system components. Specifically, five generic TM event processes are analyzed: create, process, receive, release, and transfer. All events can be mapped (or reduced) to the events of these five event processes

cs.SE↗

Thinging as a Way of Modeling in Poiesis: Applications in Software Engineering

From a software design perspective, a clear definition of design can enhance project success and development productivity. Even though the focus is on software engineering, in this paper, we view the notion of design from the wider point of view of poiesis, the field of the study of the phenomena of creation and production of the artifacts. In poiesis, design operates through the medium of modeling. According to several sources, there is as yet no systematic consolidated body of knowledge that a practitioner can refer to when designing a computer-based modeling language. Modeling languages such as UML are practice-based and seldom underpinned with a solid theory-be it mathematical, ontological or concomitant with language use. In this paper, we propose adopting a recent addition to the diagrammatic languages, the thinging machine (abbreviated TM), as a design language in the general area of Poiesis and we exemplify TM by applying it to software engineering design. We show intermediate steps of design that led to producing a TM model for a case study. The case study is taken from a source where a full UML-based design was given. Contrasting the models produced by the two methodologies points to the viability of TM as an integrating and unifying modeling language in the design field.

cs.SE↗

Thinging the Use Case Model

Use cases as textual visual modeling techniques have become a key construct and the foundation of the most popular de facto standard technique for performing software requirements analysis and specification. This paper describes use cases in terms of a recently proposed model, the thinging machine (TM) model. Such a link to TM strengthens the notion of use cases and clarifies related concepts. For example, the concept of events is utilized in an unconstrained way in use cases, and TM may contribute in this direction. Several selected use cases are remodeled using TM. This study provides many insights. For example, one result shows that use cases are an activation apparatus of mega-triggering (high-level events) wherein a group of submachines (processes) are actuated.

cs.SE↗

Authentication Modeling with Five Generic Processes

Conceptual modeling is an essential tool in many fields of study, including security specification in information technology systems. As a model, it restricts access to resources and identifies possible threats to the system. We claim that current modeling languages (e.g., Unified Modeling Language, Business Process Model and Notation) lack the notion of genericity, which refers to a limited set of elementary processes. This paper proposes five generic processes for modeling the structural behavior of a system: creating, releasing, transferring, receiving, and processing. The paper demonstrates these processes within the context of public key infrastructure, biometric, and multifactor authentication. The results indicate that the proposed generic processes are sufficient to represent these authentication schemes.

cs.OH↗

Thing/Machine-s (Thimacs) Applied to Structural Description in Software Engineering

We are pursuing a modeling methodology that views the world as a realm of things. A thing is defined as something that can be created, processed, released, transferred, and received. Additionally, in this modeling approach, a thing is a five-dimensional structure referred to as a thinging (abstract) machine. On the other hand, machines are things that are operated on; that is, they are created, processed, released, transferred, and received. The intertwining with the world is accomplished by integrating these two modes of an entity s being: being a thing that flows through machines and being a machine that processes things. This paper further enriches these notions of things and machines. We present further exploration of the thinging machine model through introducing a new notion called the thing/machine (thimac) as a label of the unity of things/machines. Thimacs replace traditional categorization, properties, and behavior with creating, processing, releasing, transferring, and receiving, as well as the two linking notions of flow and triggering. The paper discusses the concept of thimacs with examples and focuses on the notion of structure as it applies to various diagrammatic modeling methodologies.

cs.SE↗

Five Generic Processes for Behavior Description in Software Engineering

Behavior modeling and software architecture specification are attracting more attention in software engineering. Describing both of them in integrated models yields numerous advantages for coping with complexity since the models are platform independent. They can be decomposed to be developed independently by experts of the respective fields, and they are highly reusable and may be subjected to formal analysis. Typically, behavior is defined as the occurrence of an action, a pattern over time, or any change in or movement of an object. In systems studies, there are many different approaches to modeling behavior, such as grounding behavior simultaneously on state transitions, natural language, and flowcharts. These different descriptions make it difficult to compare objects with each other for consistency. This paper attempts to propose some conceptual preliminaries to a definition of behavior in software engineering. The main objective is to clarify the research area concerned with system behavior aspects and to create a common platform for future research. Five generic elementary processes (creating, processing, releasing, receiving, and transferring) are used to form a unifying higher-order process called a thinging machine (TM) that is utilized as a template in modeling behavior of systems. Additionally, a TM includes memory and triggering relations among stages of processes (machines). A TM is applied to many examples from the literature to examine their behavioristic aspects. The results show that a TM is a valuable tool for analyzing and modeling behavior in a system.

cs.SE↗

Toward Maximum Grip Process Modeling in Software Engineering

Process modeling (PM) in software engineering involves a specific way of understanding the world. In this context, philosophical work is not merely intrinsically important; it can also stand up to some of the more established software engineering research metrics. The object-oriented methodology takes an object as the central concept of modeling. This paper follows from a series of papers that focus on the notion of thinging in the context of the analysis phase of software system modeling. We use an abstract machine named the Thinging Machine (TM) as the mechanism by which things reveal themselves. We introduce a more in-depth investigation of a grand TM that Signifies the totality of entities in the modeled system. We also present new notions, such as maximum grip, which refers to the level of granularity of the significance where optimum visibility of the model s meaning is given. The outcomes of this research indicate a positive improvement in the field of PM that may lead to enhance understanding of the object-oriented approach. TM also presents the possibility of developing a new method in PM.

cs.SE↗

Existential Ontology and Thinging Modeling in Software Engineering

This study is a sequel to a previous study entitled Thinging for Software Engineers, which showed that the notion of thing, in contrast to objectification, has some beneficial orientations in modeling. The incorporation of thinging in conceptual modeling is required to explain the roots of Heidegger s conception of things. This requires an understanding of Heidegger s existential ontology to identify any relationship to thinging. This paper is an exploration of existential ontology in search of further clarification of the concept of thinging. We start by reviewing the thinging machine (TM) introduced in Thinging for Software Engineers and provide a full example of its utilization in modeling an ordering system. We follow this with a discussion of the being (existence) of things in the word and Heidegger s interpretation of time as a possible horizon for any understanding whatsoever of being. We emphasize that the TM is not related directly to the Heideggerian notion of existence and its elaborate analysis of Dasein. However, there may be some benefit to studying non-Dasein things to provide a philosophical foundation to thinging, as utilized in TM modeling. Interestingly, the TM can be utilized to model existential ontology, thus increasing the level of understanding about them.

cs.SE↗

Thinging for Computational Thinking

This paper examines conceptual models and their application to computational thinking. Computational thinking is a fundamental skill for everybody, not just for computer scientists. It has been promoted as skills that are as fundamental for all as numeracy and literacy. According to authorities in the field, the best way to characterize computational thinking is the way in which computer scientists think and the manner in which they reason how computer scientists think for the rest of us. Core concepts in computational thinking include such notions as algorithmic thinking, abstraction, decomposition, and generalization. This raises several issues and challenges that still need to be addressed, including the fundamental characteristics of computational thinking and its relationship with modeling patterns (e.g., object-oriented) that lead to programming/coding. Thinking pattern refers to recurring templates used by designers in thinking. In this paper, we propose a representation of thinking activity by adopting a thinking pattern called thinging that utilizes a diagrammatic technique called thinging machine (TM). We claim that thinging is a valuable process as a fundamental skill for everybody in computational thinking. The viability of such a proclamation is illustrated through examples and a case study.

cs.SE↗

User Interface as a Thinging Machine

The availability of interaction devices has raised interest in techniques to support the user interface (UI). A UI specification describes the functions that a system provides to its users by capturing the interface details and includes possible actions through interaction elements. UI developers of interactive systems have to address multiple sources of heterogeneity, including end users heterogeneity and variability of the context of use. This paper contributes to the notion of interactivity and interfacing by proposing a methodology for producing engineering-type diagrams of (abstract) machine processes that can specify uniform structure and behavior of systems through a synchronic order of states (stages): creation, release, transfer, receive, and process. As an example, the diagrammatic methodology is applied to conceptualizing space as a machine. The resulting depiction seems suitable for use in designing UIs in certain environments.

cs.SE↗

Conceptual Modeling of a Procurement Process: Case study of RFP for Public Key Infrastructure

Procurement refers to a process resulting in delivery of goods or services within a set time period. The process includes aspects of purchasing, specifications to be met, and solicitation notifications as in the case of Request For Proposals (RFPs). Typically such an RFP is described in a verbal ad hoc fashion, in English, with tables and graphs, resulting in imprecise specifications of requirements. It has been proposed that BPMN diagrams be used to specify requirements to be included in RFP. This paper is a merger of three topics: (i) Procurement development with a focus on operational specification of RFP, (ii) Public key infrastructure (PKI) as an RFP subject, and (iii) Conceptual modeling that produces a diagram as a supplement to an RFP to clarify requirements more precisely than traditional tools such as natural language, tables, and ad hoc graphs.

cs.SE↗

Conceptual Modeling of Inventory Management Processes as a Thinging Machine

A control model is typically classified into three forms: conceptual, mathematical and simulation (computer). This paper analyzes a conceptual modeling application with respect to an inventory management system. Today, most organizations utilize computer systems for inventory control that provide protection when interruptions or breakdowns occur within work processes. Modeling the inventory processes is an active area of research that utilizes many diagrammatic techniques, including data flow diagrams, Universal Modeling Language (UML) diagrams and Integration DEFinition (IDEF). We claim that current conceptual modeling frameworks lack uniform notions and have inability to appeal to designers and analysts. We propose modeling an inventory system as an abstract machine, called a Thinging Machine (TM), with five operations: creation, processing, receiving, releasing and transferring. The paper provides side-by-side contrasts of some existing examples of conceptual modeling methodologies that apply to TM. Additionally, TM is applied in a case study of an actual inventory system that uses IBM Maximo. The resulting conceptual depictions point to the viability of FM as a valuable tool for developing a high-level representation of inventory processes.

cs.SE↗