UW-Bothell Home

Faculty Page

Dean Gibson

 

CSSAP 442 - Advanced Programming Methodologies I (Winter 2000)

"Topics include complex data algorithms, data structures, and methodologies for PC/workstation-based windows applications and object-oriented programming."

The class meets 8:00-10:05pm, Mondays & Wednesdays, room 170.

To request academic accommodations due to a disability, please contact Disabled Student Services (DSS) in the Counseling Center, Room 145, (425) 352-5000, (425) 352-5303 (TDD). If you have a documented disability on file with the DSS office, please have your counselor contact me and we can discuss accommodations.

Textbooks:

  • "Just Java 2" (4th ed.), Peter van der Linden; Prentice-Hall, ISBN 0-13-010534-1 (required)

  • "Data Abstraction and Problem Solving with C++: Walls and Mirrors", Carrano, Helman, Veroff; Addison Wesley, ISBN 0-201-87402-4 (optional, used in CSS 341-343)

Grading:

  • 10% class participation
  • 15% homework
  • 25% midterm exam
  • 25% class project
  • 25% final exam

See the instructor's class policies.

Class Project:

Your class project may be any non-trivial GUI software project that demonstrates what you have learned in this class. It may be either an individual or group project. Each individual should plan to contribute about 40 hours to the project, and the complexity of your project should reflect that.

You must write a project proposal (machine printed) and submit it by January 19th. The proposal will count as 15% of your project grade. In your proposal, you must provide enough detail so that another person could design, implement, and test your software project, and produce functionally the same program as you will write. Specifically, your proposal must describe what steps you will take to verify that your software functions correctly, with both normal and abnormal conditions.

You must write a project design document (machine printed) and submit it by February 2nd. The design document will count as 15% of your project grade. In your design document, you must provide enough detail so that another person could implement an arbitrary portion of your software project.

You must implement your project in Java. The "Just Java 2" textbook comes with a CD-ROM that contains a Java compiler and run-time for Windows 95/98/NT and other platforms; the Sun Microsystem web site has a more recent (released) version of the Java Software Development Kit (SDK), as well as detailed documentation on the Java Application Program Interface (API). Java has "Naming Conventions" specified in section 6.8 of the Java Language Specification. In addition, Sun Microsystems has established a set of Java Code Conventions, which are widely used in Java development. You must implement your code using these conventions.

Your source program files MUST contain documentation that describes the overall functionality of each class, and the detailed functionality of each method. The quality (e.g., completeness) of the documentation will count as 15% of your project grade.

You must submit your source program files by March 1st. Your programs must compile and run correctly with the JDK for Windows; this counts as 45% of your project grade. If the program does not meet the specifications in your proposal and/or design document, you must explain why. Depending on circumstances (e.g., you came up with a better design), this may not count against you.

You must present in class a brief (5 min/person) description of your project (or your portion of it) and what you learned from it; each presentation will be followed by a brief class critique. The presentation will count as 10% of your project grade.


Schedule
Week Date Assignments Class Topics
1: Jan 3, Jan 5 Java: 1-7 Software quality
Programming standards
Structured programming
Introduction to Java
2: Jan 10, Jan 12 Java: 8-13 High speed: Classes, Objects,
Inheritance, Exceptions, Threads
3: Jan 19 Java: 15, 17-18
Class project
proposal due!
High speed: Java Utilities,
GUI basics, Events
4: Jan 24, Jan 26 Java: 19-21
Java online API
& Tutorial
High speed: JFC/Swing, File I/O
The Java API
5: Jan 31 HW #4 due! Debugging programs
Software testing
  Feb 2 Class project
design due!
Review
6: Feb 7 (study) Midterm exam!
  Java: 8-13 SeaFlow, a case study:
Classes, Objects
7: Feb 14, Feb 16 Java: 15, 17-21 Case study: Inheritance,
Exceptions, Threads
8: Feb 23 Java online API
& Tutorial
Case study: Java Utilities,
GUI basics, Events,
JFC/Swing, File I/O
9: Feb 28 (tbd) (tbd)
  Mar 1 Class project
due!
Case study:
A comparison to MFC
10: Mar 6 (review) Class project presentations
  Mar 8 (review) Class project presentations
and Review
11: Mar 13 (study) Final exam!

Topics and assignments are tentative and subject to change!


UW-Bothell Home

22011 26th Ave SE
Bothell, WA 98021

(425) 352-5000
(425) 352-5303 (TDD)

University of Washington, Bothell
Copyright ©1996, UWB. All rights reserved.

The University of Washington provides equal opportunity in education without regard to race, color, creed, religion, national origin, sex, sexual orientation, age, marital status, disability, or status as a disabled veteran or Vietnam era veteran in accordance with University of Washington policy and applicable federal and state statutes and regulations.

If you need any accommodation for a physical or cognitive disability, please contact the Disabled Student Services office (rosal@u.washington.edu) at your campus.

Comments to webmaster: uwbweb@u.washington.edu

Information about UWB: uwbothel@u.washington.edu

Last updated: September 24, 2000 by Dean Gibson
URL: http://courses.washington.edu/cssap442/dkgibson/2000Q1/index.html