A rigorous methodology based on Jackson Structured Design (JSD), this book demonstrates how it can be applied to a wide variety of data processing problems. With a clear emphasis on the invaluable distinction between the software life cycle, this handbook will suit programmers striving to become competent software designers.