MilestoneThreeStatusReport - JUCMNAV/projetseg-update GitHub Wiki
Status Report
Project: UCMNav Eclipse Plug-in
Iteration: MilestoneThree
Implementation Status
In a sentence or two briefly describe what can currently be run to demonstrate the system. In other words, what is now available for feedback from the customer and testing within the development team? Attach or include a few sample screen shows to illustrate the progress.
In this iteration, we created a new prototype that allows us to mitigate the risks associated with the paths, one of the most complex elements in our application. We succeed in creating the desired behaviour and appearance using what was available in the GEF framework. Furthermore, we migrated this prototype away from our prototype model to the model supplied by our customer.
Screenshot
Highlights
List any items of note. Breakthroughs, accomplishments, major decisions, or changes in the project plan. Are you on schedule, ahead of schedule or behind schedule?
- Model received from client.
- Quality Assurance process defined.
- Paths are now rendered as splines.
- Model is integrated in our prototype.
- UCM Element behaviour analyzed
- We know how we are going to test our requirements and we know when they will be considered complete.
- Change Request process put in place.
In terms of the proposed milestone iterations, we are late in quality assurance. However, we have realized that following this exact model isn't fit for us as we are integration tons of varied small features inside a huge framework. Our tests need to be defined at the same time as our architecture. As far as our prototypes go, we're way ahead of schedule. We know exactly what we have to do for 80% of our requirements because we have done so much prototyping.
Risks or Issues List
In the following table, list any risk or issue that needs to be managed that is critical to the success of the project. This could be anything from we need to get good test data from our customer, to how do we ensure the system is usable, to performance is unacceptable. This should be a complete historical list that is kept from the beginning of the project until the end. Status should be one of New, Ongoing, Closed. The resolution column should be filled in if the issue or risk is closed. Normally, I would expect a project to have about 1-5 issues or risks they are managing that are New or Ongoing at any given time. If you have more than that then either you have a project in serious trouble or your criteria for what is 'critical to success' is to loose.
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. | - | Ongoing |
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 | 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 | Element behaviour | We're not sure how we will determine our element's behaviour. We're not sure to what point our meta-model will define this. We want to avoid having to specify this for all elements. | We have analyzed and categorized our elements behaviour | 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. | - | 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 | - | Ongoing |
15 Feb 2005 | Unit tests | We haven't formally written down our unit tests as they are too closely bound toour architecture. | - | Ongoing |
15 Feb 2005 | Get Coding | Not everyone is as familiar with the framework because not everyone was prototyping | - | Ongoing |
New Tools * 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. Our hello world prototype has allowed us to feel comfortable with GEF and EMF.
Tasks in Progress or Completed This Iteration:
List the tasks that each member of the project worked on last iteration.
Task Name | Description | Who Worked on it | complete |
---|---|---|---|
Build prototype views | Define and prototype all the views in the system. Major UI work here. | Main.OlivierCliftNoel, Main.JeanPhilippeDaigle | 100% |
Test plan | Write the test plan for our different requirements | Main.OlivierCliftNoel | 100% |
Views | Implement first version of all views | Main.JeanPhilippeDaigle | 50% |
UI Implementation | Define all hooks that must be made for relevant notifications | Main.JeanPhilippeDaigle | 50% |
Define editpart hierarchy | So that we can bind paths to components, etc. | Main.JordanMcManus | 25% |
Investigate coding | Attempt to code as many features as possible to understand what needs to be done and what can be done very quickly in our prototype. | Main.JordanMcManus | 70% |
Redefine architecture | Following lessons learned, redesign the system so that our architecture is sufficiently robust to continue development | Main.EtienneTremblay | 50% |
Refine requirements | According to feedback, go to a more granular level for requirements so that our team knows exactly what needs to be implemented. | Main.JasonKealey | 80% |
Research Use Case Maps | Need to define a way to express how elements can behave together but first, we need to know what these behaviours are. | Main.JasonKealey | 80% |
Integrate new model | Replace our old temporary model with the draft supplied by Daniel | Main.EtienneTremblay | 100% |
Change Request process | Form + process put online on TWiki. | Main.JasonKealey | 100% |
Prepare presentation | for MilestoneThree | Main.OlivierCliftNoel, Main.JeanPhilippeDaigle, Main.JasonKealey | 100% |
Tasks to be worked on next Iteration:
List the tasks that each member of the project is planning on working on this iteration.
Task Name | Description | Who Will Work on it |
---|---|---|
Decompose requirements | into micro-objectives in BugZilla | Main.JasonKealey |
Architecture | define global architecture | Main.EtienneTremblay |
Formal tests | Write down formal tests for all requirements | Main.OlivierCliftNoel |
Use Cases | Develop formal use cases to be tested | Main.JeanPhilippeDaigle |
Write EditCommands/EditPolicies/EditParts | Start coding various portions of the implementation that are to be used in automated tests | All |