[CMSC 345] | [Syllabus] | [Lecture Notes] | [Homework] | [Project] | [Notes, all]

CS345 Details of homework assignments and Quiz


Do your own homework!

You can discuss homework with other class members but DO NOT COPY!

All parties involved in copying get zero on that assignment.

Contents

  • Homework 1
  • Homework 2
  • Homework 3
  • Homework 4
  • Homework 5
  • Homework 6
  • Other Links
  • HW1 reading assignment

    "Those who do not study history are bound to repeat it."
    
    "What people learn from history, 
    is that people do not learn from history"
    
    Read en.wikipedia.org/wiki/History_of_programming_languages
    
    If you are interested in the history of your favorite
    programming language or some other programming language:
    Optional Reading:
    
    en.wikipedia.org/wiki/C_(programming_language)
    
    en.wikipedia.org/wiki/Fortran
    
    Some general, not so great, "History of Programming Languages"
    Many other "history" links.
    
    en.wiki/History_of_programming_languages
    
    

    HW2

    Another reading assignment.
    A few questions on mid term exam,
    just basic concepts.
    
    
    
    
    
    
    
    
    I know "Forage" as "reuse" and this became part of the
    formal development process at least 25 years ago.
    
    I know "tinker" as test any software you are about to reuse.
    
    I know "Weld" as integrate existing software into
    a your new application.
    
    

    HW3

    Based on Lecture 9, Spiral, Rational Unified, and Agile Models:
    
    Make four lists:
    1) List items that are in all three: Spiral, RUP, and Agile Models
    
    2) List items that appear only in the Spiral Model
    
    3) List items that appear only in the Rational Unified Model
    
    4) List items that only appear in the Agile Model
    
    use key words, keep each item to one short line
    
    
    

    HW4

    For the SDD your team needs to express your design in writing.
    Not literally just words, there are typically diagrams and
    figures.
    
    This homework is to just define the data structure for a
    node in a balanced binary tree. Each node has a display name,
    a value, optional internal use data, and links to two nodes
    below.
    
                           +--------+
                           | Root   |
                           | value1 |
                           +--------+
                            /      \
                           /        \
                          /          \
                  +--------+      +---------+
                  | NodeA  |      | Node7   |
                  | valuea |      | valuex  |
                  +--------+      +---------+
                   /     \ 
                  /       \
           +-------+  +--------+
           | Noder |  | Nodeq  |
           | value |  | value  |
           +-------+  +--------+
    
    Use whatever technique or techniques you chose to define the 
    data structure. You may want to specifically define when
    is in each node when it is created. You may want to
    specifically define what is in the Root node if it is
    different from other nodes.
    
    Then, in some language of your choice, write legal code
    that implements your design and the statement that
    creates the Root node. Not a complete program, just the
    data definition and one or more statements that are
    then needed to create the Root node.
    
    

    HW5

    There are many visual structures that may be used on a
    User Interface. For each structure listed below give
    one example of what a reasonably good use would be.
    
    1) Menu with drop down menu items
    
    2) check boxes
    
    3) radio buttons
    
    4) choice lists
    
    5) single item text entry
    
    6) Multiple line text entry
    
    
    

    HW6

    There are many types and levels of testing.
    For each Test listed below, give a short explanation of:
    
    a) what is being tested
    b) how the test might be created 
    c) how the test might be performed (manual, automatic, script, ...) 
    d) how the test might be evaluated (quality, completeness, stress, ...)
    
    1) Unit Test
    
    2) Integration Test
    
    3) System Test
    
    4) Acceptance Test
    
    

    Other Links

    Go to top

     Last updated 10/22/2013