CSC407/ECE450 Assignment 1b Sample Solution

plan.dom
Class Software

java.lang.Object
  |
  +--plan.dom.DefaultFeatureListImplementation
        |
        +--plan.dom.Software
All Implemented Interfaces:
FeatureList

public class Software
extends DefaultFeatureListImplementation
implements FeatureList

Represents a shipping software product.


Field Summary
private  java.lang.String name
           
 
Fields inherited from class plan.dom.DefaultFeatureListImplementation
features
 
Constructor Summary
(package private) Software(java.lang.String name)
           
 
Method Summary
 java.lang.String getLabel()
          The FeatureList label is the name of the Software product.
 java.lang.String getName()
           
 Release planRelease(double capacity)
          Suggests a release of this software product.
 
Methods inherited from class plan.dom.DefaultFeatureListImplementation
addFeature, featureIterator, numFeatures, sortFeatures, subtract, totalSizingOfFeatures
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 
Methods inherited from interface plan.dom.FeatureList
featureIterator, numFeatures, totalSizingOfFeatures
 

Field Detail

name

private java.lang.String name
Constructor Detail

Software

Software(java.lang.String name)
Method Detail

getName

public java.lang.String getName()

planRelease

public Release planRelease(double capacity)
Suggests a release of this software product.
Parameters:
capacity - the number of person-days of coding effort available to work on the release
Returns:
a Release containing a suggested list of features

getLabel

public java.lang.String getLabel()
The FeatureList label is the name of the Software product.
Specified by:
getLabel in interface FeatureList
Following copied from interface: plan.dom.FeatureList
Returns:
the descriptive (short) label

CSC407/ECE450 Assignment 1b Sample Solution