Design Patterns in Communications Software

Hardcover (Print)
Buy New
Buy New from
Used and New from Other Sellers
Used and New from Other Sellers
from $6.49
Usually ships in 1-2 business days
(Save 95%)
Other sellers (Hardcover)
  • All (12) from $6.49   
  • New (7) from $0.00   
  • Used (5) from $0.00   


This definitive compendium of design patterns in communication software, gathered together by Linda Rising, includes contributions by James O. Coplien, Douglas C. Schmidt, Robert Hanmer, Greg Utas, Just van den Broecke, Don Olson, Carlos O'Ryan, Christopher D. Gill, and other experts from the patterns field. Engineers and other professionals working in the field of communications software development will find this unique reference extremely useful.
Read More Show Less

Product Details

  • ISBN-13: 9780521790406
  • Publisher: Cambridge University Press
  • Publication date: 7/28/2001
  • Series: SIGS Reference Library Series, #19
  • Pages: 548
  • Product dimensions: 5.43 (w) x 8.50 (h) x 1.42 (d)

Meet the Author

Dr. Linda Rising is a renowned leader in the patterns community with 17 years of experience in object technologies, including telecommunications, avionics, strategic weapons systems, and university teaching. She is also the editor of The Patterns Handbook (1998, Cambridge University Press) and The Patterns Almanac 2000 (Addison-Wesley).
Read More Show Less

Read an Excerpt

1: Design Patterns in Telecommunications System Architecture


The telephone network could be called the world's first distributed computing network. People in telecommunications treat as second nature many of the issues just surfacing in other problem domains. This article describes some of the techniques used in the telecommunications industry to deal with highly distributed high-reliability systems. A number of recurring patterns are identified and used to describe the design of the telecommunications network and its components.
Telephony has even more acronyms than computing, because we've had 50 more years to come up with them.
Telephone pioneer to young turk, 1981

Since Alexander Graham Bell made the first phone call, the telecommunications industry has been constantly striving to produce a more reliable and feature-rich telecommunications network. As evi- dence of their success, telephone service is something we all take pretty much for granted. Even when disaster strikes, such as the big San Francisco earthquake of 1989, the phone system continues to work when all other utilities are knocked out.

Being a well-established industry, the telecommunications industry has a rich set of patterns that are used to solve commonly occurring problems. It is through the use of these patterns that the highly stringent requirements of the network are met. Many of these patterns are visible to the operators of the telecom network, while others are only visible to those building the equipment from which the telecom network is assembled. This chapter focuses on the use of design patterns, as exemplified in the book Design Patterns1, in the architecture and construction of the telephone network and its elements.

The Telephony Background

Telephone networks are complex distributed systems with a long and colorful heritage. The domain has a number of inherent challenges. These include the physical distribution of the network and the need for reliability and high capacity. To meet the reliability and capacity challenges, the designers of the telephone network and its components have introduced even more distributed processing. The resulting system is distributed in many dimensions, and this distribution must be handled to ensure that reliability is increased rather than decreased.


Telephone switching systems do not have a "main" program: there are many different activities going on inside the system at any time. As a result, these systems have always had to be decomposed into smaller components. The protocols used in communication between such components usually contain an identifier of the object being affected, typically the call or the facility the call is using. This, and specification techniques such as Systems Description Language (SDL), have naturally led to switching systems being implemented using object-based techniques long before object orientation was fashionable.

Inherent Distribution

At the simplest end of the scale, a typical basic telephone call requires coordination of resources and actions across many telephone switching systems (aka switches) and other network elements. The coordination is carried out through the use of protocols between the switches. In the early days, this signaling was done using electrical pulses that told electromechanical "steppers," a hardware implementation of a 10-ary tree, which outgoing circuit to select.

As the network evolved, steppers were replaced by electromechanical logic boards, and ultimately by stored-program-controlled switching mechanisms. As the capabilities of the switches improved, it was possible to upgrade the signaling, first with the addition of multifrequency tones and later with digital messaging. Originally, only digits representing the called party were signaled. Using tones instead of pulses decreased the time required to communicate the information about the desired call, thus allowing more information to be sent, such as call type and billing indicators. Later, information about the calling party was added to the protocols. A key factor driving the richness of the signaling protocols was the desire to support features across the network.

After the basic call, the first significant networked feature was Inward gyre Area Telephone Service (INWATS). This service, now called 800, Tollfree, or Freephone, necessitated the signaling of the whereabouts of the calling party relative to the final destination of the call to give the terminating switching office enough information to generate the appropriate billing records. The details of the protocols (using fancy called-number manipulation) are beyond the scope of this article; suffice it to say that this was truly a case of trying to make a single call "object" appear simultaneously in several telephone switches.


A key requirement of the telephone industry is fault tolerance. This is achieved through massive redundancy; anything critical to the operation of the network is duplicated. This is seen at all levels of granularity, from duplicated processors in peripheral modules of switching systems to "mated pairs" of the network databases known as service control points (SCPs)....
Read More Show Less

Table of Contents

1. Fault-tolerant telecommunication system patterns; 2. Using design patterns to build a framework for multimedia networking; 3. A generative pattern language for distributed processing; 4. Bodyguard; 5. Patterns for logging diagnostic messages; 6. Pattern: half-object + protocol; 7. A pattern language for improving the capacity of reactive systems; 8. A pocket-sized broker; 9. A family of design patterns for application-level gateways; 10. A pattern language of feature interaction; 11. Managing change with patterns; 12. Design patterns in telecommunication systems; 13. Applying patterns to develop extensible ORB middleware; 14. Open Web Server: an adaptive Web server using software patterns; 15. A pattern language of call processing; 16. The design and performance of a pluggable protocols framework for object request broker middleware; 17. Object Lifetime Manager - a complementary pattern for controlling object creation and destruction; 18. A family of design patterns for flexibly configuring network services in distributed systems; 19. Abstract session, an object structural pattern; 20. An input and output pattern language; 21. Lessons from telecommunications.
Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)