2012 December Roadmap - openmpp/openmpp.github.io GitHub Wiki
OpenM++ design details, components and priorities are defined on OpenM++ design page. Due to research nature of the project OpenM++ components, specific technologies and sequence of development must be periodically reviewed and can be changed.
Following results expected to be delivered at the end of the phase1 project (enumeration corresponds to OpenM++ design):
- OpenM++ compiler (2.1 priority1)
- OpenM++ controller for MPI cluster (2.2 priority1)
- OpenM++ modelling library (3.1 priority1)
- OpenM++ model data storage design (3.2 priority1)
- OpenM++data library (3.3. priority1)
- OpenM++ execute library (3.4 priority1)
Items above should allow to:
- create simple OpenM++ model
- compile model
- run model on (3.4 priority1) platforms (Windows and Linux, 32 and 64 bit, single PC and cluster)
- read parameters from and write results into OpenM++ model data storage
If time and resources permits following items also going to be delivered as result of the project:
- OpenM++ result viewers for Excel (1.2 priority1)
- OpenM++ basic web UI sample pages for ASP.NET (1.2 priority2)
- OpenM++ presenation libraries for .NET (3.5 priority1)
- compatibility convertor for Modgen parameters .dat files (2.3 priority1)
- compatibility convertor for Modgen source model code .mpp files (2.3 priority2)
Results of OpenM++ phase1 project effectively would cover:
- most existing Modgen desktop functionality, except of GUI
- ModgenWeb functionality on a prototype level (optional result)
- Requirements and infrastructure stage (see step 1 below). Time: one calendar month
- Compiler and runtime prototype stage (steps 2 and 3). Time: 2-3 months
- Compiler and runtime alpha version stage (steps 4 and 5). Time: 4-6 months
- Optional OpenM++ phase1 components (steps 8-11). Time: 6-16 weeks
- OpenM++ public beta release stage (step 12). Time: 6-8 weeks
Total Time: one year, excluding optional steps
-
Requirements, risks and technologies evaluation, tools, platforms and infrastructure setup
Time: one calendar month
Result: publically available design documents and development infrastructure
- Establish OpenM++ roadmap, licensing terms, evaluate targeted platforms (i.e. versions of Linux, cluster environments, etc.)
- Create OpenM++ controller for MPI cluster (2.2 priority1)
- Evaluate open source project hosting service and development tools required
- Create OpenM++ project by publishing roadmap and licence(s)
-
OpenM++ data storage design and libraries prototyping
Time: 2-3 months (must be done together with step 3 below)
Result: Prototype of OpenM++ compiler and runtime libraries
- Prototype of OpenM++ modelling library (3.1 priority1) to be used by step 3
- OpenM++ model data storage design (3.2 priority1)
- Initial version of OpenM++data library (3.3. priority1)
- Initial version of OpenM++execute library (3.4. priority1)
-
Initial version of OpenM++ modeling library
Time: 2-3 months (must be done together with step 2 above)
Result: Prototype of OpenM++ compiler and runtime libraries
- Initial version of OpenM++ modelling library (3.1 priority1)
- Initial version of OpenM++ compiler (2.1 priority1)
-
OpenM++ compiler and modeling library
Time: 4-6 months?? (must be done together with step 5 below)
Result: Alpha version of OpenM++ compiler and runtime libraries
- First release of OpenM++ compiler (2.1 priority1), sufficient to compile simplest model
- First release of OpenM++ modelling library (3.1 priority1)
-
OpenM++ execute and data libraries
Time: 4-6 months?? (must be done together with step 4 above)
Result: Alpha version of OpenM++ compiler and runtime libraries
- First release of OpenM++ execute library (3.4. priority1)
- First release of OpenM++data library (3.3. priority1)
- First release of OpenM++ model data storage design (3.2 priority1)
- First release of OpenM++ cluster controllers (2.2 priority1)
-
Results review, roadmap adjustment
Time: one calendar week
Result: Updated roadmap document and adjusted project plan
-
(optional) Initial version of OpenM++ presentation library(s) for .NET (3.5 priority1)
Time: 2-4 weeks
Result: Alpha version of OpenM++ presenation libarary for .NET
-
(optional, depends on step 7) OpenM++ for Excel (1.2 priority1)
Time: 2-4 weeks
Result: Beta version of OpenM++ for Excel
- First release of OpenM++ result viewers for Excel (1.2 priority1)
- First release of OpenM++ presentation library for .NET (3.5 priority1) (it may be Excel-specific library)
- OpenM++ compiler and runtime libraries bug fixes discovered during development
-
(optional, depends on step 7) OpenM++ basic web UI sample pages for ASP.NET (1.2 priority2)
Time: 2-4 weeks
Result: Beta version of OpenM++ web UI primer for ASP.NET
- First release of OpenM++ basic web UI sample pages for ASP.NET (1.2 priority2)
- First release of OpenM++ presentation library(s) for .NET (3.5 priority1) (this is may be ASP.NET specific)
- OpenM++ compiler and runtime libraries bug fixes discovered during development
-
(optional, depends on step 7) First release of compatibility convertor for Modgen parameters .dat files (2.3 priority1)
Time: 2-4 weeks
Result: Beta version of OpenM++ convertor for Modgen parameters .dat files
-
(optional) First release of compatibility convertor for Modgen source model code .mpp files (2.3 priority2)
Time: 2-4 weeks
Result: Beta version of OpenM++ convertor for Modgen source code .mpp files
-
First public release
Time: 6-8 weeks
Result: Public beta version of OpenM++
- Project documentation
- Final testing and bug fixes
- Project review and roadmap adjustment
- First public release