MilestoneFiveStatusReport - JUCMNAV/projetseg-update GitHub Wiki
In this iteration, we continued to expand what could be done with the tool, with a great push towards improving stability. We now have more explicit rules for what is permitted when editing paths, eliminating most crashing scenarios previously identified in cases where illegal loops were created. We also now support an important client-driven scenario: exporting use case maps as images. The user-friendliness and visual presentation of our application is greatly improved compared to the alpha release produced in the MilestoneFour timeline.
The current state of the system is shown in the following screenshots. Note that it does not show off all features, but it will give the reader a decent idea of what we have built. A beta release version is now available on this wiki site, for (very) early adopters and testers.
- Screenshot 1: Various map features and rendering
- Screenshot 2: Plugin bindings
- Legal information page (EPL license) and contributors
- Deletion works in several scenarios (stubs, paths, forks, etc.)
- Safety-checking to disallow illegal loops
- Professional graphic designer contributed new graphical resources
- Implementation of the Stub Binding dialog
- Image exporting works
- Extracting of all strings for i18n
- Implemented more tests
- Fork and Join transmogrification
- Various fixes related to deploying on Linux
- Better path tool
- Metamodel updated to version 7
- LOTS of bugfixes
In terms of the proposed milestone iterations, we are bit late in quality assurance, but bugs are being logged and addressed in a timely fashion. In concrete terms, many bugs reported by our client using development builds were fixed within 24 hours. Our prototype has evolved into a working system, albeit still showing some rough edges. Most crashing and / or data corruption scenarios known in the MilestoneFour timeline have been eliminated. Use of the jUCMNav tool by early-adopters (our client) in real-world situations has confirmed that quality has improved over the last month; at the same time, some new issues to fix have been logged. Many little things (the spit and polish, if you will) have been fixed for the initial beta trial, such as proper license and credits, better rotation and display of some path nodes, tweaked icons, etc.
The reader will find, in the following table, a list of risks possibly impacting our project presently, as well as thoughtful followup on past risks.
Date Entered | Risk or Issue | Description | Resolution | Status |
---|---|---|---|---|
05 Jan 2005 | Eclipse is an evolving platform | Eclipse/GEF is rapidly evolving and the current version (3.1) has not yet been released as stable. | We have decided to settle on version 3.0.1 of all Eclipse tools that we will be using. | Closed |
05 Jan 2005 | New Tools | We are using various tools that we don't necessarily have experience with: Ant, BugZilla, CVS, DOORS, Eclipse+GEF+EMF, JUnit, Rational XDE, TWiki, UCMNav | See below | Closed |
05 Jan 2005 | Varying schedules | Must find way so that all team members can contribute equally, regardless of schedule differences. | Semester over | Closed |
05 Jan 2005 | Difficult deployment | We may have to support different versions of Eclipse, testing different operating systems, distributing the plug-in with and without Eclipse | We have decided on supporting only Eclipse/GEF version 3.0.1 and EMF v2.0.1, testing only on Windows XP SP2 and distributing the plug-in without Eclipse. | Closed |
23 Jan 2005 | New version of the DTD | We await the new version of the DTD that we will have to support (read/write). UCM Version 0.23 is already on the website | Supporting the DTD is no longer in the scope of our project | Closed |
23 Jan 2005 | Requirements | We have defined the requirements definition process in which Main.DanielAmyot will have an important role but they have yet to be drafted | Requirements have been drafted. | Closed |
15 Feb 2005 | Meta-model | We await our meta-model draft for the notation's elements to be used by our tool | We have received it and integrated it. | Closed |
15 Feb 2005 | Paths | We're not sure how paths will be implemented in our system. Must experiment. | Experimentation done, success! | Closed |
15 Feb 2005 | Stubs | Stubs are the second riskiest UCM element. They have deep implications in many views and the editor but haven't bene prototyped. | Most of the legwork here has been done | Ongoing |
15 Feb 2005 | Divide and conquer | Requirements need to be divided into micro objectives that can be tracked in our task management system. Until then, we can't plan completion | See BugZilla | Closed |
15 Feb 2005 | Unit tests | We haven't formally written down our unit tests as they are too closely bound to our architecture. | See JUnitTestPlan | Closed |
15 Feb 2005 | Get Coding | Not everyone is as familiar with the framework because not everyone was prototyping | With the end of the semester, developers have been contributing code much more frequently. | Closed |
10 May 2005 | Lack of time | We're progressing nicely but the Eclipse learning curve is steep. We should focus on getting the core features done and take care not to spread out efforts over too many features. | - | Closed |
10 May 2005 | ReqSaveBackup | We're not sure how to hookup to the local history mechanism in Eclipse | Not easy with XMI; postponed until DTD | Closed |
13 Jun 2005 | Beta deployment | Deploying the beta to hereto untested systems might reveal deployment problems | We will see soon after 15 Jun | Ongoing |
- BugZilla/CVS/Rational tools: Already familiar.
- TWiki: Passed the critical level, very easy to use.
- Ant/JUnit: Tested on prototypes, learnt in SEG4511.
- DOORS: Abandoned in favor of TWiki.
- UCMNav: We have three experts to help us. We are only replicating the tool's basic functionality.
- Eclipse+GEF+EMF: Developing Java in Eclipse is a breeze. Developing plug-ins with GEF and EMF requires lots of reading and experimenting. The road from prototype to a beta evaluation release has allowed us to be confident in our development abilities with regard to leveraging the above-mentioned technologies.
List the tasks that each member of the project worked on last iteration.
Task Name | Description | Who Worked on it | %complete |
---|---|---|---|
Project automation | javadoc/junit tests in automated build | Main.JeanPhilippeDaigle | 100% |
Upgrade metamodel | To version 7 | Main.EtienneTremblay | 100% |
Tests & JUnitTestPlan | Implement tests | Main.JasonKealey, Main.JordanMcManus, Main.JeanPhilippeDaigle | 80% |
ReqHelpAbout | About and legal information | Main.JeanPhilippeDaigle | 100% |
Fork / Join conversions | Transmogrification | Main.JeanPhilippeDaigle | 100% |
Autolayout | Implemented autolayout functions | Main.JasonKealey | 100% |
Plugins and stub binding | Implementation and UI creation | Main.EtienneTremblay | 90% |
Graph traversal / loop prevention algorithms | Design and implementation | Main.JeanPhilippeDaigle | 70% |
Deletion of paths and path elements | Implementing robust handling of this requirement | Main.JasonKealey | 100% |
Conditions | Worked on conditions for ReqCharConditions | Main.JordanMcManus | 100% |
Visual improvements | Better rendering of graph elements and labels | Main.JordanMcManus | 100% |
Documentation | Framework for the help added | Main.OlivierCliftNoel | 10% |
List the tasks that each member of the project is planning on working on this iteration.
Task Name | Description | Who Will Work on it |
---|---|---|
ReqElemWait, ReqElemTimer, ReqConnections | Code & test | Main.JordanMcManus and Main.JeanPhilippeDaigle |
ReqHelpAbout, ReqBrowseHistory, ReqBrowseModel, ReqHelpOnLine, ReqDocumentation | Code & test | Main.OlivierCliftNoel |
Many bugfixes / improvements not covered by requirements | Code & test | Main.JasonKealey |
Continue working on stubs | Code & test | Main.EtienneTremblay |
Update site | Investigate & implement in build process | Main.JeanPhilippeDaigle |
User training videos | Production | Main.JeanPhilippeDaigle |
Unit testing of model manipulation commands | Coding | All |
-- Main.JeanPhilippeDaigle - 15 Jun 2005