|
Requirements
|
Sub-requirements
|
Related quality-requirements
|
|
Store architecture and design patterns
|
Store the following data for each pattern: name, description, type, data model, picture and guide (*)
|
Extensibility: Support to store macro architectures, micro architectures and reference architectures (and other, so far undefined, types of patterns)
Extensibility: Support to store data model and guide in any selected form (Defaults will be XML and HTML respectively.)
|
|
|
Manage two levels of repositories: local (and global/company (*)
|
|
|
Provide a database interface for accessing the pattern repository
|
Implement interface functions such as select, update, insert, delete (*)
|
Modularity/Maintainability: Keep the database interface separate from other components e.g. user interface
Scalability: Support for several different tools and several users per tool to access the knowledge base at the same time
Security: User authentication, read/write permissions
Usability: Simultaneous updates must be handled without errors (locking)
|
|
|
Provide an initial pattern library containing popular patterns (*)
|
|
|
Provide a graphical user interface (GUI) for browsing and updating the patter repository.
|
Provide a dialog for searching patterns (by name, description and quality attributes) and show search results in a view (*)
|
Usability: Browsing shall be easy and fast for end user satisfaction
|
|
Provide a possibility to delete a pattern or update its properties
(*)
|
Security: Permissions required
|
|
Provide dialogs for downloading/uploading patterns to/from local file tree (*)
|
Security/Usability: Locking to prevent users from overwriting each others changes
|
|
|
Provide a tool for browsing pattern’s documentation (*)
|
Usability: Documentation must be accessible directly from the remote database (without exporting the file).
|
|
|
Provide self-selecting help for using Stylebase for Eclipse (#)
|
Integrability: The help files shall extent the document tree of the Eclipse platform help
Usability: Help files shall be accessible without network connection.
|
|
|
Provide a dialog for adding and editing the definitions of quality attributes (#)
|
|
|
Provide a pattern creation wizard
|
Control input to make sure that a pattern is inserted correctly
|
|
|
|
Provide a template for pattern’s documentation.
|
|
|
|
Save new pattern locally and, if requested, upload it into global/company level database.
|
|
|
Provide a GUI for configuring the plug-in (#)
|
Set configuration parameters such as database connection parameters, default file types and file locations
|
Integrability: GUI shall be an extension into the preferences page of the Eclipse platform
|