Software development for EEA Søren Roug 2007
Version control We use SVN The authentication is based on the Eionet CIRCA account, so you need to self-register When you have your account ID, I must give you write access to SVN We also send s out on commit. If you want those tell me your address
Trac task list We use Trac for task management Mainly for maintenance – not new development When a task is created it is assigned to a default owner It is the owner’s responsibility to accept the task or reassign it Accepting the task is not a promise it will be done in the near future – only that the developer has seen there is a task
Trac task list When a task is finished that requires that I install an update, reassign the task to me Otherwise just close it is sent with the task list every Monday
Writing for EEA Remember to use British spelling Colour – not color Organisation – not organization 24 hour time 6 December – not December 6, 2007 The week starts on the Monday
We use OpenDocument (ODF) for the development documentation IDA recommends ODF The software is free It is OS-agnostic – works on Linux, Windows and Macintosh You can modify the content with an XML tool OpenDocument
Templates When sending documents to EEA use Microsoft formats When writing documentation, use the EEA-technical-report template and OpenDocument Put meeting agenda/minutes on Trac’s wiki
HTML standards: Accessibility Accessibility has a high attention at EEA It is required for EU institutions We have yearly competitions Therefore WAI AA must be implemented
HTML standards: Accessibility rules Always write valid XHTML 1.1 Always use the proper tags E.g. H1-H6 for headings Don’t use tables for layout Always use Webpage must be usable without JavaScript Webpage must be usable without mouse
HTML Quiz Find 8 mistakes in this code Update this code to the latest published specification
Mistakes Missing Doctype declaration on line one. Must be 2.All element tags must be lowercase 3.Missing namespace declaration on tag. Must be
Mistakes The bgcolor attribute is illegal 5.The is not closed 6.Attributes must have quotes around the value 7.The element is illegal 8.The element is empty and must be coded as 9.Bonuspoint; the intention to emphasis part of the text does not work for blind people.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" " Find 8 mistakes in this code body: { background-color: #ffffff }.bigemphasis: { font-style: normal; font-size: 110% } Update this code to the latest published specification
Quality assurance of source code EEA will introduce a Quality Management system in 2008 This means we will introduce quality assurance procedures for software development The easiest and most beneficial are unit tests They are good examples of how to use code, they act as documentation, they make other people's code less scary when you need to change it, they reduce debugging time
Example of Unit test package eionet.test; import junit.framework.TestCase; public class SampleTest extends TestCase { public void testFPU() { double computation = 2.0/17.0; System.out.println(“Result of 2/17 is “ + computation); }
Example of Unit test package eionet.test; import junit.framework.TestCase; public class SampleTest extends TestCase { public void testFPU() { double computation = 2.0/17.0; assertEquals(“2/17 should be “, , computation, ); }
HTML standards: Character sets EEA works with three alphabets: Latin, Cyrillic and Greek Always ensure you use UNICODE/UTF-8 everywhere: In the database On the webpage In the source file