Theories of graphs and graph transformations form an important part of the mathematical foundations of computing, and have been applied in a wide range of areas from the design and analysis of algorithms to the formalization of various computer systems and programs. In this thesis, we study how graphs and graph transformations can be used to model the static structure and dynamic behavior of object-orientated and service-oriented systems.
Our work is mainly motivated by the difficulty in understanding and reasoning about object-orientated and service-oriented programs, which have more sophisticated features compared with traditional procedural programs. We show that the use of graphs and graph transformations provides both an intuitive visualization and a formal representation of object-orientated and service-oriented programs with these features, improving people’s understanding of the execution states and behaviors of these programs.
We provide a graph-based type system, operational semantics and refinement calculus for an object-oriented language. In this framework, we define class structures and execution states of oo programs as directed and labeled graphs, called class graphs and state graphs, respectively. The type system checks whether a program is well-typed based on its class graph, while the operational semantics defines each step of program execution as a simple graph transformations between state graphs. We show the operational semantics is type-safe in that the execution of a well-typed program does not “go wrong”. Based on the operational semantics, we study the notion of structure refinement of oo programs as graph transformations between their class graphs. We provide a few groups of refinement rules for various purposes such as class expansion and polymorphism elimination and prove their soundness and relative completeness.
We also propose a graph-based representation of service-oriented systems specified in a service-oriented process calculus. In this framework, we define states of service-oriented systems as hierarchical graphs that naturally capture the hierarchical nature of service structures. For this, we exploit a suitable graph algebra and set up a hierarchical graph model, in which graph transformations are studied following the well-known Double-Pushout approach. Based on this model, we provide a graph transformation system with a few sets of graph transformation rules for various purposes such as process copy and process reduction. We prove that the graph transformation system is sound and complete with respect to the reduction semantics of the calculus.
This paper presents the results after three years of running of an instructional method that utilizes free/libre open source software (FLOSS) projects as tools for teaching software engineering in formal education. In the last three academic years, a total of 268 juniors majoring in Informatics (in a 4-year program) participated in study, assuming the roles of testers, developers, and requirements engineers. Students appreciated the benefits gained by the method and identified aspects that require further improvement. In the following, we present (a) the details of our method, (b) students’ opinions as recorded through a questionnaire including both closed and open ended questions, and (c) conclusions on how the use of FLOSS projects can be applied and proved beneficial for the students.
The television landscape is in a state of flux. In this new environment, profit-driven media companies have to balance tradeoffs between traditional and new channels of video distribution to optimize returns on their investments in content generation. This chapter describes the challenges traditional television service providers face in adapting their strategies to an environment in which the internet is playing an increasingly prominent role as a new distribution channel. In the short to intermediate run there is the challenge of finding ways to monetize an internet audience without cannibalizing profits earned through traditional distribution channels. The longer-term challenge is adapting to a distribution technology that embeds a fundamentally different economic logic for video market organization. In this chapter, we describe and analyze current trends in the internet television market and traditional television industry players’ efforts to respond to the opportunities and threats posed by internet distribution.
In order to precisely analyze healthcare workflows, we examine how healthcare workflows can be modeled and verified with an elementary and concise timed CSP extension. To avoid considering healthcare workflows in isolation, we investigate the usage of our CSP dialect for formally modeling workflows alongside the instruction model of the openEHR specification set, which is a general, maintainable, and interoperable approach to electronic health records. Hence, we present a CSP model for openEHR instructions, which allows timed reasoning, and also integrates a basic notion of data and undefinedness. We show that this CSP dialect is suited to verify important properties of healthcare workflows, like workflow consistency, checking against timed specifications, and resource scheduling.
This chapter gives an overview of the recent advances in GUItesting.Considering the increasing popularity and fast software development cycles (e.g.,desktop and mobile applications), GUI testing gains more importance as it allows us to verify the behavior of a system from the user’s perspective.Thus, it can quickly uncover relevant bugs, which a user could face. Traditional capture-replay GUI testing approaches do not meet the demands of developers anymore. Therefore, there is an increasing research activity in model-based GUI testing, where the user interaction behavior is simulated using a graph-based model.In the following, we outline different graphical notations to describe feasible user interactions, and methods to generate and execute test cases from these models. We discuss the benefits and limitations of the state-of-the-art in GUI testing research and give a brief outlook about new trends and possibilities to improve the GUI testing automation.
In prime event structures with binary con°icts (pes-bc)3 a branching cell  is a subset of events closed under downward causalityand immediate con°ict relations. This means that no event outside the branching cell can be in con°ict with or enable any event inside the branching cell. It bears a strong resemblance to stubborn sets, a partial order reduction method on transition systems. A stubborn set (at a given state) is a subset of actions such that no execution consisting entirely of actions outside the stubborn set can be in con°ict with or enable actions that are inside the stubborn set.
A rigorous study of the relationship between the two ideas, however, is not straightforward due to the facts that 1) stubborn sets utilise sophis-ticated causality and con°ict relations that invalidate the stability and coherence of event structures , 2) without stability it becomes very di±cult to de¯ne concepts like pre¯xes and branching cells, which pre-require a clear notion of causality, and 3) it is challenging to devise a technique for identifying `proper' subsets of transitions as `events' such that the induced event-based system captures exactly the causality and con°ict information needed by stubborn sets.
A promising strategy to promote good governance is harnessing the opportunities provided by the use of mobile phones, widely accessible to most segments of the society, for delivering public information and services and for decision-making by government. This paper investigates the design and implementation of mobile governance (MGOV) strategies for development (MGOV4D). Specifically, it presents an MGOV4D strategy framework to
support mobile Information and Communication Technologies (ICT) for development (MICT4D) projects in meeting their development objectives. The paper consists of four parts. First, it
presents a framework for determining the governance and related MGOV requirements for MICT4D initiatives. Second, it applies the framework to determine the MGOV4D requirements for a concrete case study of migrant head porters – local micro-logistic service providers from Ghana, involving the use of mobile phones to meet the porters’ livelihood needs. Third, based on the identified requirements, it presents a set of MICT4D initiatives that could be developed into MGOV4D programs to address the requirements. Fourth, it synthesizes the MGOV4D strategies that can support the inclusion objectives for the head porters and similar vulnerable groups. In the conclusions, the paper discusses how these results can support policy efforts for achieving the Millennium Development Goal 1 – Poverty Alleviation, and 3 – Gender (specifically Women Empowerment).
Service integration is central to joined-up government initiatives and requires information on the collaborators and the services they offer, roles of different actors, the resources required, and their goals (individual and shared). These information are largely available in unstructured forms on government portals, publications and other textural sources. This paper explores semantic text mining for extracting service-related information from such sources using Natural Language Processing techniques supported by Service-Oriented Process Ontologies. Our solution framework consists of the following steps: (1) creating domain and service-oriented process ontology, (2) extracting service-related information from textual sources based on the ontology, and finally (3) mining relationship among the services based on the extracted information in Step 2 linked with a pre-defined hierarchy of service delivery goals specifying the objective(s) to be achieved among the orchestrated services. We describe our approach to these tasks and discuss the progress of the work, our experiences and the challenges encountered so far.
The 5th International Conference on Theory and Practice of Electronic Governance, ICEGOV2011, took place in Tallinn, Estonia from the 26th to the 28th of October 2011, under the patronage of the Ministry of Economic Affairs and Communication of the Republic of Estonia. The conference was co-organized by: e-Governance Academy in close partnership with Enterprise Estonia, Estonia; and Center for Technology in Government, University at Albany, State University of New York, USA. Part of the ICEGOV conference series, ICEGOV2011 was supported by the series coordinator – UNU-IIST (United Nations University – International Institute for Software Technology) Center for Electronic Governance, Macao SAR, China. The conference took place in the framework of the Nordic IT Week and various ICEGOV2011-collocated events were organized as part of this framework on the 29th of September 2011.
The success of the electronic governance (EGOV) benchmarking has been limited so far. Lacking a theory to integrate existing conceptualizations has made the acquisition and sharing of knowledge produced by different benchmarking exercises difficult. In order to address this problem, this paper: 1) explains the nature of the EGOV benchmarking activity though a well-established theoretical framework - Activity Theory, 2) applies the framework to carry out a mapping between a number of existing EGOV benchmarking conceptualizations, 3) develops an unified conceptualization based on these mappings and 4) validates the resulting model though a real-life national EGOV strategy development project. The use of the Activity Theory in the paper has enabled defining and relating initial dimensions of the EGOV benchmarking activity, and mapping the dimensions present in existing conceptualizations. This not only created a unifying theoretical basis for conceptualizing the EGOV benchmarking activity but allowed learning from and integrating existing conceptualizations. The work impacts on the EGOV benchmarking practice by enabling a logical design of the activity, and contextually correct understanding of existing EGOV benchmarking results with respect to their intended usage.