@article{babik_gehringer_kidd_sunday_tinapple_gilbert_2024, title={A systematic review of educational online peer-review and assessment systems: charting the landscape}, volume={3}, ISSN={["1556-6501"]}, DOI={10.1007/s11423-024-10349-x}, abstractNote={Abstract Over the past two decades, there has been an explosion of innovation in software tools that encapsulate and expand the capabilities of the widely used student peer assessment. While the affordances and pedagogical impacts of traditional in-person, “paper-and-pencil” peer assessment have been studied extensively and are relatively well understood, computerized (online) peer assessment introduced not only shifts in scalability and efficiency, but also entirely new capabilities and forms of social learning interactions, instructor leverage, and distributed cognition, that still need to be researched and systematized. Despite the ample research on traditional peer assessment and evidence of its efficacy, common vocabulary and shared understanding of online peer-assessment system design, including the variety of methods, techniques, and implementations, is still missing. We present key findings of a comprehensive survey based on a systematic research framework for examining and generalizing affordances and constraints of online peer-assessment systems. This framework (a) provides a foundation of a design-science metatheory of online peer assessment, (b) helps structure the discussion of user needs and design options, and (c) informs educators and system design practitioners. We identified two major themes in existing and potential research—orientation towards scaffolded learning vs. exploratory learning and system maturity. We also outlined an agenda for future studies.}, journal={ETR&D-EDUCATIONAL TECHNOLOGY RESEARCH AND DEVELOPMENT}, author={Babik, Dmytro and Gehringer, Edward and Kidd, Jennifer and Sunday, Kristine and Tinapple, David and Gilbert, Steven}, year={2024}, month={Mar} } @article{cui_zhang_li_zhou_song_gehringer_2024, title={How Pre-class Programming Experience Influences Students' Contribution to Their Team Project: A Statistical Study}, url={https://doi.org/10.1145/3626252.3630870}, DOI={10.1145/3626252.3630870}, abstractNote={Group or team projects are an essential component of the software engineering curriculum. Earlier studies have explored how prior programming experience influences students' team project performance and overall class performance in software engineering. However, few studies address the impact of prior programming experience on students' contributions to team projects. Previous work has varied in its definitions of prior programming experience or skill, leading to inconsistent findings. In this study, we collected pre-class GitHub contribution metrics from 237 students (forming 79 teams of three) across two academic years to measure their prior programming experience and skills. We also mined students' project repositories' git logs to collect individual student contributions. A central question revolved around whether students with more substantial prior programming experience were indeed more active contributors to their project teams. Interestingly, our data indicated a positive correlation between prior programming experience and contributions to team projects. We further delved into team dynamics. Specifically, we questioned if teams made up of members with comparable skill levels exhibited a more even distribution of contributions. Contrary to expectations, our findings revealed no association between these two variables. Moreover, we investigated the team configurations that might encourage the rise of "free riders"-students who contributed only minimally. This paper seeks to augment the body of research on computing education and assist educators in understanding how prior programming experience impacts students' contributions in team projects.}, journal={PROCEEDINGS OF THE 55TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, SIGCSE 2024, VOL. 1}, author={Cui, Jialin and Zhang, Runqiu and Li, Ruochi and Zhou, Fangtong and Song, Yang and Gehringer, Edward}, year={2024}, pages={255–261} } @article{rashid_gehringer_khosravi_2024, title={Navigating (Dis)agreement: AI Assistance to Uncover Peer Feedback Discrepancies}, url={https://doi.org/10.1145/3636555.3636931}, DOI={10.1145/3636555.3636931}, abstractNote={Engaging students in the peer review process has been recognized as a valuable educational tool. It not only nurtures a collaborative learning environment where reviewees receive timely and rich feedback but also enhances the reviewer’s critical thinking skills and encourages reflective self-evaluation. However, a common concern arises when students encounter misaligned or conflicting feedback. Not only can such feedback confuse students; but it can also make it difficult for the instructor to rely on the reviews when assigning a score to the work. Addressing this pressing issue, our paper introduces an innovative, AI-assisted approach that is designed to detect and highlight disagreements within formative feedback. We’ve harnessed extensive data from 170 students, analyzing 15,500 instances of peer feedback from a software development course. By utilizing clustering techniques coupled with sophisticated natural language processing (NLP) models, we transform feedback into distinct feature vectors to pinpoint disagreements. The findings from our study underscore the effectiveness of our approach in enhancing text representations to significantly boost the capability of clustering algorithms in discerning disagreements in feedback. These insights bear implications for educators and software development courses, offering a promising route to streamline and refine the peer review process for the betterment of student learning outcomes.}, journal={FOURTEENTH INTERNATIONAL CONFERENCE ON LEARNING ANALYTICS & KNOWLEDGE, LAK 2024}, author={Rashid, M. Parvez and Gehringer, Edward and Khosravi, Hassan}, year={2024}, pages={907–914} } @inproceedings{rashid_doshi_vinay_jia_gehringer_2023, title={'Can we reach agreement?': A context- and semantic-based clustering approach with semi-supervised text-feature extraction for finding disagreement in peer-assessment formative feedback}, DOI={10.5281/zenodo.8115725}, booktitle={EDM 2023: 16th International Conference on Educational Data Mining}, author={Rashid, M.Parvez and Doshi, Divyang and Vinay, Sai Venkata and Jia, Qinjin and Gehringer, Edward F.}, year={2023}, month={Jul} } @article{hu_gehringer_2023, title={Bot With Interactions: Improving GitHub Pull-Request Feedback Through Two-Way Communication}, DOI={10.1109/BotSE59190.2023.00014}, abstractNote={Projects in our software-engineering course require students to submit GitHub pull requests to an open-source software project containing more than 30,000 lines of source code. Once submitted, code is checked by a static code analyzer, as well as a bot named Danger Bot. The Danger Bot is able to detect more than 40 programmable system-specific guideline violations (which are different from static analysis rules). Although use of the Danger Bot was associated with a decrease of 40% in guideline violations, it also emitted some false positives. Neither staff nor students could change the feedback given by the Danger Bot on pull-request pages, because there was only one-way communication, from bot to humans. In this paper, we discuss how we bypass the limitations of the Danger Bot by introducing the Danger Bot 2.0 (hereinafter, ”the bot”) with two-way communication between humans and the bot. In this way, if students or teaching staff find some false positives produced by the bot, they can tell the bot about this. After teaching staff cancel a particular message as a false positive, the bot will not report that message again until it is re-enabled by the staff. We conducted a pilot study for the bot with two-way communication. Results showed that the bot with two-way communication was associated with a significant 70% decrease of unresolved guideline violations and the elimination of 100% false positives in them. The majority of two-way communications happened between the teaching staff and the bot, especially when teaching staff cancelled all the false positive violations after inspection. There was only one communication between students and the bot.}, journal={2023 IEEE/ACM 5TH INTERNATIONAL WORKSHOP ON BOTS IN SOFTWARE ENGINEERING, BOTSE}, author={Hu, Zhewei and Gehringer, Edward}, year={2023}, pages={28–32} } @article{cui_zhang_li_song_zhou_gehringer_2023, title={Correlating Students' Class Performance Based on GitHub Metrics: A Statistical Study}, url={https://doi.org/10.1145/3587102.3588799}, DOI={10.1145/3587102.3588799}, abstractNote={What skills does a student need to succeed in a programming class? Ostensibly, previous programming experience may affect a student's performance. Most past studies on this topic use self-reporting questionnaires to query students about their programming experience. This paper presents a novel, unified, and replicable way to measure previous programming experience using students' pre-class GitHub contributions. To our knowledge, we are the first to use GitHub contributions in this way. We conducted a comprehensive statistical study of students in an object-oriented design and development class from 2017 to 2022 (n = 751) to explore the relationships between GitHub contributions (commits, comments, pull requests, etc.) and students' performance on exams, projects, designs, etc. in the class. Several kinds of contributions were shown to have statistically significant correlations with performance in the class. A set of two-samplet -tests demonstrate statistical significance of the difference between the means of some contributions from the high-performing and low-performing groups.}, journal={PROCEEDINGS OF THE 2023 CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, ITICSE 2023, VOL 1}, author={Cui, Jialin and Zhang, Runqiu and Li, Ruochi and Song, Yang and Zhou, Fangtong and Gehringer, Edward}, year={2023}, pages={526–532} } @inproceedings{gehringer_wang_kumar_2023, title={Dual-submission homework in parallel computer architecture: an exploratory study in the age of LLMs}, booktitle={Proceedings of the Workshop on Computer Architecture Education (WCAE 2023), associated with the International Symposium on Computer Architecture}, author={Gehringer, Edward and Wang, Jianxun and Kumar, Sharan}, year={2023}, month={Jun} } @inproceedings{gehringer_stallmann_2023, place={Baltimore}, title={Growing and mentoring your research group}, url={https://peer.asee.org/43836}, booktitle={American Society for Engineering Education Annual Conference and Exposition}, author={Gehringer, Edward F. and Stallmann, Matthias M.F.}, year={2023}, month={Jun} } @inproceedings{liu_doshi_bhargava_shang_cui_xu_gehringer_2023, title={Labels are not necessary: Assessing peer-review helpfulness using domain adaptation based on self-training}, url={http://dx.doi.org/10.18653/v1/2023.bea-1.15}, DOI={10.18653/v1/2023.bea-1.15}, abstractNote={A peer-assessment system allows students to provide feedback on each other’s work. An effective peer assessment system urgently requires helpful reviews to facilitate students to make improvements and progress. Automated evaluation of review helpfulness, with the help of deep learning models and natural language processing techniques, gains much interest in the field of peer assessment. However, collecting labeled data with the “helpfulness” tag to build these prediction models remains challenging. A straightforward solution would be using a supervised learning algorithm to train a prediction model on a similar domain and apply it to our peer review domain for inference. But naively doing so can degrade the model performance in the presence of the distributional gap between domains. Such a distributional gap can be effectively addressed by Domain Adaptation (DA). Self-training has recently been shown as a powerful branch of DA to address the distributional gap. The first goal of this study is to evaluate the performance of self-training-based DA in predicting the helpfulness of peer reviews as well as the ability to overcome the distributional gap. Our second goal is to propose an advanced self-training framework to overcome the weakness of the existing self-training by tailoring knowledge distillation and noise injection, to further improve the model performance and better address the distributional gap.}, booktitle={Proceedings of the 18th Workshop on Innovative Use of NLP for Building Educational Applications (BEA 2023)}, publisher={Association for Computational Linguistics}, author={Liu, Chengyuan and Doshi, Divyang and Bhargava, Muskaan and Shang, Ruixuan and Cui, Jialin and Xu, Dongkuan and Gehringer, Edward}, year={2023} } @article{liu_doshi_shang_cui_jia_gehringer_2023, title={Less But Enough: Evaluation of peer reviews through pseudo-labeling with less annotated data}, volume={15}, DOI={10.5281/zenodo.7304981}, number={2}, journal={Journal of Educational Data Mining}, author={Liu, Chengyuan and Doshi, Divyang and Shang, Ruixuan and Cui, Jialin and Jia, Qinjin and Gehringer, Edward}, year={2023}, month={Jun}, pages={123–140} } @inproceedings{cui_zhou_zhang_li_liu_gehringer_2023, title={Predicting students' software engineering class performance with machine learning and pre-class GitHub metrics}, booktitle={Frontiers in Education 2023, 53rd Annual Conference}, author={Cui, Jialin and Zhou, Fangtong and Zhang, Runqiu and Li, Ruochi and Liu, Chengyuan and Gehringer, Edward F.}, year={2023}, month={Oct} } @inproceedings{singh chhabra_gehringer_2023, title={Quality control of crowd labeling for improving the quality of peer assessments}, booktitle={Frontiers in Education 2023, 53rd Annual Conference}, author={Singh Chhabra, Banpreet and Gehringer, Edward F.}, year={2023}, month={Oct} } @article{xiao_chatterjee_gehringer_2022, title={A New Era of Plagiarism the Danger of Cheating Using AI}, ISSN={["2380-1603"]}, DOI={10.1109/ITHET56107.2022.10031827}, abstractNote={Recent development in AI algorithms has benefited many industries, but they also brought some problems to fairness in academic evaluation. Plagiarism is one of them, and little research has been put into it. This paper examines AI tools that can be used to plagiarize and preliminary findings using existing plagiarism detection algorithms. We found that tools commonly used to detect plagiarism in the academic field are vulnerable to attacks by these AI-based tools.}, journal={2022 20TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY BASED HIGHER EDUCATION AND TRAINING (ITHET)}, author={Xiao, Yunkai and Chatterjee, Soumyadeep and Gehringer, Edward}, year={2022} } @article{jia_young_xiao_cui_liu_rashid_gehringer_2022, title={Automated feedback generation for student project reports: a data-driven approach}, volume={14}, DOI={10.5281/zenodo.7304954}, number={3}, journal={Journal of Educational Data Mining}, author={Jia, Qinjin and Young, Mitchell and Xiao, Yunkai and Cui, Jialin and Liu, Chengyuan and Rashid, Parvez and Gehringer, Edward}, year={2022}, month={Dec}, pages={132–161} } @article{cui_li_lou_liu_xiao_jia_gehringer_zhang_2022, title={Can Pre-class GitHub Contributions Predict Success by Student Teams?}, DOI={10.1109/ICSE-SEET55299.2022.9794264}, abstractNote={Over one million teachers, students, and schools around the world use GitHub to reach their learning goals. GitHub promotes team-work, and group or team projects are a necessary element of the software-engineering curriculum. Past studies on GitHub have explored how to integrate GitHub into teaching and how to mine information from GitHub to help students. To our knowledge, we are the first to study the previous contributions of students to GitHub in order to characterize student teams that perform well on team projects, compared to student teams that did not perform so well. We identify factors such as the number of public commits, number of repositories, and size of repositories in certain languages that are associated with the quality of team projects. We discuss the implications of this from the point of view of an educator and a student.}, journal={2022 ACM/IEEE 44TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING EDUCATION AND TRAINING (ICSE-SEET 2022)}, author={Cui, Jialin and Li, Ruochi and Lou, Kaida and Liu, Chengyuan and Xiao, Yunkai and Jia, Qinjin and Gehringer, Edward and Zhang, Runqiu}, year={2022}, pages={40–49} } @inproceedings{cui_li_lou_liu_xiao_jia_gehringer_zhang_2022, title={Can Pre-class GitHub Contributions Predict Success by Student Teams?}, booktitle={2022 IEEE/ACM 44th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)}, author={Cui, Jialin and Li, Ruochi and Lou, Kaida and Liu, Chengyuan and Xiao, Yunkai and Jia, Qinjin and Gehringer, Edward and Zhang, Runqiu}, year={2022}, pages={40–49} } @article{xiao_gao_yue_gehringer_2022, title={Estimating Student Grades through Peer Assessment as a Crowdsourcing Calibration Problem}, ISSN={["2380-1603"]}, DOI={10.1109/ITHET56107.2022.10031993}, abstractNote={There is a trend to move education into an online environment, especially when offline learning is restricted by time, space, availability, or is impacted by issues such as a public health incident. Evaluating students’ performance in online education has always been challenging. Objective questions, which can be graded automatically, could only assess certain aspects of students’ mastery of knowledge. A grading problem appears if subjective questions exist, primarily when the class is taught at scale. Many online education platforms have been using peer assessment to resolve this problem. Aside from that, peer assessment also improves interactions between students, instructors, and peers. While peer assessment has some inherent weaknesses, reviewers may not have the same ability or attitude toward reviewing others, and the feedback generated by them shall not be taken at face value. Many algorithms have been developed to evaluate annotators’ trustworthiness and generate reliable labels in the crowdsourcing industry. We proposed an algorithm under the same concept that could provide accurate automated grading, an overview of students’ weaknesses from peer feedback, and identify reviewers who lack an understanding of certain concepts. This information allows instructors to offer targeted training and create data-driven lesson plans.}, journal={2022 20TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY BASED HIGHER EDUCATION AND TRAINING (ITHET)}, author={Xiao, Yunkai and Gao, Yinan and Yue, Chuhuai and Gehringer, Edward}, year={2022} } @inproceedings{rashid_xiao_gehringer_2022, title={Going beyond 'Good Job': Analyzing Helpful Feedback from the Student's Perspective}, booktitle={EDM 2022: 15th International Conference on Educational Data Mining}, author={Rashid, M.Parvez and Xiao, Yunkai and Gehringer, Edward F.}, year={2022}, month={Jul} } @inproceedings{liu_cui_shang_xiao_jia_gehringer_2022, title={Improving problem detection in peer assessment through pseudo-labeling using semi-supervised learning}, booktitle={EDM 2022: 15th International Conference on Educational Data Mining}, author={Liu, Chengyuan and Cui, Jialin and Shang, Ruixuan and Xiao, Yunkai and Jia, Qinjin and Gehringer, Edward F.}, year={2022}, month={Jul} } @inproceedings{jia_young_xiao_cui_liu_rashid_gehringer_2022, title={Insta-Reviewer: A Data-Driven Approach for Generating Instant Feedback on Students' Project Reports}, booktitle={Proceedings of EDM 2022: the 15th International Conference on Educational Data Mining}, author={Jia, Qinjin and Young, Mitchell and Xiao, Yunkai and Cui, Jialin and Liu, Chengyuan and Rashid, M. Parvez and Gehringer, Edward F.}, year={2022} } @inproceedings{xiao_wang_sun_li_song_cui_jia_liu_gehringer_2022, title={Modeling review helpfulness with augmented transformer neural networks}, ISSN={["2325-6516"]}, DOI={10.1109/ICSC52841.2022.00019}, abstractNote={The past two years have witnessed a dramatic change in the delivery of education, as most providers have pivoted to remote online learning. With the enrollment of some MOOCs platforms, for example, Coursera, going up by 444% between mid-March and mid-September 202011Coursera 2020 Impact Report: https://about.coursera.org/press/wpcontent/uploads/2020/09/Coursera-Impact-Report-2020.pdf, practical teaching on a large scale attracted significant attention from the public. For online educators, this was manifested as a significant increase in assessment workload. MOOC instructors have long used peer assessment to evaluate work submitted by online learners. Prior research has shown that when a student believes feedback is helpful, then the suggestion given by that feedback is more likely to be implemented. Researchers have studied machine learning models for detecting problem statements or suggestions in feedback. However, these models do not work as well in detecting secondary features like helpfulness. This paper introduces a new augmented model for detecting helpfulness and tests it against the original model that uses raw text, yielding a 7% increase in performance measured in F1 score.}, booktitle={2022 IEEE 16th International Conference on Semantic Computing (ICSC)}, author={Xiao, Yunkai and Wang, Tianle and Sun, Xinhua and Li, Licong and Song, Yang and Cui, Jialin and Jia, Qinjin and Liu, Chengyuan and Gehringer, Edward}, year={2022}, pages={83–90} } @inproceedings{jia_cui_xiao_liu_rashid_gehringer_2021, title={ALL-IN-ONE: Multi-Task Learning BERT models for Evaluating Peer Assessments}, booktitle={EDM 2021: 14th International Conference on Educational Data Mining}, author={Jia, Qinjin and Cui, Jialin and Xiao, Yunkai and Liu, Chengyuan and Rashid, Parvez and Gehringer, Edward}, year={2021}, month={Jul} } @inproceedings{zhang_gehringer_2021, place={New Jersey}, title={Can Students Produce Effective Training Data to Improve Formative Feedback?}, ISBN={9781665438513 9781665438520}, DOI={10.1109/FIE49875.2021.9637414}, abstractNote={This full research paper shows how machine learning can improve peer assessment by giving students advice on how to write better quality reviews. We trained a model that gives automated feedback by using labeled data produced by students over a period of several semesters. To improve the accuracy of the model, we are working to incorporate active learning (in the machine-learning sense) to direct students to produce training data for situations where the model has the most difficulty making predictions. With the active-learning approach, we expect students to have to do less labeling, so that they can be more attentive and produce more accurate labels. Our results revealed that we are able to cut the amount of labeling effort by half, without loss of reliable training data.}, booktitle={2021 IEEE Frontiers in Education Conference (FIE)}, publisher={IEEE}, author={Zhang, Yulin and Gehringer, Edward F.}, year={2021}, pages={1–7} } @inproceedings{rashid_gehringer_young_doshi_jia_xiao_2021, title={Peer Assessment Rubric Analyzer: An NLP approach to analyzing rubric items for better peer review}, url={https://doi.org/10.1109/ITHET50392.2021.9759679}, DOI={10.1109/ITHET50392.2021.9759679}, abstractNote={Rubrics have long been used to provide a grading process that is fair and adherent to standards. Just as rubrics can help instructors assess a piece of work, they can also help students to do a more effective job of peer assessment. In a peer-review environment, reviewers provide formative feedback following the rubric criteria. High-quality feedback can greatly enhance the learning process. Rubric criteria need to be worded carefully to provide clear instruction and effective guidance. Heretofore, little research has been performed on how rubric text affects rubric feedback. This study focuses on analyzing rubric text to identify whether rubric criteria will induce peer-reviewers to write quality reviews. We have analyzed 408,104 formative feedback comments based on 3,164 rubric criteria using natural language processing techniques with advanced neural network methods. To our knowledge, this is the first attempt to analyze rubric text to improve review comments for the peer-review environment.}, booktitle={12th International Workshop on Interactive Environments and Emerging Technologies for eLearning, 2021 19th International Conference on Information Technology Based Higher Education and Training (ITHET)}, publisher={IEEE}, author={Rashid, M.Parvez and Gehringer, Edward F. and Young, Mitchell G. and Doshi, Divyang and Jia, Qinjin and Xiao, Yunkai}, year={2021} } @inproceedings{gehringer_menon_wang_2021, title={Tools for Detecting Plagiarism in Online Exams}, url={https://peer.asee.org/37915}, booktitle={American Society for Engineering Virtual Annual Conference}, author={Gehringer, Edward F and Menon, Ashwini and Wang, Guoyi}, year={2021}, month={Jul} } @inproceedings{gehringer_2020, title={A Course as Ecosystem: Melding Teaching, Research, and Practice}, DOI={10.18260/1-2--33991}, abstractNote={We often compartmentalize our academic life into the areas of teaching, research, and practice. In fact, there are many synergies to be realized by treating a course as a complete ecosystem. This means enlisting students in the course to work on projects to improve the course, and projects to help the instructor in research. Managing these projects can even give instructors a taste of what it is like to manage projects in industry, giving them experience applying course concepts in the field. Projects within the course can lead to independent-study projects, or even theses. With a little bit of ingenuity, this strategy can be employed in courses from the introductory to the graduate level.}, booktitle={2020 ASEE Virtual Annual Conference}, publisher={American Society for Engineering Education Annual Conference}, author={Gehringer, Edward}, year={2020} } @inproceedings{gehringer_liu_kariya_wang_2020, title={Comparing and combining tests for plagiarism detection in online exams}, url={https://educationaldatamining.org/files/conferences/EDM2020/papers/paper_179.pdf}, booktitle={EDM 2020: 13th International Conference on Educational Data Mining}, author={Gehringer, Edward F and Liu, Xiaohan and Kariya, Abhirav and Wang, Guoyi}, year={2020}, month={Jul} } @inproceedings{xiao_zingle_jia_shah_zhang_li_karovaliya_zhao_song_ji_et al._2020, title={Detecting Problem Statements in Peer Assessments}, booktitle={EDM 2020: 13th International Conference on Educational Data Mining}, author={Xiao, Yunkai and Zingle, Gabriel and Jia, Qinjin and Shah, Harsh and Zhang, Yi and Li, Tianyi and Karovaliya, Mohsin and Zhao, Weixiang and Song, Yang and Ji, Jie and et al.}, year={2020}, month={Jul}, pages={704–709} } @inproceedings{klose_desai_song_gehringer_2020, title={EDM and Privacy: Ethics and Legalities of Data Collection, Usage, and Storage}, url={https://educationaldatamining.org/files/conferences/EDM2020/papers/paper_135.pdf}, booktitle={EDM 2020: 13th International Conference on Educational Data Mining}, publisher={ERIC}, author={Klose, Mark and Desai, Vasvi and Song, Yang and Gehringer, Edward}, year={2020}, month={Jul}, pages={451–459} } @inproceedings{gehringer_2020, title={Making large classes work for you and your students}, DOI={10.18260/1-2--34944}, abstractNote={Abstract Small classes offer the best opportunity for personal interaction and individualized instruction. But when rising enrollments and declining per-student funding make large classes a reality, all is not lost. Large classes offer many opportunities that small classes do not. If you are prepared to take advantage of them, you can make large classes work to advantage for yourself and your students. Six areas of opportunity can be identified. First, there is staffing. Larger classes receive more support from teaching assistants. TAs can specialize in different kinds of work (e.g., maintaining the gradebook, managing the web site, setting up programming environments). When one TA is busy with other work, someone else is always available to cover for them. Second is community. A large class can grow into a supportive learning community. Students have more opportunity to partner with, and learn from, other students. TAs are more effective too, in part because they collectively have enough experience to solve one another's problems. Questions are answered more quickly on Piazza or a message board. Clicker-style polling provides feedback with an impact not possible in small classes. Assessment also benefits. Grading is more efficient, as startup overhead plays less of a role. Assessing teaching effectiveness is easier, too, simply because there is more evidence. Students can be surveyed after class to see how well techniques have worked. In a small class, this might lead to survey fatigue, but in a large class, a different subset can be surveyed each class day. The instructor can determine more quickly when a technique is not working, and can make corrections sooner. Content generation. Teaching assistants can provide suggestions for improving content, delivery, and management that go far beyond what the instructor alone could devise. If students are asked to generate content (e.g., worked examples, homework/test questions), a large class can provide a lot more usable material. Common misconceptions become apparent far more quickly, so the instructor can design multiple-choice distractors to call them out, and draft specialized feedback on why each misconception is incorrect. Research. It’s much easier to do statistically valid studies with a control group and an experimental group in the same class. This bypasses the confounding issue that "it was a different semester with a different instructor, but we also added an intervention …” On subjective questions, the TAs’ grades can be compared with each other, allowing the instructor to identify and correct grader bias and rubric ambiguity. Recruitment. An instructor of a large class becomes known to a lot more students, and these students are more likely to consider working with you later on. You may become their graduate advisor, or advisor for an undergraduate research project. A large class is also a great place to recruit for independent-study students who may assist one of your research projects or generate resources for later offerings of the same course. The full paper will discuss how to take advantage of these opportunities, using examples provided by experienced faculty and past ASEE papers.}, booktitle={2020 ASEE Virtual Annual Conference}, publisher={American Society for Engineering Education Annual Conference}, author={Gehringer, Edward}, year={2020} } @inproceedings{xiao_zingle_jia_akbar_song_dong_qi_gehringer_2020, title={Problem detection in peer assessments between subjects by effective transfer learning and active learning}, booktitle={EDM 2020: 13th International Conference on Educational Data Mining}, author={Xiao, Yunkai and Zingle, Gabriel and Jia, Qinjin and Akbar, Shoaib and Song, Yang and Dong, Muyao and Qi, Li and Gehringer, Edward}, year={2020}, month={Jul}, pages={516–523} } @inproceedings{hu_song_gehringer_2019, title={A Test-Driven Approach to Improving Student Contributions to Open-Source Projects}, DOI={10.1109/FIE43999.2019.9028521}, abstractNote={Test-driven development (TDD) promises to help students write high-quality code with fewer defects. Although many studies of TDD usage have been conducted in entry-level computer science courses, few have looked at more advanced students doing projects of larger scope, such as contributing to open-source software (OSS). To test the performance of the test-driven approach on OSS-based course projects, we conducted a quasi-experimental controlled study, which lasted for more than one month. Thirty-five masters students participated in our study. They worked on course projects in teams, half of which were assigned to the TDD group (using a test-driven approach), and the rest of which were assigned to the non-TDD group (using the traditional test-last approach). We found that students in the TDD group were able to apply test-driven techniques pragmatically-spending more than 20% of their time on average complying with the test-driven process-throughout the whole project. There were no major differences in the quality of source-code modifications and newly added tests between the TDD group and the non-TDD group; however, the TDD group wrote more tests and achieved significantly higher (12% more) statement coverage.}, booktitle={2019 IEEE Frontiers in Education Conference (FIE)}, author={Hu, Zhewei and Song, Yang and Gehringer, Edward F.}, year={2019} } @inproceedings{zingle_radhakrishnan_xiao_gehringer_xiao_pramudianto_khurana_arnav_2019, title={Detecting suggestions in peer assessments}, booktitle={EDM 2019: 12th International Conference on Educational Data Mining}, author={Zingle, Gabriel and Radhakrishnan, Balaji and Xiao, Yunkai and Gehringer, Edward and Xiao, Zhongcan and Pramudianto, Ferry and Khurana, Gauraang and Arnav, Ayush}, year={2019}, month={Jul}, pages={474–479} } @inproceedings{hu_gehringer_2019, title={Improving feedback on github pull requests: A bots approach}, booktitle={2019 IEEE Frontiers in Education Conference (FIE)}, author={Hu, Zhewei and Gehringer, Edward F}, year={2019}, pages={1–9} } @inproceedings{gehringer_2019, title={PeerLogic: Web Services for Peer Assessment}, DOI={10.18260/1-2--32388}, abstractNote={Dr. Gehringer is an associate professor in the Departments of Computer Science, and Electrical & Computer Engineering. His research interests include computerized assessment systems}, booktitle={2019 ASEE Annual Conference & Exposition}, publisher={American Society for Engineering Education Annual Conference}, author={Gehringer, Edward F.}, year={2019} } @inbook{song_gehringer_hu_2019, place={New York}, title={Sharing educational data}, booktitle={Data Sharing: Recent Progress and Remaining Challenges}, publisher={Nova Science Publishers}, author={Song, Yang and Gehringer, Edward F. and Hu, Zhewei}, editor={Daradkeh, Y.I. and Korolev, P.M.Editors}, year={2019}, pages={1–28} } @inproceedings{biswas_gehringer_gupta_sahane_sharma_2018, title={A Data-Mining Approach to Detecting Plagiarism in Online Exams}, url={http://educationaldatamining.org/files/conferences/EDM2018/EDM2018_Preface_TOC_Proceedings.pdf}, booktitle={Proceedings of EDM 2018: the 11th International Conference on Educational Data Mining}, author={Biswas, Sudipto and Gehringer, Edward F. and Gupta, Dipansha and Sahane, Sanket and Sharma, Shriya}, year={2018}, pages={504–507} } @inproceedings{xiao_rajasekar_pramudianto_gehringer_chittoor_medhekar_2018, title={Application of neural-network models to labeling educational peer reviews}, booktitle={Proceedings of CSEDM 2018: Educational Data Mining in Computer Science Education Workshop}, author={Xiao, Zhongcan and Rajasekar, Chandrasekar and Pramudianto, Ferry and Gehringer, Edward and Chittoor, Vishal and Medhekar, Abhinav}, year={2018} } @inproceedings{gehringer_pramudianto_medhekar_rajasekar_xiao_2018, title={Applications of Artificial Intelligence in Peer Assessment}, url={https://peer.asee.org/board-62-applications-of-artificial-intelligence-in-peer-assessment}, booktitle={Proceedings of the 2018 ASEE Annual Conference and Exposition}, author={Gehringer, Edward and Pramudianto, Ferry and Medhekar, Abhinav and Rajasekar, Chandrasekar and Xiao, Zhongcan}, year={2018} } @inproceedings{babik_gehringer_pramudianto_tinapple_song_2018, title={Domain model and meta-language for peer review and assessment}, url={http://wdsinet.org/Annual_Meetings/2018_Proceedings/papers/cr150.pdf}, booktitle={Proceedings of the Western Decision Science Institute Annual Meeting}, author={Babik, Dmytro and Gehringer, Edward F. and Pramudianto, Ferry and Tinapple, David and Song, Yang}, year={2018} } @article{guo_song_gehringer_2018, title={Early Detection on Students' Failing Open-Source based Course Projects using Machine Learning Approaches}, DOI={10.1145/3159450.3162312}, abstractNote={Open-source course projects offer students a glimpse of real-world projects and opportunities to learn about architectural design and coding style. While students often have more difficulties with these projects than with traditional "toy" projects, instructors are also spending excessive time on grading miscellaneous projects. There is an improvising need for means to help students and instructors with their difficulties. This poster presents our work on predicting which course projects are likely to fail at an early stage with machine learning approaches. We collected metadata from 247 course projects in a graduate-level Object-Oriented Design and Development course over the past 5 years, built models to fit the course projects and use the classifier to help instructors to identify potential failing projects, thus to help students to salvage their works. By assuming that the project acceptances are related to the working patterns of project teams, we made innovations of adding temporal-based patterns into the training data, and achieved 86.36% classification accuracy with the addition of those features. We also proved several observations, such as most of the rejected projects are those begun relatively late during the project period, and the projects which modified more files/code does not result in better possibility of being accepted. By contrast, accepted projects tend to deliver a volume of code that is neither very small nor very large, compared to rejected ones. Our results also suggest that setting milestone checkpoints at roughly a week before the submission deadlines would enable more students to succeed in their OSS projects.}, journal={SIGCSE'18: PROCEEDINGS OF THE 49TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION}, author={Guo, Yifan and Song, Yang and Gehringer, Edward F.}, year={2018}, pages={1088–1088} } @inproceedings{gehringer_2018, title={Helping Students to Provide Effective Peer Feedback}, url={http://dx.doi.org/10.18260/1-2--28434}, DOI={10.18260/1-2--28434}, abstractNote={Peer assessment is becoming more common across the curriculum. If it is to be effective, students need to know how to provide meaningful feedback. It is important to construct a rubric that draws students’ attention to the important points of the work they are reviewing. But that is not enough; students also need instruction in how to provide comments that their peers can and will use in revising their work. This involves learning how to provide constructive suggestions. It also means understanding the way the author will react to the review, and using gentle enough terminology so that the words do not get in the way of understanding the reviewer’s advice. Authors can also help reviewers learn the ropes by giving them feedback on the effectiveness of reviews of their work.}, booktitle={2017 ASEE Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward}, year={2018}, month={May} } @article{hu_song_gehringer_2018, title={Open-Source Software in Class: Students' Common Mistakes}, ISSN={["0270-5257"]}, DOI={10.1145/3183377.3183394}, abstractNote={Introducing Open Source Software (OSS) projects into a software-engineering course has many advantages, for instance, allowing students to learn good coding practices from real-world projects, and giving students a glimpse of a real project. However, it is not easy for instructors to induce one or more OSS core teams to lend support for course projects. The alternative is to have students work on "toy features"—features for these projects not specified by OSS core teams, but by teaching staff. However, the project may be unimportant to the OSS project or may disrupt its design, making those code contributions unlikely to be integrated into the OSS code repository. In this paper, we, as both teaching staff and the core team for one OSS project called Expertiza, discuss our experience in supporting 700 students on 313 OSS-based course projects in the past five years. We manually checked these course projects, and summarize 13 common mistakes that frequently occur in students' contributions, such as not following the existing design or messy pull requests. We propose five suggestions to help students reduce the frequency of common mistakes and improve the quality of their OSS pull requests.}, journal={2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING EDUCATION AND TRAINING (ICSE-SEET)}, author={Hu, Zhewei and Song, Yang and Gehringer, Edward F.}, year={2018}, pages={40–48} } @article{akbar_gehringer_hu_2018, title={Poster: Improving Formation of Student Teams: A Clustering Approach}, ISSN={["2574-1926"]}, DOI={10.1145/3183440.3195057}, abstractNote={Today's courses in engineering and other fields frequently involve projects done by teams of students. An important aspect of these team assignments is the formation of the teams. In some courses, teams select different topics to work on. Ideally, team formation would be included with topic selection, so teams could be formed from students interested in the same topics. Intuitive criteria for a team formation algorithm are that students should be assigned to (1) a topic which they have interest and (2) a team of students with similar interests in their topic. We propose an approach to meeting these criteria by mining student preferences for topics with a clustering approach and then matching them in groups to topics that suit their shared interests. Our implementation is based on hierarchical k-means clustering and a weighting formula that favors increasing overall student satisfaction and adding members until the maximum allowable team size is reached.}, journal={PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING - COMPANION (ICSE-COMPANION}, author={Akbar, Shoaib and Gehringer, Edward F. and Hu, Zhewei}, year={2018}, pages={147–148} } @inproceedings{gehringer_2018, title={Self-Assessment to Improve Learning and Evaluation}, url={http://dx.doi.org/10.18260/1-2--28816}, DOI={10.18260/1-2--28816}, abstractNote={Self-assessment has many advantages for student learning. By inducing students to think about their own learning, it encourages metacognitive practices that deepen learning. It helps them to gain perspective, by thinking about how assignments fit into the context of their education. By itself, self-assessment is a useful formative exercise. While selfassessment is not reliable when students do not understand the material well, it is possible to combine it with peer assessment or instructor assessment to derive valid grades. There are several approaches to including a self-assessment component in a student’s grade, on the basis that accurate self-assessment itself demonstrates learning gains. The contribution of this paper is to summarize research on self-assessment over time, including where it has and has not proved successful, as well as to survey several approaches and software applications for incorporating self-assessment into a course.}, booktitle={2017 ASEE Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward}, year={2018}, month={May} } @article{song_guo_gehringer_2017, title={An exploratory study of reliability of ranking vs. rating in peer assessment}, volume={11}, DOI={doi.org/10.5281/zenodo.1132399}, number={10}, journal={International Journal of Educational and Pedagogical Sciences}, author={Song, Yang and Guo, Yifan and Gehringer, Edward F.}, year={2017} } @article{ramachandran_gehringer_yadav_2017, title={Automated Assessment of the Quality of Peer Reviews using Natural Language Processing Techniques}, volume={27}, ISSN={["1560-4306"]}, DOI={10.1007/s40593-016-0132-x}, number={3}, journal={INTERNATIONAL JOURNAL OF ARTIFICIAL INTELLIGENCE IN EDUCATION}, author={Ramachandran, Lakshmi and Gehringer, Edward F. and Yadav, Ravi K.}, year={2017}, month={Sep}, pages={534–581} } @inproceedings{babik_tinapple_gehringer_pramudianto_2017, title={The effect of visualization on students' miscalibration in the context of online peer assessment}, url={http://wdsinet.org/Annual_Meetings/2017_Proceedings/CR%20PDF/cr60.pdf}, booktitle={Proceedings of Western Decision Sciences Institute 2017 Annual Meeting}, author={Babik, Dmytro and Tinapple, David and Gehringer, Edward and Pramudianto, Ferry}, year={2017} } @inproceedings{song_pramudianto_gehringer_2016, place={Erie, PA}, title={A markup language for building a data warehouse for educational peer-assessment research}, DOI={10.1109/fie.2016.7757600}, abstractNote={Peer assessment has proved to be a useful technique in all levels of education. The process of giving and receiving comments can encourage critical thinking and help students learn both from reviewing and being reviewed. Peer assessment generates a large volume of data, especially if done online. Online peer-assessment systems are designed differently and use different schema for their data, which complicates the work of comparing different designs. For example, some systems are based on ranking - reviewers rank the artifacts they are asked to assess, while other systems use rating - reviewers assess a single artifact at a time and score it on various criteria. Comparing these two types of systems, e.g. on rating accuracy, or usefulness of formative feedback, can be challenging because researchers need to learn the design and terminology of each system before analyzing the data. We introduce a Peer-Review Markup Language to provide a common definition of terminology across multiple systems. We are using this markup language to build a data warehouse for data from different systems. We discuss issues raised during this process and our approach to solving them.}, booktitle={2016 IEEE Frontiers in Education Conference (FIE)}, author={Song, Yang and Pramudianto, Ferry and Gehringer, Ed}, year={2016}, month={Oct} } @inproceedings{song_hu_guo_gehringer_2016, title={An experiment with separate formative and summative rubrics in educational peer assessment}, ISBN={9781509017904}, url={http://dx.doi.org/10.1109/fie.2016.7757597}, DOI={10.1109/fie.2016.7757597}, abstractNote={Educational peer assessment has proven to be a powerful approach for providing students timely feedback and allowing them to help and learn from each other. In an educational setting, most peer assessment consists of a single round. The problem with this setting is that, either the authors do not have a chance to update their work, which makes the suggestions from their peers useless, or the author can make changes after receiving the peer reviews, which forecloses using peer review to help assign grades. To address these issues, in our classes we now use two rounds of online review, with a different rubric for each. Our Expertiza peer-review system allows the evaluation rubric to vary by rounds. In the first review round, we present a formative review rubric to the peer reviewers. In the formative rubric, we try to encourage student reviewers to look into details, point out the problems they can find in the author's work, and offer insightful suggestions. After the formative review round, authors have the opportunity to submit an updated version of their artifacts. Next comes a summative peer-review round, using a summative rubric. A summative peer-review rubric focused more on evaluating the quality of the artifact by comparing it against specific benchmarks. In this paper, we discuss the design of the two-round peer-review assignments in a computer-science course and present our observations on student peer-review activity. An analysis of students' peer-assessment responses confirms the effectiveness of this design of peer-review activity.}, booktitle={2016 IEEE Frontiers in Education Conference (FIE)}, publisher={IEEE}, author={Song, Yang and Hu, Zhewei and Guo, Yifan and Gehringer, Edward F.}, year={2016}, month={Oct} } @inproceedings{pramudianto_chhabra_gehringer_maynard_2016, title={Assessing the quality of automatic summarization for peer review in education}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Pramudianto, Ferry and Chhabra, Tarun and Gehringer, Edward F. and Maynard, Christopher}, year={2016} } @inproceedings{yadav_gehringer_2016, title={Automated metareviewing: a classifier approach to assess the quality of reviews}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Yadav, Ravi and Gehringer, Edward F.}, year={2016} } @inproceedings{gehringer_hu_song_2016, title={Five years of extra credit in a studio-based course: An effort to incentivize socially useful behavior}, ISBN={9781509017904}, url={http://dx.doi.org/10.1109/fie.2016.7757351}, DOI={10.1109/fie.2016.7757351}, abstractNote={In studio-based education, students collaboratively work on projects that allow them to learn aspects of design through experience on authentic artifacts, often for outside clients. In our Object-Oriented Design and Development class, this means work on open-source projects, such as Mozilla Servo, OpenMRS, Sahana Eden, and Apache Ambari, as well as our own Expertiza project. This paper recounts five years of experience awarding extra credit for activity that students engaged in to help fellow students. These activities included doing extra peer reviews of classmates' work, helping other teams with their projects, writing various types of quiz questions, and answering questions on the Piazza message board. The incentives often led to “gaming” behavior, where students engaged in activities simply to earn points, with very little benefit to their fellow students. Consequently, the scoring policy has been changed several times during the five-year period. We show how student behavior changed as the rules changed, how we have enhanced review quality, improved responses and response time on Piazza, and transitioned students away from merely helping with project setup, and toward helping other students with the substance of their projects.}, booktitle={2016 IEEE Frontiers in Education Conference (FIE)}, publisher={IEEE}, author={Gehringer, Edward F. and Hu, Zhewei and Song, Yang}, year={2016}, month={Oct} } @article{yadav_gehringer_2016, title={Metrics for Automated Review Classification: What Review Data Show}, ISBN={["978-981-287-866-3"]}, ISSN={["2196-4963"]}, DOI={10.1007/978-981-287-868-7_41}, abstractNote={Peer review is only effective if reviews are of high quality. In a large class, it is unrealistic for the course staff to evaluate all reviews, so a scalable assessment mechanism is needed. In an automated system, several metrics can be calculated for each review. One of these metrics is volume, which is simply the number of distinct words used in the review. Another is tone, which can be positive (e.g., praise), negative (e.g., disapproval), or neutral. A third is content, which we divide into three subtypes: summative, advisory, and problem detection. These metrics can be used to rate reviews, either singly or in combination. This paper compares the automated metrics for hundreds of reviews from the Expertiza system with scores manually assigned by the course staff. Almost all of the automatic metrics are positively correlated with manually assigned scores, but many of the correlations are weak. Another issue is how the review rubric influences review content. A more detailed rubric draws the reviewer’s attention to more characteristics of an author’s work. But ultimately, the author will benefit most from advisory or problem detection review text. And filling out a long rubric may distract the reviewer from providing textual feedback to the author. The data fail to show clear evidence that this effect occurs.}, journal={STATE-OF-THE-ART AND FUTURE DIRECTIONS OF SMART LEARNING}, author={Yadav, Ravi K. and Gehringer, Edward F.}, year={2016}, pages={333–340} } @inproceedings{pramudianto_aljeshi_song_gehringer_alhussein_babik_tinnaple_2016, title={Peer review data warehouse: insights from different systems}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Pramudianto, Ferry and Aljeshi, Maryam and Song, Yang and Gehringer, Edward F. and Alhussein, Hisham and Babik, Dmytro and Tinnaple, David}, year={2016} } @inproceedings{le_pramudianto_gehringer_2016, title={Prediction of grades for reviewing with automated peer-review and reputation metrics}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Le, Da Young and Pramudianto, Ferry and Gehringer, Edward F.}, year={2016} } @inproceedings{babik_gehringer_kidd_pramudianto_tinapple_2016, title={Probing the landscape: toward a systematic taxonomy of online peer assessment systems in education}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Babik, Dmytro and Gehringer, Edward and Kidd, Jennifer and Pramudianto, Ferry and Tinapple, David}, year={2016} } @inproceedings{gehringer_pramudianto_2016, title={Research in student peer review: a cooperative web-services approach}, booktitle={Proceedings of the AAAS/NSF Symposium on Envisioning the Future of Undergraduate STEM Education}, author={Gehringer, Edward F. and Pramudianto, Ferry}, year={2016} } @article{rahman_williams_2016, title={Security Practices in DevOps}, DOI={10.1145/2898375.2898383}, abstractNote={DevOps focuses on collaboration between different teams in an organization to achieve rapid deployment of software and services to end-users by automating the software delivery infrastructure. According to Dyck et al. [1] DevOps is a software process that emphasizes collaboration within and between different teams involved in software development. According to a study from CA Technologies [5], 88% of 1425 organization executives stated that they have adopted DevOps, or are planning to adopt DevOps in the next five years. According to Puppet Labs' 2015 State of DevOps Report [2], organizations that have adopted DevOps experienced 60 times fewer failures and deploy 30 times more frequently than organizations that have not adopted DevOps. Despite the popularity, security aspects of DevOps remain a concern for organizations that want to adopt DevOps [5]. In organizations that use DevOps practices, developers can commit and deploy their software changes at a rapid rate using an automated pipeline. At such a rapid rate, if the security team operates in isolation without close collaboration with the development and operations teams, then the rapidly deployed software changes might not undergo the adequate security reviews, potentially leading to vulnerable software. Bringing security principles within the DevOps process can help the organization in achieving better quality of software by integrating security checks into the phases of development, testing, and deployment.}, journal={SYMPOSIUM AND BOOTCAMP ON THE SCIENCE OF SECURITY}, author={Rahman, Akond Ashfaque Ur and Williams, Laurie}, year={2016}, pages={109–111} } @inproceedings{hu_song_gehringer_2016, title={The role of initial input in reputation systems to generate accurate aggregated grades from peer assessment}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Hu, Zhewei and Song, Yang and Gehringer, Edward F.}, year={2016} } @inproceedings{song_hu_gehringer_morris_kidd_ringleb_2016, title={Toward better training in peer assessment: Does calibration help?}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Song, Yang and Hu, Zhewei and Gehringer, Edward F. and Morris, Julia and Kidd, Jennifer and Ringleb, Stacie}, year={2016} } @article{gehringer_ma_duong_2016, title={What Peer-Review Systems Can Learn from Online Rating Sites}, ISBN={["978-981-287-866-3"]}, ISSN={["2196-4963"]}, DOI={10.1007/978-981-287-868-7_42}, abstractNote={As their core functionality, peer-review systems present ratings of student work. But online ratings are not a new concept. Sites rating products or services have a long history on the Web, and now boast hundreds of millions of users. These sites have developed mechanisms and procedures to improve the accuracy and helpfulness of their reviews. Peer-review systems have much to learn from their experience. Online review sites permit users to flag reviews they consider inappropriate or inaccurate. Peer-review systems could do the same. Online review systems have automated metrics to decide whether reviews should be posted. It would be good for peer-review systems to post only reviews that pass an automatic quality check. Online rating sites give recognition to their best reviewers by means of levels or badges. Recognition is often dependent on upvotes by other users. Online review sites often let readers see helpfulness ratings or other information on reviewers. Peer-review systems could also allow authors to see ratings of the students who reviewed their work.}, journal={STATE-OF-THE-ART AND FUTURE DIRECTIONS OF SMART LEARNING}, author={Gehringer, Edward F. and Ma, Kai and Duong, Van T.}, year={2016}, pages={341–350} } @inproceedings{song_hu_gehringer_2016, title={Who took peer review seriously: another perspective on student-generated quizzes}, booktitle={Proceedings of the Second Workshop on Computer-Supported Peer Review in Education}, author={Song, Yang and Hu, Zhewei and Gehringer, Edward F.}, year={2016} } @inproceedings{gehringer_2015, title={Automated and Scalable Assessment: Present and Future}, url={http://dx.doi.org/10.18260/p.23609}, DOI={10.18260/p.23609}, abstractNote={Dr. Gehringer is an associate professor in the Departments of Computer Science, and Electrical & Computer Engineering. His research interests include computerized assessment systems}, booktitle={2015 ASEE Annual Conference and Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward}, year={2015}, month={Jul} } @inbook{song_hu_gehringer_2015, title={Closing the Circle: Use of Students’ Responses for Peer-Assessment Rubric Improvement}, ISBN={9783319255149 9783319255156}, ISSN={0302-9743 1611-3349}, url={http://dx.doi.org/10.1007/978-3-319-25515-6_3}, DOI={10.1007/978-3-319-25515-6_3}, abstractNote={Educational peer assessment has proven to be a useful approach for providing students timely feedback and allowing them to help and learn from each other. Reviewers are often expected both to provide formative feedback─textual feedback telling the authors where and how to improve the artifact─and peer grading at the same time. Formative feedback is important for the authors because timely and insightful feedback can help them improve their artifacts, and peer grading is important to the teaching staff, as it provides more input to help determine final grades. In a large class or MOOC when the help from teaching staff is limited, formative feedback from their peers is the best help that the authors may receive. To guarantee the quality of the formative feedback and reliability of peer grading, instructors should keep on improving peer-assessment rubrics. In this study we used students’ feedback from the last 3 years in the Expertiza peer-assessment system to analyze the quality of 15 existing rubrics on 61 assignments. A set of patterns on peer-grading reliability and comment length were found and a set of guidelines are given accordingly.}, booktitle={Advances in Web-Based Learning -- ICWL 2015}, publisher={Springer International Publishing}, author={Song, Yang and Hu, Zhewei and Gehringer, Edward F.}, year={2015}, pages={27–36} } @inproceedings{ramchandran_gehringer_2015, title={Identifying content patterns in peer reviews using graph-based cohesion}, booktitle={Proceedings of the Florida Artificial Intelligence Research Society, FLAIRS-28}, author={Ramchandran, Lakshmi and Gehringer, Edward F.}, year={2015} } @inproceedings{yadav_gehringer_2015, title={Metrics for automated review classification: what review data show}, booktitle={New Horizons in Web-Based Learning}, publisher={Springer}, author={Yadav, Ravi K. and Gehringer, Edward F.}, year={2015} } @inproceedings{song_hu_gehringer_2015, title={Pluggable reputation systems for peer review: A web-service approach}, DOI={10.1109/fie.2015.7344292}, abstractNote={Peer review has long been used in education to provide students more timely feedback and allow them to learn from each other's work. In large courses and MOOCs, there is also interest in having students determine, or help determine, their classmates' grades. This requires a way to tell which peer reviewers' scores are credible. This can be done by comparing scores assigned by different reviewers with each other, and with scores that the instructor would have assigned. For this reason, several reputation systems have been designed; but until now, they have not been compared with each other, so we have no information about which performs best. To make the reputation algorithms pluggable for different peer-review system, we are carrying out a project to develop a reputation web service. This paper compares two reputation algorithms, each of which has two versions, and reports on our efforts to make them “pluggable,” so they can easily be adopted by different peer-review systems. Toward this end, we have defined a Peer-Review Markup Language (PRML), which is a generic schema for data sharing among different peer-review systems.}, booktitle={Frontiers in education conference (fie), 2015}, author={Song, Y. and Hu, Z. W. and Gehringer, Edward}, year={2015}, pages={1636–1640} } @inproceedings{gehringer_2015, title={Resources for "Flipping" Classes}, url={http://dx.doi.org/10.18260/p.24673}, DOI={10.18260/p.24673}, abstractNote={As flipped classes become more popular, opportunities for sharing resources and techniques arise. Instructors can learn from the experience of others, and they can also borrow materials and approaches that others have used. But the design space is very large, and simple web searches usually fail to retrieve the most relevant materials. This paper aims to serve as a guide to what is currently available in three areas: sites devoted to the pedagogy of “flipping,” sources for reusable materials such as videos, and techniques other than lecturing that can be used during a class session.}, booktitle={2015 ASEE Annual Conference and Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward}, year={2015}, month={Jul} } @inproceedings{gehringer_2015, title={Tricks of the Trade: Developing Research Funding}, url={http://dx.doi.org/10.18260/p.24943}, DOI={10.18260/p.24943}, abstractNote={Building a research group is an important determinant of career success.Maintaining a cadre of students and assistants depends upon many factors, but perhaps none is so important as funding.Raising money takes time, a fact often bemoaned by professionals across the spectrum, from educators to politicians to missionaries.This paper presents advice from faculty who have been very successful in obtaining funding, including some who have served for a time as NSF program officers.They advise that it's important to serve on review panels to learn how the system works.Find out what each program is interested in, by meeting the decision-makers, presenting a short outline of your research, and listening to what they have to say.Once you've written your proposal, have others give you feedback on how to improve it.Devise a long-range plan that will keep you attentive to opportunities for new initiatives.}, booktitle={2015 ASEE Annual Conference and Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward}, year={2015}, month={Jul} } @inproceedings{gehringer_ma_duong_2015, title={What peer-review systems can learn from online rating sites}, booktitle={New Horizons in Web-Based Learning}, publisher={Springer}, author={Gehringer, Edward F. and Ma, Kai and Duong, Van}, year={2015} } @inbook{gehringer_2014, title={A Survey of Methods for Improving Review Quality}, ISBN={9783319132952 9783319132969}, ISSN={0302-9743 1611-3349}, url={http://dx.doi.org/10.1007/978-3-319-13296-9_10}, DOI={10.1007/978-3-319-13296-9_10}, abstractNote={For peer review to be successful, students need to submit high-quality reviews of each other’s work. This requires a certain amount of training and guidance by the review system. We consider four methods for improving review quality: calibration, reputation systems, meta-reviewing, and automated meta-reviewing. Calibration is training to help a reviewer match the scores given by the instructor. Reputation systems determine how well each reviewer’s scores track scores assigned by other reviewers. Meta-reviewing means evaluating the quality of a review; this can be done either by a human or by software. Combining these strategies effectively is a topic for future research.}, booktitle={Lecture Notes in Computer Science}, publisher={Springer International Publishing}, author={Gehringer, Edward F.}, year={2014}, pages={92–97} } @inproceedings{gehringer_2014, title={A survey of methods for improving review quality}, booktitle={Proceedings of the 13th International Conference on Web-Based Learning: Peer-Review, Peer-Assessment, and Self-Assessment in Education}, author={Gehringer, Edward F.}, year={2014} } @inproceedings{gehringer_2014, title={Optimizing your teaching load}, DOI={10.18260/1-2--22894}, abstractNote={Dr. Gehringer is an associate professor in the Departments of Computer Science, and Electrical & Computer Engineering. His research interests include computerized assessment systems}, booktitle={2014 ASEE Annual Conference & Exposition}, author={Gehringer, Edward F.}, year={2014} } @inproceedings{barik_everett_cardona-rivera_roberts_gehringer_2013, title={A community college blended learning classroom experience through Artificial Intelligence in Games}, ISBN={9781467352611}, url={http://dx.doi.org/10.1109/fie.2013.6685093}, DOI={10.1109/fie.2013.6685093}, abstractNote={We report on the experience of teaching an industry-validated course on Artificial Intelligence in Computer Games within the Simulation and Game Design department at a two-year community college during a 16-week semester. The course format used a blended learning just-in-time teaching approach, which included active learning programming exercises and one-on-one student interactions. Moskal's Attitudes Toward Computer Science survey showed a positive and significant increase in students in both interest (W(10) = 25, p = 0.011) and professional (W(10) = 49.5, p = 0.037) constructs. The Felder-Soloman Index of Learning Styles (n = 14) failed to identify any statistically significant differences in learning styles when compared to a four-year CS1 class. In the final class evaluation, 8 out of 13 students (62%) strongly or very strongly preferred the blended learning approach. We validated this course through four semi-structured interviews with game companies. The interview results suggest that companies are strongly favorable to the course content and structure. The results of this work serve as a template that community colleges can adopt for their curriculum.}, booktitle={2013 IEEE Frontiers in Education Conference (FIE)}, publisher={IEEE}, author={Barik, Titus and Everett, Michael and Cardona-Rivera, Rogelio E. and Roberts, David L. and Gehringer, Edward F.}, year={2013}, month={Oct} } @article{ramachandran_gehringer_2013, title={An Ordered Relatedness Metric for Relevance Identification}, ISSN={["2325-6516"]}, DOI={10.1109/icsc.2013.23}, abstractNote={In this paper we introduce a WordNet relations-based metric to determine semantic relatedness. Semantic relatedness is used to identify the degree of relevance between a review's text and a submission's text in order to determine whether the review pertains to the right submission. We use only Word Net since using additional corpuses or knowledge resources to determine similarity would be time consuming, especially when the metric is used to perform token-based pair wise comparison across documents. We compare our semantic relatedness metric with path and content-based measures that use only Word Net. We show that our metric is better than the other relatedness metrics at identifying relevance of academic reviews from Expertiza, a collaborative web-based learning application. We also show that our semantic relatedness metric produces higher correlations than most of the other metrics on the WordSim353 and Rubenstein & Good enough datasets.}, journal={2013 IEEE SEVENTH INTERNATIONAL CONFERENCE ON SEMANTIC COMPUTING (ICSC 2013)}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2013}, pages={86–89} } @inproceedings{ramachandran_ravindran_gehringer_2013, title={Determining review coverage by extracting topic sentences using a graph-based clustering approach}, booktitle={Proceedings of EDM 2013: Sixth International Conference on Educational Data Mining}, author={Ramachandran, Lakshmi and Ravindran, Balaraman and Gehringer, Edward F.}, year={2013} } @article{gehringer_peddycord iii_2013, title={Experience with Online and Open-Web Exams}, volume={2}, ISSN={2159-0281}, url={http://dx.doi.org/10.9743/jir.2013.2.12}, DOI={10.9743/jir.2013.2.12}, abstractNote={Most examinations are administered in an environment that is becoming artificial. Today, ideas are routinely communicated using computers; for example to perform technical work or even write a piece of prose many use the aid of a computer. That is the situation that students are in when they take an exam on paper. Faculty have plenty of opportunities to administer tests online. Textbook publishers, as well as learning-management systems, have online modules that could be used to deliver quizzes or exams. Students can use their laptops to take an exam online, even in an ordinary classroom. But online administration raises several issues, which instructors should think through before taking the plunge. To uncover the implications of online exams, the authors set up a research study, surveying instructors on four teaching-related listservs: the Engineering Technology listserv; SIGCSE-members (computer science faculty); the College Board’s APCS list; and the listserv of the Professional & Organization Development Network in Higher Education; and students in the first author’s classes from Fall 2009 until Spring 2011. Eighty-five instructors and 315 students responded to the survey. All of them had experience administering or taking online and/or “open-Web” exams, where students were given unfettered access to the Internet during the exam, but forbidden to communicate with others. This study investigated several aspects of online exams, classifying its observations into six categories: material covered, administration of the exam, grading, academic integrity, handwriting vs. coding, and miscellaneous.}, journal={Journal of Instructional Research}, publisher={Grand Canyon University}, author={Gehringer, Edward and Peddycord III, Barry}, year={2013}, month={May}, pages={10–18} } @inproceedings{gehringer_peddycord_2013, title={Grading by experience points: An example from computer ethics}, ISBN={9781467352611}, url={http://dx.doi.org/10.1109/fie.2013.6685097}, DOI={10.1109/fie.2013.6685097}, abstractNote={In most of education, courses are graded based on percentages-a certain percentage is required for each letter grade. Students often see this as a negative, in which they can only lose points, not gain points, and put their class average at risk with each new assignment. This contrasts with the world of online gaming, where they gain “experience points” from each new activity, and their score monotonically increases toward a desired goal. In Fall 2012, the lead author switched to grading by experience points in his Ethics in Computing class. Students earned points for a variety of activities, mainly performing ethical analyses of various issues related to computing, and participating in debates on ethics-related topics. The students appreciated the ability to earn extra points by performing extra activities. But they were less likely to complete analyses after signing up to do them than were students in a traditionally-graded class. At semester's end, the number of peer reviews increased, as students strove to top off their point total. The grade distribution was bimodal, with clusters at both ends (A+ and F). Students' greatest concern was rapid grading turnaround, so they would know where they stood in the class at all times.}, booktitle={2013 IEEE Frontiers in Education Conference (FIE)}, publisher={IEEE}, author={Gehringer, Edward and Peddycord, Barry}, year={2013}, month={Oct} } @inproceedings{ramanchandran_gehringer_2013, title={Graph-structures matching for review relevance identification}, booktitle={Proceedings of TextGraphs-8: 2013 Workshop}, author={Ramanchandran, Lakshmi and Gehringer, Edward F.}, year={2013} } @inproceedings{gehringer_peddycord iii_2013, title={Teaching strategies when students have access to solution manuals}, booktitle={Proceedings of the ASEE 2013 Annual Conference and Exposition}, author={Gehringer, Edward F. and Peddycord III, Barry W.}, year={2013} } @inproceedings{teaching strategies when students have access to solution manuals_2013, booktitle={Proceedings of the ASEE 2013 Annual Conference and Exposition}, year={2013} } @inproceedings{gehringer_peddycord_2013, title={The inverted-lecture model}, ISBN={9781450318686}, url={http://dx.doi.org/10.1145/2445196.2445343}, DOI={10.1145/2445196.2445343}, abstractNote={This paper reports on an experience in using the inverted-lecture model ("flipping the classroom") in computer architecture. The first author concurrently taught two courses in computer architecture. One of these courses was CSC/ECE 506: Architecture of Parallel Computers, an introductory Graduate-level course, taught via lecture both residentially and distance-ed. The other was the CSC 456: Computer Architecture and Multiprocessing, a senior-level undergraduate course which was "flipped." Students in the inverted-lecture class exhibited high levels of engagement. Their performance on exams was not quite up to the level of the students in the graduate class, but the difference was not wide. From this experience, we offer observations and suggestions about inverted classes in general.}, booktitle={Proceeding of the 44th ACM technical symposium on Computer science education - SIGCSE '13}, publisher={ACM Press}, author={Gehringer, Edward F. and Peddycord, Barry W., III}, year={2013} } @inproceedings{ramachandran_gehringer_2012, title={A word-order based graph representation for relevance identification}, ISBN={9781450311564}, url={http://dx.doi.org/10.1145/2396761.2398632}, DOI={10.1145/2396761.2398632}, abstractNote={In this paper we propose a new word-order based graph representation for text. In our graph representation vertices represent words or phrases and edges represent relations between contiguous words or phrases. The graph representation also includes dependency information. Our text representation is suitable for applications involving the identification of relevance or paraphrases across texts, where word-order information would be useful. We show that this word-order based graph representation performs better than a dependency tree representation while identifying the relevance of one piece of text to another.}, booktitle={Proceedings of the 21st ACM international conference on Information and knowledge management - CIKM '12}, publisher={ACM Press}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2012} } @inproceedings{ramachandran_gehringer_2012, title={An automated approach to assessing the quality of code reviews}, booktitle={Proceedings of the 2012 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2012} } @inproceedings{gehringer_2012, title={Applications for supporting collaboration in the classroom}, DOI={10.18260/1-2--20956}, abstractNote={In recent years, many applications have become available for supporting collaboration between students in a course.This presentation offers an overview of several of them, so that new engineering educators can judge which they might be interested in adopting.All of the tools discussed are free for instructors and their students, at least at the entry level.We first discuss applications (Twitter and Live Question) for sharing questions and answers among students and between instructor and students during a class.For out-of-class questions, the social-networking application Piazza is powerful and easy to use.PollEverywhere and ChimeIn are two applications that let the instructor send questions to the students and automatically record and check their answers.Google forms provide some of the same functionality for free and without the need to install software on a server.Google forms can also be used to survey students.SALG is a specialized survey program to assess how much students have learned.For taking graphical feedback from students on tablet computers during class, Classroom Presenter and Ubiquitous Presenter are two open-source tools.The most widely used peer-review application is Calibrated Peer Review.Expertiza is a peer-review system that incorporates functionality for topic selection and team formation by students.Wikis are a well known collaborative space, which can be used by students to write reports and other documents cooperatively.Google docs serve much the same function, allowing more flexibility but less uniformity in formatting.More powerful features are available through Google sites, which allow the instructor to set up templates to track student progress, including the time that they have spent on the project.CATME/Team Maker is a tool for creating teams based on student schedules or other criteria, and collecting feedback from team members on the contributions of their partners.}, number={2012-4769}, booktitle={2012 ASEE Annual Conference & Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2012} } @inproceedings{gehringer_2012, title={Applications for supporting collaboration in the classroom}, number={2012-4769}, booktitle={Proceedings of the 2012 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2012} } @inproceedings{ramachandran_gehringer_2012, place={San Antonio, TX}, title={Automatic quality assessment for peer reviews of student work}, DOI={10.18260/1-2--21005}, abstractNote={Reviews are text-based feedback provided by a reviewer to the author of a submission.Reviews are used not only in education to assess student work, but also in e-commerce applications, to assess the quality of products on sites like Amazon, ebay etc.Since reviews play a crucial role in providing feedback to people who make assessment decisions (deciding on a student's grade, purchase decision of a product etc.), it is important to ensure that reviews are of a good quality.In our work we propose the use of metrics such as content, tone and quantity of feedback to suitably represent a review.We use supervised classification techniques to determine content and tone of the feedback.Our approach predicts the metareview score for a review, which is indicative of its quality.The individual metrics together with the metareview score give reviewers immediate feedback that is likely to help them improve the quality of their reviews.We conducted experiments, to evaluate our automated metareviewing approach, on reviews collected using Expertiza, a web-based collaborative learning environment.Our approach produces accuracy values greater than 60% in predicting content and tone of reviews and an accuracy of 62.9% in predicting metareview scores.}, booktitle={2012 ASEE Annual Conference & Exposition}, publisher={American Society for Engineering Education}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2012} } @article{iyengar_gehringer_wolf_manivannan_2012, title={Scalable Concurrent and Parallel Mark}, volume={47}, ISSN={["1558-1160"]}, DOI={10.1145/2426642.2259006}, abstractNote={Parallel marking algorithms use multiple threads to walk through the object heap graph and mark each reachable object as live. Parallel marker threads mark an object "live" by atomically setting a bit in a mark-bitmap or a bit in the object header. Most of these parallel algorithms strive to improve the marking throughput by using work-stealing algorithms for load-balancing and to ensure that all participating threads are kept busy. A purely "processor-centric" load-balancing approach in conjunction with a need to atomically set the mark bit, results in significant contention during parallel marking. This limits the scalability and throughput of parallel marking algorithms.}, number={11}, journal={ACM SIGPLAN NOTICES}, author={Iyengar, Balaji and Gehringer, Edward and Wolf, Michael and Manivannan, Karthikeyan}, year={2012}, month={Nov}, pages={61–71} } @inproceedings{iyengar_gehringer_wolf_manivannan_2012, title={Scalable concurrent and parallel mark}, ISBN={9781450313506}, url={http://dx.doi.org/10.1145/2258996.2259006}, DOI={10.1145/2258996.2259006}, abstractNote={Parallel marking algorithms use multiple threads to walk through the object heap graph and mark each reachable object as live. Parallel marker threads mark an object "live" by atomically setting a bit in a mark-bitmap or a bit in the object header. Most of these parallel algorithms strive to improve the marking throughput by using work-stealing algorithms for load-balancing and to ensure that all participating threads are kept busy. A purely "processor-centric" load-balancing approach in conjunction with a need to atomically set the mark bit, results in significant contention during parallel marking. This limits the scalability and throughput of parallel marking algorithms. We describe a new non-blocking and lock-free, work-sharing algorithm, the primary goal being to reduce contention during atomic updates of the mark-bitmap by parallel task-threads. Our work-sharing mechanism uses the address of a word in the mark-bitmap as the key to stripe work among parallel task-threads, with only a subset of the task-threads working on each stripe. This filters out most of the contention during parallel marking with 20% improvements in performance. In case of concurrent and on-the-fly collector algorithms, mutator threads also generate marking-work for the marking task-threads. In these schemes, mutator threads are also provided with thread-local marking stacks where they collect references to potentially "gray" objects, i.e., objects that haven't been "marked-through" by the collector. We note that since this work is generated by mutators when they reference these objects, there is a high likelihood that these objects continue to be present in the processor cache. We describe and evaluate a scheme to distribute mutator generated marking work among the collector's task-threads that is cognizant of the processor and cache topology. We prototype both our algorithms within the C4 [28] collector that ships as part of an industrial strength JVM for the Linux-X86 platform.}, booktitle={Proceedings of the 2012 international symposium on Memory Management - ISMM '12}, publisher={ACM Press}, author={Iyengar, Balaji and Gehringer, Edward and Wolf, Michael and Manivannan, Karthikeyan}, year={2012} } @inproceedings{iyengar_tene_wolf_gehringer_2012, title={The Collie}, ISBN={9781450313506}, url={http://dx.doi.org/10.1145/2258996.2259009}, DOI={10.1145/2258996.2259009}, abstractNote={We describe the Collie collector, a fully concurrent compacting collector that uses transactional memory techniques to achieve wait-free compaction. The collector uses compaction as the primary means of reclaiming unused memory, and performs "individual object transplantations" as transactions. We introduce new terms and requirements useful for analyzing concurrent relocating collectors, including definitions of referrer sets, object transplantation and the notion of individually transplantable objects. The Collie collector builds on these terms and on a detailed analysis of an object's legal states during compaction. Collie uses a combination of read barriers, write barriers and transactional memory operations. Its read-barrier supports fast, direct object referencing while using a bound, constant time, wait- free triggering path. Collie thereby avoids the constant indirection cost of Brooks [9] style barriers or handle-based heaps [25]. Collie is demonstrated using speculative multi-address atomicity [11], a form of hardware transactional memory supported by the Azul Vega architecture [2]. We evaluate the Collie collector on the Azul platform, on which previous concurrent collectors such as the Pauseless Collector [12] and its generational variant [30] have been commercially available for several years. We discuss Collie's performance while running sustained workloads, and compare it to the Pauseless collector on the same platform. The Collie collector provides significant MMU [5] improvements even in the 1-msec time windows compared to the Pauseless collector. At the same time, it matches Pauseless in throughput and in the ability to scale to large heap sizes. We believe that the Collie collector is the first garbage collector to leverage hardware-assisted transactional memory. While Collie directly leverages Vega's speculative multi-address atomicity feature (SMA) [11], its design can be easily adapted to other hardware- assisted transactional memory systems. Specifically, the upcoming Intel TSX instruction set extensions [21] include capabilities similar to SMA. We expect Collie to be easily implementable on future commodity servers based on Intel Haswell processors and following processor generations.}, booktitle={Proceedings of the 2012 international symposium on Memory Management - ISMM '12}, publisher={ACM Press}, author={Iyengar, Balaji and Tene, Gil and Wolf, Michael and Gehringer, Edward}, year={2012} } @article{iyengar_tene_wolf_gehringer_2012, title={The Collie: A Wait-Free Compacting Collector}, volume={47}, ISSN={["1558-1160"]}, DOI={10.1145/2426642.2259009}, abstractNote={We describe the Collie collector, a fully concurrent compacting collector that uses transactional memory techniques to achieve wait-free compaction. The collector uses compaction as the primary means of reclaiming unused memory, and performs "individual object transplantations" as transactions. We introduce new terms and requirements useful for analyzing concurrent relocating collectors, including definitions of referrer sets, object transplantation and the notion of individually transplantable objects. The Collie collector builds on these terms and on a detailed analysis of an object's legal states during compaction.}, number={11}, journal={ACM SIGPLAN NOTICES}, author={Iyengar, Balaji and Tene, Gil and Wolf, Michael and Gehringer, Edward}, year={2012}, month={Nov}, pages={85–95} } @inproceedings{gehringer_navalakha_kadanjoth_2011, title={A student-written wiki textbook supplement for a parallel-architecture course}, booktitle={Proceedings of the HPCA-17: Workshop on Computer Architecture Education}, author={Gehringer, Edward F. and Navalakha, Karishma and Kadanjoth, Reejesh}, year={2011} } @inproceedings{gehringer_narang_2011, title={Accountability and the use of classroom response devices}, DOI={10.1109/fie.2011.6142866}, abstractNote={Classroom response devices, such as clickers, have proved effective in improving student engagement during class time. We performed a study to investigate how much of this improvement was due to heightened accountability, either because students were required to take and pass a pre-quiz over the lecture material, or because students were given credit for each answer submitted. We found that the presence of a pre-quiz was associated with a much higher response rate, 38.5% vs. 29.3%. Giving credit for answering questions also boosted the response rate, from 30.3% to 43.2%. We also found that asking more questions during class tended was associated with a lower response rate. When only one question was asked, the response rate was above 60%, but if more than five questions were asked, the response rate was barely 30%. These findings suggest that accountability is important in making effective use of classroom response devices.}, booktitle={2011 frontiers in education conference (fie)}, author={Gehringer, Edward and Narang, M. B.}, year={2011} } @inproceedings{ramachandran_gehringer_2011, title={Automated Assessment of Review Quality Using Latent Semantic Analysis}, ISBN={9781612842097}, url={http://dx.doi.org/10.1109/icalt.2011.46}, DOI={10.1109/icalt.2011.46}, abstractNote={Quality of a review can be identified by reviewing a review. Quantifiable factors that help identify the quality of a review include quality and tone of review comments, and the number of tokens each contains. We use machine-learning techniques such as latent semantic analysis (LSA) and cosine similarity to classify comments based on their quality and tone. Our paper details experiments that were conducted on student review and metareview data by using different data pre-processing steps. We compare these pre-processing steps and show that when applied to student review data, they help improve data quality by providing better text classification. Our technique helps predict metareview scores for student reviews.}, booktitle={2011 IEEE 11th International Conference on Advanced Learning Technologies}, publisher={IEEE}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2011}, month={Jul} } @inbook{siewiorek_gehringer_2011, title={Cm*: The first non-uniform memory access architecture}, booktitle={Encyclopedia of Parallel Computing}, publisher={Springer}, author={Siewiorek, Daniel P. and Gehringer, Edward F.}, editor={Padua, DavidEditor}, year={2011} } @inproceedings{ramachandran_gehringer_2011, title={Determining Degree of Relevance of Reviews Using a Graph-Based Text Representation}, ISBN={9781457720680 9780769545967}, url={http://dx.doi.org/10.1109/ictai.2011.72}, DOI={10.1109/ictai.2011.72}, abstractNote={Reviews are text-based feedback provided by reviewers to authors. The quality of a review can be determined by identifying how relevant it is to the work that the review was written for as well as its similarity to existing well-written and coherent reviews. Relevance between two pieces of text can be determined by identifying semantic and syntactic similarities between them. In this paper, we make use of string-based metrics that incorporate concepts of paraphrasing and plagiarism to determine matching between texts. We use a graph-based text representation technique. We use the k-nearest neighbor classification algorithm to build a supervised model and classify text as LOW, MEDIUM or HIGH based on values of the metrics. We evaluate our approach on three data sets from student assignments and show that our model achieves an average accuracy of 63%.}, booktitle={2011 IEEE 23rd International Conference on Tools with Artificial Intelligence}, publisher={IEEE}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2011}, month={Nov} } @inproceedings{gehringer_2011, title={Experience with software support for managing student-authored wiki textbooks}, booktitle={Proceedings of the 2011 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2011} } @inproceedings{gehringer_2011, title={From the manager's perspective: Classroom contributions to open-source projects}, DOI={10.1109/fie.2011.6143028}, abstractNote={For the past several years, students in computer-science courses have been assigned work on open-source project development. The literature is replete with examples. Yet an instructor desiring to incorporate OSS into a course often has difficulty finding a suitable project and developing a fruitful interaction with its personnel. This paper reports on a survey of managers of OSS projects on how they have interacted with classes and students, and on what faculty can do to work with them effectively. Our findings indicate that instructors need to seek out projects weeks or months in advance, and need to be personally involved in OSS development themselves, and that they need to give their students a good background in design and testing. As a help for instructors looking for a project, we describe several OSS projects that have benefited from student contributions.}, booktitle={2011 frontiers in education conference (fie)}, author={Gehringer, Edward}, year={2011} } @inproceedings{gehringer_cross_2010, title={A suite of Google services for daily course evaluation}, DOI={10.1109/fie.2010.5673187}, abstractNote={In almost all institutions, students are asked to evaluate the quality of instruction on end-of-semester surveys. Unfortunately, these come too late to affect the quality of instruction in the current semester. They are essentially summative-evaluating what has already happened, mostly for the benefit of third parties, rather than formative-providing information that an instructor can use to improve teaching in the current class. Now, with the advent of freely accessible tools for taking Web surveys, it is easy to obtain formative feedback. This paper reports on a suite of Google forms and Google spreadsheets, along with a Google app for visualizing the results. These Google tools can be used to solicit feedback daily from a set of students in the class. This helps the instructor to keep tabs on how the students react to each class session, and compare the results with the feedback from previous class sessions.}, booktitle={2010 IEEE frontiers in education conference (FIE)}, author={Gehringer, Edward and Cross, W. T.}, year={2010} } @inproceedings{ramachandran_gehringer_2010, title={Automated metareviewing}, booktitle={Proceedings of Intelligent Tutoring Systems 2010: Workshop on Computer-Supported Peer Review in Education}, author={Ramachandran, Lakshmi and Gehringer, Edward F.}, year={2010} } @inproceedings{gehringer_2010, title={Daily course evaluation with Google forms}, booktitle={Proceedings of the 2010 ASEE Annual Conference and Exposition}, author={Gehringer, Edward F.}, year={2010} } @inproceedings{gehringer_navalakha_kadanjoth_2010, title={Experience with a student-written wiki textbook supplement}, booktitle={KU Village Online}, author={Gehringer, Edward F. and Navalakha, Karishma and Kadanjoth, Reejesh}, year={2010}, month={Sep} } @inbook{gehringer_2010, title={Expertiza}, ISBN={9781605667867 9781605667874}, url={http://dx.doi.org/10.4018/978-1-60566-786-7.ch005}, DOI={10.4018/978-1-60566-786-7.ch005}, abstractNote={Educators and accrediting agencies demonstrate a growing awareness that students learn better when they work in groups, and on projects that are more similar to those encountered on the job, where their contributions are used by others to add value to the operations of the enterprise. However, it is very time consuming to assess project work; the only scalable way to accomplish this is to have students assist in the assessment. Expertiza is a system for managing all kinds of communication that is involved in assessment: double-blind communications between authors and reviewers, assessment of teammate contributions, evaluations by course staff, and surveys of students to assess the assignment and the peer-review process. This chapter places Expertiza in context among other electronic peer-review systems, algorithms, and methodologies. It relates the results of three experiments showing that through the peer-review process, students are capable of producing work that can be used as teaching materials in later classes.}, booktitle={Monitoring and Assessment in Online Collaborative Environments}, publisher={IGI Global}, author={Gehringer, Edward F.}, year={2010}, pages={75–96} } @inproceedings{gehringer_gummadi_kadanjoth_andrés_2010, title={Motivating effective peer review with extra credit and leaderboards}, booktitle={Proceedings of the 2010 ASEE Annual Conference and Exposition}, author={Gehringer, Edward F. and Gummadi, Abhishek and Kadanjoth, Reejesh and Andrés, Yvonne Marie}, year={2010} } @inproceedings{gehringer_2010, title={Online vs. on-paper exams}, booktitle={Proceedings of the 2010 ASEE Annual Conference and Exposition}, author={Gehringer, Edward F.}, year={2010} } @inproceedings{gehringer_kadanjoth_kidd_2010, title={Software support for peer-reviewing wiki textbooks and other large projects}, booktitle={Proceedings of Intelligent Tutoring Systems 2010: Workshop on Computer-Supported Peer Review in Education}, author={Gehringer, Edward F. and Kadanjoth, Reejesh and Kidd, Jennifer}, year={2010} } @inproceedings{gehringer_kadanjoth_kidd_2010, title={Software support for writing wiki textbooks}, ISBN={9781424462612}, url={http://dx.doi.org/10.1109/fie.2010.5673120}, DOI={10.1109/fie.2010.5673120}, abstractNote={Emerging information technologies are enabling new forms of content delivery. Recent research shows that students are capable of writing a peer-reviewed textbook for their own course. The pedagogical advantages are numerous. Peer review is essential for managing the process in a timely matter. There are many administrative tasks, e.g., assigning topics, assigning reviewers, getting feedback to authors, calculating grades. Performing them without a specialized software system is a big burden on the course staff. The Expertiza project is building a software system to manage creation and peer review of a wiki textbook, automating features such as double-blind feedback between author and reviewer, and support for flow management to allow different chapters of the text to be written and reviewed at different times during the course. It promises to bring wiki textbook-writing to a much wider audience.}, booktitle={2010 IEEE Frontiers in Education Conference (FIE)}, publisher={IEEE}, author={Gehringer, Edward F. and Kadanjoth, Reejesh and Kidd, Jennifer}, year={2010}, month={Oct} } @inproceedings{gehringer_2010, title={Teaching interactively with Google docs}, booktitle={Proceedings of the 2010 ASEE Annual Conference and Exposition}, author={Gehringer, Edward F.}, year={2010} } @inproceedings{gehringer_droujkova_gummadi_nallapeta_2009, place={New Jersey}, title={Game mechanics and social networking for co-production of course materials}, DOI={10.1109/FIE.2009.5350564}, abstractNote={Peer review has long been used in classroom settings, especially for teaching writing skills. In the last fifteen years, peer review has increasingly migrated online. Our Expertiza system has used online peer review of team projects to get students involved in the creation of reusable learning objects, such as homework problems, exam questions, and active- learning exercises. These activities support higher-order thinking skills and mimic workplace tasks. This paper reports on our efforts to integrate game mechanics into Expertiza. We hypothesize that by being able to share their achievements with the class, as well as attempting useful “microtasks” for extra credit, students will become more engaged with the class material and their fellow students. In addition, the course will be improved by the contributions that students will be motivated to create.}, booktitle={2009 39th IEEE Frontiers in Education Conference}, publisher={IEEE}, author={Gehringer, Edward F. and Droujkova, Maria and Gummadi, Abhishek and Nallapeta, Maveeth}, year={2009}, pages={W2C–1-W1C–2} } @inproceedings{gehringer_2009, place={Washington, DC}, title={Improving scores on course evaluations: experienced faculty tell what works}, booktitle={Proceedings of the 2009 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2009}, pages={2009–1742.} } @inproceedings{gehringer_2009, place={Washington, DC}, title={Personal vs. professional e-mail: the Palin case}, booktitle={2009 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2009}, pages={2009–1719.} } @inproceedings{gehringer_2009, title={Propagating software-based educational innovations}, booktitle={Proceedings of the ASEE Southeast Conference}, author={Gehringer, Edward F.}, year={2009} } @inproceedings{gehringer_miller_2009, title={Student-generated active-learning exercises}, ISBN={9781605581835}, url={http://dx.doi.org/10.1145/1508865.1508897}, DOI={10.1145/1508865.1508897}, abstractNote={Active-learning exercises are an effective use of class time to bring about desired learning outcomes. Instead of listening to a lecture, students are engaged in tasks that allow them to discover new knowledge, or apply what they have just learned. A barrier to wide usage of active-learning exercises is the need to design them, since few are available in textbooks, technical papers, or on the Web. The work reported in this paper demonstrates that students can design active-learning exercises that are worthy of being used in CS1 and CS2. This frees the instructor from having to write all the exercises him/herself. This paper makes three contributions: a methodology for creating student-generated active-learning exercises, several exercises for teaching difficult concepts in CS1 and CS2, and guidance about the kinds of active-learning exercises that students will enjoy and learn most from.}, booktitle={Proceedings of the 40th ACM technical symposium on Computer science education - SIGCSE '09}, publisher={ACM Press}, author={Gehringer, Edward F. and Miller, Carolyn S.}, year={2009} } @inproceedings{gehringer_2009, title={Working effectively with teaching assistants}, booktitle={Proceedings of the 2009 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2009} } @inproceedings{gehringer_2008, title={Assessing students’ wiki contributions}, booktitle={Proceedings of the 2008 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2008} } @inproceedings{gehringer_2008, title={Damage control: What to do when things don’t work}, booktitle={Proceedings of the 2008 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2008} } @inproceedings{meneely_williams_gehringer_2008, title={Rose: A repository of education-friendly open-source projects}, ISBN={9781605580784}, url={http://dx.doi.org/10.1145/1384271.1384276}, DOI={10.1145/1384271.1384276}, abstractNote={Open-source project artifacts can be used to inject realism into software engineering courses or lessons on open-source software development. However, the use of open-source projects presents challenges for both educators and for students. Educators must search for projects that meet the constraints of their classes, and often must negotiate the scope and terms of the project with project managers. For students, many available open-source projects have a steep learning curve that inhibits them from making significant contributions to the project and benefiting from a "realistic" experience. To alleviate these problems and to encourage cross-institution collaboration, we have created the Repository for Open Software Education (ROSE) and have contributed three open-source projects intended for an undergraduate computer science or software engineering course. The projects in ROSE are education-friendly in terms of a manageable size and scope, and are intended to be evolved over many semesters. All projects have a set of artifacts covering all aspects of the development process, from requirements, design, code, and test. We invite other educators to contribute to ROSE and to use projects found on ROSE in their own courses.}, booktitle={Proceedings of the 13th annual conference on Innovation and technology in computer science education - ITiCSE '08}, publisher={ACM Press}, author={Meneely, Andrew and Williams, Laurie and Gehringer, Edward F.}, year={2008} } @inproceedings{gehringer_2008, title={Understanding and relating to your international students}, booktitle={Proceedings of the 2008 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2008} } @inproceedings{gehringer_2007, title={Active and collaborative learning strategies for teaching computing}, booktitle={Proceedings of the 2007 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2007} } @inproceedings{gambhir_gehringer_solihin_2007, title={Animations of important concepts in parallel computer architecture}, ISBN={9781595937971}, url={http://dx.doi.org/10.1145/1275633.1275638}, DOI={10.1145/1275633.1275638}, abstractNote={Resources for teaching parallel computer architecture--specifically, cache coherence and memory consistency--are increasing in importance. Through instructor-created templates, followed by peer-reviewed student work, we have produced a set of animations that can be used for classroom presentation or self-study. These animations cover bus-based coherence protocols, such as MSI, MOESI, and Dragon; and network-based protocols, such as the full bit-vector scheme and a simplified version of SCI. Some animations illustrate the operation of a particular protocol, while others compare protocols against each other. Other animations cover memory-consistency models, such as sequential consistency, processor consistency, weak ordering, and release consistency.}, booktitle={Proceedings of the 2007 workshop on Computer architecture education - WCAE '07}, publisher={ACM Press}, author={Gambhir, Mohit and Gehringer, Edward F. and Solihin, Yan}, year={2007} } @article{gehringer_ehresman_conger_wagle_2007, title={Reusable learning objects through peer review: The Expertiza approach}, volume={3}, number={6}, journal={Innovate—Journal of Online Education}, author={Gehringer, Edward F. and Ehresman, Luke M. and Conger, Susan G. and Wagle, Prasad A.}, year={2007}, month={Aug} } @article{gehringer_2007, title={Session details: Embedded systems and architecture}, volume={39}, DOI={10.1145/3263059}, abstractNote={No abstract available.}, number={1}, journal={ACM SIGCSE Bulletin}, publisher={Association for Computing Machinery (ACM)}, author={Gehringer, Edward}, year={2007}, month={Mar} } @inproceedings{gehringer_2007, title={Using independent-study projects in your research and teaching program}, booktitle={Proceedings of the 2007 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2007} } @inbook{reddy_sawyer_gehringer_2006, title={A Cache-Pinning Strategy for Improving Generational Garbage Collection}, ISBN={9783540680390 9783540680406}, ISSN={0302-9743 1611-3349}, url={http://dx.doi.org/10.1007/11945918_15}, DOI={10.1007/11945918_15}, abstractNote={In generational garbage collection, the youngest generation of the heap is frequently traversed during garbage collection. Due to randomness of the traversal, memory access patterns are unpredictable and cache performance becomes crucial to garbage-collection efficiency. Our proposal to improve cache performance of garbage collection is to “pin” the youngest generation (sometimes called the nursery) in the cache, converting all nursery accesses to cache hits. To make the nursery fit inside the cache, we reduce its size, and, to prevent its eviction from the cache, we configure the operating system’s page-fault handler to disallow any page allocation that would cause cache conflicts to the nursery. We evaluated our scheme on a copying-style generational garbage collector using IBM VisualAge Smalltalk and Jikes research virtual machine. Our simulation results indicate that the increase in frequency of garbage collection due to a smaller nursery is overshadowed by gains of converting all nursery accesses to cache hits.}, booktitle={High Performance Computing - HiPC 2006}, publisher={Springer Berlin Heidelberg}, author={Reddy, Vimal K. and Sawyer, Richard K. and Gehringer, Edward F.}, year={2006}, pages={98–110} } @inproceedings{gehringer_ehresman_wagle_conger_2006, title={Expertiza: Reusable learning objects and active learning for distance education}, booktitle={Proceedings of the UNC Teaching and Learning with Technology Conference}, author={Gehringer, Edward F. and Ehresman, Luke M. and Wagle, Prasad and Conger, Susan G.}, year={2006} } @inproceedings{gehringer_ehresman_skrien_2006, title={Expertiza: Students Helping to Write an OOD Text}, ISBN={159593491X}, url={http://dx.doi.org/10.1145/1176617.1176742}, DOI={10.1145/1176617.1176742}, abstractNote={Students in a masters-level object-oriented design class participated in several exercises related to improving a not-yet-published textbook in object-oriented design. Each student was asked, sometime during the semester, to improve an explanation from the book, to make up an example of a concept described in the book, and to create an exercise for a chapter in the book. Their contributions were peer-reviewed by other members of the class. A strong majority of the students (29 of 49) indicated that they learned a lot from doing the assignments, and 27 of 49 of them agreed or strongly agreed that the assignments were enjoyable-a good measure of their engagement. The textbook author found the feedback very helpful in revising the textbook.}, booktitle={Companion to the 21st ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications - OOPSLA '06}, publisher={ACM Press}, author={Gehringer, Edward F. and Ehresman, Luke M. and Skrien, Dale J.}, year={2006} } @inproceedings{navoraphan_gehringer_culp_gyllstrom_stotts_2006, title={Next-generation DPP with Sangam and Facetop}, ISBN={1595936211}, url={http://dx.doi.org/10.1145/1188835.1188837}, DOI={10.1145/1188835.1188837}, abstractNote={This paper describes a state-of-the-art environment for distributed Extreme Programming that results from combining the Sangam editor, developed at NCSU and the Facetop user interface, developed at UNC-Chapel Hill. Sangam facilitates distributed Extreme Programming by sending events back and forth between a driver and a navigator working under the Eclipse development environment. Concurrently, Facetop allows the distributed pair to recapture some of the face-to-face communications that are lost in no-video distributed pairing sessions. The integrated tool is a quantum leap forward for distributed Extreme Programming as well as distributed agile development.}, booktitle={Proceedings of the 2006 OOPSLA workshop on eclipse technology eXchange - eclipse '06}, publisher={ACM Press}, author={Navoraphan, Kanyamas and Gehringer, Edward F. and Culp, James and Gyllstrom, Karl and Stotts, David}, year={2006} } @inproceedings{kendall_gehringer_2006, title={Teaching Web Services with Water}, ISBN={1424402565}, url={http://dx.doi.org/10.1109/fie.2006.322493}, DOI={10.1109/fie.2006.322493}, abstractNote={Web services have become important enough that all software professionals should know something about them. However, it can be challenging to fit Web services into a crowded curriculum. Common approaches require teaching a host of standards and APIs that all but obscure the simplicity of the concepts. The object-oriented Water language offers a way around these difficulties. Originally designed for rapidly prototyping XML-based Web services, it provides a very concise encoding of Web-services functionality. This makes it ideal for teaching, as students can learn to write real Web-services programs in two or three weeks. Moreover, Water helps students learn several patterns that are important to understanding object-oriented design but lacking - or not implemented well - in common o-o languages such as Java and C++. Among these are delegation and multiple inheritance.}, booktitle={Proceedings. Frontiers in Education. 36th Annual Conference}, publisher={IEEE}, author={Kendall, Matthew D. and Gehringer, Edward F.}, year={2006}, month={Oct} } @inproceedings{gehringer_ehresman_conger_wagle_2006, title={Work in Progress: Reusable Learning Objects Through Peer Review: The Expertiza Approach}, ISBN={1424402565}, url={http://dx.doi.org/10.1109/fie.2006.322542}, DOI={10.1109/fie.2006.322542}, abstractNote={The Expertiza platform is a divide-and-conquer approach to producing reusable learning objects through active-learning exercises. Students select from a list of tasks to be performed, with several students selecting each task. Then they prepare their work and submit it to an electronic peer-review system. The work is then reviewed by other students, who offer comments to help the submitters improve their work. The best submissions for each task are then selected for use in later courses. Expertiza gets students working together to improve others' learning experiences. It helps them learn, by making them think through the lecture material and apply it to a real-world situation, just as they might do in an on-the-job situation. These learning objects can be improved iteratively; for example, the next year's class can be presented with the examples developed by students the previous year, and asked to identify shortcomings and develop improved examples. This paper presents numerous examples of how the platform can be used to allow each cohort of students to "stand on the shoulders" of their predecessors, building ever-more-effective resources to help themselves learn}, booktitle={Proceedings. Frontiers in Education. 36th Annual Conference}, publisher={IEEE}, author={Gehringer, Edward and Ehresman, Luke and Conger, Susan and Wagle, Prasad}, year={2006} } @inproceedings{kachru_gehringer_2005, title={A comparison of J2EE and .NET as platforms for teaching web services}, ISBN={0780385527}, url={http://dx.doi.org/10.1109/fie.2004.1408754}, DOI={10.1109/fie.2004.1408754}, abstractNote={.NET and J2EE are the two leading technologies in enterprise-level application development. They are also the platforms of choice for developing Web services. We compare the two platforms using parameters such as features present in each platform, tools and resources offered by the two and compatibility with the rest of the curriculum. .NET offers integrated, native support for various phases of Web services development, while the Java platform achieves this with several new libraries. We compare the Web-services development process in IBM's Websphere (for J2EE) and Microsoft's visual studio .NET and find them remarkably similar. Arguments in favor of J2EE are platform independence, multiple vendor support, the popularity of Java in universities, and a larger number of tools and resources from which to choose. Points favoring .NET include support for multiple languages, and integrated (rather than add-on) support for Web services. The disadvantage of single-vendor support in .NET must be weighed against J2EE's single-language support.}, booktitle={34th Annual Frontiers in Education, 2004. FIE 2004.}, publisher={IEEE}, author={Kachru, S. and Gehringer, E.F.}, year={2005}, month={Mar} } @inproceedings{gehringer_2005, title={Reuse of homework and test questions: when, why, and how to maintain security?}, ISBN={0780385527}, url={http://dx.doi.org/10.1109/fie.2004.1408702}, DOI={10.1109/fie.2004.1408702}, abstractNote={It is always difficult to obtain good homework problems and test questions. Instructors can save time - and polish their work - by using the same questions they used before. And they would do so semester after semester, except for one obvious risk: that students would simply copy or memorize the answers rather than learning the material. This paper presents the results of a survey of hundreds of postsecondary educators. How frequently do they reuse questions, and how do they prevent students from getting advance access to the answers? How much trouble have they had with "files" kept by fraternities, sororities, and ethnic groups? Do they consider it cheating to copy or memorize answers? Has the increasing use of electronic resources made it easier or harder to maintain security? Do they typically alter their policies when they begin to put material on line? The answers to these questions can guide all of us to more realistic and secure reuse policies.}, booktitle={34th Annual Frontiers in Education, 2004. FIE 2004.}, publisher={IEEE}, author={Gehringer, E.F.}, year={2005}, month={Mar} } @inproceedings{gehringer_2005, title={The Memogate affair: A case study on privacy in computer networks}, booktitle={Proceedings of the 2005 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2005} } @inproceedings{kachru_gehringer_2004, title={On the relative advantages of teaching Web services in J2EE vs. .NET}, booktitle={Proceedings of the OOPSLA 2004 Educators' Symposium}, author={Kachru, Sandeep and Gehringer, Edward F.}, year={2004} } @inproceedings{katira_williams_wiebe_miller_balik_gehringer_2004, title={On understanding compatibility of student pair programmers}, ISBN={1581137982}, url={http://dx.doi.org/10.1145/971300.971307}, DOI={10.1145/971300.971307}, abstractNote={In recent years, educators have increasingly used pair programming in their computer science courses. Pair programming has been shown to be beneficial for both the teaching staff and the students in the courses. Occasionally, though, students are not compatible with their partners. An extensive study was done at the North Carolina State University to provide guidance on forming student pairs to improve the chances that pairs will be compatible and have a productive work relationship. We examined compatibility among freshman, advanced undergraduate, and graduate students. We have found that the students' perception of their partner's skill level has a significant influence on their compatibility. Graduate students work well with partners of similar actual skill level. Freshmen seem to work better with partners with different Myers Briggs personality type. Students' self-esteem does not appear to be a major contributor to pair compatibility.}, booktitle={Proceedings of the 35th SIGCSE technical symposium on Computer science education - SIGCSE '04}, publisher={ACM Press}, author={Katira, Neha and Williams, Laurie and Wiebe, Eric and Miller, Carol and Balik, Suzanne and Gehringer, Ed}, year={2004} } @inproceedings{ho_raha_gehringer_williams_2004, title={Sangam: A distributed pair-programming plugin for Eclipse}, url={http://dx.doi.org/10.1145/1066129.1066144}, DOI={10.1145/1066129.1066144}, abstractNote={In pair programming, two programmers traditionally work side-by-side at one computer. However, in globally distributed organizations, long-distance collaboration is frequently necessary. Sangam is an Eclipse plug-in that allows Eclipse users in different locations to share a workspace so that they may work as if they were using the same computer. In this paper, we discuss the Sangam plug-in, and our experience developing it via distributed and collocated pair programming.}, booktitle={Proceedings of the 2004 OOPSLA workshop on eclipse technology eXchange - eclipse '04}, publisher={ACM Press}, author={Ho, Chih-Wei and Raha, Somik and Gehringer, Edward and Williams, Laurie}, year={2004} } @inproceedings{gehringer_2003, title={A database and search engine for sharing fine-grained course materials over the Web}, booktitle={Proceedings of the 2003 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2003} } @inproceedings{gehringer_2003, title={A pair-programming experiment in a non-programming course}, ISBN={1581137516}, url={http://dx.doi.org/10.1145/949344.949397}, DOI={10.1145/949344.949397}, abstractNote={Pair programming is a concept where two programmers work side by side at the same computer, writing code jointly. One of them, called the driver, is in control of the keyboard and mouse. The other, called the navigator, observes what the driver is doing and offers advice. It is the driver's job to write the code. The navigator has a chance to observe the larger picture, evaluating the driver's code for correctness of design and implementation. Studies have shown that pair programming is very effective. Two programmers can finish a task in little over half the elapsed time that a single programmer takes. And the quality of the code-measured in terms of absence of defects-is much higher.In the past few years, pair programming has made inroads into industry and into programming courses. However, it has not typically been used in courses that teach subjects other than programming or software engineering, nor has it been used in the analysis of experimental results. This paper reports on an experiment in a combined senior/masters-level computer architecture class, using Hennessy & Patterson's Computer Architecture: A Quantitative Approach as a text. Students were required to implement three projects simulating various aspects of a microarchitecture (cache, branch predictor, dynamic instruction scheduler). Then they engaged in an experimental analysis to find the best configuration in a design space. Students reported high levels of satisfaction with the experience of pair programming. Pair programmers obtained significantly higher grades on Project 1; however, differences on the other projects were not statistically significant.}, booktitle={Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications - OOPSLA '03}, publisher={ACM Press}, author={Gehringer, Edward F.}, year={2003} } @inproceedings{gehringer_2003, title={Building resources for teaching computer architecture through electronic peer review}, ISBN={9781450347327}, url={http://dx.doi.org/10.1145/1275521.1275534}, DOI={10.1145/1275521.1275534}, abstractNote={Electronic peer review is a concept that allows students to get much more feedback on their work than they normally do in a classroom setting. Students submit assignments to the system, which presents them to other students for review. Reviewer and author then communicate over a shared Web page, and the author has a chance to submit revised versions in response to reviewer comments. At the end of the period, the reviewer gives the author a grade. Each author gets reviews from several reviewers, whose grades are averaged. At the end of the review period, there is a final round when students grade each other's reviews. Their grade is determined by the quality of both their submitted work and their reviewing. This paper reports on our use of peer review in two computer architecture courses, a microarchitecture course and a parallel-architecture course. Students in these courses engaged in a variety of peer-reviewed tasks: Writing survey papers on an aspect of computer architecture, making up homework problems over the material covered in class, creating machine-scorable questions on topics covered during the semester, animating and improving graphics in the lecture presentations, and annotating the lecture notes by inserting hyperlinks to other Web documents. Students generally found these exercises beneficial to their learning experience, and they have provided resources that can be used to improve the course. In fact, with such a system, large classes are actually a blessing, since they produce better and more copious educational materials to be used in subsequent semesters.}, booktitle={Proceedings of the 2003 workshop on Computer architecture education Held in conjunction with the 30th International Symposium on Computer Architecture - WCAE '03}, publisher={ACM Press}, author={Gehringer, Edward F.}, year={2003} } @inproceedings{gehringer_2003, title={Electronic peer review builds resources for teaching computer architecture}, booktitle={Proceedings of the 2003 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2003} } @inproceedings{gehringer_2003, title={Is pair programming an effective way to learn computer architecture?}, booktitle={Proceedings of the 2003 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2003} } @inproceedings{gehringer_2003, title={Why aren't course-management systems penetrating faster?}, booktitle={Proceedings of the 2003 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2003} } @inproceedings{yurcik_gehringer_2002, title={A survey of web resources for teaching computer architecture}, ISBN={9781450347310}, url={http://dx.doi.org/10.1145/1275462.1275492}, DOI={10.1145/1275462.1275492}, abstractNote={The use of Web resources is becoming a core part of teaching computer architecture. In this paper we identify five notable Web sites that specialize in teaching tools for computer architecture instructors and discuss the role they can play in facilitating learning. While these Web sites contain a wide range of valuable resources, there remain gaps in what is available online. Community support appears meager for making tools and resources available. We conclude that the computer-architecture community faces challenges both in the content of Web-based materials (accurate and appropriate information) and the process (making information known and available to academic community).}, booktitle={Proceedings of the 2002 workshop on Computer architecture education Held in conjunction with the 29th International Symposium on Computer Architecture - WCAE '02}, publisher={ACM Press}, author={Yurcik, William and Gehringer, Edward F.}, year={2002} } @inproceedings{gehringer_cui_2002, title={An effective strategy for dynamic mapping of peer reviewers}, booktitle={2002 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F. and Cui, Yun}, year={2002} } @article{gehringer_2002, title={Choosing passwords: Security and human factors}, ISBN={["0-7803-7284-0"]}, DOI={10.1109/istas.2002.1013839}, abstractNote={Password security is essential to the security of information systems. Human fallibility makes it nearly impossible to follow all of the recommended rules simultaneously. A user with many different passwords, frequently changing, will be forced to write them down somewhere. Some systems constrain them to have a certain minimum length, or to require them to contain a combination of letters and numbers. Some systems also impose maximum lengths, and some prohibit special characters. The lack of common standards for passwords makes it difficult for a user to remember which password is used for which system. To make matters worse, systems frequently revoke a user's access after a password has been incorrectly entered as few as three times. What is needed, then, is an analysis of passwords that takes both human factors and security into account. We must recognize that what really matters is the security of the total system-offline as well as online. This paper explores the tradeoffs that need to be made to achieve maximum security in everyday use by forgetful users.}, number={2002 Jun 6-8}, journal={SOCIAL IMPLICATIONS OF INFORMATION AND COMMUNICATION TECHNOLOGY, PROCEEDINGS}, publisher={New York, NY ; Piscataway, NJ: IEEE}, author={Gehringer, EF}, year={2002}, pages={369–373} } @article{chang_srisa-an_lo_gehringer_2002, title={DMMX: Dynamic memory management extensions}, volume={63}, ISSN={["1873-1228"]}, DOI={10.1016/S0164-1212(02)00014-6}, abstractNote={Dynamic memory management allows programmers to be more productive and increases system reliability and functionality. However, software algorithms for memory management are slow and non-deterministic. It is well known that object-oriented applications tend to be dynamic memory intensive. This has led programmers to eschew dynamic memory allocation for many real-time and embedded systems. Instead, programmers using Java or C++ as a development language frequently decide to allocate memory statically instead of dynamically. In this paper, we present the design of a bitmap-based memory allocator implemented primarily in combinational logic to allocate memory in a small, predictable amount of time. It works in conjunction with an application-specific instruction-set extension called the dynamic memory management extension (DMMX). Allocation is done through a complete binary tree of combinational logic, which allows constant-time object creation. The garbage collection algorithm is mark sweep, where the sweeping phase can be accomplished in constant time. This hardware scheme can greatly improve the speed and predictability of dynamic memory management. The proposed DMMX is an add-on approach, which allows easy integration into any CPU, hardware-implemented Java virtual machine, or processor in memory.}, number={3}, journal={JOURNAL OF SYSTEMS AND SOFTWARE}, author={Chang, JM and Srisa-an, W and Lo, CTD and Gehringer, EF}, year={2002}, month={Sep}, pages={187–199} } @book{baheti_williams_gehringer_stotts_smith_2002, title={Distributed Pair Programming: Empirical Studies and Supporting Environments}, number={2002}, institution={Chapel Hill, NC: Dept. of Computer Science, University of North Carolina}, author={Baheti, P. and Williams, L. and Gehringer, E. and Stotts, D. and Smith, J.}, year={2002}, month={Mar}, pages={TR02–010} } @article{day_gehringer_2002, title={Educators and pornography: The "unacceptable use" of school computers}, ISBN={["0-7803-7284-0"]}, DOI={10.1109/istas.2002.1013835}, abstractNote={More companies are requiring their employees to sign acceptable-use policies for Internet computers. Some employees are unaware of the implications of the policies, and do not realize the extent to which their activities can be monitored by computer technicians. In academia, three important cases of "unacceptable use" are those of Dean Ronald F. Thiemann, Professor Eric Neil Angevine, and Superintendent Robert Herrold. All three lost, or resigned from, their positions after pornography was discovered on their employer-owned computers. Several issues regarding "acceptable use" are common to all the cases, including privacy rights, the right of the institution to control its equipment, and who might see what is stored on that equipment. This paper explores these questions, and suggests guidelines for employers and employees.}, number={2002 Jun 6-8}, journal={SOCIAL IMPLICATIONS OF INFORMATION AND COMMUNICATION TECHNOLOGY, PROCEEDINGS}, publisher={New York, NY ; Piscataway, NJ: IEEE}, author={Day, MG and Gehringer, EF}, year={2002}, pages={340–344} } @inproceedings{baheti_williams_gehringer_stotts_2002, title={Exploring pair programming in distributed object-oriented team projects}, booktitle={Proceedings of the Object-Oriented Programming Systems, Languages, and Applications 2002 Educators’ Symposium}, author={Baheti, Prashant and Williams, Laurie A. and Gehringer, Edward F. and Stotts, David}, year={2002} } @inbook{baheti_gehringer_stotts_2002, title={Exploring the Efficacy of Distributed Pair Programming}, ISBN={9783540440246 9783540456728}, ISSN={0302-9743}, url={http://dx.doi.org/10.1007/3-540-45672-4_20}, DOI={10.1007/3-540-45672-4_20}, abstractNote={Pair programming is one of the twelve practices of Extreme Programming (XP). Pair programming is usually performed by programmers that are collocated — working in front of the same monitor. But the inevitability of distributed development of software gives rise to important questions: How effective is pair programming if the pairs are not physically next to each other? What if the programmers are geographically distributed? An experiment was conducted at North Carolina State University to compare different working arrangements of student teams developing object-oriented software. Teams were both collocated and in distributed environments; some teams practiced pair programming while others did not. In particular, we compared the software developed by virtual teams using distributed pair programming against collocated teams using pair programming and against virtual teams that did not employ distributed pair programming. The results of the experiment indicate that it is feasible to develop software using distributed pair programming, and that the resulting software is comparable to software developed in collocated or virtual teams (without pair programming) in productivity and quality.}, booktitle={Extreme Programming and Agile Methods — XP/Agile Universe 2002}, publisher={Springer Berlin Heidelberg}, author={Baheti, Prashant and Gehringer, Edward and Stotts, David}, year={2002}, pages={208–220} } @inproceedings{gehringer_2002, place={Washington, DC}, title={Missing White House e-mail: A whistleblowing case study}, booktitle={Proceedings of the 2002 American Society of Engineering Education Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2002} } @inproceedings{gehringer_2002, title={To see or not to see: Access restrictions on course Web sites}, booktitle={Proceedings of the 2002 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2002} } @inproceedings{gehringer_2001, place={Washington, DC}, title={Assignment and quality control of peer reviewers}, booktitle={2001 ASEE annual conference & exposition : proceedings ; June 24-27, 2001, Albuquerque Convention Center, Albuquerque, New Mexico}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2001} } @inbook{gehringer_louca_2001, title={Building a database and search engine for reuse of course materials}, volume={2}, booktitle={Frontiers in Education Conference (31st: 2001: Reno, Nev.) FIE 2001 Reno: 31st Annual Frontiers in Education Conference: Impact on engineering and science education}, publisher={Piscataway, NJ: IEEE}, author={Gehringer, E. F. and Louca, T. M.}, year={2001}, pages={14–18} } @inproceedings{gehringer_2001, place={Washington, DC}, title={Building an Ethics in Computing Website using peer review}, booktitle={2001 ASEE annual conference & exposition : proceedings ; June 24-27, 2001, Albuquerque Convention Center, Albuquerque, New Mexico}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={2001} } @inproceedings{gehringer_maeda_2001, place={New York}, series={ACM SIGPLAN notices}, title={Cooperatively enriching education: Industrial projects for academic credit}, booktitle={OOPSLA 2001, Tampa Bay : Conference on Object-Oriented Programming, Systems, Languages, and Applications : October 14-18, 2001, Tampa Convention Center, Tampa Bay, Florida, USA}, publisher={Association for Computing Machinery}, author={Gehringer, Edward F. and Maeda, Dave}, year={2001}, pages={35–39}, collection={ACM SIGPLAN notices} } @inproceedings{gehringer_louca_2001, place={Washington, DC}, title={Databases and search engines: Tools for Reuse of Course Materials}, booktitle={2001 ASEE annual conference & exposition : proceedings ; June 24-27, 2001, Albuquerque Convention Center, Albuquerque, New Mexico}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F. and Louca, Tony M.}, year={2001} } @inproceedings{gehringer_2001, title={Electronic peer review and peer grading in computer-science courses}, ISBN={1581133294}, url={http://dx.doi.org/10.1145/364447.364564}, DOI={10.1145/364447.364564}, abstractNote={We have implemented a peer-grading system for review of student assignments over the World-Wide Web and used it in approximately eight computer-science courses. Students prepare their assignments and submit them to our Peer Grader (PG) system. Other students are then assigned to review and grade the assignments. The system allows authors and reviewers to communicate with authors being able to update their submissions. Unique features of our approach include the ability to submit arbitrary sets of Web pages for review, and mechanisms for encouraging careful review of submissions. We have used the system to produce high-quality compilations of student work. Our assignment cycle consists of six phases, from signing up for an assignment to Web publishing of the final result. Based upon our experience with PG, we offer suggestions for improving the system to make it more easily usable by students at all levels.}, booktitle={Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education - SIGCSE '01}, publisher={ACM Press}, author={Gehringer, Edward F.}, year={2001} } @inproceedings{vu_gehringer_2001, title={Multicast buffered ATM switch}, booktitle={Proceedings of the IEEE Third International Conference on Information, Communications, and Signal Processing}, author={Vu, Chien D. and Gehringer, Edward F.}, year={2001}, month={Oct} } @inproceedings{gehringer_manns_mercer_bergin_2001, place={New York}, series={ACM SIGPLAN notices}, title={Reflections on 10 years of Educators’ Symposia}, booktitle={OOPSLA 2001, Tampa Bay : Conference on Object-Oriented Programming, Systems, Languages, and Applications : October 14-18, 2001, Tampa Convention Center, Tampa Bay, Florida, USA}, publisher={Association for Computing Machinery}, author={Gehringer, Edward F. and Manns, Mary Lynn and Mercer, Rick and Bergin, Joseph}, year={2001}, collection={ACM SIGPLAN notices} } @inproceedings{gehringer_louca_2000, title={A Web-based computer architecture course database}, DOI={10.1109/fie.2000.896639}, abstractNote={A Web-based database of course materials in computer architecture is being developed. Its goal is to allow instructors at different institutions to share independently developed materials and to develop new materials jointly. This database comprises problems and lectures downloaded (with permission) from the Websites of courses in computer architecture at universities around the world. The site is searchable by classification or fulltext string for problems on particular topics. Instructors can obtain accounts that will allow them to browse the database content and loan their questions directly. A Java application is being developed to further automate the process. This project has been developed in conjunction with the WebAssign project for on-line homework submission and grading. Where the format permits, homework and test problems can be automatically graded. Although this prototype is specific to the field of computer architecture, the software for building the database is usable for constructing databases in almost any academic field.}, booktitle={Frontiers in Education Conference (30th: 2001: Kansas City, Mo.) FIE 2000: 30th Annual Frontiers in Education Conference: Building on a century of progress in engineering education: Vol. 1}, publisher={New York, NY ; Piscataway, NJ: IEEE}, author={Gehringer, Edward and Louca, T. M.}, year={2000}, pages={S2B/12–16} } @inproceedings{gehringer_louca_2000, place={New York}, title={A Web-based object technology course database}, booktitle={Proceedings of the 15th ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications : October 15-19, 2000, Minneapolis, MN USA}, publisher={Association for Computing Machinery}, author={Gehringer, Edward F. and Louca, Tony M.}, year={2000}, pages={70–74} } @inbook{gehringer_2000, title={Capability-based addressing}, booktitle={Encyclopedia of Computer Science}, publisher={International Thomson Computer Press}, author={Gehringer, Edward F.}, editor={Ralston, Anthony and Reilly, Edwin and Hemmendinger, DavidEditors}, year={2000} } @inproceedings{chang_srisa-an_lo_gehringer_2000, place={Association of Computing Machinery}, title={Hardware support for dynamic memory management}, booktitle={Proceedings of the International Symposium on Computer Architecture:, Workshop on Solving the Memory Wall Problem}, publisher={New York}, author={Chang, J.Morris and Srisa-an, Witawas and Lo, Chia-Tien Dan and Gehringer, Edward F.}, year={2000} } @inproceedings{gehringer_2000, title={Strategies and mechanisms for electronic peer review}, ISBN={0780364244}, url={http://dx.doi.org/10.1109/fie.2000.897675}, DOI={10.1109/fie.2000.897675}, abstractNote={We have implemented a peer grading system for review of student assignments over the World Wide Web and used it in approximately eight courses in computing and electrical engineering. Students prepare their assignments and submit them to our Peer Grader (PG) system. Other students are then assigned to review and grade the assignments. The system allows authors and reviewers to communicate, with authors being able to update their submissions. Unique features of our approach include the ability to submit arbitrary sets of Web pages for review, and mechanisms for encouraging careful review of submissions. Electronic peer review facilitates collaborative learning in several ways. First, there is the obvious fact that students can learn from their reviewers' comments. Second, students help each other to improve their communication skills. Third, in team projects, peer review allows team members to be assessed by each other. Finally, peer review makes it possible to break up a large project into small chunks. In fact, new releases of PG are being developed in exactly this way.}, booktitle={Proceedings of the 30th Annual Frontiers in Education Conference}, publisher={Stripes Publishing}, author={Gehringer, E.F.}, year={2000} } @inproceedings{gehringer_louca_2000, title={Using the computer architecture course database}, ISBN={9781450347303}, url={http://dx.doi.org/10.1145/1275240.1275261}, DOI={10.1145/1275240.1275261}, abstractNote={No abstract available.}, booktitle={Proceedings of the 2000 workshop on Computer architecture education - WCAE '00}, publisher={ACM Press}, author={Gehringer, Edward F. and Louca, Tony M.}, year={2000} } @inproceedings{gehringer_2000, place={Piscataway, NJ}, title={Web-based databases of course material: Improving the viability}, ISBN={9780780364240 9780780364257 9780780364264 9780780364271}, booktitle={FIE 2000 : 30th Annual Frontiers in Education Conference : Building on a century of progress in engineering education : conference proceedings : Hyatt Regency Crown Center Hotel, Kansas City, Missouri, October 18-21, 2000}, publisher={IEEE}, author={Gehringer, Edward F.}, year={2000} } @article{gehringer_2000, title={Welcome}, DOI={10.1145/1275240.1275242}, abstractNote={No abstract available.}, journal={Proceedings of the 2000 workshop on Computer architecture education - WCAE '00}, publisher={ACM Press}, author={Gehringer, Edward F.}, year={2000} } @inproceedings{gehringer_1999, title={A Web-based computer architecture course database}, booktitle={Proceedings of the 1999 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={1999} } @inproceedings{gehringer_1999, place={Association for Computing Machinery}, title={A tour of course Websites}, ISBN={9781581132380}, booktitle={Proceedings of the 14th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages and Applications : November 1-5, 1999, Denver, CO, USA}, publisher={New York}, author={Gehringer, Edward F.}, year={1999} } @inproceedings{gehringer_1999, title={Peer grading over the Web: Enhancing education in design courses}, booktitle={Proceedings of the 1999 ASEE Annual Conference and Exposition}, publisher={American Society for Engineering Education}, author={Gehringer, Edward F.}, year={1999} } @inproceedings{gehringer_goulart_sang_geng_1998, title={Computer architecture course database}, ISBN={9781450347365}, url={http://dx.doi.org/10.1145/1275182.1275210}, DOI={10.1145/1275182.1275210}, abstractNote={A database of course materials in computer architecture is being developed on the World-Wide Web. Its goal is to allow instructors at different institutions to share materials and develop them jointly. This database comprises problems downloaded from the Web sites of courses in computer architecture at universities around the world. The site is searchable by classification or fulltext string for problems on particular topics in computer architecture. At this writing, the database contains 240 problems, and new problems are being added at a rapid pace. In the future, lecture notes and laboratory exercises will also be included. The software is adaptable to other academic fields as well.}, booktitle={Proceedings of the 1998 workshop on Computer architecture education - WCAE '98}, publisher={ACM Press}, author={Gehringer, Edward F. and Goulart, Ana E. and Sang, Xiaokang and Geng, Chenhao}, year={1998} } @inproceedings{gehringer_sun_1997, title={A Smalltalk memory profiler and its performance enhancement}, url={http://www.dcs.gla.ac.uk/~huw/oopsla97/gc/papers.html.}, booktitle={Proceedings of the Object-Oriented Programming Systems, Languages, and Applications 1997 Educators’ Symposium}, author={Gehringer, Edward F. and Sun, Jingyu}, year={1997} } @inproceedings{gehringer_1997, title={Classifying and sharing O-O course materials reuse in the classroom}, DOI={10.1145/274567.274585}, abstractNote={A very successfnl half-day workshop focused on cooperation in o-o education. It attracted forty participants from five continents, which made it the largest of all the workshops at this year’s OOPSLA. The workshop consisted of three consecutive breakout sessions, spread over two rooms. The organizers, Ed Gehringer of North Carolina State, and Mary Lynn Manns, of the University of North Carolina at Asheville, would like to thank the organizing committee for providing the extra space.}, number={1997}, booktitle={OOPSLA '97: Addendum to the proceedings: Conference on Object-Oriented Programming Systems, Languages, and Applications Conference on Object-Oriented Programming Systems, Languages, and Applications: 12th annual conference, October 5-9, 1997, Atlanta, GA, USA}, publisher={New York, NY: ACM Press, SIGPLAN}, author={Gehringer, Edward}, year={1997}, pages={88–92} } @inproceedings{singhal_gehringer_jones_craig_brown_1997, title={University/industry collaboration in large-scale object systems education}, booktitle={Proceedings of the OOPSLA 1997 Educators’ Symposium}, author={Singhal, Sandeep K. and Gehringer, Edward F. and Jones, Vicki E. and Craig, Gary L. and Brown, Kyle G.}, year={1997} } @article{chang_gehringer_1996, title={A high-performance memory allocator for object-oriented systems}, volume={45}, number={3}, journal={IEEE Transactions on Computers}, author={Chang, Ji-En Morris and Gehringer, Edward F.}, year={1996}, month={Mar}, pages={357–366} } @article{gehringer_manns_1996, title={OOA/OOD/OOP: What programmers and managers believe we should teach}, volume={9}, number={6}, journal={Journal of Object-Oriented Programming}, author={Gehringer, Edward F. and Manns, Mary Lynn}, year={1996}, month={Oct}, pages={52–60} } @article{goodwin_gehringer_1996, title={Optimizing procedure calls in block-structured languages}, volume={26}, DOI={10.1002/(SICI)1097-024X(199612)26:12%3C1385::AID-SPE68%3E3.0.CO;2-8}, abstractNote={Static chains and dispiizys are two techniques used by compilers to implement variable references for block-structured programming languages. Both methods impose significant run-time overhead during procedure calls and variable references. This paper investigates several optimizations to improve upon common practice. The effectiveness of the various schemes is measured by collecting dynamic reference traces from executing Ada programs and assigning costs for procedure calls and variable references using two cost models. One model assumes a complex instruction-set architecture and the other assumes a reduced instruction-set architecture. Optimizations to the static chain scheme are found to significantly reduce its overall cost and approach the cost of the display scheme while using fewer registers than a display.}, number={12}, journal={Software—Practice and Experience}, author={Goodwin, Jeremy P. and Gehringer, Edward F.}, year={1996}, month={Dec}, pages={1385–1414} } @inproceedings{gehringer_1995, title={A database of course materials in computer architecture}, ISBN={9781450347235}, url={http://dx.doi.org/10.1145/1275225.1275231}, DOI={10.1145/1275225.1275231}, abstractNote={Teaching computer architecture, like any course at the college level, requires the instructor to spend much time in preparation outside class. This time is spent in writing lectures, making up homework problems and labs, and devising and grading exams. This involves much duplication of effort, since the same problems and labs are, in principle, usable in courses at different universities. Although a small amount of sharing has gone on an ad hoc basis, until now, there has been no way to search for and retrieve a very wide variety of course materials. Instructors teaching computer architecture have been surveyed, and several dozen have expressed interest in participating in this project. Contributors to the database will be asked to supply a pathname(s) for the location of their course materials. For security's sake, problem solutions will be kept in encrypted archives. The unencrypted portion of the database will be managed very similar to the technical-report databases now available for browsing over the World-Wide Web. It will be possible to search for problems, lectures, or other material, containing arbitrary keywords. The encrypted portion of the database will require new interfaces, or possibly new browser software to be written. Development of this database will encourage reuse, and aid in improving the quality of courses and decreasing the time required to teach them well.}, booktitle={Proceedings of the 1995 workshop on Computer architecture education - WCAE '95}, publisher={ACM Press}, author={Gehringer, Edward F.}, year={1995} } @inproceedings{gehringer_manns_1995, title={OOP/OOA/OOD: What programmers and managers believe we should teach}, booktitle={Proceedings of the OOPSLA 1995 Educators’ Symposium}, author={Gehringer, Edward F. and Manns, Mary Lynn}, year={1995} } @article{reeves_gehringer_1994, title={Adaptive Routing for Hypercube Multiprocessors: A Performance Study}, volume={6}, ISSN={0129-0533}, url={http://dx.doi.org/10.1142/s0129053394000020}, DOI={10.1142/s0129053394000020}, abstractNote={Through simulation, we studied the performance of three adaptive “wormhole” routing strategies, and compared them with static routing. Since adaptive routing is susceptible to deadlock, an abort-and-retry strategy was used to prevent it from arising. The impact of packetization of long messages and buffering at message destinations were also studied. Results are presented and analyzed for a variety of hardware configurations and traffic conditions. The combination of adaptive routing, abort-and-retry, and buffering at the destination is shown to achieve excellent performance for modest cost.}, number={1}, journal={International Journal of High Speed Computing}, publisher={World Scientific Publishing Company Pte Lt}, author={Reeves, Douglas S. and Gehringer, Edward F.}, year={1994}, month={Mar}, pages={1–29} } @inproceedings{gehringer_1993, title={Evaluation of a multilanguage videocourse in object-oriented systems}, booktitle={Proceedings of the OOPSLA 1993 Educators’ Symposium}, author={Gehringer, Edward F.}, year={1993} } @inproceedings{chang_gehringer_1993, title={Evaluation of an object-caching coprocessor design for object-oriented systems}, ISBN={0818642300}, url={http://dx.doi.org/10.1109/iccd.1993.393393}, DOI={10.1109/iccd.1993.393393}, abstractNote={Object-oriented systems exhibit a very high rate of object creation, but most of the objects are short-lived. As a result, memory management overhead is significant. The paper evaluates an application-specific coprocessor architecture to speed up object creation and memory reclamation in object-oriented systems. The architecture supports a bit-vector approach to dynamic storage allocation and liberation. Newly created objects reside in a cache which is reference counted. The paper presents measurements of the performance of this coprocessor design. Simulation results show that 50% to 70% of objects die before they age out of the cache, greatly reducing the number of references to main memory. Overall, more than 60% of memory traffic is saved by the proposed scheme, and the interval between main-memory garbage collections is extended by more than 60%.<>}, booktitle={Proceedings of 1993 IEEE International Conference on Computer Design ICCD'93}, publisher={IEEE Computer Society Press}, author={Chang, J.M. and Gehringer, E.F.}, year={1993}, pages={132–139} } @inbook{gehringer_chang_1993, title={Hardware-assisted memory management}, booktitle={Memory management and garbage-collection workshop, OOPSLA ’93: Object-Oriented Programming Languages, Systems, and Architectures}, author={Gehringer, Edward F. and Chang, Ji-En Morris}, year={1993}, month={Sep} } @inproceedings{chang_gehringer_1993, title={Performance of object caching for object-oriented systems}, booktitle={Proceedings of VLSI ’93}, publisher={Springer-Verlag}, author={Chang, Ji-En Morris and Gehringer, Edward F.}, year={1993} } @article{morris_gehringer_1991, title={A cost-effective reliable multipath interconnection network}, volume={19}, ISSN={0163-5964}, url={http://dx.doi.org/10.1145/122576.122581}, DOI={10.1145/122576.122581}, abstractNote={A new class of multistage interconnection networks is proposed. A network in this class consists of a standard multistage network, such as an omega network, augmented by multiplexers at the source nodes and demultiplexers at the destination. In addition, the first several stages are capable of adapting their routing decisions to avoid faults elsewhere in the network. The terminal reliability of this network is derived, and it is shown to have superior reliability, at a much lower cost than previous networks of similar fault tolerance. It is demonstrated that the proposed network's probability of acceptance, a common measure of performance for circuit-switched networks, is comparable to other networks of similar cost, but the greater number of paths it provides between source and destination should give it better performance under non-uniform traffic conditions.}, number={4}, journal={ACM SIGARCH Computer Architecture News}, publisher={Association for Computing Machinery (ACM)}, author={Morris, Todd D. and Gehringer, Edward F.}, year={1991}, month={Jul}, pages={45–65} } @book{gehringer_reeves_1991, place={Raleigh, NC}, title={Adaptive routing for hypercube multiprocessors: performance of the one-message-outstanding model}, number={91-22}, institution={Department of Computer Science, North Carolina State University}, author={Gehringer, Edward F. and Reeves, Douglas S.}, year={1991}, month={Sep} } @book{gehringer_reeves_1991, title={Adaptive routing for hypercube multiprocessors: performance of the one-message-outstanding model}, number={91-22}, publisher={Department of Computer Science, North Carolina State University}, author={Gehringer, Edward F. and Reeves, Douglas S.}, year={1991} } @inproceedings{holtsinger_gehringer_1991, title={Approximate Analysis of the Binary d-Cube Network}, ISBN={0818622903}, url={http://dx.doi.org/10.1109/dmcc.1991.633310}, DOI={10.1109/dmcc.1991.633310}, abstractNote={Distributed memory computers require eficient, high-bandwidth networks to support fine-grain computation. In developing an analytic model .for 0 network, the underlying details of the aschitectiure are often abstracted to simplify the model and to facilitate a comparison with other networks. As a rt!sult i t becomes dificult to compare the relative meids of the architectural features in a particularr network. In this paper we present a detailed analysis of the binary dcube network. Our model has been shown to provide results that are very similar to those derived from a detailed simulation model. Among other things, our analysis shows that srnall increases in routing latency can significantly degrade throughput, but does not degrade the probability of acceptance of a mqessage. It atso shows that just a few buffers 0ii heavily congested destination links can improve performance greatly, almost as much as bzqfering on all destinalion links.}, booktitle={Proceedings of the Sixth Distributed Memory Computing Conference}, publisher={IEEE}, author={Holtsinger, D.S. and Gehringer, E.F.}, year={1991}, pages={515–522} } @inproceedings{chang_gehringer_1991, title={Object caching for performance in object-oriented systems}, booktitle={Proceedings of the IEEE International Conference on Computer Design: VLSI in Computers and Processors}, author={Chang, Ji-En Morris and Gehringer, Edward F.}, year={1991}, pages={379–385} } @inproceedings{agrawal_alexander_gehringer_mauney_miller_1990, title={B-HIVE: hardware and software for an experimental multiprocessor}, url={http://dx.doi.org/10.1109/hicss.1990.205097}, DOI={10.1109/hicss.1990.205097}, abstractNote={B-HIVE, a 24-node experimental multiprocessor computer, is based on a generalized hypercube interconnection structure and features two processors at each node: one to perform application processing and the other to handle communication. The design of the B-HIVE hardware and software is intended to keep run-time overhead to a minimum, and thus provide high performance on a variety of problems, especially signal and image processing. Topics addressed include the B-HIVE multicomputer architecture and node structure, interprocessor communication, software support, and project status.<>}, booktitle={Twenty-Third Annual Hawaii International Conference on System Sciences}, publisher={IEEE Computer Society Press}, author={Agrawal, D.P. and Alexander, W.E. and Gehringer, E.F. and Mauney, J. and Miller, T.K.}, year={1990} } @inbook{sarkar_gehringer_1990, place={London, UK}, series={Workshops in Computing}, title={Dimensions of Addressing Schemes}, ISBN={9783540196464 9781447131786}, ISSN={1431-1682}, url={http://dx.doi.org/10.1007/978-1-4471-3178-6_3}, DOI={10.1007/978-1-4471-3178-6_3}, abstractNote={This paper attempts to bring some order to the apparent disorder of numerous addressing schemes. Various addressing strategies are examined, and four orthogonal dimensions identified. These are: (i) number of address spaces per system, (ii) number of address-mapping tiers, (iii) when and how often mapping functions are performed and (iv) implementation of the access matrix (via capabilities or access-control lists). The number of address-mapping tiers in a system is directly related to the number of different forms of addresses present in the system. We discuss the functionality that can be achieved by the various options along the four dimensions. We focus on three important functionalities: sharing, protection and persistence. The functionality of dynamic linking is also discussed briefly. Twelve commercial and research computer systems have been selected and classified into three categories: (i) ordinary virtual-memory systems, (ii) non-persistent object systems and (iii) persistent object systems. The success of these systems in providing the above functionalities is traced back to their addressing schemes.}, booktitle={Security and Persistence}, publisher={Springer London}, author={Sarkar, Manojit and Gehringer, Edward F.}, editor={Rosenberg, J. and Keedy, J.L.Editors}, year={1990}, pages={31–47}, collection={Workshops in Computing} } @inproceedings{gunter_gehringer_1990, title={Hot-Spot Performance of Single-Stage and Multistage Interconnection Networks}, ISBN={0818621133}, url={http://dx.doi.org/10.1109/dmcc.1990.556269}, DOI={10.1109/dmcc.1990.556269}, booktitle={Proceedings of the Fifth Distributed Memory Computing Conference}, publisher={IEEE}, author={Gunter, K.G. and Gehringer, E.F.}, year={1990} } @inbook{gehringer_1990, title={Name-Based Mapping: Addressing Support for Persistent Objects}, ISBN={9783540196266 9781447131731}, ISSN={1431-1682}, url={http://dx.doi.org/10.1007/978-1-4471-3173-1_14}, DOI={10.1007/978-1-4471-3173-1_14}, abstractNote={Systems supporting persistent objects need to address far more information than can fit in an ordinary virtual memory. The usual approach is to impose an additional level of indirection—an object name is mapped to an object number, which serves as part of a virtual address. The virtual address can then be translated in the normal manner. An attractive alternative is name-based mapping, where objects are referred to by name rather than by address. A set of registers and a cache can be used to translate names directly to physical addresses, bypassing the virtual-address middleman. This scheme effectively removes the limit on the size of a process’s address space, since the number of possible names is essentially infinite. Name-based mapping has a number of other advantages. The cache, which cannot be modified by the programmer, is used to translate all addresses. It can therefore be used to enforce different protection domains within a single process. This permits software systems to be built out of larger but fewer processes, decreasing the overhead of managing large numbers of processes. In addition, name-based mapping removes the need for conventional static or dynamic linking. An architecture using name-based mapping can easily be adapted to support object-oriented languages efficiently. Unlike capability-based systems, name-based mapping requires only a special address-translation mechanism, rather than specially protected segments throughout memory. This paper presents the design and initial performance measurements based on simulation.}, booktitle={Persistent Object Systems}, publisher={Springer London}, author={Gehringer, Edward F.}, year={1990}, pages={218–232} } @inproceedings{reeves_gehringer_chandiramani_1989, title={Adaptive routing and deadlock recovery: a simulation study}, booktitle={Proceedings of the Fourth Conference on Hypercube Concurrent Computers and their Applications}, author={Reeves, Douglas S. and Gehringer, Edward F. and Chandiramani, Anil}, year={1989} } @article{chen_stallmann_gehringer_1989, title={Hypercube embedding heuristics: An evaluation}, volume={18}, ISSN={0885-7458 1573-7640}, url={http://dx.doi.org/10.1007/bf01381720}, DOI={10.1007/bf01381720}, number={6}, journal={International Journal of Parallel Programming}, publisher={Springer Nature}, author={Chen, Woei-Kae and Stallmann, Matthias F. M. and Gehringer, Edward F.}, year={1989}, month={Dec}, pages={505–549} } @inproceedings{harry_balla_agrawal_miller_gehringer_1988, title={A fault-tolerant communication system for the B-Hive generalized hypercube multiprocessor}, ISBN={0897912780}, url={http://dx.doi.org/10.1145/62297.62336}, DOI={10.1145/62297.62336}, abstractNote={We describe the implementation of a communication system on the B-HIVE generalized hypercube. B-HIVE has 24 nodes connected in a 2 x 3 x 4 structure. Each node consists of two processors: an application processor (AP) and a communication processor (CP). The communication system runs solely on the CP and presents a simple DMA-like interface to user programs. A fault-tolerant communication system was developed for these reasons: (1) We desired a way to transmit messages reliably over a potentially unreliable communication network, and (2) B-HIVE implements both packet-switched and circuit-switched communications in the same network. At any time many channels may be allocated to a circuit-switched transaction and therefore be unusable for packet-switched routing. Since these channels can be rapidly allocated and then deallocated, we wanted an automatic mechanism for discovering these “failed” routes rather than broadcasting to the entire network each time a link is removed. These requirements mandated a simple protocol for detecting failed links, and updating the necessary routing tables. An algorithm is described that routes messages efficiently in a network where large portions are not functioning, A related issue is broadcasting a message to all nodes in the network. Several different methods of broadcasting are considered, and the routing algorithm is adapted to perform a broadcast. Currently we have implemented a static routing network where routes are only changed in the case of a detected failure. Future research will be directed towards more dynamic routing with load balancing.}, booktitle={Proceedings of the third conference on Hypercube concurrent computers and applications Architecture, software, computer systems, and general issues -}, publisher={ACM Press}, author={Harry, B. D. and Balla, R. A. and Agrawal, D. P. and Miller, T. K. and Gehringer, E. F.}, year={1988} } @inproceedings{chen_gehringer_1988, title={A graph-oriented mapping strategy for a hypercube}, ISBN={0897912780}, url={http://dx.doi.org/10.1145/62297.62322}, DOI={10.1145/62297.62322}, abstractNote={The mapping problem is the problem of implementing a computational task on a target architecture in order to maximize some performance metric. For a hypercube-interconnected multiprocessor, the mapping problem arises when the topology of a task graph is different from a hypercube. It is desirable to find a mapping of tasks to processors that minimizes average path length and hence interprocessor communication. The problem of finding an optimal mapping, however, has been proven to be NP-complete. Several different approaches have been taken to discover suitable mappings for a variety of target architectures. Since the mapping problem is NP-complete, approximation algorithms are used to find good mappings instead of optimal ones. Usually, greedy and/or local search algorithms are introduced to approximate the optimal solutions. This paper presents a greedy mapping algorithm for hypercube interconnection structures, which utilizes the graph-oriented mapping strategy to map a communication graph to a hypercube. The strategy is compared to previous strategies for attacking the mapping problem. A simulation is performed to estimate both the worst-case bounds for the greedy mapping strategy and the average performance.}, booktitle={Proceedings of the third conference on Hypercube concurrent computers and applications Architecture, software, computer systems, and general issues -}, publisher={ACM Press}, author={Chen, W-K. and Gehringer, E. F.}, year={1988} } @article{janakiram_gehringer_agrawal_mehrotra_1988, title={A randomized parallel branch-and-bound algorithm}, volume={17}, ISSN={0885-7458 1573-7640}, url={http://dx.doi.org/10.1007/bf02427853}, DOI={10.1007/bf02427853}, number={3}, journal={International Journal of Parallel Programming}, publisher={Springer Nature}, author={Janakiram, Virendra K. and Gehringer, Edward F. and Agrawal, Dharma P. and Mehrotra, Ravi}, year={1988}, month={Jun}, pages={277–301} } @article{gehringer_abullarade_gulyn_1988, title={A survey of commercial parallel processors}, volume={16}, ISSN={0163-5964}, url={http://dx.doi.org/10.1145/54331.54338}, DOI={10.1145/54331.54338}, abstractNote={This paper compares eight commercial parallel processors along several dimensions. The processors include four shared-bus multiprocessors (the Encore Multimax, the Sequent Balance system, the Alliant FX series, and the ELXSI System 6400) and four network multiprocessors (the BBN Butterfly, the NCUBE, the Intel iPSC/2, and the FPS T Series). The paper contrasts the computers from the standpoint of interconnection structures, memory configurations, and interprocessor communication. Also, the shared-bus multiprocessors are compared in terms of cache-coherence strategies, and the network multiprocessors are compared in terms of node structure. Where possible, price and performance information has been included. The reader is cautioned that this survey is based largely on information submitted by manufacturers; the authors have not performed any independent evaluation.}, number={4}, journal={ACM SIGARCH Computer Architecture News}, publisher={Association for Computing Machinery (ACM)}, author={Gehringer, Edward and Abullarade, Janne and Gulyn, Michael H.}, year={1988}, month={Sep}, pages={75–107} } @article{colwell_gehringer_jensen_1988, title={Performance effects of architectural complexity in the Intel 432}, volume={6}, ISSN={0734-2071}, url={http://dx.doi.org/10.1145/45059.214411}, DOI={10.1145/45059.214411}, abstractNote={The Intel 432 is noteworthy as an architecture incorporating a large amount of functionality that most other systems perform by software. It has, in effect, “migrated” this functionality from the software into the microcode and hardware. The benefits of functional migration have recently been a subject of intense controversy, with critics claiming that a complex architecture is inherently less efficient than a simple architecture with good software support. This paper examines the performance impact of the incorporation of several kinds of functionality into the Intel 432. Among these are the addressing structure, the caches, instruction alignment, the buses, and the way that garbage collection is handled. A set of several benchmarks is used to quantify the performance effect of each of these decisions. The results indicate that the 432 could have been speeded up very significantly if a small number of implementation decisions had been made differently, and if incrementally better technology had been used in its construction. Even with these modifications, however, the 432 would still have only one-fourth to one times the speed of its contemporaries. These figures may represent the real cost of the 432's style of object-based programming environment.}, number={3}, journal={ACM Transactions on Computer Systems}, publisher={Association for Computing Machinery (ACM)}, author={Colwell, Robert P. and Gehringer, Edward F. and Jensen, E. Douglas}, year={1988}, month={Aug}, pages={296–339} } @article{vrsalovic_siewiorek_segall_gehringer_1988, title={Performance prediction and calibration for a class of multiprocessors}, volume={37}, ISSN={0018-9340}, url={http://dx.doi.org/10.1109/12.8701}, DOI={10.1109/12.8701}, abstractNote={A model for predicting multiprocessor performance on iterative algorithms is developed. Each iteration consists of some amount of access to global data and some amount of local processing. The iterations may be synchronous or asynchronous, and the processors may or may not incur waiting time, depending on the relationship between the access time and processing time. The effect on performance of the speed of the processor, memory, and the interconnection network is studied. The model also illustrates the significant impact on performance of decomposing an algorithm into parallel processes. The model's predictions are calibrated with experimental measurements. >}, number={11}, journal={IEEE Transactions on Computers}, publisher={Institute of Electrical and Electronics Engineers (IEEE)}, author={Vrsalovic, D.F. and Siewiorek, D.P. and Segall, Z.Z. and Gehringer, E.F.}, year={1988}, pages={1353–1365} } @inproceedings{gehringer_harry_1988, title={Rapid prototyping of a parallel operating system for a generalized hypercube}, ISBN={0897912780}, url={http://dx.doi.org/10.1145/62297.62339}, DOI={10.1145/62297.62339}, abstractNote={B-HIVE is an experimental multiprocessor system under construction at North Carolina State University. Its operating system is derived from XINU, an operating system designed for teaching purposes. XINU was chosen because it is unusually well documented and supplied most of the features that were necessary at the outset of the project. Among the few changes made to XINU are a supervisor state and an interprocessor communication system.}, booktitle={Proceedings of the third conference on Hypercube concurrent computers and applications Architecture, software, computer systems, and general issues -}, publisher={ACM Press}, author={Gehringer, E. F. and Harry, B. D.}, year={1988} } @book{gehringer_siewiorek_segall_1987, title={Parallel Processing: The Cm* Experience}, ISBN={9780932376916}, publisher={Digital Press}, author={Gehringer, Edward F. and Siewiorek, Daniel P. and Segall, Zary Z.}, year={1987} } @inproceedings{mehrotra_gehringer_1986, title={An analysis of the reliability of tree-structured interconnection networks}, booktitle={Proceedings of the Workshop on Future Directions in Computer Architecture and Software}, author={Mehrotra, Ravi and Gehringer, Edward F.}, year={1986}, pages={279–282} } @inbook{agrawal_alexander_gehringer_mehrotra_mauney_1986, place={Austin}, title={B-HIVE project: present and future}, booktitle={Supercomputers: Algorithms, Architectures and Scientific Computation}, publisher={University of Texas Press}, author={Agrawal, Dharma P. and Alexander, Winser E. and Gehringer, Edward F. and Mehrotra, Ravi and Mauney, Jon}, editor={Matsen, F.A. and Tajima, T.Editors}, year={1986} } @article{gehringer_colwell_1986, title={Fast object-oriented procedure calls: lessons from the Intel 432}, volume={14}, ISSN={0163-5964}, url={http://dx.doi.org/10.1145/17356.17367}, DOI={10.1145/17356.17367}, abstractNote={As modular programming grows in importance, the efficiency of procedure calls assumes an ever more critical role in system performance. Meanwhile, software designers are becoming more aware of the benefits of object-oriented programming in structuring large software systems. But object-oriented programming requires a good deal of support, which can best be distributed between the compiler and architectural levels. A major part of this support relates to the execution of procedure calls. Must such support exact an unacceptable performance penalty? By considering the case of the Intel 432, a prominent object-oriented architecture, we argue that it need not. The 432 provided all the facilities needed to support object orientation. Though its procedure call was slow, the reasons were only tenuously related to object orientation. Most of the inefficiency could be removed in future designs by the adoption of a few new mechanisms: stack-based allocation of contexts, a memory-clearing coprocessor, and the use of multiple register sets to hold addressing information. These proposals offer the prospect of an object-oriented procedure call that can, on average, be performed nearly as fast as an ordinary unprotected procedure call.}, number={2}, journal={ACM SIGARCH Computer Architecture News}, publisher={Association for Computing Machinery (ACM)}, author={Gehringer, E. F. and Colwell, R. P.}, year={1986}, month={Jun}, pages={92–101} } @inproceedings{gehringer_1986, title={The case for a shared address space}, booktitle={Proceedings of the Workshop on Future Directions in Computer Architecture and Software}, author={Gehringer, Edward F.}, year={1986}, pages={270–272} } @book{gehringer_keedy_1985, place={Raleigh, NC}, title={Assessing the advantages of tagged architectures}, number={TR-85-08}, institution={Computer Studies Program, North Carolina State University}, author={Gehringer, Edward F. and Keedy, J.Leslie}, year={1985}, month={May} } @book{gehringer_keedy_1985, title={Assessing the advantages of tagged architectures}, number={TR-85-08}, publisher={Computer Studies Program, North Carolina State University}, author={Gehringer, Edward F. and Keedy, J.Leslie}, year={1985} } @inproceedings{mohan_jones_gehringer_segall_1985, title={Granularity of parallel computation}, volume={1}, booktitle={Proceedings of the 18th Hawaii Conference on Systems Sciences}, author={Mohan, Joseph and Jones, Anita K. and Gehringer, Edward F. and Segall, Zary Z.}, editor={Galizzi, Edmond L.Editor}, year={1985}, month={Jan}, pages={249–256} } @inproceedings{mehrotra_gehringer_1985, title={Superlinear speedup through randomized algorithms}, booktitle={Proceedings of the 14th International Conference on Parallel Processing}, author={Mehrotra, Ravi and Gehringer, Edward F.}, year={1985}, pages={291–300} } @article{gehringer_keedy_1985, title={Tagged architecture}, volume={13}, ISSN={0163-5964}, url={http://dx.doi.org/10.1145/327070.327153}, DOI={10.1145/327070.327153}, abstractNote={Traditionally, instruction sets have included separate instructions for manipulating different data types, such as integers and real numbers. A long-discussed but seldomimplemented alternative has been tagging, where the type information is stored adjacent to the data itself, rather than being inferred from the instructions. Over the years, several advantages have been claimed for tagging, including improving program reliability, saving memory, and facilitating a high-level language architecture. For computers that are not specifically oriented toward dynamically typed languages, we show that tagging fails to achieve these advantages completely, and that most of ' them can be better achieved by extensions of other mechanisms. I. I n t r o d u c t i o n One of the several innovative features of the Burroughs B5000 system announced in 1961 [1] was the introduction of " tags" at the architectural level. In that system tags served two basic functions, as a means of typing the contents of memory locations and as a protection device. Iliffe, who contributed much to the original Burroughs design, proposed tagging for his Basic Language Machine [2] and his Pointer Number Machine [3] . The Rice Research Computer [4] was built with tagging. Myers's Sward design [5] was also tagged, as were proposals by one of us [61-[8], Luniewski [9], and Dennis [10 I. However, it was not until the IBM System 38 [11] and the Symbolics 3600 [12], a machine designed explicitly for Lisp, that tagging was again employed by a commercial computer}, number={3}, journal={ACM SIGARCH Computer Architecture News}, publisher={Association for Computing Machinery (ACM)}, author={Gehringer, Edward F. and Keedy, J. Leslie}, year={1985}, month={Jun}, pages={162–170} } @article{vrsalovic_gehringer_segall_siewiorek_1985, title={The influence of parallel decomposition strategies on the performance of multiprocessor systems}, volume={13}, ISSN={0163-5964}, url={http://dx.doi.org/10.1145/327070.327372}, DOI={10.1145/327070.327372}, abstractNote={We present a model for predicting multiprocessor performance on iterative algorithms, where each iteration consists of some amount of access to global data and some amount of local processing. The application cycles may be synchronous or asynchronous, arid the processors may or may not incur waiting time, depending on the relationship between the access time and processing time, The amount of processing time and global data accesses incurred by the parallel processes depends upon characteristics of the algorithm and its decomposition. We study the decompositions.of several sample algorithms, and identify several decomposition groups. Finally, using the Poisson partial-differential equation algorithm as an example, we investigate how its decomposition affects its performance. 1 In t roduct ion The value of a computer system is measured by the work it can perform. Parallel processing opens a new horizon for handling targe workloads, but its promise can only be realized if multiprocessots can be built and programmed to take full advantage of the potential parallelism. The computer-system designer must choose from a wide range of design alternatives--far too many to test empirically. Good performance models are needed to provide a'starting place for empirical investigation. In an earlier paper, 1 we presented a model which measures the cyclic processing power that a multiprocessor can apply to a v.,orldoad with given characteristics. Unlike other models. 2' 3, 4, s it is not based on predicting statistical mean values for performance over some time interval. Rather, it is based on the fact that most algorithm are iterative in nature, and the iterations tend to perform approximately the same amount of processing and data access. Let us assume that a given algorithm consumes Tp units of processing time each iteration, and spends T a time units accessing global data. The ratio of processing.to-access time depends upon the algorithm, and will be denoted by T X= P T a When an algorithm is decomposed into parallel processes, an iteration by c. subprocess u.~ually takes less time than an iteration in its uniprocessor counterpmt. Let tp and t a be the processing and access times within a subprocess iteration. If we let N > 1 denote the number of processors engaged in a parallel decomposition, usually tp < Tp ~.nd t a < T a, but often it is not true that N tp = Tp or N t a = T a. ]'he change in tp a~d t,~ as processors are added is also characteristic of the algorithm. Let us define the decomposition functions fp and fa as T T f = p f = a P t a t p a The time for a single iteration of a uniprocessor algorithm is simply T¢ = Tp + T a. However, due to contention for global data, the iteration time for a subprocess in a parallel implementation also depends on a nonnegative waiting time t w. Thus, the cycle time is t c = tp + t= + t w. Both the decomposition functions and the waiting time influence the speed of a multiprocessor implementation, usually preventing an N-processor decomposition from finishing in 1/Nth the time needed by the uniprocessor version. Wi~ shall define the speedup SP as a ratio of cycle times:}, number={3}, journal={ACM SIGARCH Computer Architecture News}, publisher={Association for Computing Machinery (ACM)}, author={Vrsalovic, Dalibor and Gehringer, Edward F. and Segall, Zary Z. and Siewiorek, Daniel P.}, year={1985}, month={Jun}, pages={396–405} } @inproceedings{vrsalovic_siewiorek_segall_gehringer_1984, title={Performance prediction for multiprocessor systems}, booktitle={Proceedings of the 13th International Conference on Parallel Processing}, author={Vrsalovic, Dalibor and Siewiorek, Daniel P. and Segall, Zary Z. and Gehringer, Edward F.}, editor={Keller, R.Editor}, year={1984}, pages={139–146} } @book{gehringer_1982, title={Capability Architectures and Small Objects}, publisher={UMI Research Press}, author={Gehringer, Edward F.}, year={1982} } @inproceedings{keedy_gehringer_thomson_1982, title={Dynamic data structure management in MONADS III}, booktitle={Proceedings of the Fifth Australian Computer Science Conference}, author={Keedy, J.Leslie and Gehringer, Edward F. and Thomson, John V.}, year={1982} } @book{gehringer_1982, title={MONADS: a computer architecture to support software engineering}, number={13}, institution={Department of Computer Science, Monash University}, author={Gehringer, Edward F.}, year={1982} } @book{gehringer_1982, title={MONADS: a computer architecture to support software engineering}, number={13}, publisher={Department of Computer Science, Monash University}, author={Gehringer, Edward F.}, year={1982} } @article{gehringer_jones_segall_1982, title={The Cm* Testbed}, volume={15}, ISSN={0018-9162}, url={http://dx.doi.org/10.1109/mc.1982.1653858}, DOI={10.1109/mc.1982.1653858}, abstractNote={Interest in multiprocessor architecture has grown steadily over the past ten to fifteen years. With VLSI technology we can build multiprocessors that are substantially larger than present computers to solve problems that cannot be solved today. Yet despite the substantial number of multiprocessor designs, only a few multiprocessors have been built with a high degree of parallelism, say thirty or more processors. Although multiprocessors appear to have cost/performance and reliability benefits, the computing community has relatively little experience in their actual use. Consequently, little is known about how well the potential of multiprocessors can be realized, which is exactly the thrust of the Cm* research project. We can view a distributed system as being composed of an architectural component and a behavioral component. The first component consists of hardware, firmware, and software elements, and the relationships between them. The behavioral component is characterized by the way the architecture acts in the presence of a workload. The architectural component should be flexible, and the behavioral component should provide a controllable and measurable behavior. These two characteristics are embodied in the Cm* testbed, which has a programmable interconnection network for hardware-architecture flexibility. The two operating systems StarOS and Medusa provide adaptable mechanisms and policies for running experiments with application programs. The workload, the measurement tools, and the experimentation control are integrated into an experimentation environment, which complements the other support programs such as compilers and loaders with facilities for specifying, monitoring, and analyzing experiments. TheCm * project has successfully constructed a 50-processor multiprocessor and two operating systems, thus demonstrating the feasibility of several aspects of multiprocessing. In this article we describe not only Cm* hardware and software but also experimental results, how well various algorithm structures exploit the potential parallelism of the Cm*, and the results of extended measurements on the hardware itself.}, number={10}, journal={Computer}, publisher={Institute of Electrical and Electronics Engineers (IEEE)}, author={Gehringer, Edward F. and Jones, Anita K. and Segall, Zary Z.}, year={1982}, month={Oct}, pages={40–53} } @book{gehringer_chansler_1981, title={STAROS User and System Structure Manual}, institution={Department of Computer Science, Carnegie-Mellon University}, author={Gehringer, Edward F. and Chansler, Robert J.}, year={1981}, month={Jun} } @book{gehringer_chansler_1981, title={STAROS User and System Structure Manual}, publisher={Department of Computer Science, Carnegie-Mellon University}, author={Gehringer, Edward F. and Chansler, Robert J.}, year={1981} } @inproceedings{gehringer_vegdahl_1980, title={LETTER: a system for personalizing processed text}, booktitle={Proceedings of the ACM Joint SIGSMALL/SIGPLAN Symposium on Small Systems}, author={Gehringer, Edward F. and Vegdahl, Steven R.}, year={1980}, pages={199–205} } @book{jones_gehringer_1980, title={The Cm* Multiprocessor Project: A Research Review}, DOI={10.21236/ada125936}, abstractNote={Abstract : The 50-processor Cm multiprocessor became operational in fall 1979, making it one of the largest multiprocessors in existence. The associated operating systems are nearing the point that they can be used to harness the computation power of Cm to run experimental applications. Thus, the Cm project is nearing the end of the development phase and is entering an experimental phase. The most important recent milestones for the Cm project are: A stable, operational, Cm/50 configuration. It is routinely in use by several different research groups at a time. Some enhancements to hardware continue. In particular, a prototype disk controller has just been completed. Two operating systems, STAROS and MEDUSA, now run on multiple clusters. They have just reached the state of beginning to support user applications and are in the process of being tuned for performance. Crucial to performance is the microcoded portion of each of the operating systems; microcode performance measurements are discussed in detail in this review. Initial 50-processor application measurements. This document reports the results of the first experiments to utilize the full fifty- processor Cm configuration.}, author={Jones, Anita K. and Gehringer, Edward F.}, year={1980}, month={Jul} } @book{jones_gehringer_1980, title={The Cm* Multiprocessor Project: A Research Review}, number={CMU-CS-80-131}, institution={Department of Computer Science, Carnegie-Mellon University}, year={1980}, month={Jun} } @book{the cm* multiprocessor project: a research review_1980, number={CMU-CS-80-131}, publisher={Department of Computer Science, Carnegie-Mellon University}, year={1980} } @phdthesis{gehringer_1979, title={Functionality and performance in capability-based operating systems}, school={Department of Computer Sciences, Purdue University}, author={Gehringer, Edward F.}, year={1979}, month={May} } @inproceedings{gehringer_1979, title={Variable-length capabilities as a solution to the small-object problem}, ISBN={0897910095}, url={http://dx.doi.org/10.1145/800215.806581}, DOI={10.1145/800215.806581}, abstractNote={A capability system which supports very small objects can achieve flexible and efficient protection. This paper presents a scheme for representing both large and small entitles In a computation, down to integers and character strings, as objects. This is achieved by a generalization of tagged memory to encompass extended data types; and by the use of variable-length capabilities, which can be very short if they are close to the object they reference. As developed here, the design assumes a single, systemwide virtual-address space, and a stack architecture; but it could probably be modified for use In other environments.}, booktitle={Proceedings of the seventh symposium on Operating systems principles - SOSP '79}, publisher={ACM Press}, author={Gehringer, Edward F.}, year={1979} } @article{gehringer_schwetman_1976, title={Run-time characteristics of a simulation model}, volume={7}, ISSN={0163-6103}, url={http://dx.doi.org/10.1145/1013610.807307}, DOI={10.1145/1013610.807307}, abstractNote={This paper compares the efficiency of trace-driven simulation models of computer systems with the efficiency of function driven models. In a trace-driven model (TDM), the next service request for a task is selected from a file of requests which was created earlier, often from data derived from a functioning system. This can be compared to a function-driven model (FDM), in which the next service request is selected using generation techniques based on random deviates. While both kinds of models can produce statistically accurate results, a TDM is thought to be inherently more accurate, but it has been suspected that a FDM is faster.}, number={4}, journal={ACM SIGSIM Simulation Digest}, publisher={Association for Computing Machinery (ACM)}, author={Gehringer, Edward F. and Schwetman, Herbert D.}, year={1976}, month={Jul}, pages={121–128} } @inproceedings{gehringer, title={A survey of methods for improving review quality}, volume={8699}, booktitle={New horizons in web based learning, icwl 2014}, author={Gehringer, E. F.}, pages={92–97} } @inproceedings{gehringer, title={A survey of methods for improving review quality}, volume={8699}, booktitle={New horizons in web based learning, icwl 2014}, author={Gehringer, E. F.}, pages={92–97} } @article{gehringer, title={Active And Collaborative Learning Strategies For Teaching Computing}, DOI={10.18260/1-2--2754}, abstractNote={This paper is a survey of dozens of active and collaborative learning strategies that have been used in teaching computing. The most basic are “think-pair-share” exercises, where students think about a problem, discuss it with their neighbors, and then share it with the rest of the class. Teams may work together in class to solve problems, with the instructor providing written comments. Bringing competition into the picture always helps motivate students, e.g., having final projects compete against each other (e.g., a prey/predator game), or playing a Jeopardy-like game to review for an exam. Many such activities can be carried out online in a lab, or using laptops. A “scavenger hunt” gets students to work in pairs to surf the Web for answers to questions posed by the instructor. In another kind of exercise, students can be assigned to come up with new examples, or exercises, for the text, and then submit to an online peer-review system, where their work is reviewed by others, and the best work selected to be presented to future classes. Another strategy is to have students prepare resources to share with the class. They post these on a wiki, and the lectures become class meetings with an agenda posted on the wiki. The instructor moderates the meeting, and a student takes the minutes, and posts them on the Web. Peer assessment is used for all contributions. The paper concludes with a list of resources that include many more active and cooperative learning exercises.}, journal={2007 Annual Conference & Exposition Proceedings}, author={Gehringer, Edward} } @article{gehringer, title={Assessing Students' Wiki Contributions}, DOI={10.18260/1-2--3892}, abstractNote={Perhaps inspired by the growing attention given to Wikipedia, instructors have increasingly been turning to wikis [1, 2] as an instructional collaborative space. A major advantage of a wiki is that any user can edit it at any time. In a class setting, students may be restricted in what pages they can edit, but usually each page can be edited by multiple students and/or each student can edit multiple pages. This makes assessment a challenge, since it is difficult to keep track of the contributions of each student. Several assessment strategies have been proposed. To our knowledge, this is the first attempt to compare them. We study the assessment strategies used in six North Carolina State University classes in Fall 2007, and offer ideas on how they can be improved.}, journal={2008 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Assignment And Quality Control Of Peer Reviewers}, DOI={10.18260/1-2--8941}, abstractNote={Much work has been performed on assessing the validity and usefulness of peer assessment in the classroom. Much less effort has been invested in enumerating and classifying strategies for assigning reviewers, encouraging good feedback, and preventing clustering of grades. This study reviews the different approaches that have been taken to those problems. Several of these strategies are employed in PG, our Web-based application for peer review and peer grading. Usually, students are assigned randomly to review other students’ work. Often, students work in teams, with each member of the team reviewing the other members. Or, students or teams may choose from a list of topics to work on. In this case, it is helpful to assign students to review others who have chosen the same topic. To encourage students to provide adequate feedback to their reviewees, several approaches can be taken. Students can be denied credit for the assignment unless they do the required reviews. Or, they can be prevented from seeing feedback on their work until they provide feedback to others. Multiple review periods may be employed, with students required to give some feedback in each period. A formula may be devised to allow reviewers to share in good grades received by their reviewees. Or students may be assigned to review each other’s reviews. To improve the accuracy of grading, students can be required to pass a pre-certification test before being allowed to serve as peer graders. The instructor can supply a set of grading criteria, and discuss it with the students, either in advance or after the students complete their first round of review. Reviewer mappings can be constrained to assure that each student will review one paper from each quartile (etc.) of the class.}, journal={2001 Annual Conference Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Building An Ethics In Computing Website Using Peer Review}, DOI={10.18260/1-2--8969}, abstractNote={An Ethics in Computing Website covering almost 100 topics has been developed using peerreviewed student contributions. Students in the author's one-credit Ethics in Computing course select a topic to research from a list provided by the instructor, or propose a topic of their own choosing. Their contributions are then reviewed, and ultimately graded, by three other students taking the course. The best-reviewed pages are then incorporated into the Website. However, most of the work of maintaining the site is performed by a set of independent-study projects during the 10-week summer session. Each student chooses a set of topics, and completes one topic every two weeks. Each submission is subjected to two rounds of review, one round per week. Some of the topics are new; others are merely updates to existing pages. The amount of work required on each topic is ranked from 1 to 5, with 5 being the highest. Each student is expected to complete topics with a set total rank, usually about 15. In addition to researching topics, each student chooses one “special job,” such as improving the graphics, installing a search engine, or developing a set of style guidelines. The project can be supervised by graduate students, who undertake the responsibility of assigning work to students and integrating the work into the site. Benefits of the project include (i) giving the students an in-depth look at several different ethical issues, (ii) constructing a resource that has been used by instructors around the world, and (iii) providing a low-overhead mechanism for adding another course to the curriculum. This methodology should be applicable to courses involving professional issues in all areas of engineering.}, journal={2001 Annual Conference Proceedings}, author={Gehringer, Edward} } @article{gehringer, title={Daily Course Evaluation With Google Forms}, DOI={10.18260/1-2--16350}, abstractNote={Student course evaluation has become a fixture of American higher education over the past two generations.It serves at least two distinct purposes: to provide superiors with a way to assess the quality of each instructor, and to avail the instructor a chance to improve, based on feedback from students.A third motivation is to give students a way to influence teaching.Almost invariably, the evaluation is performed once per term, and the end of each course.Both the instructor's and students' purposes, it would be much better if the feedback came at a point where instruction could be adjusted during the current term.It would be ideal be to collect feedback after each class.Until recently, the overhead of doing so was high enough to render daily feedback infeasible.But now, with Google forms, anyone can create and administer surveys for free, and with minimal investment of time.This paper reports on a semester-long experiment with daily feedback, and how it influenced instruction.}, journal={2010 Annual Conference & Exposition Proceedings}, author={Gehringer, Edward} } @article{gehringer, title={Damage Control: What To Do When Things Don't Work}, DOI={10.18260/1-2--3891}, abstractNote={What should you do when your software breaks, when your labs don't work out, when your tests are bombed, when your homework has errors?These are questions every instructor has faced.This paper brings together a set of tips from dozens of experienced educators in dealing with these awkward situations.They tell us that it is best to be honest with students and admit your mistakes.Students will recognize that you are human, and besides, errors and changing requirements crop up on the job too, so learning how to handle them is good experience for real life.Often a mistake in an assignment or lab can be turned into a learning experience.There are many options in dealing with test questions that don't work out for some reason.The weighting of questions can be adjusted in various ways, or homework assignments can be given to give the students a second chance to learn the material.}, journal={2008 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{louca_gehringer, title={Databases And Search Engines: Tools For Reuse Of Course Materials}, DOI={10.18260/1-2--9069}, abstractNote={We have developed software for creating databases of course materials on the World-Wide Web. The goal is to allow instructors at different institutions to share materials and develop them jointly. Our first two databases, in computer architecture and object technology, comprise thousands of problems and lectures downloaded (with permission) from course Websites around the world. The database is searchable by classification or fulltext string. To populate the databases with up-to-date material, we started by building a list of course Websites. Using several sources, we came up with a list of 73 sites in computer architecture and 40 sites in object technology. However, only a minority of the instructors have allowed us to use their material. To provide access to a larger amount of material, we are extending our search capability to include material on the Web as well as in the database. Users of the database will not, of course, have an automatic right to reuse and adapt material that is not in the database; however, they will be able to ask the copyright holders for permission individually. The search engine that we are integrating with the database finds course Websites by searching a filtered set of educational domains for sites containing keywords characteristic of course material in the target discipline. We present preliminary results of using this search engine.}, journal={2001 Annual Conference Proceedings}, publisher={ASEE Conferences}, author={Louca, Tony and Gehringer, Edward} } @book{baheti_williams_gehringer_stotts_smith, title={Distributed Pair Programming: Empirical Studies and Supporting Environments}, number={2002}, publisher={Chapel Hill, NC: Dept. of Computer Science, University of North Carolina}, author={Baheti, P. and Williams, L. and Gehringer, E. and Stotts, D. and Smith, J.}, pages={TR02–010} } @article{gehringer, title={Electronic Peer Review Builds Resources For Teaching Computer Architecture}, DOI={10.18260/1-2--11865}, abstractNote={Electronic peer review is a concept that allows students to get much more feedback on their work than they normally do in a classroom setting. Students submit assignments to the system, which presents them to other students for review. Reviewer and author then communicate over a shared Web page, and the author has a chance to submit revised versions in response to reviewer comments. At the end of the period, the reviewer gives the author a grade. Each author gets reviews from several reviewers, whose grades are averaged. At the end of the review period, there is a final round when students grade each other’s reviews. Their grade is determined by the quality of both their submitted work and their reviewing. This paper reports on our use of peer review in two computer architecture courses, a microarchitecture course and a parallel-architecture course. Students in these courses engaged in a variety of peer-reviewed tasks: Writing survey papers on an aspect of computer architecture, making up homework problems over the material covered in class, creating machine-scorable questions on topics covered during the semester, animating and improving graphics in the lecture presentations, and annotating the lecture notes by inserting hyperlinks to other Web documents. Students generally found these exercises beneficial to their learning experience, and they have provided resources that can be used to improve the course. In fact, with such a system, large classes are actually a blessing, since they produce better and more copious educational materials to be used in subsequent semesters.}, journal={2003 Annual Conference Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Experience with Software Support for Managing Student-Authored Wiki Textbooks}, DOI={10.18260/1-2--17957}, abstractNote={Traditionally, students study from textbooks written by "experts" in the field. But there are important pedagogical advantages to having them write part or all of their textbook. Until Web 2.0, however, student-authored textbooks were infeasible because of the overhead in reviewing contributions and making them available to the rest of the class. A wiki meets both of these needs very nicely. But substantial administrative overhead remains. Our Expertiza system has features for managing this overhead. We have used the system for two semesters. This paper reports on our experience. Student reaction has been quite positive, especially with regard to how much insight students gained from their writing. We also learned that certain aspects of the experience (such as double-blind review) were more difficult, and other aspects (such as sequencing between chapters) were easier than expected. These experiences are guiding further development of the software, which is available to any instructor who wants to use it to manage development of a wiki textbook.}, journal={2011 ASEE Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Improving Scores On Course Evaluations: Experienced Faculty Tell What Works}, DOI={10.18260/1-2--5516}, abstractNote={On many campuses, student course evaluations are the primary means of evaluating teaching, and can have an impact on performance reviews, tenure, and promotion. Thus, faculty desire to improve their scores. But how can they? This paper considers the experience of several faculty who managed to raise their scores significantly. Some of them did so by taking steps that would improve their course or their attentiveness to students. Others simply “dumbed down” their courses. There is an extensive literature on factors affecting course-evaluation scores. It confirms some of what our informants told us, and calls into question some of their observations. In particular, we discuss the issue of leniency at length, and conclude with three recommendations to new engineering instructors on how to improve their own scores. The first is to be more attentive to students and their needs. Next, an instructor should focus on what is being learned rather than what is being taught. And finally, faculty should avail themselves of institutional support for improving teaching.}, journal={2009 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Is Pair Programming An Effective Way To Learn Computer Architecture?}, DOI={10.18260/1-2--11877}, abstractNote={Pair programming is a concept where two programmers work side by side at the same computer, writing code jointly. One of them, called the driver , is in control of the keyboard and mouse. The other, called the navigator , observes what the driver is doing and offers advice. It is the driver’s job to write the code. The navigator has a chance to observe the larger picture, evaluating the driver’s code for correctness of design and implementation. Studies have shown that pair programming is very effective. Two programmers can finish a task in little over half the elapsed time that a single programmer takes. And the quality of the code—measured in terms of absence of defects—is much higher. In the past few years, pair programming has made inroads into industry and into programming courses. However, it has not typically been used in courses that teach subjects other than programming or software engineering, nor has it been used in the analysis of experimental results. This paper reports on an experiment in a combined senior/masters level computer architecture class, using Hennessy & Patterson’s Computer Architecture: A Quantitative Approach as a text. Students were required to implement three projects simulating various aspects of a microarchitecture (cache, branch predictor, dynamic instruction scheduler). Then they engaged in an experimental analysis to find the best configuration in a design space. They were encouraged to pair-program, and data were gathered on their experience.}, journal={2003 Annual Conference Proceedings}, author={Gehringer, Edward} } @article{gehringer, title={Missing White House E Mail: A Whistleblowing Case Study}, DOI={10.18260/1-2--10778}, abstractNote={Whistleblowing is a core topic for ethics courses taught to Computer Science and Computer Engineering majors. However, most of the prominent engineering whistleblowing cases have little if anything to do with computing (the Hughes Aircraft case being a notable exception). Another recent case is appropriate for study, especially given the increasing focus on e-mail privacy in the workplace. In early 2000, allegations surfaced that the White House was concealing e-mail that could have helped reveal, among other things, the extent of Vice President Gore's involvement in campaign fundraising controversies, and whether the Clinton administration had sold trade-mission seats in exchange for campaign contributions. The former chief of White House computer operations charged that Clinton administration officials were involved in an e-mail coverup. A Northrop Grumman contractor, Betty Lambuth, testified that she was threatened with loss of her job and other consequences if she disclosed the existence of the e-mail messages. This case raises several important issues, such as the responsibility of a contractor to its client vs. its responsibility to the public, and how much evidence of technical malfunctions should be needed before an organization (in this case, the White House) is obligated to inform other stakeholders.}, journal={2002 Annual Conference Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Online Vs. On Paper Exams}, DOI={10.18260/1-2--16349}, abstractNote={Abstract NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract Online vs. On-Paper Exams Abstract As information and education continue to migrate to an online format, on-paper examinations are becoming an anachronism. Paper exams ask students to work in an environment that feels artificial—without the information infrastructure that they depend on in their other classwork, and that they expect to use on the job after they graduate. This paper compares a particular form of online exams, the “open-book open-Web” exam with exams taken on paper. The choice of format has a myriad of implications, most of which are not apparent at a glance. This paper considers several categories of differences, including coverage of material, administering the exam, challenges of grading, how to discourage cheating, and the tradeoff between difficulties associated with handwriting and difficulties with coding the exam. It is based on the results of two surveys, one of students who took open-book open-Web exams, and one of instructors who administered online exams. 1. Introduction In today’s world, tests and exams are given in an environment that is increasingly artificial. Most technical work is done with computers. Few people would attempt to write a computer program, analyze forces on a building, or even write a piece of prose, without the aid of a computer. But that’s just the kind of environment we place our students in when they take an exam. All of the leading learning-management systems and textbook publishers have online testing modules that can be used to deliver quizzes or exams. However, few instructors have completely done away with paper exams. Online exams preclude certain types of questions (e.g., recall), while facilitating others (questions based on looking up information and applying it). There is more to online exams than meets the eye. Usually, some questions are automatically graded. But there are many ways of phrasing a correct answer. It is much more difficult than it would appear to make sure that all legitimate answers are accepted. Usually, manual regarding is needed. In most systems, this requires navigating to every page of every student’s exam. There are major differences in administering an online exam. For example, it’s easy to time the test precisely, so that each student gets the same amount of time. But care is required to make sure that some students don’t gain access to the answers when they finish early, and then e-mail them to those who are still working on the exam. This paper covers online exams in general, but focuses on a particular kind of online exam, the “open-book open-Web” (OBOW) exam. This has major implications for academic integrity. An online exam does away with a lot of opportunity for cheating (the kind of cheating that involves consulting unapproved materials or devices), but raises new possibilities, such as electronic communication between students during the exam. In later Proceedings of the 2010 American Society for Engineering Education Annual Conference & Exposition 1 Copyright ∏ 2010, American Society for Engineering Education}, journal={2010 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Teaching Interactively With Google Docs}, DOI={10.18260/1-2--16352}, abstractNote={Active learning has repeatedly been shown to be important to retention of what is taught in class.An important challenge is devising enough active-learning exercises to reinforce each important concept and prevent students from "tuning out" after the first fifteen minutes of class.Since many students nowadays carry laptops, we should look for ways to use them in active learningrather than let them be a distraction during class.Using Google forms, students can give feedback on their laptops during class.Google docs can be used in a myriad of ways, such as for collecting answers to questions, submitting computer code, filling out tables and tableaus, or reporting on Web research done during class.It is quite easy to use Google docs in almost any class, providing the kind of interactivity that is missing from a traditional lecture.}, journal={2010 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer_peddycord, title={Teaching Strategies When Students Have Access to Solution Manuals}, DOI={10.18260/1-2--22536}, abstractNote={Eight years ago, the lead author undertook a study of instructors who reused homework and exam questions from one year to the next. The results showed that those who reused questions more frequently than once every two years observed more cheating by students who had copies of the previous questions and answers. But since then, the Web has changed everything. Now, Cramster serves up answers to problems from textbooks, and sites like Course Hero encourage students to upload exams for any course. This has endangered all reuse of questions. This paper reports on a survey of about 140 mostly engineering instructors on the approaches they have taken to adapt to this new challenge. Some have changed the weighting of homework; others have made up their own questions or developed alternate approaches to finding questions. Some have created “ stings ” for students who illicitly submit answers from solution manuals It is clear that a variety of responses are possible; we discuss the advantages and disadvantages of the various approaches.}, journal={2013 ASEE Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward and Peddycord, Barry} } @article{gehringer, title={To See Or Not To See: Access Restrictions On Course Web Sites}, DOI={10.18260/1-2--10766}, abstractNote={Last November’s issue of ASEE Prism had a cover story [1] on the MIT Open Courseware Initiative. MIT attracted widespread attention earlier in 2001 for its decision to make all its course Web sites publicly available over the Web. However, not everyone is following suit. The number of courses with access restrictions has surged in the past year, with perhaps the majority of course sites now having some restriction that prevents non-students from accessing them. Certainly, some kinds of materials should not be publicly accessible. Solutions to textbook problems are an example. Aside from the problem of copyright infringement, it also makes it possible for students at other institutions to “do” their homework by surfing the Web. But many instructors restrict much more than solutions. Some keep their work under wraps because they worry that it is not polished enough for public consumption. Others restrict because that's the default in their courseware management system (e.g., WebCT). Finally, some universities are moving to assert ownership over course materials developed by faculty, and require them to be licensed instead of given away. This is not widespread at the moment, but will be an increasing problem as online assessment and testing systems become more commonplace. This paper will explore the reasons for restricting course materials, the current extent, and the implications of such restrictions.}, journal={2002 Annual Conference Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Understanding And Relating To Your International Students}, DOI={10.18260/1-2--3889}, abstractNote={In most engineering programs, international students constitute the majority of the graduate population, and a rising percentage of the undergraduate population.It is important for engineering faculty to understand these students' expectations of their professors, and make it clear what is expected of them so they will not erroneously assume that educational practices are the same as in their home countries.The educational systems they come from are very diverse, although some are adopting elements of the American educational model.In other countries, there is less emphasis on project work and other homework, and more on exams.While it seems to be rare for final grades to be based entirely on the final exam, it is not unusual for them to be based entirely on finals plus midterm exams.Homework counts for less, perhaps because the few teaching assistants that do exist are responsible for lab sections, so there is no support for grading of homework.In many places, a variety of homework is assigned.It may be collected, but it counts for nothing, or almost nothing.Seemingly because of this, cheating on homework is often tolerated.But cheating on exams may be punished severely.Practices seem to vary widely among institutions, but the penalties are generally similar: zeros, failure in course, suspension from school.}, journal={2008 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Using Independent Study Projects In Your Research And Teaching Program}, DOI={10.18260/1-2--2295}, abstractNote={Independent-study courses are offered by most institutions to allow a student to work one-on-one with a faculty member on a topic of interest to both. The rules vary widely with department and institution. They may be letter-graded, or graded pass/fail. Usually they are limited to three to six credits in a student's degree program. Sometimes the topics are constrained by the need to satisfy accreditation requirements. Many institutions require a syllabus, or a contract between the student and professor. Sometimes the contract is required to specify deliverables. An independent study usually addresses a topic that is not covered in a regular course. Faculty can use them to build up their teaching and research program. For example, an independent study may be used to introduce a student to a particular research area in which (s)he may pursue a thesis (though in some cases, students are not allowed to earn both independent-study and thesis credits on the same topic). It may also be used to assist another student on a thesis project, as when an undergraduate gathers data that a graduate student can use in writing a thesis. Independent studies can also be used to enrich existing courses. A faculty member may want to introduce a new topic into a course, but lack time to produce the necessary lecture and homework materials. An independent-study student can scout the topic in advance and produce lecture notes and problems that can be used in teaching the course. This helps both the independent-study student, who learns about a new topic earlier than other students, and the rest of the class, which has access to better course materials than they would otherwise.}, journal={2007 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Why Aren't Course Management Systems Penetrating Faster?}, DOI={10.18260/1-2--12479}, abstractNote={Course-management systems such as Blackboard and WebCT promise to enhance the on-line experience of students in face-to-face and distance education alike. Yet many course Web sites are put together without them—even those of technologically savvy “early adopters.” Often instructors continue to manage their Web sites with rudimentary tools. Is this because the systems are not user friendly, because they promote policies (such as access restrictions) the instructors are not comfortable with, or because the learning curve is too steep? Or is it because they are not promoted effectively by the schools that adopt them? This paper reports on a survey of 160 educators regarding their use or non-use of these systems, and their satisfaction with them. It looks for differences in the way they use the Web, compared to instructors who “roll their own” Web sites, and assesses how difficult it would be to take an existing course site and place it within a course-management system.}, journal={2003 Annual Conference Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} } @article{gehringer, title={Working Effectively With Teaching Assistants}, DOI={10.18260/1-2--5515}, abstractNote={New engineering faculty usually have the opportunity to work with teaching assistants.How can they make effective use of them?This paper presents a list of tasks TAs might perform, comments on what these duties entail, and discusses how one might structure meetings with one's TA.}, journal={2009 Annual Conference & Exposition Proceedings}, publisher={ASEE Conferences}, author={Gehringer, Edward} }