Browsing by Author "De Silva, Ian"
Now showing 1 - 4 of 4
Results Per Page
Sort Options
Item A Reference Model for Simulating Agile Processes(ACM, 2015) De Silva, Ian; Rayadurgam, Sanjai; Heimdahl, MatsAgile development processes are popular when attempting to respond to changing requirements in a controlled manner; however, selecting an ill-suited process may increase project costs and risk. Before adopting a seemingly promising agile approach, we desire to evaluate the approach's applicability in the context of the specific product, organization, and staff. Simulation provides a means to do this. However, in order to simulate agile processes we require both the ability to model individual behavior as well as the decoupling of the process and product. To our knowledge, no existing simulator nor underlying simulation model provide a means to do this. To address this gap, we introduce a process simulation reference model that provides the constructs and relationships for capturing the interactions among the individuals, product, process, and project in a holistic fashion---a necessary first step towards an agile-process evaluation environment.Item Domain Modeling for Development Process Simulation(ACM, 2017) De Silva, Ian; Rayadurgam, Sanjai; Heimdahl, MatsSimulating agile processes prior to adoption can reduce the risk of enacting an ill-fitting process. Agent-based simulation is well-suited to capture the individual decision-making valued in agile. Yet, agile's lightweight nature creates simulation difficulties as agents must fill-in gaps within the specified process. Deliberative agents can do this given a suitable planning domain model. However, no such model, nor guidance for creating one, currently exists. In this work, we propose a means for constructing an agile planning domain model suitable for agent-based simulation. As such, the domain model must ensure that all activity sequences derived from the model are executable by a software agent. We prescribe iterative elaboration and decomposition of an existing process to generate successive internally-complete and -consistent domain models, thereby ensuring plans derived from the model are valid. We then demonstrate how to generate a domain model and exemplify its use in planning the actions of a single agent.Item Efficient Test Coverage Measurement for MC/DC(University of Minnesota, 2013) Whalen, Michael; Heimdahl, Mats; De Silva, IanNumerous activities require low-overhead monitoring of software applications, for example, run-time verification, test coverage measurement, and data collection. To support monitoring, current approaches usually involve extensive instrumentation of the software to be monitored, causing significant performance penalties and also requiring some means to ensure that the monitoring code will not cause incorrect behavior in the monitored application. To tackle this problem, we have explored a hardware-supported framework for monitoring and observation of software-intensive systems. In our approach, we leverage multi-core processor architectures to create a non-intrusive, predictable, fine-grained, and highly extensible general purpose monitoring framework. We have developed a novel architecture that augments each core with programmable extraction logic to observe an application executing on the core as its program state changes. Based on this architecture, we present a novel and highly efficient algorithm for tracking MC/DC coverage.Item A Framework to Evaluate Candidate Agile Software Development Processes(2019-07) De Silva, IanToday's software development projects must respond to fierce competition, a constantly changing marketplace, and rapid technological innovation. Agile development processes are popular when attempting to respond to these changes in a controlled manner; however, selecting an ill-suited process may increase project costs and risk. Before adopting a seemingly promising Agile approach, we desire to evaluate the approach's applicability in the context of the specific product, organization, and staff. Simulation provides a means to do this. Because of Agile's emphasis on the individual and interactions, we theorize that a high-fidelity model---one that models individual behavior---will produce more accurate outcome predictions than those that do not account for individual behavior. To this end, we define criteria, based on the Agile Manifesto, for determining if a simulation is suited to model Agile processes and use the criteria to assess existing simulations (and other evaluation frameworks). Finding no suitable evaluation framework, we focus on constructing a simulation that satisfies our criteria. In this work, we propose a process simulation reference model that provides the constructs and relationships needed to capture the interactions among the individuals, product, process, and project in a holistic fashion. As a means for evaluating both our criteria and reference model, we constructed the Lean/Agile Process Simulation Environment (LAPSE), a multi-agent simulation framework for evaluating Agile processes prior to adoption within an organization. The contributions of this work are threefold. Building on the simulation assessment criteria of Kellner, Madachy, and Raffo and the Agile Manifesto, we establish criteria for assessing Agile simulations. From there, we define a reference model that captures the constructs and relationships needed to simulate Agile processes. We then show the satisfiability of our criteria and demonstrate how the constructs of the reference model fit together by building LAPSE. This work lays the groundwork for detailed a priori process evaluation and enables future research into process transformation.