[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] 01.html Mon Sep 28 15:47:15 PDT 2009
Opening the PDF files on this page may require you to download Adobe Reader or an equivalent viewer (GhostScript).

Opening Microsoft files (winzip, word, excel, powerpoint) on this page may require you to download a special viewer. Or you can download and save the files and use your preferred office applications to view and edit them.

Contents


    Surviving CS375


      (Previous): None. You don't have to complete the official prerequisite CS372 to do well in this class.

      Work due

      Today all you have to do is arrive on time. You get 1 point for turning up on time. You get 1 point for working until dismissed.

      In the future you may have to hand in and/or present a document, and/or EMail me a question on the reading (or both).

      Project Presentations

      None today. Normally, on Tuesday, 20 minutes will be given to presenting project work started the previous Thursday.


      (CS372 projects):

        2003
        1. FIS -- Free Information System for Students [ FIS1.html ]

        2004
        1. CoyoteBookSwap
        2. CSUSB Campus Book Exchange
        3. Lightweight Job Ticketing System [ index.html ] -- Completed and operational
        4. Statistical Consolidation of SpreadSheet data on the web

        2005
        1. Backup4Dummies
        2. WebMall
        3. VEMail
        4. CSWPortal

        2006
        1. KickStart
        2. Web Based Book Exchange: [ ../cs372/ProjectCoyoteBookExchange.pdf ]
        3. Information Running Coyote [ ../cs372/ProjectRunningCoyote.pdf ]
        4. CSUSB Spam Filter Project
        5. Auto Scheduler [ ../cs372/ProjectAutoScheduler.pdf ]

        2007
        1. HighDesertFireData
        2. iFox
        3. InteractiveMap
        4. Ramrod
        5. Uni-Reg
        6. WorkStudyTracker
        7. -- operational

        2008
        1. Event Music Coordination System
        2. RegWiz
        3. ACLS [ project5.zip ]
        4. Mobile Tag
        5. CSUSB Message Board

        Input

        1. Catalog::= See http://www.csci.csusb.edu/dick/cs375/catelog.txt.

        2. Book::= See http://www.csci.csusb.edu/dick/cs375/book.txt.

          See [Syllabus], [Schedule], [Projects], and [Objectives] above.

          Bullet Points

          1. Web pages act as a guide to the reading.
            • * Stars indicate the importance of a topic in the book to this class.
            • ++ Indicates a topic that I have added to the book.
            • -- Indicates something that is in the book that you should ignore.
          2. Examples
            • -- Not chapters 22, 28, or 40.
            • *** Submit a relevant [Question] before the deadline to earn credit!
            • -- History not tested.
            • --- Nothing on persistence!
            • -- Not too much on packages and components.
            • --- Nothing much on deployment.
            • ++ Some C++ example code.

        Advertisement for the Rational Unified Process.

        Advertisement for the the Unified Modeling Language.

        UML on YouTube

        [ watch?v=j_0fKDSJr1U ] (too much on class diagrams....)

        Should we take a break?

        Questions and Answers

          None due today. In future classes you can get points for emailing me a question about the reading before the deadline on the day of the class. Use the form linked to [Question] above. The question should be about something in the assigned pages.

          Late work is only worth 1 point. A question on the wrong part of the text is only worth 1 point. A late and irrelevant question scores nothing. Extra questions make no difference.

          To earn full credit a question should be specific to the reading and it should have an answer that is not in the book! In other words it should helps you understand a topic, clarify a confusion, or fill in missing information. If you understand everything perfectly then you can ask a question that you think some one else might have.

          Your first question will be answered in class and will probably be placed on the web site afterwards. Extra questions may be answered.

        Exercises

          TBA?

        Quiz

        None today. On 9 days there will be a quiz on the topics in the class. We start with an extra mock quiz in the next class. See schedule.

        Assigned Work for next time


        (Project): Normally work will be assigned on Thursday and must be handed in (however incomplete) on the following Tuesday for 10 points max. Late work scores zero. Any work can score lots of points. This time people from CS372 will be asked to briefly present their projects to the class. People who are not from CS372 are invited to think about what projects they would like to do.
        (Assigned Reading): Syllabus and schedule plus pages vii..40 (Preface, Chapters 1,2, and 3) in the book. Email me a question on the reading before the deadline on the day of the next class.

        Hint: You should read the "history" sections of each chapter, but I won't be testing your knowledge of the history of the subject.
        (Next): class meeting 2. [ 02.html ]
        (Take Home Mock Quiz): To Be Announced in class. This is a mock quiz and the scores will be discarded.

      . . . . . . . . . ( end of section Surviving CS375) <<Contents | End>>

      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