Design Specification
This writeup gives 1000feet design view of functionality
implementation. It also summarizes
work
that need to be done.
Module Relations
Final functionality is covered by API, core and
docscan modules. In NetBeans functionality
must map to modules 1:1. Module (functionality)
layout must allow smooth interperability with
optional modules (suggestions and its providers).
UML Class Diagrams
The implementation classes can be divided into several parts.
Relevant ones are the framework:
and TODO functionality:
Just for reference, UserTasks then looks like:
Work to be Done
Well there is already the contributed implementation.
This section describes needed adjustments.
Improve framework separation to match proposal.
- Move
SuggestionManagerImpl into core module.
- Merge editor module into core module.
- Performance improvements: cached snapshot (DONE) and
check isObserved() and isEnabled() methods.
- Move provider classes to SPI package and
replace it at API level by
Object.
Create navigateable list of all tasks in project/current source
containing only items based on source code notes.
- Separate copyright functionality from docscan module
- Implement Active TODOs action and view type (category)
- Implement Project TODOs action and view type
Cover functionality by unit and performance tests.
- measure big file scan to estimate live todos impact
- measure many files scan to estimate project todos performance
- SuggestionManagerImpl.register() test
Do not forget about open issues:
- Process - new functinality acceptance process
is not known yet and it may introduce significant
amount of work (reporting and changing
implementation). In particular a kind of ARCH process.
Known responsibility overlap with the Search API.
API removal request
- Bugs - codebase was not extensively tested yet.
Many bugs can appear. Fortunately supported
functionality does not contain write operations
so it's unlikely that critical dataloss bugs
will be introduced. Threading bugs (deadlocks)
may occure. Medium risk.
- Speculativeness - this plan is based on some
assumtions about final UI specification. Low
risk.
Related Documents
Use Case Study
Functional Specfication
UI Specification
Implementation Plan
Test Specification
Petr Kuzel on 25th November 2003
The document is open for feedback