Semester Project

Tom Kelliher, CS 245

Sept. 8, 2004

Administrivia

Announcements

Assignment

Read Ch. 2.

From Last Time

Why software engineering?

Outline

  1. Teams.

  2. Deliverable due dates.

  3. Operational aspects.

  4. Comments.

  5. Initial team meeting.

Coming Up

Overview of object-oriented paradigm.

Teams

  1. Team Hemlock: Ben, Jim, Evan.

  2. Team Oak: Christoph, Christi, Deborah.

Determine your own group name (eight characters or fewer) and let me know.

Deliverable Due Dates

Chapter 6 contains a complete example.

  1. 9/17: Refined requirements specification (3.4--3.9).

  2. 9/22: Scenarios (2.2).

  3. 9/17: Primary class list (3.10).

  4. 9/29: Class diagrams (3.10).

  5. 9/29: Use case diagrams (3.10).

  6. 10/1: Structured walk-through (in class) (3.8).

  7. 10/6: Object diagrams (5.3).

  8. 10/6: Refined class diagrams.

  9. 10/13: User interface mock-ups.

  10. 10/6: State machines (4.7).

  11. 10/13: Collaboration diagrams (5.3).

  12. 10/20: Sequence diagrams (5.3).

  13. 10/20: Object diagrams (5.3).

  14. 10/27: Refined class diagrams (5.2, 5.3).

  15. 10/27: Class skeletons (5.2).

  16. 10/28: Informal walk-through (in class)

  17. 10/27: Implementation plan (7.4, 7.5).

  18. 11/22: Source code.

  19. 11/3: Test plan (8.4, 8.7).

  20. 11/26: Test analysis report (8.5).

  21. 12/8: System Integration (7.4).

  22. 12/10: Code Freeze (no more work permitted).

  23. Final: System delivery and demo.

Form of Deliverables

Electronic documents left on a Samba share.

Operational Aspects

  1. Don't let technical or personnel problems fester --- keep me in the loop.

  2. Be conscientious about due dates --- there are no back-ups for anyone on a team.

  3. If you aren't willing to work as hard as others, be up front about it. The team will have to adjust. I think it would be fair to adjust grades as a result. What do you think?

  4. Meet regularly with your team --- good communication is a key.

  5. Always create an agenda for every team meeting --- be as effective as possible.

  6. Rotate responsibility for chairing team meetings --- give everyone a chance to manage; don't let one person dominate.

  7. Systems for use:
    1. Phoenix for server development (Java). Individual, group accounts.

    2. Samba share on phoenix for client development (Java). Use BlueJ, Eclipse, etc. on any Windows workstation. One share per group.

      This share will also be used to store deliverables.

  8. New technologies ripe for developing small-scale prototyping: Java applications (server), threads (client and server), networking (client and server).

Comments

Initial Team Meeting

Things to address now or at next meeting:

  1. Establish common meeting time.

  2. Assign meeting chair and rotation mechanism. Chair responsible for agenda.

  3. Assign meeting secretary and rotation mechanism. Secretary responsible for recording and distributing minutes.

  4. Discuss tool preferences and areas of expertise.

  5. Discuss how to share work products.



Thomas P. Kelliher
Fri Sep 3 16:17:08 EDT 2004
Tom Kelliher