Search This Blog

Friday, September 30, 2011



By Professor : Glenn David Blank

Prerequisites: Familiarity with a high-level programming language and data structures
    Craig Larman, Applying UML and Patterns, 3rd Edition, Prentice-Hall, 2007. Required. The following online books are recommended:
    Bruce Eckel's Thinking in Java,4th edition, with JDK 2 code, is available for free, electronically.
    Bruce Eckel's Thinking in C++, 2nd edition, a recommended textbook, is available for free, electronically.
Goals and requirements:
    1) To learn object-oriented (OO) analysis and design using UML and other techniques.
         Students will practice OO A/D techniques with individually homework exercises:   20%
    2) To learn how to OO languages support abstraction and polymorphism.
         Students will practice class implementation with dynamic binding in a Java, C++ or C# program: 10%
    3) To learn an agile software process, with multiple iterations, design patterns, test-driven development & pair programming.
       Student teams will identify real world customers for project requiring OO analysis, design and programming: 60%
       Team Project Roles, Deliverables and Grading Criteria: please review!
       Team Project Role Assessments (HTML file) (or as Word file, with each role on a separate page).
        Each student should evaluate him/herself and each other person with whom he interacts in each role,
        and email these assessments to me at the mid-semester project handoff and with the final project submission.
    4) To improve communications skills in the contect of software development (crucial!)
        Students will present project ideas, analyses, designs, prototypes, etc., through the semester:
    5) To explore specialized topics in OO software, such as Eclipse vs. Netbeans vs. Visual Studio, Servlets, JDBC,
        components and Javabeans, distributed objects and CORBA, J2EE, .NET, SOAP, JavaFX, etc.

Lecture notes and assignments:

No comments:

Post a Comment