About Us


  Process Models

  SE Resources


  Contact us

Breaking News!

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

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

A new book ... Roger Pressman and David Lowe on Web Engineering

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

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

A redesigned site! ... we've done a major redesign and added many new features for 2009 - 2010

Software Engineering Resources

Software Engineering Practice
Practice is a broad array of concepts, principles, methods, and tools that you must consider as software is planned and developed. It represents the details—the technical considerations and how to’s—that are below the surface of the software process—the things that you’ll need to actually build high-quality computer software Two topics categories are considered:

Software Engineering Practice

Concepts, Principles and Methods



Software Engineering Practice

Software engineering overview
A general overview of the subject at Wikipedia.

Software Engineering Practice - 1
Brad Appleton's comprehensive collection of software engineering links. Addressed virtually every aspect of the practice. Highly recommended.

Software Engineering Practice - 2

Software Engineering Practice - 3
A categorized and very comprehensive hotlist developed by Dick Botting at California State University, San Bernadino. Highly recommended.

Software engineering concepts links
Use SE links presented for use in an MIT course.

A Survey of Practice
Pointers to process and practice topics that range from agile methods to design methods and paradigms.

Top 30 Software Engineering Practices
A list of important practices.

Best Software Engineering Practices
A list of useful papers on SE practice.

Software's Ten Essentials
One a Steve McConnell's excellent "best practices" columns in IEEE Software.

Software Engineering - Best Practices
A blog dedicated to new trends in Software Engineering and best practices.

pdf: Software Engineering Best Practices
A useful powerpoint presentation.

Best Practice Software Engineering
This site contain pointers to a wide variety of SE best practices including worthwhile examples.

Nick's 20 Rules of Software Engineering
Out of the mouth of babes: A student's view.

Good News and Bad News About Software Engineering Practice
From this commentary: "In fact, despite incrementally embracing some good ideas, commercial software technologies overall have regressed in the sense that they have become so complicated that the ill effects of their complexity easily outweigh the isolated benefits offered by these incremental improvements. Significant additional progress might have to wait for existing approaches to collapse under their own weight."

Software Engineering Theory and Practice Gap
A contrarian view: "In a never ending parade of Software Engineering theory and methodologies, one thing remains for sure - they seem to work for YOUR project only marginally and you always seem to tinker around and create your own if you want to be successful."

Software Engineering Institute (SEI)
The center of the software engineering world —papers, commentary, resources and the CMM/CMMI. Highly recommended.

The ACM special interest group on software engineering. News, publications and conference announcements.

Science and Engineering Encyclopedia
A useful source for quick definitions of many computing topics.

Concepts, principles and methods

• Concepts

Top Ten Software Engineering Concepts.
A downloadable presentation by Ed Yourdon, one of the most widely-known commentators on the subject.

Software Engineering - Reason and a Concept!
A brief commentary.

Software Engineering concepts
A survey of a few important concepts.

Ten Essentials for Software Engineering
Steve McConnell defines 10 essential practices. Recommended.

Software Engineering Concepts-Class Notes
Class notes prepared by Professor Nancy Leveson at MIT.

Software Engineering - Concepts and Design Principles
A downloadable white paper.

The Real World (or at least one interpretation of it)
A very readable and enjoyable excerpt from Ellen Ullman's book, Close to the Machine: Technophilia and its Discontents.

• Principles and Methods

Principles of Software Engineering
A worthwhile essay on a number of important SE principles.

Software Engineering Principles
An editorial comment by Steve McConnell in IEEE Software. Recommended.

Seven Principles
David Hooker's 7 principles of good software development.

SPMN Lessons Learned
The SPMN has developed a collection of concise lessons learned about virtually every facet of software engineering practice. Highly recommended.

Software Engineering - Articles and Commentary
29 articles on a variety of software engineering topics.

Software Engineering Methods - 1
A brief taxonomy of software engineering methods.

Software Engineering Methods - 2

Literate Programming
Commentary, articles, examples, downloads of good software engineering practice.

SEI Software Engineering Glossary
If you need to understand terminology, this is the place to look.

A software engineering cartoon
Building a child's rubber tire swing.


Note: Specific patterns for analysis, design, testing, and other areas of software engineering practice may be found under the appropriate topic listing within RSP&A software engineering resources.

Also see our page, Patterns-Based Design.

Software Patterns
Guest editorial for the CACM, Special Issue on Patterns and Pattern Languages

Patterns and Software: Essential Concepts and Terminology
An extensive list of patterns concepts and resources. Recommended.

Christopher Alexander: The Timeless Way of Building
Alexander's seminal paper on patterns. Recommended.

History Of Patterns
A history with many important resource links.

The Software Patterns Criteria
Proposed definitions for evaluating software pattern quality

Patterns Concepts and Terminology
Brad Appleton has written one of the best discussions of patterns available on the Web. Very thorough and readble. Highly recommended.

Patterns Overview
A brief discussion of patterns as a problem solving discipline.

Software Patterns
A somewhat dated but still important CACM editorial that discusses the values that motivate patterns users.

Pattern-Based Software Engineering
An overview presented as a slide presentation.

Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
Microsoft's view on the subject.

pdf: Pattern Oriented Software Development: Moving Seamlessly from Requirements to Architecture

This paper discusses "an approach not only leads to highly flexible and reusable design solutions, but also provides traceability of requirements in design solutions making maintenance less tedious."


Customer communication is a critically important activity in software engineering, yet few practitioner’s spend any time reading about it. . The following books provide useful insight:

To Satisfy and Delight Your Customer
Managing Expectations
Customer Centered Products: Creating Successful Products Through Smart Requirements Management
Effective Requirements Practices
Requirements Engineering: Processes and Techniques

Communication and planning concepts and principles are considered in many project management books. Useful project management offerings include:

Essentials of Software Project Management
Effective Project Management: Traditional, Adaptive, Extreme
Lean Project Management: Eight Principles For Success
Software Project Management
Applied Software Project Management
Software Project Management
The Software Project Manager’s Handbook
Software Project Survival Guide
Principles of Software Engineering Management

Virtually every book on software engineering contains a useful discussion on concepts and principles for analysis, design and testing. In addition to Software Engineering: A Practitioner's Approach, a number of other offering are notable:

Swebok: Guide to the Software Engineering Body of Knowledge
An Integrated Approach to Software Engineering
Software Engineering: Theory and Practice (2nd Edition)
Object-Oriented and Classical Software Engineering
Software Engineering
eighth edition

Modeling concepts and principles are considered in many books dedicated to requirements analysis and/or software design. Among them are:

The Art of Software Modeling
Use Case Driven Object Modeling with UML
Business Modeling With UML: Business Patterns at Work

Effective Requirements Practices
emphasizes a “joint team” of customers and developers who develop requirements collaboratively.
Software Requirements presents many key requirement engineering and requirements management practices.
Requirements Engineering: Processes and Techniques discusses “elicitation” concepts and techniques and other requirement engineering principles.

The Design of Everyday Things
is must reading for every software engineer who intends to do design work.
Bringing Design to Software is an excellent collection of essays that address practical issues for software design.
Software for Use presents the concepts associated with “user centered design.”
Tog on Software Design presents a worthwhile philosophical discussion of the nature of design and the impact of decisions on quality and a team’s ability to produce software that provides great value to its customer.
Model-Driven Software Development: Technology, Engineering, Management

Hundreds of books address one or more elements of the construction activity. Among the best are:

The Elements of Programming Style is a classic text on programming style
Code Complete presents pragmatic guidelines for practical software construction
Programming Pearls suggests a wide variety of programming pearls
The Art of Computer Programming is a classic three volume series on the art of programming
The Pragmatic Programmer suggests pragmatic programming guidelines.

The testing literature has blossomed over the past decide. Among offerings that present important testing concepts and principles and much pragmatic guidance are:

The Art of Software Testing (a classic)
How to Break Software
Lessons Learned in Software Testing
The Craft of Software Testing

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.


Home About us Products Product Models SE Resources Commentary Contact us

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