Home|News blank.gif
When Design Matters CoreLinux++ CoreLinux Consortium
blank.gif
CoreLinux++
blank.gif
Goals
blank.gif
Developer's Corner
blank.gif
Contacts

CoreLinux++ Functional Requirement Document
Revision $Revision: 1.2 $
Last Modified : Tuesday, February 8, 2000

Title : Prototype Pattern

Requirement ID: 5098
Analysis References: Use Case Report , Analysis Diagram
Design References: Class Report , Design Diagram
Cross References:

1. Introduction

Specify the kinds of objects to create using a prototypical instance, and create new objects by copying this prototype.

1.1 Deliverables Overview

The participants in the Iterator pattern include:

Prototype (libcorelinux)
Declares an interface for cloning itself.
ConcretePrototype (external)
Implements an operation for cloning itself.

The CoreLinux++ team will deliver the Prototype type.

The CoreLinux++ team will deliver the PrototypeException type.

Users can utilize the participant abstractions or implementations as a basis for creating their own ConcretePrototype implementation outside of the libcorelinux++ library.

2. Functional Requirements

The Prototype type will:

  1. Provide default constructors and virtual destructor.

  2. Provide operator assignment and equality overloads.

  3. Provide the clone interface.

  4. Provide instrumentation for the number of clone requests made.

The PrototypeException type will:

  1. Provide type for exception reasoning.

  2. Provide type for specializations of Prototype.

2.1 User Interface Specifications

NA

2.2 Product Services

NA

2.3 External Interfaces and Database Requirements

NA

2.4 Error Handling

At the libcorelinux level this is a non-issue, but exception types are provided.

2.5 Foreseeable Functional Changes and Enhancements

NA.

3. Non-Functional Requirements

Precondition constraints: None

Postcondition constraints: None

Invarient constraints: None

3.1 Performance Requirements

NA

3.2 User Documentation and Other User Aids

This Document

Analysis Use-Case diagrams

Design class diagrams

3.3 Development Requirements

Standards: CoreLinux++ C++ Standards and Guidelines

Will be part of the libcorelinux++ shared library.

3.4 Foreseeable Non-Functional Changes

NA

4. Remarks and Guidelines for Later Life Cycle Phases

TBD

5. Term Glossary

TBD


Copyright © 1999, 2000 by CoreLinux Consortium
This material may be distributed only subject to the terms and conditions set forth in the Open Publication License
Contacts
- contact the webmaster
News
Powered / Hosted by

SourceForge.net
Contributor
NoMagic, inc.
thanks Gary!
Cool OO Sites
cetus
corba
omg
patterns
  Made with xemacs / php Comments to webmaster blank.gif