{"id":3613,"date":"2015-11-29T16:20:45","date_gmt":"2015-11-29T13:20:45","guid":{"rendered":"http:\/\/www.water-simulation.com\/wsp\/?p=3613"},"modified":"2017-12-12T22:15:15","modified_gmt":"2017-12-12T19:15:15","slug":"re-engineering-the-user-interface-of-epanet","status":"publish","type":"post","link":"http:\/\/www.water-simulation.com\/wsp\/2015\/11\/29\/re-engineering-the-user-interface-of-epanet\/","title":{"rendered":"Re-Engineering the user interface of EPANET"},"content":{"rendered":"<p>Two important initiatives started this year. The first is the announcement of the <a href=\"http:\/\/www.water-simulation.com\/wsp\/2015\/06\/13\/announcement-of-an-open-source-epanet-initiative\/\">Open Source EPANET project<\/a>\u00a0which is currently focused on the EPANET engine (solver). The second is a\u00a0tender (or s<a>olicitation<\/a>) issued by the USEPA for the &#8220;<strong><em>Re-Engineering SWMM and EPANET User Interface Application Software Architectures<\/em><\/strong>&#8221; (search <a href=\"https:\/\/www.fedconnect.net\/FedConnect\/PublicPages\/PublicSearch\/Public_Opportunities.aspx\">here<\/a> for reference number: RFQ-DC-15-00153).<\/p>\n<p>I haven&#8217;t seen a formal announcement by the USEPA regarding the &#8220;winner&#8221; of this bid but according to this\u00a0<a href=\"http:\/\/www.aquaterra.com\/about\/news20151022.php\">press release<\/a>,\u00a0<a href=\"http:\/\/www.aquaterra.com\/\">AQUA TERRA Consultants<\/a> got the job:<\/p>\n<blockquote><p>AQUA TERRA Consultants, a division of RESPEC Consulting &amp; Services, has been selected by the U.S. EPA to re-engineer the user interface application software architectures for two of their urban water simulation tools &#8211; the Stormwater Management Model (SWMM) and software for modeling water distribution piping systems (EPANET). The project will focus on the design of a modular and extensible User Interface (UI) application software architecture that will enable deployment of new application features created by EPA, third party developers, and end users employing application \u201cplug-ins.\u201d The new design will make the user interfaces more approachable by the open-source user community and provide a path toward mobile applications<\/p><\/blockquote>\n<p>What should we expect (according to the statement of work in the s<a>olicitation<\/a> documents):<\/p>\n<ul>\n<li>The application development framework shall be modern, free\u00a0and\u00a0open source.<\/li>\n<li>The framework project must have a strong development roadmap including support for<br \/>\nmobile applications and good developer documentation with examples.<\/li>\n<li>A modular <a href=\"http:\/\/plugins.epanet.net\">epanet plugins<\/a> architecture which should encourage development of new features and future expansion of the application.<\/li>\n<li>High level scripting support within the application will allow users to more easily manage input data, drive specialized simulations, analyze output data, and will give users the tools to develop plugins directly within the application itself.<\/li>\n<li>Rebuild of SWMM and EPANET applications using freely available open-source tools.<\/li>\n<\/ul>\n<p>The SWMM and EPANET user interfaces are expected\u00a0to be\u00a0using the following software development architecture:<\/p>\n<ul>\n<li>Platform \/ Operating System: Desktop application primary target Microsoft Windows; secondary\u00a0targets Mac OS X, and Linux. Future potential for mobile applications.<\/li>\n<li>Language: C++ \/ Python; Conform to standard C++ for cross platform compatibility;<\/li>\n<li>Compiler Tool Chain: Clang, GCC, Intel; Python 3.0<\/li>\n<li>Application Development Framework: Qt \/ PySide or PyQt<\/li>\n<li>Plugin Support: Plugins written in C++ or Python<\/li>\n<li>Scripting Support: Python API for UI and model toolkits<\/li>\n<\/ul>\n<p>The basic requirements are:<\/p>\n<ul>\n<li>Backwards Compatibility: general user interaction paradigm; input and output file formats<\/li>\n<li>New Functionality: undo\/redo support; worksheet style input data display\/editing<\/li>\n<li>GIS Integration: data import\/export from\/to geodatabase; map rendering; input\/output data manipulation<\/li>\n<li>Special Features: plugin manager; application scripting support; console plugin (iPython); info graphic style project summary, simulation status, and results display; internationalization support<\/li>\n<li>Help System: Integration with web based user support portal<\/li>\n<\/ul>\n<p>The <a href=\"https:\/\/www.usaspending.gov\/Transparency\/Pages\/AwardSummary.aspx?AwardID=44886477\">award<\/a> of this work to\u00a0AQUA TERRA wad made\u00a0on September 1st 2015 so I would assume that the official starting date of the project is around that time, by the end of September. So when should we expect to see something? Well, the\u00a0base work is expected to take about one year and should include the following deliverables:<\/p>\n<ol>\n<li>\u00a0Quality Assurance Project Plan (QAPP).<\/li>\n<li>Application Features Requirements Document (AFRD).<\/li>\n<li>Software Application Architectural Design.<\/li>\n<li><strong>Minimum Testable Products (MTP)<\/strong> &#8211; these\u00a0are the actual products. &#8220;Software code, including that for automated unit and regression testing, shall be developed in\u00a0an open and transparent manner with frequent \u201ccheck-ins\u201d into the designated source code\u00a0management system.&#8221; &#8211;\u00a0<strong>a proposed schedule of MTPs shall be submitted within 120 days of the project\u00a0start date<\/strong>.<\/li>\n<li>Testing and\u00a0delivery of final products.<\/li>\n<li>Computational Engine Support &#8211; this section is a bit of a mystery for me. The border line between the UI and the engine is not clear yet.<\/li>\n<\/ol>\n<p>The USEPA\u00a0intend to share project documents and will accept public comments on them. As mentioned above, the source code of the project is expected to be open\u00a0so the community will have access to the source code at all times. I hope everything will go as planed and the users community will play an active role in this process. From the little communication I had with the USEPA personal working on this I feel that we are in good hands!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Two important initiatives started this year. The first is the announcement of the Open Source EPANET project\u00a0which is currently focused on the EPANET engine (solver). The second is a\u00a0tender (or solicitation) issued by the USEPA for the &#8220;Re-Engineering SWMM and &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"http:\/\/www.water-simulation.com\/wsp\/2015\/11\/29\/re-engineering-the-user-interface-of-epanet\/\"> <span class=\"screen-reader-text\">Re-Engineering the user interface of EPANET<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,4],"tags":[229,228],"class_list":["post-3613","post","type-post","status-publish","format-standard","hentry","category-epanet-related","category-free-software","tag-aqua-terra","tag-usepa"],"_links":{"self":[{"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/posts\/3613","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/comments?post=3613"}],"version-history":[{"count":2,"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/posts\/3613\/revisions"}],"predecessor-version":[{"id":3719,"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/posts\/3613\/revisions\/3719"}],"wp:attachment":[{"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/media?parent=3613"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/categories?post=3613"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.water-simulation.com\/wsp\/wp-json\/wp\/v2\/tags?post=3613"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}