Ability to create installer projects for one or more related components. User can choose to create installer project anywhere on a writable disk partition and has a choice of selecting sub folders which contain installer projects.
User should be able to load existing installer project for editing. (Roundtrip editing).
Ability to create/edit the required files for the installer.
User should be able to visually enter/edit values for all fields in the schemas.
User should be able to specify a number of install units in a easy way. For eg: point to a directory and tool should read all install units in that dir.
Dependencies between CPs should be specified and visualized in a user friendly graphical way.
Data types supported in input fields should be restricted to the data types supported by the schema.
Intelligent validation of user entered data should be performed.
Tool should be smart enough to infer/deduct as much of input data as possible and populate defaults or avoid user inputs.
User should be able to see the XML files that will be generated as they are providing input data.
User should be able to load existing XMLs and edit the fields visually (Roundtrip editing).
User should be able to load other CP XMLs as references.
Tool should be smart enough to check for errors or data that violates best practices and suggest better ways to the user.
User should be able to specify Source control repository data and tool should be able to checkin the generated XMLs in the given repository.
Tool should <i>avoid</i> having built-in Brand specific intelligence or brand specific data or hard coded values or validations etc. This requirement is needed to support open sourcing of the tool and for the tool to be used in a generic way for generation of any installer.
Brand Specific code or data could be separated into a run time loadable "plugin" to the tool.
Tool should not require saving data in any other form other than the openInstaller XMLs.
Tool should be able to save, load and edit partial XMLs
Tool should provide a user friendly interface and hide the complexity of the installer framework as much as possible.
Tool should be delivered as 'a Stand alone application (based on Netbeans platform) and' a Netbeans Module/plugin.
Tool should provide capabilities to build the installer and run the installer. User should be able to build and run the installer within the tool itself, where possible.
Tool should provide panel view mockups for verification of panal view data.