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: 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 progress Evaluation of the goals Evaluation of the quality Used 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: loc including xml- and properties-files Bugs found: 20 – Critical: 2 – Major: 16 – Minor: 2 Bugs fixed: 17
Evaluation of the quality DescriptionSeverity Code execution in form fieldscritical out of memory: permGenmajor getting a new password via does not work Major Long experiment description/keyword Minor
Used resources DescriptionRealizedPlannedLeftJoniJPNinaVilleAnttiJuhaOlegFerran Sum (whole project) 968,91199,45230,55142,5160, , ,1584,5 Sum (PP-iteration) 141, , Sum (Implementation 1) 358,75 036, ,253730,555,534 Sum (Implementation 2) 468,65699,2230, ,7550,2568,553,6546,5
Used resources
Results Simupedia is up and running on address 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 Tools ToolVersion JBoss – Application server4.2.1.GA Hibernate3.2.5GA Struts2 framework2.0.9 Ant1.6.5 Eclipse3.3.1 Eclipse – Subclipse plug-in1.2.4 JUnit Tomcat – Application server5.x, 6.x MySQL5.0.45
Other tools IRC MediaWiki TRAC
Thank You.