Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

DrJava: An Open Source Java IDE Developed by Rice University Students, Study notes of Software Engineering

Drjava is a pedagogic java ide developed by students at rice university. It is known for its simplicity, interactivity, and high rate of turnover. The ide is open source and uses extreme programming practices. An overview of drjava's development, benefits, tools and management, educational value, complications, and lessons learned.

Typology: Study notes

Pre 2010

Uploaded on 03/18/2009

koofers-user-gov
koofers-user-gov 🇺🇸

10 documents

1 / 18

Toggle sidebar

Related documents


Partial preview of the text

Download DrJava: An Open Source Java IDE Developed by Rice University Students and more Study notes Software Engineering in PDF only on Docsity! DrJava Development Charles Reis CSE 403 Guest Lecture DrJava • Pedagogic Java IDE • Simple, Interactive • Used at dozens of schools around the world • Freely Available On the Inside • Java with generics (List<String>) • ~400 classes, 50,000 lines of code • Complex (unit tests are critical!) • Two JVMs, plus multithreaded GUI • RMI, JDI, Custom Classloaders • Backward compatibility Benefits of Open Source • Freely available • Tool and Management Support • Incorporate existing code • Educational value • Word of mouth, Credibility? Tools and Management • Sourceforge.net • Free hosting for 80,000 projects • Professional management tools • Track features, bugs, tasks, support • Ant, JUnit, CVS Complications • Choice of License is tricky • GPL: true "free software" • All incorporated/derivative works GPL'd • BSD: more flexible, fewer guarantees • Allows us to use JUnit Extreme Programming • Simple practices that work well together • Pair Programming • Unit Testing • Continuous Refactoring • Incremental Development • On-site Customer Typical Activity • Prioritize bug reports • Write test to exhibit bug • Pair program to fix bug • "Commit" (update, compile, test, commit) • Release Lessons Learned • Unit tests are essential to stability • Work incrementally • XP is effective for high turnover • Much to be gained from open source, even without many external developers Difficulties • Hard to test (and design) GUIs • Hard to enforce good test coverage • Concurrency can be a mess • Java isn't really platform independent... • Tough to keep documentation up to date • Maintenance/support is a full time job Closing Thoughts • Immensely satisfying to work on a widely used product • Open source is a great fit for academia (perhaps elsewhere as well) • XP can work very well for small teams
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved