[Skip Navigation] [ CSUSB ] / [CNS] / [CSE] / [R J Botting] / [CS375] [Search ]
[About] [Contact] [Grades] [Objectives] [Patterns] [Projects] [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] index.html Thu Mar 21 13:38:53 PDT 2013
Opening the PDF files on this page may require you to download Adobe Reader or an equivalent viewer (GhostScript).


    Requirements Analysis and Design

      2013-03-21 Thu Mar 21 13:38 Finals graded -- scores posted -- tell me errors

      2013-03-18 Mon Mar 18 13:08 Grades posted

      2013-03-14 Thu Mar 14 18:04 Grades posted

      [ grading/ ]

      2013-03-14 Thu Mar 14 15:21 Added pictures of Popular and useful GoF patterns

      [ patterns.html#Composite ] , and [ patterns.html#Observer ] (corrected sequence diagram).

      2013-03-13 Wed Mar 13 15:58 Latest grades -- W8 and Q9

      [ grading/ ]

      2013-03-12 Tue Mar 12 15:30 Programming Concepts to Master

      [ http://programmers.blogoverflow.com/2013/03/what-programming-concepts-i-should-master-to-have-a-deep-understanding-of-my-craft/ ] (Blog found on Stack Exchange).

      2013-03-11 Mon Mar 11 10:11 Mock final published

      [ mock.pdf ]

      Tuesday [ 19.html ] (Review method).

      Thursday [ 20.html ] (Review Course).

      2013-03-08 Fri Mar 8 13:11 Grades Posted -- and news of job market

      [ 030513-tech-degrees-267324.html ]

      2013-02-28 Thu Feb 28 17:26 Grading done and posting

      [ grading/ ]

      Next Tuesday [ w7.html ] and GoF patterns [ 17.html ]

      2013-02-22 Fri Feb 22 11:57 Grading done and posted for the week

      [ grading/ ]

      [ w6.html#Deliverables ] [ 15.html ]

      [ 16.html ]

      2013-02-08 Fri Feb 8 13:52 Grades posted and next week

      [ grading/ ]

      2013-02-15 Fri Feb 15 10:08 Grades posted and next week

      [ grading/ ]

      [ w5.html#Deliverables ] [ 13.html ]

      [ 14.html ]

      2013-02-08 Fri Feb 8 13:52 Grades posted and next week

      [ grading/ ]

      Tuesday: present your SSD and Packages. Design Class Diagrams (DCDs). Quiz on Interactions and DCDs

      Thursday: GRASP -- Designing objects to meet requirements. Project: Design Iteration 1.

      2013-02-04 Mon Feb 4 11:20 Grades posted -- including bonusses

      [ grading/ ]

      Next class [ 09.html ] will introduce a way to organize your software, and your projects so that different aspects (example the user interface and the data base management system) are kept separate and as independent as possible. This makes it easier to change software.

      You should present your project's first domain/business model. Give me a copy to comment on and grade.

      There will be a quiz to test to see if you can draw a plausible and corrct SSD for a given scenario.

      2013-01-25 Fri Jan 25 11:03 Grades posted early and Why design before you code

      [ grading/ ]

      Also see this article in Wired (Wired!) [ http://www.wired.com/opinion/2013/01/code-bugs-programming-why-we-need-specs/ ] about why it pays to record our thinking before we write the code... Experiences like this guy's (he is a good programmer by the way) make me believe in the recording of our thinking as we work out what is required and how we meet the requirements...

      2013-01-23 Wed Jan 23 14:27 Why study agile methods

      Check out [ http://www.eweek.com/developer/agile-developers-needed-demand-outpaces-supply-study/ ] (regular site) or [ http://mobile.eweek.com/developer/agile-developers-needed-demand-outpaces-supply-study/ ] (mobile site).

      2013-01-18 Fri Jan 18 11:48 Grades posted

      Just published in [ grading/ ] the latest grades... Questions and corrections to me by EMail.

      Have a great long weekend.

      See you Tuesday with the first iteration of your project [ w1.html ] , and some input on requirements [ 05.html ] and a quiz...

      2013-01-14 Mon Jan 14 10:32 First Grades Posted

      If you've given me the orange sheet back you can see your grades at [ grading/ ] , please check for errors.

      2012-12-10 Mon Dec 10 14:39 Draft syllabusses and schedules ready online

      Please check [ syllabus.html ] [ ../syllabus.html ] [ schedule.html ] for errors. Contact me if you se any before I get 30 copies made...

      2012-11-29 Thu Nov 29 15:24 Starting to prep for Winter 2013

      The book, schedule, and syllabus have been updated.... but if you or I spot an error they can change.

      2012-12-10 Mon Dec 10 14:19 Removing old stuff

      This is called redaction... and I do it before the start of each class.

      I record all future changes in the online materials and sylabusses and schedules in this blog.

      2011-03-10 Thu Mar 10 10:11 Uploaded template for final

      [ mock.html ]

      Also see 2008's [ mock.pdf ] for questions might have been asked then in the different categories.

      2011-03-03 Thu Mar 3 10:15 Iterative Engineering Illustrated

      You'll need flash for this [ flash.htm ] and it shows a complex piece of hardware growing as it is in use.

      Two questions: How come all the pieces fit together? Did the engineers learn and improve their designs as each module was deployed?

      2010-03-30 Tue Mar 30 10:31 Winter 2010 Added last bonus points and posted to CMS


      (Close Table)

      2010-03-15 Mon Mar 15 12:20 Information on the Final

      I've posted a mock final with blank questions [ mock2010.htm ] , notice that you will nedd to bring at least 10 blank sheets of paper to write the answers on.

      2009-02-28 Sat Feb 28 16:02 Highly relevant Blog entry on Technical debt

      Each time you take the quick and dirty way out of a technical problem you accumulate technical debt that ultimately will need to be paid for.

      [ 001230.html ]

      2009-02-05 Thu Feb 5 07:02 Resource discovered -- YouTube

      I've just uncovered a rich vain of videos.... by looking for "unified Process" on YouTube.

      2009-01-28 Wed Jan 28 14:01 Resource when starting UML

      This Google Group [ UMLforum?hl=en ] is starting to liven up with interesting questions and useful answers. Try it out. in my office earlier....

      2008-12-23 Tue Dec 23 12:12 Updating from 2008 to 2009

      I'm planning a big change removing deployment and advanced packaging from the previous years schedule. Instead we will review the OO designs and DCDs

      2008-03-20 Thu Mar 20 19:34 Grades for Finals etc

      For your information here is the distribution

      (Close Table)

      2008-02-15 Fri Feb 15 14:02 Philosophy of Iterative Program Development

      Here is a description of the philosophy behind iterative software Development as expressed by Piet Hein, and quoted by Dr. Yair Censor on Wednsday:
      • The road to wisdom?
      • Well it's plain & simple to express:
      • Err and err, and err again
      • but less, and less, and less.
      Also quoted by Donald Knuth in his notes on "Mathematical Writing".

      Thanx to Dan Piedlow for reminding me of this...

      2007-12-10 Mon Dec 10 10:12 Upgrading site to Winter 2008

      The big change for the coming quarter is removing dynamic modeling (activity diagrams and State Charts) from the course -- and spending more time on the GRASP and GoF patterns.

      Here are the grade distributions from precious classes:

      (Close Table)

    . . . . . . . . . ( end of section Requirements Analysis and Design) <<Contents | End>>

    Standard Definitions

  1. Artifact::="Anything that is created in the course of a project".
  2. artifact::=see above.

  3. DCD::diagram="Design Class Diagram", shows the classes that will be implemented in code. [ 02DiceGameClasses.gif ] (example).
  4. Deliverables::="A packet of artifacts that must be prepared by a deadline for review or distribution".

  5. Glossary::= See http://cse.csusb.edu/dick/cs375/uml.glossary.html.
  6. GoF::="Gang of Four", [ patterns.html#GoF ]
  7. 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 set of objects and/or classes to carry it out. See [ patterns.html#GRASP -- General Responsibility Assignment Software Patterns ]
  8. Grades::= See http://cse.csusb.edu/dick/cs375/grading/.

  9. 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 has no value now, see YAGNI.

  10. OO::shorthand="Object-Oriented".
  11. OOAD::="Object-Oriented Analysis and Design", See chapter 1 in text.

  12. patterns::="Documented families of problems and matching solutions", see Patterns.
  13. Patterns::= See http://cse.csusb.edu/dick/cs375/patterns.html.

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

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

  17. SSD::="System Sequence Diagrams", see chapter 10 and [ 02DiceGameSSD.gif ] (example).

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

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

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

  21. 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 also means "It won't be on the final or in quizzes".

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

( End of document ) <<Contents | Top