commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Commons Wiki] Update of "guixl" by guixl
Date Thu, 01 Apr 2010 05:37:35 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Commons Wiki" for change notification.

The "guixl" page has been changed by guixl.
The comment on this change is: This GSoC project need a mentor,any one interested,please let
me know,thank you. .
http://wiki.apache.org/commons/guixl?action=diff&rev1=1&rev2=2

--------------------------------------------------

  ##language:en
- == Xunlong Gui ==
+ == An Eclipse-based Visual State Chart XML editor/debuger that generates SCXML documents
==
+ Student Name: Xunlong Gui
+ 
- Email: <<MailTo(ustbcoder AT gmail DOT com)>>
+ Student Email: <<MailTo(ustbcoder AT gmail DOT com)>>
+ 
+ Organization/Project:Apache/Commons SCXML
+ 
+ Assigned Mentor:not yet
  
  ...
  
+ '''Proposal Abstract:'''
  
+ State Chart XML (SCXML) provides a generic state-machine based execution environment based
on Harel State Tables.It is very useful to handler complex status transfer logic,but if a
SCXML file is really so huge and complex,it will become too difficult to maintain and refactor
or to test its logic validity.This project aims to provide a Eclipse and GMF based Visual
Editor and Debugger for SCXML,and we can also use it to generate SCXML document and specific
codes according to a State Chart XML.
  
+ '''Detailed Description:'''
+ 
+ [[http://www.w3.org/TR/scxml/|State Chart XML]] is very useful to handler complex status
transfer logic. [[http://commons.apache.org/scxml/|Commons SCXML]] is an implementation aimed
at creating and maintaining a Java SCXML engine capable of executing a state machine defined
using a SCXML document, while abstracting out the environment interfaces. Now,more and more
developers use it to help handler complex program logic,but edit a State Chart XML is so boring
and mistakable.If a SCXML file is really so huge and complex,it will become too difficult
to maintain and refactor or to test its logic validity.For example,if a SCXML flow has more
than 20 States,it is possible to form an dead loop due to developer's glitch. In fact, the
archives of the Apache Commons SCXML user mailing list will show many queries asking for it
over the years.Obviously, [[http://www.eclipse.org/|Eclipse]] is the most power and popular
Integration Develop Environment for developers, if it supplies an editor or even debuger for
State Chart XML, isn't it cool ?
+ 
+ This project aims to develop an [[http://www.eclipse.org/modeling/gmf/|GMF]] based Eclipse
plunge-in visual editor which is capable of showing a graphical representation of the process
model and allows for adding breakpoints to activities, variable modifications and managing
the debugging process for SCXML.I have already done some work on both SCXML and Eclipse GMF,even
i tried to implement a SCXML editor using GMF and got a little achievement,so i want to develop
this editor with GMF and have enough confidence to finish it.
+ 
+ Usually,State Chart XML file will be running on a SCXML engine,such as our Commons SCXML,if
some one only want to achieve the SCXML file's business logic,but do not want to or can not
use some SCXML engine due to some reasons(for example,some guy want to run scxml on web page,but
he can not find JavaScript SCXML engine, or some guys want to use SCXML to express his logic
in Java,but he does not want to import so many jars),this tool can export SCXML file's logic
to executeable Java,C++,JavaScript and python code which has the same state logic translation
with the SCXML file.
+ 
+ So,I want to mainly complete the following funcitons:
+ 
+  1. Create a Eclipse plunge-in and GMF based Visual editor for SCXML. This editor can be
used to add or edit State Chart Diagram by drap and drop operations, and user can modify State
properties of SCXML in Eclipes property view.
+  1. Implement debug function for the editor. This SCXML editor will integrate Apache Commons
SCXML engine to run State Chart XML file, show context attributes and variables at the breakpoints.Implement
step by step,state by state debug function.
+  1. State Chart XML export function. State Chart Diagram can be saved as a SCXML file.
+  1. Code generation function. This is a tentative job. In the future,this tool will can
generate Java,C++,JavaScript and Python codes according to State Chart Diagram. But as we
know,i have only more than two months to finish a GSoC project,so, i will hold this as a long
term open source project under Apache,during this summer,if i have enough time,i will finish
Java code generation job.In the short run, i will implement JavaScript,C++ and Python code
generation jobs.
+ 
+ '''Additional Information:'''
+ 
+ '''Things i have done already:'''
+ 
+ I have been studying W3C's recommendation specification about SCXML, read some code generation
relative documents,subscribe Eclipse plunge-in develop,GMF and Apache Commons SCXML mail list,discuss
technology details in the mail lists. As GSoC suggested it, mail list is really a good place
to discuss project ideas and some other details. I use the mail lists whenever possible to
clarify the doubts by asking questions from the expertsFeedback that i received from mail
lists helps me so much, thanks for self-giving open source developers and open source spirit.
+ 
+ If i want to start my project, background information about Eclipse plunge-in and GMF is
prerequisite. Fortunately, i have more than three years Eclipse plunge-in development experience
and be familar with GMF. In fact, i have developed a GMF based SCXML editor rudiment already.
+ 
+ In order to implement code generation for Java, i must know well about Java code generation
relative theory. In fact, i have several years Java development experience,and so familiar
with It. So, in the future, i have confidence to do it well.
+ 
+ '''Time Schedule:'''
+ 
+  * March 29 - April 9: Submitting the project proposal
+  * April 26 - May 24:Community Bonding Period (April 26 - May 24): Get to know mentors,
read documentation, and prepare development environment.
+  * May 25 - Jun 8: Implement GMF based basic visual editor for State Chart XML
+  * Jun 9 - Jun 16: Implement properties edit operations in Eclipse property view, finish
SCXML file export function
+  * Jun 17 - Jun 21: SCXML debuger design and  validate
+  * Jun 22 - Jun 30: Intergate with Apache Commons SCXML engine, implement debugor function
coding job
+  * Jul 1 - Jul 7: Finish SCXML document export design job,including generation guidance
UI design and generate system design
+  * Jul 8 - Jul 12:Finish SCXML document generation coding job
+  * Jul 13 -Jul 31: Design Java code generation module, do my best to do more coding job
for Java generation module
+  * Aug 1 - Aug 9: Write test cases to test generator,fix bugs do some improvement jobs
+  * Aug 10 -Aug 16: Scrub code, write tests, improve documentation, etc
+  * Aug 17 - Aug 20: Submit all my work
+ 
+ '''Something about me'''
+ 
- My name is Xunlong Gui.My major is computer scienece and technology,and i am a postgraduate
student of University of Science and Technology Beijing.I am familar with Eclipse,Java,GMF,SCXML,XML,XSL
and some other open source projects,such as struts,spring,jstl,dojo and so on and have several
years of Java development experience.I am familiar with many project in Apache Foundation,Eclipse
Foundation as well as Dojo Foundation .
+ My name is Xunlong Gui.My major is computer scienece and technology,and i am a postgraduate
student of University of Science and Technology Beijing.I am familar with Eclipse,Java,GMF,SCXML,XML,XSL
and some other open source projects,such as struts,spring,jstl,dojo and so on and have several
years of Java development experience.I am familiar with many project in Apache Foundation,Eclipse
Foundation as well as Dojo Foundation.
+ 
+ '''My open source development experience:'''
+ 
+  * Built a tool for struts2 to generate XML config file
+  * Develop a Eclipse plugin for Apache SCXML engine which was a visualizing tool for navigating
and editing complex SCXML state description XML.
+ 
+  '''What i did in my student period'''
+ 
+  * 2005: Won China Computer World Scholarship (relative info:http://www.etiri.com.cn/publish/article_show.php?id=~26536529455)
+  *  2007.1 - 2009.7 : Work in IBM China Research Laborary,my team focus on telecom J2EE
solution,get lots of XML relative knowledge
+  * 2009.8 - 2010.3 : Work in IBM China Development Laborary as a intern
  ----
  
  CategoryHomepage

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Mime
View raw message