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.
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...
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.
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.
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 ...
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 ...
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 ...
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 ...
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 ...
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
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 ...
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.
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.
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...
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.
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.
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 ...
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 ...
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 ...
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 ...
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 ...
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
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 ...
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.
Uploads