Summary: v0.5‐beta (The fifth iteration) - 0mp/io-touchpad GitHub Wiki
Issues from within the scope of the fifth iteration
Documentation
Architecture (@RjiukYagami)
Issues: #112
- Added the architecture views of are based on the "4 + 1 architecture" idea.
- Logical View
- Process View
- Development View (subsystem decomposition)
Link to the architecture document.
Update the vision document (@0mp)
Issues: #181
- Updated the milestone and the vision document.
- Created this Wiki page.
Improve non-functional requirements (@0mp)
Issues: #178
- Changed the name of the modifiability section to extensibility.
- Split Non-functional requirements to Programming guidelines and Non-functional requirements.
Fix use cases (@0mp)
Issues: #179
- Redesigned the use cases Wiki page.
- Created a new diagram.
- Added the use cases for all the subcommands.
- Applied the suggestions from the #179 issue.
Features (@michal7352)
Issues: #126
Now, the user can export the current state of his/her settings (stored in files of classifier and databox) and import them anytime.
THIS FEATURE WASN'T MERGED ON TIME
Performance
Improve performance by eliminating the actively waiting while loops (#42) (@0mp)
The changes in the source code are available here.
- Removed the while loops which were actively waiting.
- Introduced a
condiditonvariable which is shared between threads. It allows: - the application thread to go to sleep if:
- there are no new points to process;
- the set of points collected so far is not ready to be treated as one symbol;
- the listener thread
- to wake up the application thread if it added a new point onto the queue.
- The performance increased significantly; before this improvement the app took 100% of the CPU time and now it dropped down to 2%.
Tests (@piotrekp1)
Issues: #143
Split classifier functions into smaller functions, created tests for classifier
Refactoring (@piotrekp1)
#138 (@piotrekp1)
Changed the way we open files in classifier from 'open do close' to 'with open'.
(#143) (@piotrekp1)
Didn't refactor classifier, couldn't find a convenient way (or at least good enough to not be refactored week after) to refactor it.
(#166) (@piotrekp1)
Didn't do it because we planned to first refactor Classifier, and I didn't manage to refactor it.
UX
(#165) (@michal7352)
- Added suitable messages.
THIS FEATURE WASN'T MERGED ON TIME
Improve the help message of the redraw subcommand (#177) (@0mp)
- I updated the description of the subcommand in the help message.