Hi Rahul, Althrough Google told us that students should start coding job at May 25, but i think, for me and this project, it is time to move now. I think this tool is not a simple tool, two months long time is not enough actually. I started coding experience job weeks ago and got a demo about this project, but it is just a demo, if we want to make it well developed and practical, it is a simple thing. Now, here is my develop plan, we should finish it step by step, there are mainly four steps in all.
Step 1. Finish basic data model design, create a visual state add/edit/delete tool We can use GMF to generate many codes for this tool, but the premise is that we must have a correct EMF data model about this tool. For example, only if we have a ASSIGN STATE in this data model, then we can find a ASSIGN STATE component in toolbar of final editor. As we know, a SCXML document has only one START state, if we make wrong in the EMF data model, may be in the final editor, we can add several START states for a SCXML document, obviously, it is wrong. So,EMF data model is very important for a GMF visual editor, and SCXML specification is not a simple specification, i should read it carefully and even get a proper data model for this project. Fortunately, i have cleaned all the technology difficulites in this period. I need just time to finish this period. I think it will cost me 5-6 weeks. Step 2. SCXML document export and import function After we finish a SCXML document edit job in this tool, we should export it to a XML format document, this is a data model to xml document job, not very hard. Also, we should supplies SCXML document import function, users use this tool to import existing SCXML document, then edit, and export it again. I think this is also a regular job process. In this period, we should finish some Eclipse extension point implemention job as well as data model to XML transfer job, it will cost me 2-3 weeks. Step 3. Degug function It is hard to finish a fantastic debug tool, especially in such a short time. But at least, i will finsih state logic check part for this tool. For example, if there is a dead loop in the state transition diagram, this tool will give user some tips and warnings. Step 4. Code generation function If we have time left, i want to finish JAVA code generation job for this tool. It will generate JAVA classes with the same function with editing SCXML document. Rahul, as you pointed before, Step 1 and 2 are the core components for this tool, so i will pay much attention to this two parts, if we can finish these two parts well, many people will benefit from this tool. I want to contribute this tool to Apache Commons SCXML project as a beta publish version once i finish these two steps. Then,more user and developers can find it in Apache web site, may be they can also give us some good advises to improve it. Step 3 and 4 is extend functions for this tool, it will make this tool better, but these two parts exist in my brain only, i have not done any experiments to get right ways to impelent them. I will try my best to finish them well, may be in Google Summer Code time, i can not finish them, but i will still work for them. This is my plan, your opinion ? Thank you ! -- Best Regards Gui Xun Long (桂训龙)