Home

  About Us

  Products

  Process Models

  SE Resources

  Commentary

  Contact us

Breaking News!

A new blog ... visit OnCenter, Roger Pressman's running commentary on the world at large

A new edition ... the 6th edition of Software Engineering is available now

A first novel ... Roger Pressman's first novel is a technothriller -- The Aymara Bridge

A new training curriculum! RSP&A has partnered with QAI to develop a comprehensive Internet-based software engineering curriculum.

A redesigned Web site ... we've done a major redesign and added many new features

 
Software Engineering Resources


Component-Level Design
Data, architectural, and interface design must be translated into operational software. To accomplish this, the design must be represented at a level of abstraction that is close to code. Component-level design establishes the algorithmic detail required to manipulate data structures, effect communication between software components via their interfaces, and implement the processing algorithms allocated to each component. Three resource topics are considered:

Component-Level Design Concepts

Object Constraint Language

Structured Programming

Books

Component-Level Design Concepts

Component-Level Design Tutorial

A brief tutorial on component-level design by Ralph Johnson.

General Principles of Component Design

A coolection of design principles provided by Microsoft.

Papers on Component Design

Also links to checklists, templates and guides.

OO Design

A breif discussion of OOD with examples.

OO Design Principles - 1

How to determine whether an OO design is 'good.'

OO Design Principles - 2

A short paper on OO design principles with emphasis on Visual basic.

OO Design Principles - 3

"Two principles to help create robust, reusable object-oriented design apps"

Design of an OO Calculator

Discussion of design principles and useful examples in UML.

Object Constraint Language (OCL)

What is OCL?

Useful information provided by IBM including the ability to download the complete OCL specification (788K).

OCL Center

Information on the latest release of the standards, general introduction, tools, and other resources.

OCL Resources

A small list of OCL links.

OCL Tutorial

In-depth discussion of OCL along with many examples.

Using OCL for Meta-Modeling

An in-depth report out of McGill University.

Structured Programming

Structured Programming Tutorial

A simple tutorial on structured programming basics.

Structured Programming in Java

A brief paper discussed the use of structured programming constructs in Java.

Wikipedia Structured Programming

A brief discussion of structured programming.

The Genesis of Structured Programming (pdf)

You can download Dijkstra's handwritten recollection of the genesis of his 'Notes on Structured Programming.'

Flow Charting Tutorial

For those who have no prior experience with this procedural design form.

Decision Tables

A brief description of table structure and mechanics.

Books

Design principles, concepts, guidelines and techniques for object-oriented design classes and components are discussed in many books on object-oriented software engineering and OO analysis and design. Among the many sources of information are: Bennett and his colleagues (Object-Oriented Analysis and Design, second edition, McGraw-Hill, 2002), Larman (Applying UML and Patterns, Prentice-Hall, 2001), Lethridge and Laganiere (Object-Oriented Software Engineering: Practical Software Development using UML and Java, McGraw-Hill, 2001), and Nicola and her colleagues (Streamlined Object Modeling: Patterns, Rules and Implementation, Prentice-Hall, 2001), Schach (Object-Oriented and Classical Software Engineering, fifth edition, McGraw-Hill, 2001), Dennis and his collegues (Systems Analysis and Design: An Object-Oriented Approach with UML, Wiley, 2001), Graham (Object-Oriented Methods: Principles and Practice, Addison-Wesley, 2000), Richter (Designing Flexible Object-Oriented Systems with UML, Macmillan, 1999), Stevens and Pooley (Using UML: Software Engineering with Objects and Components, revised edition, Addison-Wesley, 1999), and Riel (Object-Oriented Design Heuristics, Addison-Wesley, 1996).

The design by contract concept is a useful design paradigm. Books by Mitchell and McKim (Design by Contract by Example, Addison-Wesley, 2001) and Jezequel and his colleagues (Design Patterns and Contracts, Addison-Wesley, 1999) cover this topic in some detail. Metsker (Design Patterns Java Workbook, Addison-Wesley, 2002) and Shalloway and Trott (Design Patterns Explained: A New Perspective on Object-Oriented Design, Addison-Wesley, 2001) consider the impact of patterns on the design of software components. Design iteration is essential for the creation of high quality designed. Fowler (Refactoring: Improving the Design of Existing Code, Addison-Wesley, 1999) provides useful guidance that can be applied as a design evolves.

The work of Linger, Mills, and Witt (Structured Programming: Theory and Practice, Addison-Wesley, 1979) remains a definitive treatment of the subject. The text contains a good PDL as well as detailed discussions of the ramifications of structured programming. Other books that focus on procedural design issues for traditional systems include those by Robertson (Simple Program Design, third edition, Course Technology, 2000), Farrell (A Guide to Programming Logic and Design, Course Technology, 1999), Bentley (Programming Pearls, second edition, Addison-Wesley, 1999), Kernighan and Pike (The Practice of Programming, Addison-Wesley, 1999) and Dahl (Structured Programming, Academic Press, 1997).

Relatively few recent books have been dedicated solely to component-level design. In general, programming language books address procedural design in some detail but always in the context of the language that is introduced by the book. Hundreds of titles are available.


Site search! We've added links to a search engine that will enable you to search our entire site for information you need. Enter the appropriate word or phrase below.

PicoSearch



Home About us Products Product Models SE Resources Commentary Contact us

Web site and all contents © R.S. Pressman & Associates, Inc. 2001 - 2006, All rights reserved.
Free website templates