ry. Implementing communication between cli- ent and server using a management protocol is the base framework over which busi- ness logic of operation support solution is added. The basic operations remain the same when using another management protocol. For example NETCONF <get- config> is similar to SNMP "GET" and SNMP "SET" is similar to NETCONF <set-config> operation. Additional Reading 1. Alexander Clemm, Marshall Wilensky, and Scott Bradner. Network Management Fundamentals. Indianapolis, IN: Cisco Press, 2006. 2. Robert L. Townsend. SNMP Application Developer's Guide. New York: Wiley, 1995. 3. Larry Walsh. SNMP MIB Handbook. England: Wyndham Press, 2008. 4. Douglas Mauro and Kevin Schmidt. Essential SNMP. 2nd ed. California: O'Reilly Media, Inc., 2005. Chapter 33 OSS Design Patterns This chapter is about design patterns that are commonly used in programming management applications. There are several design patterns that can be applied in the development of specific modules in management application. The discussion in this chapter is limited to a few of the common design patterns used in management application development. 33.1 Introduction This chapter details the following design patterns in the context of developing man- agement applications: The Singleton Design Pattern The Chain of Responsibility Design Pattern The Observer Design Pattern The Factory Design Pattern The Adapter Design Pattern The Iterator Design Pattern The Proxy Design Pattern The Mediator Design Pattern The C++ programming language has been used to implement the patterns. Each pattern description has three parts in this chapter. The first part gives the pattern overview. The second part details a specific management application area where the Fundamentals of EMS, NMS and OSS/BSS pattern can be used. The third part gives the implementation of the pattern. It is advised skipping the implementation details if the reader is not familiar with C++. 33.2 Singleton Design Pattern Overview: This pattern is used to restrict the number of instance