240 likes | 343 Views
MARIST/ IBM Joint Studies. Project Cloud 9 a z-Powered Learning Environment. by Michael Lavacca, Sean Goldsmith, Deyaa Abuelsaad, and Sean Dunn. Our Goal. The enablement of the Sakai application on IBM’s WebSphere Application Server and DB2 software, and the System Z Mainframe. What is Sakai?.
E N D
MARIST/IBMJoint Studies Project Cloud 9a z-Powered Learning Environment by Michael Lavacca, Sean Goldsmith, Deyaa Abuelsaad, and Sean Dunn
Our Goal The enablement of the Sakai application on IBM’s WebSphere Application Server and DB2 software, and the System Z Mainframe.
What is Sakai? • Sakai is an “adaptable, interoperable, reliable, scalable, and flexible enterprise application that supports teaching, learning and scholarly collaboration.” • The Sakai Community develops and distributes the open-source Sakai CLE, an enterprise-ready collaboration and courseware management platform that provides users with a suite of learning, portfolio, library and project tools. • Sakai’s open approach allows institutions to deploy, host and modify • the software in whatever manner best supports the institutions skills, needs and goals. • Sakai’s open development process allows local enhancements to be incorporated into future versions of the software.
Overview of Sakai Sakai Functionality Portfolio Tools FormsEvaluationsGlossaryMatricesLayoutsTemplatesReportsWizards • 160+ production sites • 1M+ Users • 110 institutional members • 60 core developers
Challenges What did we overcome to achieve our goal?
Challenges • Sakai 2.6 was a ‘moving target’ • Our contributions affected multiple components • Approximately 60 issues • 4 critical, 45 major, 8 minor, 3 trivial • Issues • Differences between Sun JRE and IBM JRE • Differences between Tomcat and Websphere • Integrating with rSmart’s DB2 work • Resolved issues via coding or configuration changes
Project Timeline(dates are 2008-2009 unless otherwise mentioned) • Notified Sakai Foundation about our goal to implement Websphere and DB2 support (2/28) • Created JIRA to track feature (4/21) • Created screencast (5/29) • Created Sakai Confluence section (6/13) • Bootcamp (6/6) • Initial test of Sakai on Websphere (6/13) • Announced on Sakai devlist (6/17) • Submitted CCLA and CLA and gained IBM OSSC approval • Development - Continuous testing and bug fixing (6/16-9/17) • Called for vote on Sakai devlist for merge (9/18) • Accepted and merged (9/23) • Code Freeze (9/29) • QA and bug fixes (10/01/08 – release of 2.6 on 07/15/09) • Development to support 2.7 release (07/09 – Present)
Process Diagram Tester Lead Developer Developer Tool Owner Discover WAS related Issue Verify (reproduce) issue Verify Issue & assign to appropriate developer Create JIRA issue Develop & create fix Verify fix in Development Environment (WAS & Tomcat) Verify fix on Testing Environment (WAS & Tomcat) Create patch & attach to JIRA issue Review fix & assign JIRA to tester Commit patch to branch & request branch merge from tool owner Review patch & merge if approved
Automated Testing Introducing Selenium IDE: The workhorse of QA! • Selenium IDE is a Firefox Add-On developed by OpenQA that allows for Agile Testing. • Selenium allows for quick and easy automated test creation through a combination of recordable actions and HTML. • We chose Selenium as a testing tool because of the necessity for reusable, scalable, and automatable test scripts that could be executed in a much shorter time span than manual testing.
Lessons Learned • Implement a well-defined internal process that complements the community’s development process • Use available automated testing tools to keep up with the community’s development pace • Communicate with the community • Start early in the project • Use community tools to share information (JIRA’s, Wiki, Weekly Calls, Sakai Devlist) • The community is helpful, ask for guidance when needed • Present at Sakai conference • Consider partnering with an educational institute • Provide access to the commercial components of your project July 2009 10th Sakai Conference - Boston, MA, U.S.A. 11
Tuning z Optimizing Sakai on System Z
Grinder • Open-Source Java based load testing framework • Can simulate hundreds of unique users on a web application • Reports statistics for HTTP method calls to Grinder console
Tuning Results We found the optimal environment for Sakai using WAS/DB2 on zLinux to be: • 2 virtual CPUs defined in Linux • 2 GB of memory defined in Linux • Two swap partitions • Swap-1 (97.644 MB) • Swap-2 (781.156 MB) • WebSphere Servlet cache enabled • WebSphere Heap Size set to 256 MB - 1280 MB Using these parameters, performance was found to increase by 185% for 25 users from the original configuration. A graph comparing the two configurations is shown below.
Solution The final product and present & future directions
Marist/IBM Academic Cloud • Collaborative Development Software • Rational Team Concert • RDz / Eclipse • Linux Images • Virtual servers for: • Research • Students • Linux Foundation • Learning Management Software • Management • Collaboration • Content • Business Intelligence Business Analytics • Cognos • SPSS • TM1 • z/OS Environment • DB2 • WAS • CICS • IMS • ISPF • z/OS Test Drive Images Virtual Desktops