sakai best practices alan berg, interim qa director, sakai foundation aaron zeckoski, software...

Post on 01-Jan-2016

226 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Sakai Best Practices

Alan Berg, Interim QA Director, Sakai Foundation

Aaron Zeckoski, Software Engineer, Unicon and Maint Team Lead, Sakai

Agenda• Introduction to a do-ocracy • Sakai Infrastructure

• Sakaiproject.org• Confluence, svn (+contrib), QA network• Static code review / Internationalization report• Jira/ Nightly• Sakai 3 • Distribution lists

• Eclipse / Maven/ Findbugs• My first Jira• Top five best practices• Question and Answers

March 2010 2European Sakai Conference – Valencia - Spain..

Introduction to a do-ocracy And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 3

Do-ocracy

• A community in which if an individual sees work that needs to be done, he or she does it.

• A Do-ocracy can only work efficiently if the community is polite and supportive

• Those who do things are in charge of them, and if one wants a say in how things are done then one must to do things too

• The mentality is best summed up by the phrase, If you think that you can do it better then do so.

• The most effective best practice is to get involved.*

* assuming you are willing to try hard

Sakai Infrastructure

And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 5

Plug for the Sakai Book

And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 6

http://www.packtpub.com/sakai-courseware-management-the-official-guide

Much Infrastructure

Phew, Sakaiproject.org helps you see the overview

Sakaiproject.org

Confluence ~ WIKI • Information available to the whole community• Things change • http://confluence.sakaiproject.org/dashboard.action• Work Groups /Discussion Groups

• QA• Internationalization• http://confluence.sakaiproject.org/display/SPANISH/Home• Release Management, etc

• Contrib Projects• Conferences• Projects• Ad hoc info

Subversion for Sakai 2.x

• Revision control system• https://source.sakaiproject.org/svn/sakai/

• Trunk - Latest and greatest• Tags - 2.5.6,2.6.2• Branches – 2.x.x

• https://source.sakaiproject.org/contrib/• Lots of tools and enhancements• Product council shepards the best into Sakai

QA Network• http://confluence.sakaiproject.org/display/QA/Test+Instances

Running a QA server or testing

• Get to understand the rough edges of Sakai

• Good boot camp for learning how to run in production or potential issues

• Intuitively understand the Quality of the next version of the product

• Makes you more attractive, so your organization should really do this

Static code Review

• http://qa1-nl.sakaiproject.org/codereview/

Internationalization Report

Jira

• Bug tracking database• http://jira.sakaiproject.org/secure/Dashboard.jspa• X Thousands of reports• Currently being worked through by the Maintenance Team with

support from the central Quality Assurance• Before making a report, search.• Maintenance team, starting to redefine Jira standards.• Redefinig workflow

Static Code ReviewAggressive attack vector for 2.7

• http://jira.sakaiproject.org/browse/SAK-17647• Remove NPE’s• Resource leaks• Obvious defects• Should be timeboxed• Part of a QA cycle, testing is cheaper

• Will repeat a number of times

Nightly Sakai build

• http://nightly2.sakaiproject.org/

Distribution lists

• http://sakaiproject.org/join-email-lists• Dev• QA• Management• Announcements• And the lists go on

Eclipse, Maven, FindBugs

And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 19

Eclipse – Sakai guide

• Follow the Sakai guide

March 2010 European Sakai Conference – Valencia - Spain.. 20

Eclipse – m2eclipse plugin

• Use the m2eclipse plugin to do imports

March 2010 European Sakai Conference – Valencia - Spain.. 21

• File -> Import -> Maven Projects

• Uncheck Resolve workspace projects and Separate projects for modules

Eclipse – hidden tricks

• Eclipse tricks on Stackoverflow• ctrl-space – trigger autocomplete assist• ctrl-shift-r - open resource (e.g. file)• ctrl-shift-t - open type (e.g. class)• ctrl-1 (quick fix the current error)• Camel case support (System.cTM -> currentTimeMilliseconds())• Code templates (for, npe, syso, etc.)• Knowledge is power (and efficiency)

March 2010 European Sakai Conference – Valencia - Spain.. 22

My first Jira

And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 23

How to make a JIRA issue

• Community Guidelines• Search JIRA first!• Search mailing list (nabble)• Email the dev list• Create an issue

• Steps to reproduce• Stacktrace, logs, screenshots• Use cases and test plan

March 2010 European Sakai Conference – Valencia - Spain.. 24

Top five best practice

And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 25

Best of the Best

March 2010 European Sakai Conference – Valencia - Spain.. 26

Best Best Practices

• Automated testing (again)• Work together/review• Use Findbugs/PMD• Write simple code and avoid chaining

(maintenance costs higher than create costs)

• Logging and Exception handling

March 2010 European Sakai Conference – Valencia - Spain.. 27

Complete listing of best practices for development

Questions and Answers

And now here’s a…

March 2010 European Sakai Conference – Valencia - Spain.. 28

top related