[DG: Open Forum] [oae-dev] Sakai OAE Update

Nicolaas Matthijs nicolaas.matthijs at caret.cam.ac.uk
Thu Oct 25 08:31:20 PDT 2012


Hi Harry,

I think it depends on the type of UI customisation work you're doing, so we'll probably have to respond on a case by case basis. 

I don't expect there to be many changes to the HTML and CSS code, widget structure will remain the same and I expect that many of the client-side API method signatures will remain the same. However, the Javascript code will need to be updated to work with the new REST endpoints, which will hopefully allow us to do pretty major simplifications to that code.

The process of hooking up the new backend to the UI has already started and will be going on for the foreseeable future. As not all of the features have been re-implemented yet, there's obviously going to be some disabled / non-functional bits for now.

Hope that helps,
Nicolaas


On 21 Oct 2012, at 02:30, Harry Wang wrote:

> Hi Nicolaas,
> 
> Thanks for the update. I am glad to know that the UI will be retained but I wonder to what extent, e.g. what needs to be done for the customized UI to run on the new backend? Should we stop customization work on the UI that is running on Nakamura so that we do not waste our time and resources? When do you think the UI can be hooked up with the new backend?
> 
> Harry
> 
> On Oct 18, 2012, at 7:25 PM, Nicolaas Matthijs wrote:
> 
>> Hi everyone,
>> 
>> As most of you know, a number of Sakai OAE stakeholder organizations have withdrawn from the managed project over the last 6 months.  Key reasons cited for these departures include:
>> 
>> - Concerns about the scalability and viability of the Nakamura architecture
>> - Slower than desired progress on feature development 
>> - Misalignments between stakeholders
>> 
>> These withdrawals have had a significant negative impact on the level of financial and in-kind contributions underwriting the development team.  In addition, reports from piloting institutions together with performance test data produced by the team have made it clear that OAE’s performance and scalability characteristics leave much to be desired.  While sufficient for small-scale pilots involving a few thousand users, OAE’s performance under load is wholly insufficient for adopters considering an enterprise production deployment supporting tens of thousands of users and above, including the web-scale deployments we are likely to see in the future.  Upgrading between versions also remains a challenging exercise for operations teams.  While the remaining stakeholders believe that the concepts embodied in OAE’s design work remain relevant and valuable, current circumstances dictate that we adopt a new technical approach.
>> 
>> In late August we recommended to the project stakeholders that the managed project cease development on OAE Nakamura, setting aside its technical debt in favor of a re-engineered back-end that re-positions the project as a multi-tenant, highly scalable, cloud-ready application.  The strategy that we set out involves an initial and temporary reduction in application scope; existing features will be disabled until their corresponding back-end services have been recreated.  Our proposal was accepted, and in early September a reconstructed and considerably leaner project team commenced work on providing a new back-end architecture written in node.js and using Apache Cassandra for persistence.[1]  The code is licensed ECL 2.0 and is publicly available in a Github repo named “Hilary”.[2]  Additional repos have been created for the test data model loader, Tsung performance tests, nightly performance test scripts and puppet deployment scripts.[3]
>> 
>> We have retained OmniTI, a web performance and scalability consultancy, to help guide our work.  A series of one-week sprints have been organized in order to keep the pace of development high as well as allowing for quick resets under the “fail fast” rule.  We start from a set of purposefully designed and documented REST APIs (see attachment).  Each REST API and its accompanying internal service will include unit and integration tests. The team will set up and maintain a reference deployment in the cloud, on which extensive nightly performance tests will be run. The existing UI, benefiting from a number of client-side performance improvements included in the OAE 1.4.0 release, will be retained along with the Widget Library and SDK.  Administrative UIs will be added and there's also a desire to start introducing some of the new unimplemented UI designs along the way, as these have been through several rounds of usability testing and were presented to the community at the summer Sakai/Jasig conference.
>> 
>> The team has set itself a mid-December deadline--with intermediate deadlines and sanity checks along the way--to produce working code that demonstrates that the chosen path is viable.  Attached is the September progress report outlining the first 30 days of work along with our API doc and “alternative scenarios” proposal.  While the proposed architecture remains under evaluation and could change, we believe that our recommendation to retire OAE Nakamura in favor of a re-architected multi-tenant, cloud-ready platform featuring  purposefully designed REST APIs and services that are properly instrumented and continually measured is the right approach to take.
>> 
>> Kind regards,
>> Nicolaas and Anthony
>> 
>> [1] http://nodejs.org/, http://cassandra.apache.org/
>> [2] https://github.com/sakaiproject/Hilary
>> [3] https://github.com/sakaiproject/OAE-model-loader, https://github.com/sakaiproject/node-oae-tsung, https://github.com/sakaiproject/oae-nightly-stats, https://github.com/sakaiproject/puppet-hilary
>> 
>> <September Progress Report.pdf><API.pdf>_______________________________________________
>> oae-dev mailing list
>> oae-dev at collab.sakaiproject.org
>> http://collab.sakaiproject.org/mailman/listinfo/oae-dev
> 



More information about the openforum mailing list