[Skip Navigation] [ CSUSB ] / [CNS] / [Comp Sci & Engineering] / [R J Botting] / [CS375] [Search ]
[About] [Contact] [Grades] [Objectives] [Patterns] [Projects] [Question] [Schedule] [Syllabus]
Session: [01] [02] [03] [04] [05] [06] [07] [08] [09] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]
[Text Version] w9.html Mon Sep 28 15:48:40 PDT 2009

Contents


    Assigned Work 9: The Fourth Iteration


    Table
    Version#DateDescriptionAuthor
    02005-03-15Copied from w8 and editedRJB
    12005-03-15RevizedRJB
    22007-03-09Revized to remove architectureRJB
    32008-12-23Revized to remove deploymentRJB

    (Close Table)

    Given: Model 3


    1. Vision + Business case
    2. Use cases: some fully dressed ones... Some casual. Some brief.
    3. Supplementary specifications: desirable qualities.
    4. Use case model
    5. Domain model class diagram.
    6. Glossary
    7. Business Rules
    8. System Sequence Diagrams for interesting scenarios.
    9. Interactions: sequence or communication diagrams for some interesting messages in your SSD.
    10. Design classes that support all your interactions. With some comments explaining why (GRASP) you choose that assignment of messages to classes.

    Plus reviewers comments.

    Process

    No presentation -- sorry

    Paper Deliverable Due Before Start Time of Final

    Model 4:
    1. Vision + Business case
    2. Use cases: more fully dressed ones... more scenarios
    3. Use case model
    4. Supplementary specifications: desirable qualities.
    5. Domain model class diagram
    6. + that has at least one example of a generalization.
    7. Glossary
    8. Business Rules
    9. System Sequence Diagrams for nearly all interesting scenarios.
    10. Interactions: sequence or communication diagrams for all interesting messages in your SSD. With some comments explaining why (GRASP and GoF) you choose that assignment of messages to classes.
    11. Design classes (DCD) that support all your interactions. These should include some generalizations/interfaces/polymorphism.

    Grading

    Everything should fit together.

    Includes and uses some generalizations.

    Standard Definitions

  1. CS202::= See http://cse.csusb.edu/dick/cs202/.
  2. CS372::= See http://cse.csusb.edu/dick/cs372/.

  3. DCD::diagram="Design Class Diagram", shows the classes that will be implemented in code.
  4. DRY::XP="Don't Repeat Yourself".

  5. ESSUP::Process= See http://www.ivarjacobson.com/essup.cfm, Ivar Jacobsen simplified "Essential" UP.

  6. Glossary::= See http://cse.csusb.edu/dick/cs375/uml.glossary.html.
  7. GoF::="Gang of Four", [ patterns.html#GoF ]
  8. GRASP::patterns="General Responsibility Assignment Software Patterns", a set of guidelines for designing objects and classes. They take a single event that the system must handle and determine a good class to carry it out. See [ patterns.html#GRASP -- General Responsibility Assignment Software Patterns ]
  9. Grades::= See http://cse.csusb.edu/dick/cs375/grading/.

  10. KISS::Folk_law="Keep It Simple, Stupid", in agile processes this means never drawing a diagram or preparing a document that doesn't provide value to the clients and stakeholders. In all processes it means never designing or coding what is not needed, see YAGNI.

  11. OO::shorthand="Object-Oriented".

  12. OOAD::="Object-Oriented Analysis and Design", See chapter 1 in text.
  13. patterns::="Documented families of problems and matching solutions", see Patterns.
  14. Patterns::= See http://cse.csusb.edu/dick/cs375/patterns.html.

  15. Process::="How to develop software".

  16. RJB::=The author of this document, RJB="Richard J Botting, Comp Sci Dept, CSUSB".
  17. RUP::Process="Rational UP", a proprietary version of UP.

  18. SSD::="System Sequence Diagrams", see chapter 10.

  19. TBA::="To Be Announced".

  20. UML::="Unified Modeling Language". [ Unified_Modeling_Language ]

  21. UP::="Unified Process", an iterative, risk-driven, and evolutionary way to develop OO software.

  22. YAGNI::XP="You Ain't Gonna Need It", an XP slogan that stops you planning and coding for things that are not yet needed. As a rule the future is not predictable enough to program a feature until the stakeholders actually need it now. In this class it means "It won't be on the final or in quizzes".

  23. XP::="Extreme Programming", the ultimate iterative code-centric, user-involved process.

End