Upload
sophie-flynn
View
223
Download
0
Tags:
Embed Size (px)
Citation preview
www.simupedia.fi
Bringing power of simulation to the public
About Simupedia Web portal to the simulation system Simantics Bringing the power of simulations to the general public Everyone can create their own model or run existing ones Creating a community for simulation users and
model/solver developers Users can use Simupedia registered or unregistered with
limited access Site administrators has tools for keeping the site organized
About Simupedia
• Simantics editor and player are used to run or edit the models
• There’s a solver(s) for each model• Solvers are running on a different server
Simupedia-application architecture
4
Simupedia uses Java Struts 2 framework which is based on Model-View-Controller 2 (MVC 2) Architecture
In Struts 2 every web page has an own action class, which can be easily tested with JUnit. After action is executed, the actual visualization is done in .jsp pages.
Picture from: http://www.ibm.com/developerworks/webservices/library/ws-arcstruts/
Struts 2 provides also a large amount of functionalities to help web development.
For database access we are using Hibernate and the actual database is MySQL.
Simupedia.fi Infrastructure
Simupedia server
Apache – Web server
Jboss Application Server
Simantics server cluster
Internet
Simupedia Web app
Database
Simupedia Infrastructure
• Simupedia is running on JBoss – Application server
• Using Apache as an frontend provides possibility for easy JBoss clustering with Apache’s loadbalancer
• Currently running on MySql database, but can be ported into any other database because of Hibernate
DEMO
• A demo from a normal user point of view• A demo from an administrator point of view
Results of this Project
Project progressEvaluation of the goals
Evaluation of the qualityUsed resources
Results
Project lifecycle• Planning Phase
– Understanding the domain– Gathering the requirements– Prototyping
• Implementation 1– Actual implementation starts– The plan was to get the public side ready
• Implementation 2– The coding continues– QA had a stronger influence in this iteration
Evaluation of the goal 1
Customer goal 1: ”a youtube-like public simulation site”
Verification criteria: ” Users can run experiments, create new models with model editor, publish the created models and add comments to experiments and models. The system can also be used as a marketing channel by solver developers and for advertisement-space for different companies”
– Project plan, 3.1:Goal 1.
…Evaluation of the goal 1.
• This goal cannot entirely be achieved without the Simantics player and editor
• All the supporting functionalities has been implemented
• We’ve made a player/editor-emulator to prove that our system works
• The system supports an easy advertisement integration to the site via Struts-tiles.
Evaluation of the goal 2
Customer goal 1: ” A professional site build on the public site ”
Verification criteria: ” The system has tools for team working to help the advanced model development and publishing.”
– Project plan, 3.1:Goal 2.
…Evaluation of goal 2.
• Some of the features got implemented but some of them didn’t finish until the deadline.
Evaluation of the quality
• Project size: 14920 loc including xml- and properties-files
• Bugs found: 20– Critical: 2– Major: 16– Minor: 2
• Bugs fixed: 17
Evaluation of the quality
Description Severity
Code execution in form fields critical
out of memory: permGen major
getting a new password via email does not work
Major
Long experiment description/keyword
Minor
Used resourcesDescription Realized Planned Left Joni JP Nina Ville Antti Juha Oleg Ferran
Sum (whole project) 968,9 1199,45 230,55 142,5 160,5 127 136 97,25 101 119,15 84,5
Sum (PP-iteration) 141,5 141,5 0 49 37,5 26 2 10 2 10 4
Sum (Implementation 1) 358,75 358,75 0 36,5 67 47 51,25 37 30,5 55,5 34
Sum (Implementation 2) 468,65 699,2 230,55 57 56 54 82,75 50,25 68,5 53,65 46,5
Used resources
Results
• Simupedia is up and running on address www.simupedia.fi
• Some of the group functionalities didn’t get finished because of the deadline
• Documentation for customer– Technical documentation (how to install, setup
and develop the system)– Javadoc
Work practices & tools
Work Practices
• Weekly coding sessions provided to be useful– The problems can be solved better in a group
• Slicing up the iteration into smaller pieces– Helps you keep your project on time– You can set a theme to a every sprint to
emphasize certain areas of the project
Work Practices
• Risk management– One team member leaves the team– Project manager couldn’t walk nearly for two
months– Simantics integration
– Only the Simantics integration had some impact on this project, but we manage to minimize it with an player/editor-emulator
Development ToolsTool Version
JBoss – Application server 4.2.1.GA
Hibernate 3.2.5GA
Struts2 framework 2.0.9
Ant 1.6.5
Eclipse 3.3.1
Eclipse – Subclipse plug-in 1.2.4
JUnit
Tomcat – Application server 5.x, 6.x
MySQL 5.0.45
Other tools
• IRC• MediaWiki• Email• TRAC
Thank You.