Jonathan Corley

Learn More
We present the cloud architecture of AToMPM, an open-source framework for designing domain-specific modeling environments, performing model transformations, manipulating and managing models. AToMPM's cloud-based architecture makes it independent from any operating system, platform, or device it may execute on as well as any visualization of the modeling(More)
Educators are often seeking new ways to motivate or inspire students to learn. Our past efforts in K-12 outreach included robotics and media computation as the contexts for teaching Computer Science (CS). With the deep interest in mobile technologies among teenagers, our recent outreach has focused on using smartphones as a new context. This paper is an(More)
Omniscient debugging is a promising technique that relies on execution traces to enable free traversal of the states reached by a system during an execution. While some General-Purpose Languages (GPLs) already have support for omniscient debugging, developing such a complex tool for any executable Domain-Specific Modeling Language (xDSML) remains a(More)
This poster describes our first-year experience in developing and evaluating a CS Principles professional development model for training a cohort of teachers across an entire state geography. The scalable deployment and sustainable persistence of the new CS Principles course adopts the successful practices of a national AP training program developed by the(More)
CS Principles is a new AP course being developed by the College Board and introduced into high schools across the nation. To aid and encourage the adoption of the new CSP course, we have developed a Massively-Open Online Course (MOOC) over the past two years that serves as a professional development (PD) offering for CS Principles. Additionally, we have(More)
In model-driven engineering, stakeholders work on models in order to design, transform, simulate, and analyze systems. Complex systems typically involve many stakeholder groups working in a coordinated manner on different aspects of a system. Therefore, there is a need for collaborative platforms to allow modelers to work together. Previously, we introduced(More)
This paper discusses a technique for supporting omniscient debugging for model transformations, which are used to define core operations on software and system models. Similar to software systems developed using general-purpose languages, model transformations are also subject to human error and may possess defects. Existing model-driven engineering tools(More)
Model-Driven Engineering has emerged as a software development paradigm that can assist in separating the issues of the problem space of a software system from the complexities of implementation in the solution space. As software systems have become more complex, a need for multiple abstractions to describe a single system has emerged. The development teams(More)
This paper presents the results of an exploratory study investigating the formation, use, and impact of queries during debugging tasks. The results of this study provide additional evidence regarding the impact of query-based debuggers and can inform efforts that are focused on developing and improving query-based debuggers.