This is the home page for CS680 - located on the net at www.cs.umb.edu/~eb/680 and on our unix system in directory /home/eb/680, henceforth referred to as $CS680.
This course addresses principles, techniques and tools for the object-oriented modeling, design, implementation, and testing of contemporary software applications. Topics include UML, use cases, design patterns, graphical user interface programming, application frameworks, and refactoring. Significant programming projects will use Java and at least one other object-oriented language.This is not a course in object-oriented programming. You are all experienced programmers, and can learn any new language or language feature on your own. But you have not yet had significant experience at UMass designing applications. That will be our focus. But there is significant programming in this course - you will implement your designs, some in Java and perhaps some in C++ or C#. Arrange your life to allow yourself the time it will take to write the programs. You cannot succeed in this course (or in the software world) just by reading books and doing well on exams. You are learning a craft.
You must earning a B or better in this course in order to take take the year long cs681-683 software engineering sequence next year.
One sure way to derail your career at UMass is to cheat. Learning from others is necessary and appropriate. Stealing their work instead of doing your own is not. I am repeatedly surprised when students do not understand this, pay no attention to this warning, and thus fail the course. For more on this serious topic, see http://www.cs.umb.edu/~eb/honesty.html