Name: Feng, Huining (a.k.a. Thomas)
Gender: Male
Citizenship: China
Date of Birth: Oct. 11, 1979
Place of Birth: Guangzhou, Guangdong, China
Mail Address: Thomas Huining Feng, 3454 Stanley Apt. 14,
Montréal, QC H3A 1R8, Canada
Telephone: +1-514-5676162 (cell); +1-514-9341306 (home);
+86-20-81682116 (permanent)
Email: hfeng2@cs.mcgill.ca
Homepage: http://msdl.cs.mcgill.ca/people/tfeng/
M.Sc., School of Computer Science, McGill University, Montréal, Canada, June 2004. Thesis:
DCharts, a formalism for modeling and simulation based design of reactive software systems
B.Sc., Department of Computer Science and Technology, Nanjing University, Nanjing, China, June 2002
- Simulation and code generation of UML models (in particular,
statecharts);
- Modelling and meta-modelling;
- Formal methods, model checking and model analysis;
- Parallel and distributed simulation.
- SVM (Statechart Virtual Machine) - an interpretative
simulator for DCharts. It supports distributed (Timewarp)
simulation, modular communication between models (via ports),
model verification and performance analysis. It is also a plugin
simulator for AToM3 (A Tool for Multi-formalism and
Meta-Modelling), a graphical modelling and meta-modelling
environment developed in the MSDL (Modelling, Simulation and
Design Lab) of McGill University.
http://msdl.cs.mcgill.ca/people/tfeng/?research=svm
- SCC (StateChart Compiler) - a code synthesizer that
generates efficient Python, C++, Java and C# code from DCharts
models. It takes a series of steps to optimize and analyze the
models. The generated code preserves the behavior of the original
models, and it exposes a well-defined interface for reuse.
http://msdl.cs.mcgill.ca/people/tfeng/?research=scc
- Timewarp - distributed simulation in virtual time. Due
to the message delay in a network, local time of a component may
conflict with the global time, which is kept in a (conceptually)
central component. In case of such a conflict, the component needs
to roll back to one of its previous checkpoints.
There are two branches of this project: checkpointing based on
serialization implemented in Python (mainly used in SVM) and
incremental checkpointing implemented in Java and AspectJ (used
in the code generated by SCC).
http://msdl.cs.mcgill.ca/people/tfeng/?research=timewarp
- SVMDCP (SVM Distributed CheckPointing) - a set of
tools to automatically add distributed incremental checkpointing
and rollback support to existing Java source code. It uses
JavaCC to parse and analyze the source code. AspectJ code,
which handles checkpointing and rollback, is generated and woven
with the old code. With this, the user can checkpoint a state of
the system and roll it back to that state at a later time. It is
the basis of the Timewarp simulation for the Java code of
DCharts models generated by SCC.
http://msdl.cs.mcgill.ca/people/tfeng/?research=svmdcp
-
- 1
-
Thomas Huining Feng and Hans Vangheluwe.
Component-based specification using discrete-event modelling,
simulation, and execution.
Simulation: Transactions of the Society for Modeling and
Simulation International, November 2004.
Special Issue: Component-Based Modeling and Simulation. (submitted).
-
- 1
-
Thomas Huining Feng and Hans Vangheluwe.
Modeling and simulation based design with DCharts.
In Conference on Conceptual Modeling and Simulation (CSM2004),
October 2004.
Genoa, Italy. (submitted).
- 2
-
Thomas Huining Feng and Hans Vangheluwe.
Case study: Consistency problems in a UML model of a chat room.
In Sixth International Conference on the Unified Modelling
Language (UML 2003), Workshop on Consistency Problems in UML-based Software
Development II, October 2003.
San Francisco, USA.
http://msdl.cs.mcgill.ca/people/tfeng/docs/con03.pdf.
- 3
-
Thomas Huining Feng.
A virtual machine supporting multiple statechart extensions.
In A. Bruzzone and Mhamed Itmi, editors, Summer Computer
Simulation Conference (SCSC 2003), Student Workshop, pages S147 - S166. The
Society for Computer Modelling and Simulation, July 2003.
Montréal, Canada.
http://msdl.cs.mcgill.ca/people/tfeng/docs/svm03.pdf.
- 4
-
Thomas Huining Feng and Qimei Chen.
Analyzing an improvement of MPLS-Net structures for the decrease
of dialogue transmission delay.
In IEEE International Conference on Systems, Man and
Cybernetics, volume 4, October 2002.
Hammamet, Tunisia.
http://msdl.cs.mcgill.ca/people/tfeng/docs/ana02.pdf.
- 5
-
Thomas Huining Feng and Qimei Chen.
A tree view of the MPLS FEC strategy.
In International Conference on Telecommunications (ICT 2002),
June 2002.
Beijing, China.
-
- 1
-
Thomas Huining Feng and Hans Vangheluwe.
Case study: Consistency problems in a UML model of a chat room,
October 2003.
Presented at Sixth International Conference on the Unified Modelling
Language (UML 2003), San Francisco, USA.
http://msdl.cs.mcgill.ca/people/tfeng/docs/uml03p.pdf.
- 2
-
Thomas Huining Feng and Hans Vangheluwe.
Component-based chat room development in SVM (Statechart
Virtual Machine), October 2003.
Presented at Computer Science Colloquium, Old Dominion University,
Norfolk, USA. http://msdl.cs.mcgill.ca/people/tfeng/docs/odu03p.pdf.
- 3
-
Thomas Huining Feng.
SVM: A virtual machine supporting multiple statechart extensions,
July 2003.
Presented at Summer Computer Simulation Conference (SCSC 2003),
Montréal, Canada.
http://msdl.cs.mcgill.ca/people/tfeng/docs/svm03p.pdf.
-
- 1
-
Thomas Huining Feng.
Statechart model simulation and execution in Statechart Virtual
Machine, October 2003.
Research report.
http://msdl.cs.mcgill.ca/people/tfeng/docs/svm/.
- 2
-
Thomas Huining Feng.
SCC (StateChart Compiler) 0.1 documentation, November 2003.
Research report.
http://msdl.cs.mcgill.ca/people/tfeng/docs/scc/.
- 3
-
Thomas Huining Feng.
Timewarp-enabled distributed extended statechart simulation in SVM,
July 2003.
Research report.
http://msdl.cs.mcgill.ca/people/tfeng/docs/timewarp/.
- 4
-
Thomas Huining Feng.
Action semantics for an executable UML (COMP601 reading project),
April 2003.
Computer science reading project.
http://msdl.cs.mcgill.ca/people/tfeng/docs/as/.
- 5
-
Thomas Huining Feng and Shuqing Wu.
Distributed recovery block, April 2003.
Software Fault Tolerance course project.
http://msdl.cs.mcgill.ca/people/tfeng/docs/recovery/.
I am good at programming in a lot of contemporary languages such as C,
C++, C#, Java, Pascal, Python, LISP, Perl, PHP, Assembly and BASIC.
Currently I mostly use C++, Java and Python.
I started programming at the age of 11, and now I have a programming
experience of about 14 years.
- GPA: 3.88
- GRE: total 2390, verbal 790 (99%), quantitative 800
(98%), analytical 800 (99%); taken in Aug. 2001
- AGRE (Computer Science Subject): 850 (93%); taken in
Nov. 2001
- TOEFL: total 653, listening 61, grammar 68, reading 67,
writing 5.0; taken in May 2001
Dean's Honour List, School of Computer Science, McGill University, Canada. 2004. (Master's
thesis: DCharts, a formalism for modeling and simulation based design of reactive software systems)
Differential Fee Waiver, McGill University, Canada, 2002 - 2003
People's Honors, Nanjing University, China, 1999, 2000, 2001
First class prize, Computer Programming Contest in Academics and
Science Festival, Pukou Campus, Nanjing University, China, 1999
Second class prize, National Olympics on Informatics (Computer),
China, 1997
Second class prize, Guangzhou Software Design Competition, China, 1997
Third class prize, The 14th National Physics Contest, China, 1997
Second class prize, National Olympics on Informatics (Computer),
China, 1996
First class prize, Informatics Contest of Guangzhou Youths, China,
1995
First class prize, Contest of Computer Program Designing in Guangzhou
City, China, 1992
Thomas Huining Feng
2004-05-28