DOC PREVIEW
SJSU CMPE 196G - AnyLog Stable Design Pattern
Pages 5

This preview shows page 1-2 out of 5 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Related PatternsAnyLog Stable Design Pattern Mohamed E. Fayad, Jayashree Rajagopalan, Anita Ranganath Abstract— The AnyLog pattern models the core knowledge of any Log, as a written record. The Log finds extensive use in the computing industry. The pattern makes it easy to model different kinds of logs rather than thinking of the problem each time from scratch. This pattern can be utilized to model any kind of log in any application and it can be reused as part of a new model. Index Terms—Enduring business themes, Software stability, Software patterns, Stable analysis patterns, Stable design patterns. I. INTRODUCTION “Log” as a record, implies any significant information being stored in a media for future reference. Different applications for Log use different media and store entirely different kinds of information. The information in a log is stored as one or more entries. For example, a traveler’s log can be a diary, whereas a website traffic log can be a file on an electronic disk. The entries in a traveler’s log may be his daily expenses, places visited, etc., written in a free form (unformatted), whereas a website traffic log may contain formatted data like the client IP-address, time, date, etc. Since a Log finds use in diverse applications, it is important to understand the core knowledge behind the Log. The AnyLog design pattern aims at capturing such core knowledge that is common in all applications that use a Log. In the traditional way of modeling we created separate models of a Log for each application. That involves extensive time and effort to start the modeling process from scratch each time. On the other hand, the stable design pattern provides a good starting point. The Any Log pattern describes the characteristics, behavior, and lists all the key players and their relationships involved in any kind of Log application. This pattern can be easily extended or built upon to produce the model for any kind of Log application. A fundamental question is: Can we develop a pattern that captures the atomic log notion, and thus can serve as a base for modeling any kind of logs? The objective of this paper is to provide an answer to this question by discussing and documenting the atomic pattern AnyLog. This pattern models the core knowledge of a Log, making it easy to reuse this pattern and build upon it to model different kinds of logs rather than re-working the same problem each time from scratch. AnyLog pattern is a stable design pattern [5,6 ,8] that is built based on the software stability concepts [9]. Manuscript received June 29, 2003. Mohamed E. Fayad is with the Computer Engineering Department, College of Engineering, San José State University, One Washington Square, San José, CA 95192-0180 USA, (e-mail: [email protected]). Jayashree Rajagopalan (e-mail: [email protected]) & Anita Ranganath (e-mail: [email protected] ) are students of the Computer Engineering Department, San Jose State University, San Jose II. SOFTWARE STABILITY AND STABLE DESIGN PATTERNS: A BRIEF BACK GROUND The pattern proposed in this paper is based on the concept of Stable design patterns introduced in [5,6,8]. The idea behind stable design patterns is to analyze the problem under consideration in terms of software stability concepts [9]. Software stability stratifies the classes of the system into three layers: the Enduring Business Themes (EBTs) layer (contains classes that present the enduring and basic knowledge of the underlying industry or business, and hence, they are extremely stable), the Business Objects (BOs) layer (contains classes that map the EBTs of the system into more concrete objects. BOs are tangible and externally stable, but they are internally adaptable), and the Industrial Objects (IOs) layer (contains classes that map the BOs of the system into physical objects.). Figure 1 depicts the three layers of the stability model. The detailed characteristics of EBTs, BOs, and IOs and useful heuristics and examples of identifying these concepts in real applications can be found in [7,8,10]. Unstable Leafs- IOs Layer System Core Knowledge- EBTs Layer Concrete Objects- BOs Layer Figure (1): Software Stability concepts layout Stable design patterns are created for semi-tangible objects that are always associated with some concept. The concept either forms their property or represents its relationship to another object. In generating a stable design pattern, we have to recognize the concept that always goes with the object irrespective of the application. The paper suggests a possible design pattern for any log. III. PATTERN DEVELOPMENTPATTERN NAME: AnyLog The term ‘log’ implies maintaining a record of some kind. It could be record of performance or events. It could also be a record of the activity of a certain system stored for later reference. PROBLEM: Due to wide applicability of a log, we aim at designing the core concept of logging. The problem is to bring out a stable pattern for a log that is easily adaptable and easily extendable to any kind of log application. Main Problem: How to build a stable log pattern to which we can plug in any kind of logging application? CONTEXT: Log is a record that stores some information valuable to its creator. The log has applicability in various fields like information technology, travel, art, etc. For example, a file that contains the information on how many hits or impressions a web page is receiving is known as a traffic log Another example of a log is a record of a computer's or application's activity used for system information, backup, and recovery. Another use case of a log is that a ship’s captain stores events for a voyage in a trip log. FORCES: Challenges: • Log is a generic concept that caters to variety of applications that are totally unrelated, such as storing of a poem in a diary by a poet, or storing the number of website visits in a file by a website administrator. • One needs to recognize the core goal of having a log and it must be conveyed in the pattern. • As the applications of the log are so widely varied, the entries in the log can also be of many kinds. Also the entries can be ordered following a particular format or they could just be stored as is without a particular pattern of storage. The design pattern must have a representation for both formatted and


View Full Document

SJSU CMPE 196G - AnyLog Stable Design Pattern

Download AnyLog Stable Design Pattern
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view AnyLog Stable Design Pattern and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view AnyLog Stable Design Pattern 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?