next up previous
Next: About this document ...

CS 372 - Introduction to Software Development
Department of Computer Science, Clemson University
Brian Malloy, PhD
Syllabus
May 22, 2007



Course Description: CP SC 372 Introduction to Software Development 3(3,0) Techniques and issues in software design and development; tools, methodologies, and environments for effective design, development, and testing of software; organizing and managing the development of software projects. Preq: CP SC 212 and 215 with a C or better 1.

  1. Course policy, Software life cycle, Intro to Python
  2. More on Software Life Cycle, History of SE
  3. Software Requirements, Software Specification, Use Cases
  4. XML, XML processing, XSL Transforms
  5. UML Class diagrams: kinds of edges
  6. UML State diagrams
  7. UML Sequence diagrams
  8. UML: The Object Constraint Language, OCL
  9. Design Patterns: Singleton, Visitor, Observer, etc.
  10. GUI development using tkinter
  11. Using constraints in Python
  12. Software Testing: PyUnit
  13. Software Maintenance
  14. Game Development: PyGame
  15. Multimedia
  16. The Python prototyping language:
    1. Python: Lesson 1, Getting Started
    2. Python: Let's Do Numbers
    3. Python: Variables and Identifiers
    4. Python: Strings, Part I
    5. Python: Writing and Using Scripts
    6. Python: Program Construction
    7. Python: Strings, Part II
    8. Python: Lists, Part I
    9. Python: Lists, Part II
    10. Python: Tuples, Index and Slice
    11. Python: Nested Tuples
    12. Python: Empty and Single-Item Tuples
    13. Python: Unpacking Tuples
    14. Python: Indexing Nested Tuples
    15. Python: Slicing Nested Tuples
    16. Python: Indirection
    17. Python: Getting Started with Dictionaries
    18. Python: Valid Keys, Key Lists, Iteration
    19. Python: Using Tuples as Keys
    20. Python: Nesting, Sorting, Deleting, and Membership Testing Dictionary Elements




next up previous
Next: About this document ...
Brian Malloy 2007-05-22