Software Design Methods and Tools


Since many software developers are compulsive coders, they have created software over the years to help them do their job. There are tools which make design and its associated tasks easier. The course introduces some basic tools and techniques to help you with design. Tools aren’t always tangible, however. The last two lessons of this course discuss questions of Ethics in software development. The purpose here is, as with tools, to equip you to better carry our your responsibilities as a designer. Students will be required to have a prior knowledge of writing and delivering software and some programming knowledge in java.

What you will learn

General Design Notions

What is in a design and an introduction to hierarchical design representations.

Dynamic and Algebraic Designs

Hierarchical design which shows data flow, and rigorous, formally provable methods of design representation.

UML Tools

An introduction to IBM Rhapsody, a UML modeling tool.

Unit Testing

An introduction to the use of JUnit which performs unit testing for Java software.

What’s included