« Previous - Version 14/27 (diff) - Next » - Current version
Antonio De Marinis, 02/02/2011 08:45


= `EEA website software work Procedures` =
Purpose and scope
This procedure covers the EEA website software maintenance and development.

It is an extension of the main Scrum-based development procedure '''[wiki:WorkProcedures EEA/Eionet Work procedures]''' for additional working procedure related to the use of releases of eggs and other additional important steps specific only to the EEA website web development.

'''terms''' Milestone: same as sprint and as project phase.

P7232e: Ticket handling process
Actor: developer

'''General principles'''

  • '''Release eggs as often as possible''', especially for tickets with Highest/Blocker/Critical.
  • '''We do not eggify all products''' just for the fun of it. We eggify those we want more control over, which are also used externally and where we do major work.
  • '''We aim to 100% test coverage of only the most critical code'''. We do not aim to 100% test coverage for all code.

'''Priorities'''

  • The developer takes the list of all assigned tickets and sorts them by priority.
  • The developer takes any blocker assigned tickets first independently of milestones priorities.
  • After the above, the developer takes the tickets by milestone with earliest deadline and highest priority first.

'''The ticket process'''

for each ticket by priorities (see above):

1. put product in autocheckout slot in devel.cfg if necessary (this will inform that you are working on that product, in this way other having tickets on same products may decide to branch it)
1. svn branch if necessary (e.g. if work to be done takes at least one week to implement)
1. find. propose, implement and test solution [wiki:WorkProcedures#P7232a:Smallbugreportsorfeaturerequests as in procedure P7232a]
1. get feedback/demo solution when ticket nature requires product owner acceptance
1. write small solution description in HISTORY.txt in the product
1. write any manual steps needed in HISTORY.txt for the particular release and also update the [wiki:UpgradeSteps release calendar]
1. commit solution (eventually merge with trunk)
1. close ticket by using the [wiki:HowToAutoCloseCommentTickets#Howtoautocloseandcommentticketsbysvncommit post commit hook] this makes sure we have bi-directional references between tickets and code.
1. if ticket is in state '''highest, critical o blocker''' it is '''obligatory to create egg release''' with eea.eggmonkey
1. check [http://hudson.eea.europa.eu/ EEA Hudson] if next build if fine
1. fix any issues and re-release if necessary
1. update manual steps if necessary in release calendar
1. remove product from auto checkout to inform that development on your side is finished.