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.
- Course policy, Software life cycle, Intro to Python
- More on Software Life Cycle, History of SE
- Software Requirements, Software Specification, Use Cases
- XML, XML processing, XSL Transforms
- UML Class diagrams: kinds of edges
- UML State diagrams
- UML Sequence diagrams
- UML: The Object Constraint Language, OCL
- Design Patterns: Singleton, Visitor, Observer, etc.
- GUI development using tkinter
- Using constraints in Python
- Software Testing: PyUnit
- Software Maintenance
- Game Development: PyGame
- Multimedia
- The Python prototyping language:
- Python: Lesson 1, Getting Started
- Python: Let's Do Numbers
- Python: Variables and Identifiers
- Python: Strings, Part I
- Python: Writing and Using Scripts
- Python: Program Construction
- Python: Strings, Part II
- Python: Lists, Part I
- Python: Lists, Part II
- Python: Tuples, Index and Slice
- Python: Nested Tuples
- Python: Empty and Single-Item Tuples
- Python: Unpacking Tuples
- Python: Indexing Nested Tuples
- Python: Slicing Nested Tuples
- Python: Indirection
- Python: Getting Started with Dictionaries
- Python: Valid Keys, Key Lists, Iteration
- Python: Using Tuples as Keys
- Python: Nesting, Sorting, Deleting, and Membership Testing Dictionary Elements
Next: About this document ...
Brian Malloy
2007-05-22