Class Patterns and Templates in Software Design

Class Patterns and Templates in Software Design

Julio Sanchez (Minnesota State University, Mankato, USA) and Maria P. Canton (South Central College, USA)
DOI: 10.4018/978-1-59904-887-1.ch024
OnDemand PDF Download:


This chapter describes the use of design patterns as reusable components in program design. The discussion includes the two core elements: the class diagram and examples implemented in code. The authors believe that although precanned patterns have been popular in the literature, it is the patterns that we personally create or adapt that are most useful. Only after gaining intimate familiarity with a particular class structure will we be able to use it in an application. In addition to the conventional treatment of class patterns, the discussion includes the notion of a class template. A template describes functionality and object relations within a single class, while patterns refer to structures of communicating and interacting classes. The class template fosters reusability by providing a guide in solving a specific implementation problem. The chapter includes several class templates that could be useful to the software developer.

Complete Chapter List

Search this Book:
Editorial Advisory Board
Table of Contents
Mahbubur Rahman Syed, Sharifun Nessa Syed
Mahbubur Rahman Syed, Sharifun Nessa Syed
Chapter 1
Tony C. Shan, Winnie W. Hua
Solutions architecting method (SAM) is defined as a methodical approach to dealing with the architecture complexity of enterprise information... Sample PDF
Towards a Systematic Method for Solutions Architecting
Chapter 2
Vivienne Waller, Robert B. Johnston, Simon K. Milton
This chapter presents a new high level methodology for the analysis and design of information systems specifically to support routine action at the... Sample PDF
A Methodology for Situated Analysis and Design
Chapter 3
Inge van de Weerd, Sjaak Brinkkemper
This chapter introduces an assembly-based method engineering approach for constructing situational analysis and design methods. The approach is... Sample PDF
Meta-Modeling for Situational Analysis and Design Methods
Chapter 4
Yuni Xia, Jonathan Munson, David Wood, Alan Cole
Advances in GPS, personal locator technology, Internet and network technology, and the rapidly growing number of mobile personal devices are helping... Sample PDF
Location-Based Service (LBS) System Analysis and Design
Chapter 5
Laura C. Rodriguez, Manuel Mora, Miguel Vargas Martin, Rory O’Connor, Francisco Alvarez
The software engineering discipline has developed the concept of software process to guide development teams towards a high-quality end product to... Sample PDF
Process Models of SDLCs: Comparison and Evolution
Chapter 6
Fernando Flores, Manuel Mora, Francisco Alvarez, Rory O’Connor, Jorge Macias-Luevano
Requirements engineering is the process of discovering the purpose and implicit needs of a software system that will be developed and making... Sample PDF
Requirements Engineering: A Review of Processes and Techniques
Chapter 7
Massimo Magni, Bernardino Provera, Luigi Prosperpio
Improvisation is rapidly becoming an important issue for both scholars and practitioners. Organizations that operate in turbulent environments must... Sample PDF
Individual Improvisation in Information Systems Development
Chapter 8
John Wang, James Yao, Qiyang Chen, Ruben Xing
Since their creation in the early 1960’s, decision support systems (DSSs) have evolved over the past 4 decades and continue to do so today. Although... Sample PDF
Design and Analysis of Decision Support Systems
Chapter 9
John Wang, James G.S. Yang, Jun Xia
In contrast to ongoing, functional work, a project is a temporary endeavor undertaken to achieve or create a unique product or service(s). The... Sample PDF
A Systematic Implementation of Project Management
Chapter 10
Roy Gelbard
Reuse helps to decrease development time, code errors, and code units. Therefore, it serves to improve quality and productivity frameworks in... Sample PDF
Decision Rule for Investment in Frameworks of Reuse
Chapter 11
Dean Kelley
This chapter presents three alternatives for structuring static tables—those tables in which the collection of keys remains unchanged and in which... Sample PDF
Strategies for Static Tables
Chapter 12
Ladislav Samuelis
This chapter introduces the irreducibility principle within the context of computer science and software engineering disciplines. It argues that the... Sample PDF
Notes on the Emerging Science of Software Evolution
Chapter 13
Roy Gelbard
Applications require short development cycles and constant interaction with customers. Requirement gathering has become an ongoing process... Sample PDF
Software Modeling Processes: UML–xUML Review
Chapter 14
Peter Rittgen
The main purpose of a corporate information system is the support of the company’s business processes. The development of information systems is... Sample PDF
From Business Process Model to Information Systems Model: Integrating DEMO and UML
Chapter 15
Jan Mendling
This chapter provides an overview of business process management and business process modeling. We approach business process management by giving a... Sample PDF
Foundations of Business Process Modeling
Chapter 16
Q. N.N. Tran, B. Henderson-Sellers, I. Hawryszkiewycz
The use of a situational method engineering approach to create agile methodologies is demonstrated. Although existing method bases are shown to be... Sample PDF
Some Method Fragments for Agile Software Development
Chapter 17
Q. N.N. Tran, B. Henderson-Sellers, I. Hawryszkiewycz
Method fragments for work units and workflows are identified for the support of agile methodologies. Using one such situational method engineering... Sample PDF
Agile Method Fragments and Construction Validation
Chapter 18
Adir Even, G. Shankaranarayanan, Paul D. Berger
This chapter introduces a novel perspective for designing and maintaining data resources. Data and the information systems that manage it, are... Sample PDF
Utility-Cost Tradeoffs in the Design of Data Resources
Chapter 19
Kenneth J. Knapp
To promote the development of inherently secure software, this chapter describes various strategies and techniques for integrating security... Sample PDF
Security Considerations in the Development Life Cycle
Chapter 20
Robert Z. Zheng, Laura B. Dahl, Jill Flygare
This chapter focuses on the design of human-computer interface, particularly the software interface design, by examining the relationship between... Sample PDF
Cognitive Perspective on Human-Computer Interface Design
Chapter 21
Mara Nikolaidou, Nancy Alexopoulou
System design is an important phase of system engineering, determining system architecture to satisfy specific requirements. System design focuses... Sample PDF
Frameworks for Model-Based Design of Enterprise Information Systems
Chapter 22
Tagelsir M. Gasmelseid
This chapter addresses the software engineering dimensions associated with the development of mobile and context-aware multiagent systems. It argues... Sample PDF
On the Design of Multiagent, Context-Aware, and Mobile Systems
Chapter 23
Tagelsir M. Gasmelseid
This chapter introduces and investigates the applicability of the multiagent paradigm for engineering and developing CSCW systems with the aim of... Sample PDF
Modern Design Dimensions of Multiagent CSCW Systems
Chapter 24
Julio Sanchez, Maria P. Canton
This chapter describes the use of design patterns as reusable components in program design. The discussion includes the two core elements: the class... Sample PDF
Class Patterns and Templates in Software Design
Chapter 25
Allan M. Hart
This chapter presents a brief overview of the object/relational mapping service known as Hibernate. Based on work provided in the book Java... Sample PDF
Hibernate: A Full Object Relational Mapping Service
Chapter 26
Manoranjan Paul, Manzur Murshed
People’s demands are escalating with technology advances. Now, people are not happy with only text or voice messages, they like to see video as... Sample PDF
Pattern Based Video Coding
Chapter 27
Farid Ahmed, Cecilia Gomes
With the remarkable growth of Internet and multimedia applications, production and distribution of digital media has become exceedingly easy and... Sample PDF
Digital Watermarking for Digital Rights Management
Chapter 28
A. B.M. Shawkat Ali
From the beginning, machine learning methodology, which is the origin of artificial intelligence, has been rapidly spreading in the different... Sample PDF
Support Vector Machine: Itself an Intelligent Systems
Chapter 29
Syed Zahid Hassan, Brijesh Verma
This chapter focuses on hybrid data mining algorithms and their use in medical applications. It reviews existing data mining algorithms and presents... Sample PDF
Hybrid Data Mining for Medical Applications
Chapter 30
Ahsan H. Khandoker, Rezaul K. Begg
This chapter describes the application of machine learning techniques to solve biomedical problems in a variety of clinical domains. First, the... Sample PDF
Machine Learning for Designing an Automated Medical Diagnostic System
Chapter 31
Jim Warren, Karen Day, Martin Orr
In this chapter we aim to promote an understanding of the complexity of healthcare as a setting for information systems and how this complexity... Sample PDF
Achieving Effective Health Information Systems
Chapter 32
A. H.M. Razibul Islam, Rashida Begum, A. B.M. Shawkat Ali
Recent development in telecommunication and information technologies came up with several technology options for telemedicine applications in... Sample PDF
Trends and Prospects of Telemedicine
Chapter 33
Javed Khan, Manas Hardas
The recent advances in knowledge engineering entail us to represent knowledge associated with a course in an expressive yet computable format as a... Sample PDF
Knowledge-Based Characterization of Test Questions
Chapter 34
Paulette Alexander, Carol Gossett
The process of designing a university curriculum in the information systems discipline needs to follow many of the same processes that professional... Sample PDF
Information Systems Curriculum Design Processes
Chapter 35
Ann M. Quade
This chapter reports on the design, development, and implementation of a hybrid introductory systems analysis and design (SAD) semester long course... Sample PDF
Redesigning a SAD Course to Promote Problem-Based Learning
About the Contributors