In this paper, we introduce CIDER, a Concept-based Interactive DEsign Recovery tool that recovers a software design in the form of hierarchically organized concepts. In addition to facilitating design comprehension, it also enables designers to assess design quality and identify design problems. It integrates multiple clustering algorithms to reduce the complexity of the recovered design structure, leverages information retrieval techniques to name each cluster using the most relevant topic terms to ease design comprehension, and identifies and labels highly-coupled file clusters to reveal possible design problems. It enables interactive selection of concepts of interest and recovers partial design structures accordingly. The user can also interactively change the levels of recovered hierarchical structure to visualize the design at different granularities.
more »
« less
CIDER: Concept-based Interactive Design Recovery
In this paper, we introduce CIDER, a Concept-based Interactive DE-sign Recovery tool that recovers a software design in the form of hierarchically organized concepts. In addition to facilitating design comprehension, it also enables designers to assess design quality and identify design problems. It integrates multiple clustering algorithms to reduce the complexity of the recovered design structure, leverages information retrieval techniques to name each cluster using the most relevant topic terms to ease design comprehension, and identifies and labels highly-coupled file clusters to reveal possible design problems. It enables interactive selection of concepts of interest and recovers partial design structures accordingly. The user can also interactively change the levels of recovered hierarchical structure to visualize the design at different granularities.
more »
« less
- PAR ID:
- 10359522
- Date Published:
- Journal Name:
- 2022 IEEE/ACM 44th International Conference on Software Engineering - Companion, ICSE, Companion
- Format(s):
- Medium: X
- Sponsoring Org:
- National Science Foundation
More Like this
-
-
Over the past year, institutions have explored various manners to advance education while remaining socially distant, namely, through online and hybrid delivery methods. While these methods are actively employed now, the question regarding their effectiveness on student comprehension of the concepts highlighted remains. The aim of this work is to establish how effective online, asynchronous modules are for such. With respect to first-year programs geared towards establishing the foundational concepts of engineering design, two asynchronous, interactive modules were developed and deployed. Specifically, these modules introduced the foundational design concepts of stakeholders, need statements, information gathering, and design specifications. They were also developed in such a way that required student input such as identifying stakeholders or matching need statements. Student responses for each input was recorded and previously utilized to complete basic statistical analysis and derive preliminary trends. Upon completion of both modules, students completed an individual homework assignment that assessed their comprehension of the content covered in both modules. The assignment was comprised of several sections with multiple questions per section. Each question highlighted various aspects of the engineering problem framing process such as stakeholders or need statements. Basic statistical analysis was conducted for the scored items followed by correlation analysis with student performance on the modules previously completed. This work was intended to establish student comprehension of fundamental engineering design concepts after learning such through distance-learning methods, namely, asynchronous, interactive modules. Conclusions drawn from this work will possess broad ramifications and enable educators to determine if such methods are as sufficient as traditional in-person methods, if portions of the modules must be modified to enhance student comprehension, or if alternative methods must be employed altogether.more » « less
-
Complex software systems consist of multiple overlapping design structures, such as abstractions, features, crosscutting concerns, or patterns. This is similar to how a human body has multiple interacting subsystems, such as respiratory, digestive, or circulatory. Unlike in the medical domain, software designers do not have an effective way to distinguish, visualize, comprehend, and analyze these interleaving design structures. As a result, developers often struggle through the maze of source code. In this paper, we present an Automated Concept Explanation (ACE) framework that automatically extracts and categorizes major concepts from source code based on the roles that files play in design structures and their topic frequencies. Based on these categorized concepts, ACE recovers four categories of high-level design models using different algorithms and generates a natural language explanation for each. To assess if and how ACE can help developers better understand design structures, we conducted an empirical study where two groups of graduate students were assigned three design comprehension tasks: identifying feature-related files, identifying dependencies among features, and identifying design patterns used, in an open-source project. The results reveal that the students who used ACE can accomplish these tasks much faster and more accurately, and they acknowledged the usefulness of the categorized concepts and structures, multi-type high-level model visualization, and natural language explanations.more » « less
-
Mobile devices are being used profusely in the classrooms to improve passive learning environments and to enhance student comprehension. However, with respect to students’ active involvement in problem solving activities, the typical usage of the mobile devices in answering multiple choice and true/false questions is not adequate and the use of mobile devices need to be expanded to include dynamic and interactive problem-solving activities to better satisfy students’ learning needs. To facilitate such interactive problem solving using mobile devices, a comprehensive software environment is necessary. This paper details the design, deployment and evaluation of Mobile Response System (MRS) software that facilitates execution and assessment of multi-step in-class interactive problem-solving activities using mobile devices. MRS is an active learning tool, which engages students with the visual representation of a problem that spans on multiple screens, allows them to interact with that, and makes them realize the consequences of their actions instantly and visually. The immediate and automated grading feature of MRS enables a feedback-driven and evidence-based teaching methodology, which is important to improve the quality of classroom learning. MRS is designed to be independent of any interactive problem or its domain. Therefore, it allows easier integration of interactive activity Apps developed by others and can be used in any discipline. The results obtained from software metrics and runtime performance data verified the quality of the software. Additionally, the in-class assessment data verified that the MRS software is a helpful intervention for improving student comprehension and satisfaction.more » « less
-
In Gaussian graphical model selection, noise-corrupted samples present significant challenges. It is known that even minimal amounts of noise can obscure the underlying structure, leading to fundamental identifiability issues. A recent line of work addressing this “robust model selection” problem narrows its focus to tree-structured graphical models. Even within this specific class of models, exact structure recovery is shown to be impossible. However, several algorithms have been developed that are known to provably recover the underlying tree-structure up to an (unavoidable) equivalence class. In this paper, we extend these results beyond tree-structured graphs. We first characterize the equivalence class up to which general graphs can be recovered in the presence of noise. Despite the inherent ambiguity (which we prove is unavoidable), the structure that can be recovered reveals local clustering information and global connectivity patterns in the underlying model. Such information is useful in a range of real-world problems, including power grids, social networks, protein-protein interactions, and neural structures. We then propose an algorithm which provably recovers the underlying graph up to the identified ambiguity. We further provide finite sample guarantees in the high-dimensional regime for our algorithm and validate our results through numerical simulations.more » « less
An official website of the United States government

