To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
Serious game design presents a unique challenge to researchers and developers alike. The most successful games are designed by integrating two disparate bodies of knowledge: training and education, and high-quality game design. Simply pairing instructional elements with traditional game elements, however, is often inadequate. In an attempt to improve serious game design, we review several effective instructional mechanisms extracted from the science of learning literature and discuss ways that they can be directly implemented in games. We make explicit suggestions as to how serious games should be designed with respect to core elements of gameplay, sensory and perceptual elements, and cognitively focused elements.
The “Whys” and “Hows” of Serious Games
Sitting in the quiet glow of the monitor, she slips the headphones over her ears. Within moments, she’s in the game. She’s examining the virtual room for clues and contemplating her next move. She raises her gun, and with two quick shots and a running start, she i nds herself thrown face-i rst into a wall. Unhappy with this result, she tries again, this time experimenting with portal placement and springboard jumps until she builds up enough momentum to successfully launch herself out of the room and into the next area. The music picks up and the sound of a nearby enemy chattering away is heard. As she’s about to face her next challenge, her teacher flips on the lights, signaling to the class that it is time to stop playing Portal 2 (Valve, 2011) and come together to discuss the day’s physics lesson on how acceleration can be applied in the game to beat that level.
In this chapter, you will learn about the unique challenges of learning game design, the necessary multidisciplinary makeup of learning game design teams, and ways to improve team efficiency and effectiveness through communication. Learning games combine content and context to create a meaningful interaction between players’ experience and learning. They often employ an experiential learning strategy and have been called “designed experiences” (Squire, 2006). When learning games are viewed in this light, designing them becomes quite a challenge for several reasons: 1) many variables must be manipulated to achieve the right kind of learning experience at the right time; 2) learning game design has characteristics of ill-structured problem solving; 3) as an ill-structured problem, it requires learning game designers with a high level of expertise; and 4) the solution will require input from multiple disciplines. Having a highly skilled multidisciplinary design team raises another set of challenges including the development of a shared mental model. Research has shown that when team members think similarly, they are more likely to work effectively together (Cannon-Bowers & Salas, 1998; Guzzo & Salas, 1995; Hackman, 1990). When team members understand their differences and take measures to leverage them, learning game design teams are strengthened, leading to a more efficient and effective design process. Research indicates that multidisciplinary learning game design team members think differently about: 1) design goals; 2) authenticity requirements; 3) feedback design; 4) the integration of fun within the learning experience; 5) term definition; and 6) documentation contents. Current design models do not include steps to mitigate these differences and to build a team’s shared mental model. Therefore, we provide specific actions that should be integrated into a learning game design model to support the critical and necessary communications among learning game design team members.
We study the asymptotic behaviour of (a) information leakage and (b) adversary's error probability in information hiding systems modelled as noisy channels. Specifically, we assume the attacker can make a single guess after observing n independent executions of the system, throughout which the secret information is kept fixed. We show that the asymptotic behaviour of quantities (a) and (b) can be determined in a simple way from the channel matrix. Moreover, simple and tight bounds on them as functions of n show that the convergence is exponential. We also discuss feasible methods to evaluate the rate of convergence. Our results cover both the Bayesian case, where an a priori probability distribution on the secrets is assumed known to the attacker, and the maximum-likelihood case, where the attacker does not know such distribution. In the Bayesian case, we identify the distributions that maximize leakage. We consider both the min-entropy setting studied by Smith and the additive form recently proposed by Braun et al. and show the two forms do agree asymptotically. Next, we extend these results to a more sophisticated eavesdropping scenario, where the attacker can perform a (noisy) observation at each state of the computation and the systems are modelled as hidden Markov models.
This paper proposes a formal approach to the design and programming of long running transactions (LRTs). We exploit techniques from process calculi to define cJoin, which is an extension of the Join calculus with few well-disciplined primitives for LRT. Transactions in cJoin are intended to describe the transactional interaction of several partners, under the assumption that any partner executing a transaction may communicate only with other transactional partners. In such case, the transactions run by any party are bound to achieve the same outcome (i.e., all succeed or all fail). Hence, a distinguishing feature of cJoin, called dynamic joinability, is that ongoing transactions can be merged to complete their tasks and when this happens either all succeed or all abort. Additionally, cJoin is based on compensations i.e., partial executions of transactions are recovered by executing user-defined programs instead of providing automatic rollback. The expressiveness and generality of cJoin is demonstrated by many examples addressing common programming patterns. The mathematical foundation is accompanied by a prototype language implementation, which is an extension of the JoCaml compiler.
The VESSEL Damage Control Trainer (DCT) was designed to augment classroom instruction at the Navy Great Lakes Recruit Training Center. This game allows students to have practice opportunities and to demonstrate their skills in communication, shipboard navigation, and basic damage control concepts. The game’s primary goal was to increase performance in the mixed reality simulation Battle Stations 21, which serves as the final culminating event of Navy recruit training.
The design of the DCT game was sophisticated in its ability to leverage prior experiences and affordances its primary audience might have with 3-D games, while creating a motivating learning environment that anyone should be able to quickly find intuitive. By incorporating game design principles like continuous feedback, menus and goal structures, and difficult problems, DCT has created an engaging and challenging game that should increase its players’ ability to perform in their real-life tasks.
Introduction
When a player launches a game for the very i rst time, they do so with a myriad of expectations about what the experience that lies before them might include. When the game that you’re about to play is a serious game, a serious game specii cally that relates to skills that might ultimately save the lives of you and your friends, that expectation becomes different. Maybe it is not so important that this game be fun, or good looking, or even all that easy to play. Imagine you’re a naval recruit, and you’re about to play a game that was designed to help you practice THE culminating event of your training. You know there will soon be a real-life test on all the material that this game is supposed to help you practice and failing that test has consequences that you don’t want to think about.
A multiparty session forms a unit of structured communication among many participants which follow communication sequences specified as a global type. When a process is engaged in two or more sessions simultaneously, different sessions can be interleaved and can interfere at runtime. Previous work on multiparty session types has ignored session interleaving, providing a limited progress property ensured only within a single session, by assuming non-interference among different sessions and by forbidding delegation. This paper develops, besides a more traditional, compositional communication type system, a novel static interaction type system for global progress in dynamically interleaved and interfered multiparty sessions. The interaction type system infers causalities of channels making sure that processes do not get stuck at intermediate stages of sessions also in presence of delegation.
We use hidden Markov models to motivate a quantitative compositional semantics for noninterference-based security with iteration, including a refinement- or ‘implements’ relation that compares two programs with respect to their information leakage; and we propose a program algebra for source-level reasoning about such programs, in particular as a means of establishing that an ‘implementation’ program leaks no more than its ‘specification’ program.
This joins two themes: we extend our earlier work, having iteration but only qualitative (Morgan 2009), by making it quantitative; and we extend our earlier quantitative work (McIver et al. 2010) by including iteration.
We advocate stepwise refinement and source-level program algebra – both as conceptual reasoning tools and as targets for automated assistance. A selection of algebraic laws is given to support this view in the case of quantitative noninterference; and it is demonstrated on a simple iterated password-guessing attack.
Three integrity measures are introduced: contamination, channel suppression and program suppression. Contamination is a measure of how much untrusted information reaches trusted outputs; it is the dual of leakage, which is a measure of information-flow confidentiality. Channel suppression is a measure of how much information about inputs to a noisy channel is missing from the channel outputs. And program suppression is a measure of how much information about the correct output of a program is lost because of attacker influence and implementation errors. Program and channel suppression do not have interesting confidentiality duals. As a case study, a quantitative relationship between integrity, confidentiality and database privacy is examined.
With the increase in the use of games for education and training, learning game developers seek to create games that not only teach, but engage and motivate learners.
One attribute often associated with successful and motivating games or training devices is authenticity, also referred to as realism or fidelity. Many falsely equate the amount of realism within a training environment to effective training; the higher the realism, the more effective the training. However, as in other training methodologies, a combination of factors, such as learner expertise, instructional domain, and details related to the knowledge and skills taught, informs the optimal level of authenticity within an effective learning game.
This chapter defines and describes authenticity as the combination of physical and cognitive fidelity. We discuss these concepts and summarize cognitive research related to authenticity and effective learning. Finally, we discuss the decisions a learning game developer makes during different stages of the development process to achieve the optimal blend of authenticity, and ultimately an effective, motivating learning game.
Practice Marketing is a serious game designed to teach the introductory principles of marketing to college students. The game was built for McGraw-Hill Higher Education to serve as a learning tool that would support multiple introductory curricula and textbooks. Practice Marketing is the first in a line of games envisioned by McGraw-Hill for multiple higher education subjects that will provide a consistent user experience, look and feel, and common elements. In this chapter, we introduce the design and development process we followed in creating Practice Marketing and summarize some of the lessons we learned in our effort.
Introduction
At Muzzy Lane, we believe that well-designed games offer a compelling medium to give students the means and the vehicle to personally interact with educational content. By designing games in which the core game mechanic reinforces the key learning objectives, as well as by using feedback systems that correlate to valid assessment metrics, serious game developers can provide a better alternative to current methods of instruction. And we know that today’s students – from kindergarten to grad school – are willing to spend hours and hours in front of a console or a computer when they’re playing games they find engaging.
Every co-c.e. closed set (Π01 class) in Cantor space is represented by a co-c.e. tree. Our aim is to clarify the interaction between the Medvedev and Muchnik degrees of co-c.e. closed subsets of Cantor space and the Turing degrees of their co-c.e. representations. Among other results, we present the following theorems: if v and w are different c.e. degrees, then the collection of the Medvedev (Muchnik) degrees of all Π01 classes represented by v and the collection represented by w are also different; the ideals generated from such collections are also different; the collections of the Medvedev and Muchnik degrees of all Π01 classes represented by incomplete co-c.e. sets are upward dense; the collection of all Π01 classes represented by K-trivial sets is Medvedev-bounded by a single Π01 class represented by an incomplete co-c.e. set; and the Π01 classes have neither nontrivial infinite suprema nor infima in the Medvedev lattice.
The subtyping relation defined for dyadic session type theories may compromise the liveness of multi-party sessions. In this paper, we define a fair subtyping relation for multi-party session types that preserves liveness, we relate it with the subtyping relation for dyadic session types and provide coinductive, axiomatic and algorithmic characterizations for it.
The use of interactive theorem provers to establish the correctness of critical parts of a software development or for formalizing mathematics is becoming more common and feasible in practice. However, most mature theorem provers lack a direct treatment of partial and general recursive functions; overcoming this weakness has been the objective of intensive research during the last decades. In this article, we review several techniques that have been proposed in the literature to simplify the formalization of partial and general recursive functions in interactive theorem provers. Moreover, we classify the techniques according to their theoretical basis and their practical use. This uniform presentation of the different techniques facilitates the comparison and highlights their commonalities and differences, as well as their relative advantages and limitations. We focus on theorem provers based on constructive type theory (in particular, Agda and Coq) and higher-order logic (in particular Isabelle/HOL). Other systems and logics are covered to a certain extent, but not exhaustively. In addition to the description of the techniques, we also demonstrate tools which facilitate working with the problematic functions in particular theorem provers.
Under the Virtual Environments for Ship and Shore Experiential Learning (VESSEL) project, we developed the VESSEL Damage Control Trainer (DCT) to help address a key training need at the U.S. Navy Recruit Training Command. Using an agile development methodology and a multidisciplinary team of instructional, gaming, story, and assessment experts, we created a highly successful training game. Our goal was to bridge the gap between the classroom-based instruction recruits received during their boot camp and their final hands-on capstone assessment event. We designed DCT with a focus on using a scaffolded guided practice instructional approach with a relevant story and authentic game elements and interactions. Our team used regular playtesting as well as empirical validation studies to guide the evolution of our design. We introduce our team and development methods and describe some of the key design decisions we made. We discuss some of the lessons we learned and provide some of our recommendations for you to consider in your efforts to create effective learning games.
We present a type system based on session types that works on a conventional pi calculus. Types are equipped with a constructor that describes the two ends of a single communication channel, this being the only type available for describing the behaviour of channels. Session types, in turn, describe the behaviour of each individual channel end, as usual. A novel notion of typing context split allows for typing processes not typable with extant type systems. We show that our system guarantees that typed processes do not engage in races for linear resources. We assess the expressiveness of the type system by providing three distinct encodings – from the pi calculus with polarized variables, from the pi calculus with accept and request primitives, and from the linear pi calculus – into our system. For each language we present operational and typing correspondences, showing that our system effectively subsumes foregoing works on linear and session types. In the case of the linear pi calculus we also provide a completeness result.
Through foreign function interfaces (FFIs), software components in different programming languages interact with each other in the same address space. Recent years have witnessed a number of systems that analyse FFIs for safety and reliability. However, lack of formal specifications of FFIs hampers progress in this endeavour. We present a formal operational model, Java Native Interface (JNI) light (JNIL), for a subset of a widely used FFI – the Java Native Interface (JNI). JNIL focuses on the core issues when a high-level garbage-collected language interacts with a low-level language. It proposes abstractions for handling a shared heap, cross-language method calls, cross-language exception handling, and garbage collection. JNIL can directly serve as a formal basis for JNI tools and systems. We demonstrate its utility by proving soundness of a system that checks native code in JNI programs for type-unsafe use of JNI functions. The abstractions in JNIL are also useful when modelling other FFIs, such as the Python/C interface and the OCaml/C interface.
We propose a framework for reasoning about program security building on language-theoretic and coalgebraic concepts. The behaviour of a system is viewed as a mapping from traces of high (unobservable) events to low (observable) events: the less the degree of dependency of low events on high traces, the more secure the system. We take the abstract view that low events are drawn from a generic semiring, where they can be combined using product and sum operations; throughout the paper, we provide instances of this framework, obtained by concrete instantiations of the underlying semiring. We specify systems via a simple process calculus, whose semantics is given as the unique homomorphism from the calculus into the set of behaviours, i.e. formal power series, seen as a final coalgebra. We provide a compositional semantics for the calculus in terms of rational operators on formal power series and show that the final and the compositional semantics coincide. This compositional, syntax-driven framework lays a foundation for automation and abstraction of a quantified approach to flow security of system specifications.
We present a theory for the design and verification of distributed transactions in dynamically reconfigurable systems. Despite several formal approaches have been proposed to study distributed transactional behaviours, the inter-relations between failure propagation and dynamic system reconfiguration still need investigation. We propose a formal model for transactions in service oriented architectures (SOAs) inspired by the attribute mechanisms of the Java Transaction API. Technically, we model services in ATc (after ‘Attribute-based Transactional calculus’), a CCS-like process calculus where service declarations are decorated with a transactional attribute. Such attribute disciplines, upon service invocation, how the invoked service is executed with respect to the transactional scopes of the invoker. A type system ensures that well-typed ATc systems do not exhibit run-time errors due to misuse of the transactional mechanisms. Finally, we define a testing framework for distributed transactions in SOAs based on ATc and prove that under reasonable conditions some attributes are observationally indistinguishable.
We study usage automata, a formal model for specifying policies on the usage of resources. Usage automata extend finite state automata with some additional features, parameters and guards, that improve their expressivity. We show that usage automata are expressive enough to model policies of real-world applications. We discuss their expressive power, and we prove that the problem of telling whether a computation complies with a usage policy is decidable. The main contribution of this paper is a model checking technique for usage automata. The model is that of usages, i.e. basic processes that describe the possible patterns of resource access and creation. In spite of the model having infinite states, because of recursion and resource creation, we devise a polynomial-time model checking technique for deciding when a usage complies with a usage policy.