Jython Environment For Students (JES) Final Presentation Team 3 David Raines Claire Bailey Jason Ergle Josh Sklare July 16, 20021
2 Introduction Jython Environment For Students (JES) Client: Mark Guzdial Team: Claire Bailey - Technical Writing David Raines - Project Manager Jason Ergle - Design Lead Josh Sklare - Technical Lead
Goals Create a Jython programming environment For new Introduction to Media Computation (CS1315) class Target audience is non-technical students and first time programmers 3July 16, 2002
Key Requirements Provide an editor with Syntax Highlighting for loading, modifying, and saving Jython files Provide a command prompt for interacting with Jython interpreter, as well as running loaded files Error messages should be understandable by the target users 4July 16, 2002
5 Key Requirements (cont…) Debugging will be provided by a popup window containing variable names, types, and values Implement in Jython and Swing Easy to maintain and extend
July 16, Design The major functionality of the program is divided into two different classes, JESUI and JESInterpretor JESUI contins instance of the other UI Classes. Also handles the events generated by the program. JESInterpreter executes the command line. JESProgram is the main part of the program.
July 16, UML Diagram
July 16, UI Design Mac Version:
July 16, Debug Window
Accomplishments We build an IDE that will be used by students this fall Met all requirements with the deadline Requirements were well defined- there was little need to modify or append to them Code is easy to read 10July 16, 2002
11 Accomplishments (cont…) Schedule was well divided into tasks Everyone was able to work in parallel Shell of program was completed first Development information kept in a public place Swiki: Document repository Status updates Change control Bug list
July 16, Accomplishments (cont…) The client is happy with the outcome!
July 16, Assessment Original Schedule: Actual Schedule:
Assessment (cont…) Some tasks took longer than originally planned Interfaces of objects should have been more descriptive Interactions with the client were good Swiki was very useful Overall development process went smoothly 14July 16, 2002
15 What we learned Benefit of well defined requirements and a good, modular design Keeping an open dialog with client is very beneficial Design should be as specific as possible, especially with object interfaces
July 16, What we learned (cont…) Benefits of dynamic languages Clearly identified team roles are good
July 16, Demo