commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Xun Long Gui <>
Subject [SCXML] Development plan about SCXML Visual editor
Date Thu, 29 Apr 2010 06:39:45 GMT
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

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 (桂训龙)

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message