The Java Research Runtime Environment

The JRRE project is a Java runtime environment implementation based on Sun's Java 2 Virtual Machine specification. The system is currently under development at Appalachian State University by undergraduates Christopher Ellsworth and Clarence Alston under the guidance of Dr. Cindy Norris.

The goal of the JRRE project is to provide a research runtime environment for use as a tool to study the byte-code level of the java language. Features include allowing the user to pause, step, and resume execution while viewing the changing states of the stack, heap, object, and method data of the virtual machine in addition to examining the contents of the constant pool linking system.

The project is being implemented in Java using the principles outlined by the extreme programming discipline and is a study of software engineering in the XP environment. The following XP ideals are being used as the model for the projects design and implementation process:

  • Pair Programming: All production code is written by two people sitting together at one machine.
  • Pair Communication: Agree upon and use a common system of names and descriptions to guide development and communication.
  • Analysis and Design: Use UML and other design methods to plan before implementation.
  • Coding Standards: Use consistent and meaningful coding conventions to prevent confusion.
  • Simplicity: Do the simplest thing that could possibly work and constantly refactor the codes structure to reduce its complexity.
  • Unit Testing: Find errors as close as possible to the time that they were introduced by automating testing as part of the daily build process.

The JRRE project is currently under development and is scheduled to be released for beta testing in december of 2002. Please direct inquiries to one of the projects team members. If you are interesting in beta testing we are building an email list of people to notify when the first beta is available. See the Project Info section for more information.