Menu

Feature Spec Template

SourceForge Editorial Staff

Functional and Design Specification Template

Jane D. Veloper (Dev)
John Q. Ality (QA)

HOW TO USE: This article template should be used when writing a new Flex SDK feature specification. To use, create a new wiki article for your spec. Copy and paste the Wiki markup from this article template into your new article. Then start adding in the information specific to your feature. Please make sure you remove the instructions (all italicized text).

IMPORTANT: You must cite the source for all non-original concepts, text, or graphics to ensure they are not mistakenly added to our customer docs.

Functional and Design Specification


Glossary


Define any potentially unfamiliar terms and acronyms.

Summary and Background


Give a brief synopsis of the purpose of this feature, the background on the problem, and why it will be useful to customers using Flex.

Usage Scenarios


Describe typical uses of this feature.

Detailed Description


Describe the feature in detail here.

API Description


Additions to MXML Language and ActionScript Object Model

Include the relevant API for this feature using the following example as a guideline. Make sure you indicate whether APIs are public or protected. You do not need to present private or mx_internal APIs here.

package mx.controls
{

class Button extends UIComponent
{
    /**
     *  Text to appear on the Button control.
     *
     *  <p>If the label is wider than the Button control,
     *  the label is truncated and terminated by an ellipsis (...).
     *  The full label displays as a tooltip
     *  when the user moves the mouse over the Button control.
     *  If you have also set a tooltip by using the <code>tooltip</code>
     *  property, the tooltip is displayed rather than the label text.</p>
     *
     *  @default ""
     */
    public function get label():String;
    public function set label(value:String):void;
}

}

B Features


Detail features here that are to be considered for B Feature time.

Examples and Usage


Include examples of how this feature would be used in practice, from MXML and ActionScript code, or from the command line, or from other mechanisms as appropriate

Additional Implementation Details


Enter implementation/design details for the feature here. This section may be updated after the spec signs off.

Prototype Work


Is there any prototyping that has been or should be done to demonstrate the viability of the design, or to enable more accurate cost estimates? If so, summarize here.

Compiler Work


Will this feature require any compiler changes? If so, describe here, if not already included in the Detailed Description.

Web Tier Compiler Impact


Consider and include any issues with Web Tier Compiler Integration. Examples:

  • any new compiler switches (flex-config.xml configuration)
  • proposed workflow changes
  • changes to the Compiler API - example, a logger or localization manager now required

Flex Feature Dependencies


Dependencies on other Flex features.

Backwards Compatibility


Syntax changes

List any syntax changes (MXML tags, attributes, AS syntax changes) that may affect backward compatibility with existing applications

Behavior

List any changes to existing MXML tags, attributes, etc that may affect the behavior or performance of existing applications

Warnings/Deprecation

Clearly identify anything that existing features that will become deprecated. Identify any warnings that will be issued (if any) as a result. Identify recommended documentation changes that should accompany.

Accessibility


Describe any accessibility considerations.

Performance


Describe any performance considerations or requirements.

Globalization


All components that deal with text will need to be globalization-aware. This means that text in any supported language can be used with the component.

The component must use the Unicode character set (mostly comes for free from Flash Player) and must interoperate with IME's (Input Method Editors) for foreign languages (also mostly supported via Flash Player).

Globalization also includes issues with date/time formatting and currency formatting for specific locales.

European (French, German, etc.) and Asian (Japanese, Korean, Chinese) languages are of particular concern.

Note any specific globalization issues here.

Localization


Compiler Features

Command-line help descriptions should be added to sdk/modules/compiler/src/java/flex2/configuration_en.properties and configuration_ja.properties.

Error/warning messages that are related to the compiler core (flex2.compiler.* packages) should be added to sdk/modules/compiler/src/java/flex2/compiler_en.properties and compiler_ja.properties.

Error/warning messages that are related to the linker (flex2.linker.* packages) should be added to sdk/modules/compiler/src/java/flex2/linker_en.properties and linker_ja.properties.

CompilerMessage subclasses should be created to support the messages in the .properties files.

The _ja.properties files are unicode-escaped files.

Framework Features

List the RTE message strings that will require localization. (They must all come from .properties files.)

List all UI text that will require localization, such as the month and day names in a DateChooser. (All such text must all come from .properties files.)

List all UI images, skins, sounds, etc. that will require localization.

Discuss any locale-specific formatting requirements for numbers, dates, currency, etc.

Discuss any locale-specific sorting requirements.

Issues and Recommendations


Enumerate open issues needing resolution, along with recommended solutions, if any.

Documentation


Describe any documentation issues or any tips for the doc team.

QA


If there are testing tips for QA, note them here, include a link to the test plan document.

TODO: update Flex Builder QA section.


Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.