James Huggins - Academia.edu (original) (raw)

Papers by James Huggins

Research paper thumbnail of Nifty computing in society case studies (abstract only)

Proceeding of the 44th ACM technical symposium on Computer science education, 2013

ABSTRACT This session is being organized by ACM SIGCAS (Computers and Society) for those with an ... more ABSTRACT This session is being organized by ACM SIGCAS (Computers and Society) for those with an interest in addressing the social and ethical consequences of computing in our society within their curricula. This year we will share case studies as a means to teaching a variety of issues resulting from the impact of computing in our society. Our discussion leaders will introduce briefly favorite case studies in their fields of interest and will encourage all participants to share examples of their own. Ways for dealing and solving current problems will be tackled. We will provide a plan of how to incorporate the case studies presented into our classes along with a handout of how to do so. Topics of interest include legal issues, social media, privacy, and sustainability.

Research paper thumbnail of The pledge of the computing professional

ACM SIGCAS Computers and Society, 2012

All of us in the computing community understand the importance of recognizing and promoting ethic... more All of us in the computing community understand the importance of recognizing and promoting ethical behavior in our profession. Instruction in ethics is rapidly becoming a part of most computing-related curricula, whether as a stand-alone course or infused into existing courses. Both Computing Curricula 2005 and the current discussions on Computing Curricula 2013 recognize the significance of ethics, generally considering it a core topic across the various computing disciplines. Additionally, in their criteria for the accreditation of computing programs, ABET specifies that a student must attain by the time of graduation an understanding of ethical issues and responsibilities. What has been missing is a formal rite-of-passage ceremony to prompt student recognition and self-reflection on the transition from being a student to a computing professional. In 2009, seventeen faculty members and industry representatives from a wide range of institutions began to address this open problem b...

Research paper thumbnail of Execution of a requirement model in software development

Research paper thumbnail of It Seemed Like a Good Idea at the Time (COVID-19 edition)

Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2, 2022

Research paper thumbnail of Broy-Lamport Specification Problem: A Gurevich Abstract State Machine Solution

We apply the Gurevich Abstract State Machine methodology to a benchmark specification problem of ... more We apply the Gurevich Abstract State Machine methodology to a benchmark specification problem of Broy and Lamport.

Research paper thumbnail of Flipping Unplugged: An Experience Report

This Research-To-Practice Full Paper discusses the use of the flipped classroom format. Within th... more This Research-To-Practice Full Paper discusses the use of the flipped classroom format. Within the CS community, numerous papers discussing the use of flipped classrooms have appeared in recent years. We discuss the use of flipped classroom techniques without requiring the use of modern digital technology. We argue that the principal goals of flipped classrooms do not a priori require such technologies, and that instructors should not feel limited by a lack of access to technology when considering flipped classroom designs. This paper gives an experience report regarding the use of “unplugged” flipped classroom techniques in a computing history and ethics course over the last ten years.

Research paper thumbnail of It Seemed Like a Good Idea at the Time (Hindsight is 2020)

Proceedings of the 51st ACM Technical Symposium on Computer Science Education, 2020

Research paper thumbnail of A Semantic Model for the State Machine in the Unified Modeling Language

The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing ob... more The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing object-oriented models and designs. UML is based on an intuitive and easy to understand diagrammatic notation. Since its birth, a lot of CASE tools for UML have been generated; but the speci ...

Research paper thumbnail of Abstract State Machines and the Inquiry Process

Lecture Notes in Computer Science, 2010

Abstract State Machines have long played a valuable role as a catalyst for inquiry into software ... more Abstract State Machines have long played a valuable role as a catalyst for inquiry into software problems. In the ASM literature, however, there is a tendency to omit reflection on the process of ASM-based design and analysis, focusing instead on final, complete ASM ...

Research paper thumbnail of The assumptions of computing

Proceedings of the conference on Ethics in the computer age -, 1994

Research paper thumbnail of A method of implementing UML virtual machines with some constraints based on abstract state machines

Research paper thumbnail of A UML validation toolset based on abstract state machines

Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)

The Unified Modeling Language has become widely accepted as a standard in software development. S... more The Unified Modeling Language has become widely accepted as a standard in software development. Several tools have been produced to support UML model validation. These tools trans-late a UML model into a validation language such as PROMELA. However, they ...

Research paper thumbnail of It seemed like a good idea at the time

Pediatric Blood & Cancer, 2013

ABSTRACT The title of this talk comes from a little book that I bought years ago, compiled by S.M... more ABSTRACT The title of this talk comes from a little book that I bought years ago, compiled by S.M. Scott. It includes fictional stories and quotations about teaching, reminiscences by former pupils about their teachers, etc. The title of the book is what caught ...

Research paper thumbnail of The Railroad Crossing Problem: An Evolving Algebra Solution

Research paper thumbnail of An offline partial evaluator for evolving algebras

Research paper thumbnail of A Semantic Model for the State Machine in the Uni ed Modeling Language

The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing ob... more The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing object-oriented models and designs. UML is based on an intuitive and easy to understand diagrammatic notation. Since its birth, a lot of CASE tools for UML have been generated; but the speci ...

Research paper thumbnail of Kermit: Specification and verification

fies property \Phi" and are proved by induction on relevant runs. It is usually ... more fies property \Phi" and are proved by induction on relevant runs. It is usually obvious thatrelevant initial states satisfy \Phi; more work is required to show that the transition rules preserve \Phi. Theliveness theorems have the form "Every fair run has such and such property."Acknowledgments. Yuri Gurevich directed this study; his comments throughout its development werenumerous and extremely helpful. Frank

Research paper thumbnail of Multi-phase homework assignments in CS I and CS II

Journal of Computing Sciences in Colleges, Dec 1, 2003

All of the panelists have used small sets of related programming assignments in introductory CS c... more All of the panelists have used small sets of related programming assignments in introductory CS courses. These assignments are essentially larger programs which are developed during several separate phases. This approach has several advantages:• Students are able to develop more realistic and interesting programs.• Students are motivated to write better code as well as documentation. Those who don't are quickly confronted by the implications.• Student interest in completing the projects is better ...

Research paper thumbnail of Survivor

ACM SIGCSE Bulletin, 2003

Research paper thumbnail of What Belongs in a Computer Science Syllabus?

2018 IEEE Frontiers in Education Conference (FIE), 2018

This work-in-progress research paper studies the role of the syllabus in a computer science cours... more This work-in-progress research paper studies the role of the syllabus in a computer science course. There is considerable literature detailing why a syllabus is an important part of a lecturer‘s tools, and what items a syllabus ought to contain. However, there is little empirical evidence to back up these claims. We investigate what computer science students report seeing (and wishing to see) on a syllabus, and compare those results against advice given in various syllabus design guides. We find that several topics listed as points of emphasis on syllabus guidelines are named by students both as important and as areas for improvement in syllabi. We do this as a first step towards developing a research program to derive meaningful data on what a useful computer science syllabus really contains.

Research paper thumbnail of Nifty computing in society case studies (abstract only)

Proceeding of the 44th ACM technical symposium on Computer science education, 2013

ABSTRACT This session is being organized by ACM SIGCAS (Computers and Society) for those with an ... more ABSTRACT This session is being organized by ACM SIGCAS (Computers and Society) for those with an interest in addressing the social and ethical consequences of computing in our society within their curricula. This year we will share case studies as a means to teaching a variety of issues resulting from the impact of computing in our society. Our discussion leaders will introduce briefly favorite case studies in their fields of interest and will encourage all participants to share examples of their own. Ways for dealing and solving current problems will be tackled. We will provide a plan of how to incorporate the case studies presented into our classes along with a handout of how to do so. Topics of interest include legal issues, social media, privacy, and sustainability.

Research paper thumbnail of The pledge of the computing professional

ACM SIGCAS Computers and Society, 2012

All of us in the computing community understand the importance of recognizing and promoting ethic... more All of us in the computing community understand the importance of recognizing and promoting ethical behavior in our profession. Instruction in ethics is rapidly becoming a part of most computing-related curricula, whether as a stand-alone course or infused into existing courses. Both Computing Curricula 2005 and the current discussions on Computing Curricula 2013 recognize the significance of ethics, generally considering it a core topic across the various computing disciplines. Additionally, in their criteria for the accreditation of computing programs, ABET specifies that a student must attain by the time of graduation an understanding of ethical issues and responsibilities. What has been missing is a formal rite-of-passage ceremony to prompt student recognition and self-reflection on the transition from being a student to a computing professional. In 2009, seventeen faculty members and industry representatives from a wide range of institutions began to address this open problem b...

Research paper thumbnail of Execution of a requirement model in software development

Research paper thumbnail of It Seemed Like a Good Idea at the Time (COVID-19 edition)

Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2, 2022

Research paper thumbnail of Broy-Lamport Specification Problem: A Gurevich Abstract State Machine Solution

We apply the Gurevich Abstract State Machine methodology to a benchmark specification problem of ... more We apply the Gurevich Abstract State Machine methodology to a benchmark specification problem of Broy and Lamport.

Research paper thumbnail of Flipping Unplugged: An Experience Report

This Research-To-Practice Full Paper discusses the use of the flipped classroom format. Within th... more This Research-To-Practice Full Paper discusses the use of the flipped classroom format. Within the CS community, numerous papers discussing the use of flipped classrooms have appeared in recent years. We discuss the use of flipped classroom techniques without requiring the use of modern digital technology. We argue that the principal goals of flipped classrooms do not a priori require such technologies, and that instructors should not feel limited by a lack of access to technology when considering flipped classroom designs. This paper gives an experience report regarding the use of “unplugged” flipped classroom techniques in a computing history and ethics course over the last ten years.

Research paper thumbnail of It Seemed Like a Good Idea at the Time (Hindsight is 2020)

Proceedings of the 51st ACM Technical Symposium on Computer Science Education, 2020

Research paper thumbnail of A Semantic Model for the State Machine in the Unified Modeling Language

The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing ob... more The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing object-oriented models and designs. UML is based on an intuitive and easy to understand diagrammatic notation. Since its birth, a lot of CASE tools for UML have been generated; but the speci ...

Research paper thumbnail of Abstract State Machines and the Inquiry Process

Lecture Notes in Computer Science, 2010

Abstract State Machines have long played a valuable role as a catalyst for inquiry into software ... more Abstract State Machines have long played a valuable role as a catalyst for inquiry into software problems. In the ASM literature, however, there is a tendency to omit reflection on the process of ASM-based design and analysis, focusing instead on final, complete ASM ...

Research paper thumbnail of The assumptions of computing

Proceedings of the conference on Ethics in the computer age -, 1994

Research paper thumbnail of A method of implementing UML virtual machines with some constraints based on abstract state machines

Research paper thumbnail of A UML validation toolset based on abstract state machines

Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)

The Unified Modeling Language has become widely accepted as a standard in software development. S... more The Unified Modeling Language has become widely accepted as a standard in software development. Several tools have been produced to support UML model validation. These tools trans-late a UML model into a validation language such as PROMELA. However, they ...

Research paper thumbnail of It seemed like a good idea at the time

Pediatric Blood & Cancer, 2013

ABSTRACT The title of this talk comes from a little book that I bought years ago, compiled by S.M... more ABSTRACT The title of this talk comes from a little book that I bought years ago, compiled by S.M. Scott. It includes fictional stories and quotations about teaching, reminiscences by former pupils about their teachers, etc. The title of the book is what caught ...

Research paper thumbnail of The Railroad Crossing Problem: An Evolving Algebra Solution

Research paper thumbnail of An offline partial evaluator for evolving algebras

Research paper thumbnail of A Semantic Model for the State Machine in the Uni ed Modeling Language

The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing ob... more The Uni ed Modeling Language (UML) is becoming a standardized modeling notation for expressing object-oriented models and designs. UML is based on an intuitive and easy to understand diagrammatic notation. Since its birth, a lot of CASE tools for UML have been generated; but the speci ...

Research paper thumbnail of Kermit: Specification and verification

fies property \Phi" and are proved by induction on relevant runs. It is usually ... more fies property \Phi" and are proved by induction on relevant runs. It is usually obvious thatrelevant initial states satisfy \Phi; more work is required to show that the transition rules preserve \Phi. Theliveness theorems have the form "Every fair run has such and such property."Acknowledgments. Yuri Gurevich directed this study; his comments throughout its development werenumerous and extremely helpful. Frank

Research paper thumbnail of Multi-phase homework assignments in CS I and CS II

Journal of Computing Sciences in Colleges, Dec 1, 2003

All of the panelists have used small sets of related programming assignments in introductory CS c... more All of the panelists have used small sets of related programming assignments in introductory CS courses. These assignments are essentially larger programs which are developed during several separate phases. This approach has several advantages:• Students are able to develop more realistic and interesting programs.• Students are motivated to write better code as well as documentation. Those who don't are quickly confronted by the implications.• Student interest in completing the projects is better ...

Research paper thumbnail of Survivor

ACM SIGCSE Bulletin, 2003

Research paper thumbnail of What Belongs in a Computer Science Syllabus?

2018 IEEE Frontiers in Education Conference (FIE), 2018

This work-in-progress research paper studies the role of the syllabus in a computer science cours... more This work-in-progress research paper studies the role of the syllabus in a computer science course. There is considerable literature detailing why a syllabus is an important part of a lecturer‘s tools, and what items a syllabus ought to contain. However, there is little empirical evidence to back up these claims. We investigate what computer science students report seeing (and wishing to see) on a syllabus, and compare those results against advice given in various syllabus design guides. We find that several topics listed as points of emphasis on syllabus guidelines are named by students both as important and as areas for improvement in syllabi. We do this as a first step towards developing a research program to derive meaningful data on what a useful computer science syllabus really contains.