Computer Science 280:

Principles of Software Development

Gregory M. Kapfhammer

flickr photo shared by Sebastiaan ter Burg under a Creative Commons ( BY ) license

Color Scheme

Key Concept

Corresponding Diagram

In-Class Discussion

In-Class Activity

Details in SETP or MMM

Programming Standards

Find and Evaluate a Programming Standard

Programming Guidelines

Clear control structures

Carefully pick algorithms

Select the right data structures

Keep the program simple!

Quality Code

Localize input and output

Include pseudo code descriptions

Revise and rewrite — no patching!

Promote and perform reuse

Code Comments

Header comment blocks

Strategically-placed comments

Meaningful variable names

Exceptional formatting

Documented data

Find and Evaluate a Code Comment

External Documents

Describe the problem

Describe the algorithm

Describe the data

Documentation read by those will will not read the code!

Often connect to the specification and the design

Programming as Problem Solving

Extreme Programming

Pair Programming

Questions about implementing software?

See Chapter 7 in SETP more more details!