Stephen J. Hartley
Drexel University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Stephen J. Hartley.
technical symposium on computer science education | 1994
Stephen J. Hartley
In operating systems courses, students study the major algorithms used in operating systems to manage the various objects and resources in a computing system: processes, files, buffer space, processors, messages, main memory, semaphores, and disk storage. Various classical synchronization problems such as the dining philosophers, the readers and writers, and the producers and consumers with bounded buffer are also analyzed. Even though the computing systems being studied are getting more and more powerful, these algorithms and classical problems are usually analyzed using blackboard, chalk, pencil, and paper. This paper describes an X-windows based package called xtango that was used to animate some of the algorithms and classical problems studied in operating systems. One animation typical of those that have been developed is presented. Students can use these animations during study outside the classroom for a better understanding of the algorithms. Instructors can use the animations to facilitate the presentation of the algorithms in the classroom.
integrating technology into computer science education | 1996
Stephen J. Hartley; Jill Gerhardt-Powals; David Jones; Colin McCormack; M. Dee Medley; Blaine A. Price; Margaret M. Reek; Marguerite K. Summers
This working group examined how electronic technology such as the Internet and World Wide Web (WWW) could be used in the teaching process, both today and in the future, to enhance student learning. The goal of this document is to provide useful information to educators interested in exploring the use of Intemet technology in their courses, regardless of their background knowledge in this area. We try to provide guidance on appropriate uses of the technology, how to apply it and different categories of course-related areas in which it can be used. Samples of each type of use are provided where possible and location information is current as of June 6, 1996.
integrating technology into computer science education | 1998
Joseph Bergin; Thomas L. Naps; Constance G. Bland; Stephen J. Hartley; Mark A. Holliday; Pamela B. Lawhead; John Lewis; Myles F. McNally; Christopher Nevison; Cheng Ng; George Pothering; Tommi Teräsvirta
The goal of this working group was to collect, evaluate, and foster the development of resources to serve as components of both new and revised traditional courses that emphasize object-oriented software development using Java. These courses could, for example, integrate Internet-based distributed programming, concurrency, database programming, graphics and visualization, human interface design and object-oriented development. They could therefore also be suitable as capstone courses in computer science. The focus of the working group was on tools and techniques, including demonstrations, projects, syllabi, and pedagogical patterns. The working group members are coordinating the development of a Web site (sol.pace.edu/iticse98) devoted to sharing such tools and techniques among educators.
technical symposium on computer science education | 1992
Stephen J. Hartley
In undergraduate operating systems classes, students learn about concurrent process synchronization, including such things as shared data, race conditions, critical sections, mutual exclusion, semaphores, monitors, and the test-and-set hardware instruction. They also study interprocess communication, message passing, rendezvous, and remote procedure calls. Solutions to classical problems, such as the dining philosophers, producers and consumers, bounded buffers, and readers and writers, are presented using the above concepts. However, students need to write programs in a language that provides facilities for concurrent programming in order to appreciate fully the above concepts. This paper describes the SR language and discusses its successful use as an environment for concurrent programming in an undergraduate operating systems class.
technical symposium on computer science education | 1998
Stephen J. Hartley
Is Java suitable for teaching concurrent programming? This paper describes the features Java has for this, how well they work, and what is missing. The author has written a library of classes, also described here, to provide the missing features. Supplemented with these classes, Java works well as the concurrent programming language in operating systems and related courses.
conference on scientific computing | 1993
Stephen J. Hartley; Aaron H. Konstam
Steiner systems, particularly triple systems, are usually generated by mathematicians using techniques from the theory of groups and quasi-groups. When pencil-and-paper enumeration becomes infeasible, mathematicians have used computers to carry out exhaustive searches. This paper presents some results of using genetic algorithms, which do not use exhaustive search, to generate Steiner systems. A specialized mutation operator was effective in generating Steiner triple systems. Future research will focus on improving the genetic algorithm to generate higher order Steiner systems whose existence is not currently known.
Computer Science Education | 1992
Stephen J. Hartley
SR is a language for concurrent programming. This article describes the SR language, presents some examples of SR programs in the context of an undergraduate operating systems course, and provides some programming assignments that can be used in an open laboratory. The SR language can be used by instructors of operating systems courses to give students experience in writing concurrent programs that use multiple processes, semaphores, message passing, and the rendezvous. These examples and programming assignments have been used successfully in undergraduate operating systems courses at Drexel University in Philadelphia and Trinity University in San Antonio.
international conference on computer graphics and interactive techniques | 1995
Stephen J. Hartley
XTANGOs animation interpreter program, animator, has been very useful as a tool for animating concurrent programs written for an operating systems or concurrent programming class. Additional print statements can be added to a program and the output of the program can be read by the animation interpreter. The resulting algorithm animation will appear in a new window on the users workstation running X-windows. SR is a concurrent programming language that can be used by students in an operating systems or concurrent programming class.This paper describes integrating XTANGOs animation interpreter into SR so that procedure calls can be made directly to the animation code, rather than generating an intermediate output file or piping the SR programs output to the animator program. Two new animation commands, stepjump and stepjumpto, were added so that more that one object can be moving at a time in the XTANGO window.Algorithm animation using SR is now even easier. An example SR program is included.
integrating technology into computer science education | 1996
Stephen J. Hartley
A hypermedia laboratory manual for operating systems and concurrent programming, based on the SR programming language, has been written and is available for use over the Internet. It is written in HTML and is accessible using Web browsers such as Mosaic and Netscape. Algorithm animations can be run by adding a new external viewer to the browser. Tbe Web helps solves the handout problem faced by many instructors.
Archive | 1998
Stephen J. Hartley