Project

General

Profile

FirstDeveloperMeetingMinutes » History » Version 41

Andreas Kohlbecker, 06/27/2018 08:44 AM

1 17 Markus Döring
{{>toc}}
2
3
4
5 1 Pepe Ciardelli
6 35 Markus Döring
# First EDIT Developer Meeting - BGBM Berlin September 6-7, 2007
7
8 37 Markus Döring
See wiki:DeveloperMeeting2007 for agenda and presentation downloads!
9 2 Pepe Ciardelli
10
11
## Meeting minutes
12
13
_Note: areas requiring further discussion are in italics._
14
15
16
17 5 Pepe Ciardelli
18
19 2 Pepe Ciardelli
## Day 1 - Developer Presentations
20
21
The first part of the meeting consisted of 10 Minute Developer Presentations (listed below). Any relevant discussion/decisions or suggestions have also been recorded.
22
23 38 Markus Döring
Presentations themselves can be found at the bottom of wiki:DeveloperMeeting2007
24
25 1 Pepe Ciardelli
26 5 Pepe Ciardelli
1. **Malte Ebach (BGBM) – BDTracker** 
27 2 Pepe Ciardelli
28
29
Please start using the Tracker, we would like to establish this as something that exists well beyond EDIT’s 2011 end date.
30 1 Pepe Ciardelli
31 2 Pepe Ciardelli
32 5 Pepe Ciardelli
2. **Lutz Suhrbier (FUB) - Shibboleth SSO** 
33 2 Pepe Ciardelli
34
35 1 Pepe Ciardelli
OpenID or Shibboleth debate must take place soon, in light of the substantial consequences for client developers, service providers.
36 2 Pepe Ciardelli
37 22 Markus Döring
* use SHARPE to define policies and user metadata
38 1 Pepe Ciardelli
39 5 Pepe Ciardelli
3. **Andreas Kohlbecker (BGBM) - Experts database & Dataportal for WP6** 
40 2 Pepe Ciardelli
41 22 Markus Döring
* managing user data in several places is not manageable. ExpertsDB and SHARPE tool for IdP must work on the same dataset. Modify LDAP in Drupal is a possible way to go.
42 2 Pepe Ciardelli
43 5 Pepe Ciardelli
4. **Simon Rycroft (NHML) - Community Websites with Scratchpads** 
44 2 Pepe Ciardelli
45
46
Scratchpads represent a bottom-up approach, with the philosophy that to have semi-structured data online now is better than nothing – the hope is to “meet in the middle” with EDIT’S top-down approach; 
47 1 Pepe Ciardelli
48 2 Pepe Ciardelli
49
Markus: aren't Scratchpads better suited to community building, EDIT for real taxonomic work?
50
51
52 5 Pepe Ciardelli
5. **Julius Welby (NHML) - Virtual library** 
53 2 Pepe Ciardelli
54
55
ViTaL scheduled to go live month 30
56
57 1 Pepe Ciardelli
58 9 Pepe Ciardelli
Use CDM community store as metadata repository?
59 1 Pepe Ciardelli
60 9 Pepe Ciardelli
61 5 Pepe Ciardelli
6. **Marc Geoffroy (BGBM) - Common Data Model in UML** 
62 2 Pepe Ciardelli
63
64
Unfortunately not as easy as hoped to work collaboratively with Enterprise Architect (or more precisely the SQL*Server it runs on top of).
65 1 Pepe Ciardelli
66 2 Pepe Ciardelli
67 5 Pepe Ciardelli
7. **Andreas Müller (BGBM) - Common Data Model java library + sync store** 
68 2 Pepe Ciardelli
69
70 1 Pepe Ciardelli
_Discussion: Hibernate consequences, how easily can it be hidden? Is CATE’s temporal state solution - "snapshots" of an object at a point in time - the best way to update objects and guarantee their validity?_
71 2 Pepe Ciardelli
72
73 5 Pepe Ciardelli
8. **Pepe Ciardelli (BGBM) - Taxonomic editor** 
74 2 Pepe Ciardelli
75
76
Good example of Eclipse Rich Client Platform used for a biological application: Bioclipse http://bioclipse.net
77
78 1 Pepe Ciardelli
79 5 Pepe Ciardelli
9. **Dave Taylor (RBGK) - Use cases & workflow modeling outcomes** 
80 1 Pepe Ciardelli
81 2 Pepe Ciardelli
82 1 Pepe Ciardelli
Results of questionnaires on revisionary taxonomy models at http://dev.e-taxonomy.eu/trac/wiki/RevisionaryModels
83 2 Pepe Ciardelli
84
85
Gregor: are there areas other than revisionary taxonomy for which the platform will / should be used?
86 1 Pepe Ciardelli
87
88
10. **Dilan Latif (SMNS) - ATBI platform w/ field recorder & site database** 
89
90 9 Pepe Ciardelli
91
Use CDM community store as central observation repository for an ATBI site?
92 2 Pepe Ciardelli
93 8 Markus Döring
94 5 Pepe Ciardelli
11. **Magda Zymtoska (MIZPAN) - Geo services**   
95 2 Pepe Ciardelli
96 23 Pepe Ciardelli
97
98
99 5 Pepe Ciardelli
12. **Pere Roca (MINCN) - Spatial completeness analysis & Taxonomic data visualisation** 
100 2 Pepe Ciardelli
101
102
103 5 Pepe Ciardelli
104
105 2 Pepe Ciardelli
## Day 2 - Developer Tools
106
107
 **The EDIT wiki** 
108
109
* http://dev.e-taxonomy.eu/trac/wiki/
110
111
* All users have permission to edit all sections - go nuts!
112
113
* Note from Malta: we should try to establish as many collaborative activities as possible by the next development meeting in February, because our lack of integrative work was criticized by the Scientific Advisory Committee
114
115
 **SVN** 
116
117
* All code should be checked in to http://dev.e-taxonomy.eu/svn
118
119
* Try to get all source code to date checked in by **September 21** 
120
121
 **Trac** 
122
123
* Ticket overview at http://dev.e-taxonomy.eu/trac/report
124
125 1 Pepe Ciardelli
* Tickets don't have due dates, but they are associated with milestones, which do
126
127 2 Pepe Ciardelli
* MyLyn
128
129
  * Trac plugin for Eclipse, comes standard with 3.3
130
131
  * Tickets associated with source code files in which appropriate changes were made
132
133
  * Eclipse settings: http://dev.e-taxonomy.eu/trac, "XML-RPC"
134
135 4 Pepe Ciardelli
136 2 Pepe Ciardelli
137 5 Pepe Ciardelli
138
139 2 Pepe Ciardelli
## Day 2 - Common Data Model
140
141
 **EDIT developers' access to the CDM** 
142
143 7 Pepe Ciardelli
* Unfortunately no access available from outside BGBM-Berlin
144 2 Pepe Ciardelli
145 7 Pepe Ciardelli
* Send proposed changes to CDM mailing list (dev-edit@mnhn.fr)
146 2 Pepe Ciardelli
147 7 Pepe Ciardelli
* Latest Enterprise Architect file (*.eap) available at http://dev.e-taxonomy.eu/trac/wiki/CommonDataModel
148 2 Pepe Ciardelli
149
 **Platform Independent Model (PIM)** 
150
151 7 Pepe Ciardelli
* Used to generate model in Java Model using Enterprise Architect's transformation functionality
152 2 Pepe Ciardelli
153 39 Andreas Müller
* The source for the CDM view at http://cybertaxonomy.eu/cdm 
154 2 Pepe Ciardelli
155
 **eu.etaxonomy.cdm.model.description** 
156
157 7 Pepe Ciardelli
* For taxa, specimens, observations
158 2 Pepe Ciardelli
159 7 Pepe Ciardelli
* Still largely empty, copied almost directly from SDD
160 2 Pepe Ciardelli
161 19 Markus Döring
* Linked to Occurrence or Taxon class
162
163 2 Pepe Ciardelli
 **eu.etaxonomy.cdm.model.name** 
164
165
* Gregor proposed changing **name** to **scientificname** 
166
167 6 Pepe Ciardelli
* Different subclasses created for different nomenclatural codes, i.e. "!BacterialName", "!ZoologicalName", etc. Initially skeptical of too many class hierarchies / subclasses, but it proved helpful for things like the name subclasses.
168 2 Pepe Ciardelli
169 6 Pepe Ciardelli
* _Discussion: in class "!NonViralName", is "isAtomised" the best way to express whether a full name has been parsed? Alternative naming suggestions in the attribute notes._
170 2 Pepe Ciardelli
171
 **eu.etaxonomy.cdm.model.publication** 
172 1 Pepe Ciardelli
173 19 Markus Döring
* Modelled on the blend of BibTex, EndNote and some custom extensions found in the Berlin Model.
174 1 Pepe Ciardelli
175 19 Markus Döring
* Should we strictly follow BibTex which has a great deal of open source software available, e.g converters to/from mayn different formats incl EndNote & MARC ?
176
177 2 Pepe Ciardelli
* Native speakers agreed **reference** is more accurate than **publication** 
178
179
* _Discussion: publication year properly belongs in **publication** not *name*, even if this requires creating a dummy publication for a nomenclatural reference (similarly, basionyms will require the creation of an incomplete author object for basionym authors)_
180
181
 **eu.etaxonomy.cdm.model.location** 
182 7 Pepe Ciardelli
183 1 Pepe Ciardelli
* This package and **eu.etaxonomy.cdm.model.specimen** should be extended for ATBI
184 6 Pepe Ciardelli
185 19 Markus Döring
* Gregor: change "Region" to "!NamedArea", get rid of "Locality" class and make it a free-text attribute of the Occurrence class
186 1 Pepe Ciardelli
187 2 Pepe Ciardelli
* Magda: add "accuracy" and "reference system" (a.k.a. "datum") to main class; the latter is necessary because coordinates can vary from system to system
188
189 19 Markus Döring
* Markus: how could shape definitions / polygons be stored for regions? Add binary shape file atttribute rather than GML?
190 1 Pepe Ciardelli
191
* Regions also have language implications
192
193 19 Markus Döring
* validInTime also applies to regions
194 1 Pepe Ciardelli
195 19 Markus Döring
* Pere: distinguish between natural, political, etc. regions. Add NamedAreaType (controlled) and NamedAreaLevel (free)
196
197
* add acronym to region
198
199
* Change "Country" to "!WaterbodyOrCountry" and merge waterboy entries into country table
200 2 Pepe Ciardelli
201 21 Markus Döring
 **Versioning** 
202
203 26 Andreas Müller
* is versioning necessary -> yes
204 1 Pepe Ciardelli
205 26 Andreas Müller
* which versioning method to use: -> The Cate approach to use kind of a timestamp versioning for each single object looks promising and will be followed in the close future
206
207
* the use of versioning capability will be relativly rare although important. So the system should be optimized for operations on current data.
208
209
* Versionable objects representing the same object in different versions should have the same identifier (but different DB-key), differing only in the 'valid from', 'valid to' attributes
210
211
* 2 implementations are possible for objects relations like TaxonConcept->TaxonName: 
212
213 29 Andreas Müller
  1. n-m relation, resulting in Lists of objects. -> performance problems  
214 1 Pepe Ciardelli
215 29 Andreas Müller
  1. 1-m relations, pointing to a single object (current/newest version or last stable version). All other object representing the same but versioned entity are connected as (double linked) lists.
216 28 Andreas Müller
217 33 Andreas Müller
218
     Solution 2) was favored for performance reasons. Depending on the application it is to decide if the current or the last stable version is to be used as object to point to
219 26 Andreas Müller
220
* relationship objects like TaxonRelationship or NameRelationship do not have to be versionable. Instead a new object is created as soon as one of the items a relationship object points to gets a new version. This is to reduce complexity and get better performance in standard applications.
221
222
* CATE will implement a prototype version of the versioning for the taxon part.
223
224
 
225 5 Pepe Ciardelli
 **Miscellaneous** 
226 2 Pepe Ciardelli
227
* Abstract class names in Enterprise Architect are in italics
228
229
* Logic behind design decisions are written in the notes fields attached to the entity in question – high priority to get these populated!
230
231
* _Discussion: for boolean fields, should there be the possibility of a 3rd state, i.e. NULL? DB implications – how does hibernate handle NULLs?_
232 8 Markus Döring
233
234
235
## Breakout Sessions
236
237
238
239
### Common Data Model
240
241 14 Markus Döring
The first day session focussed on multilingual controlled vocabularies. See wiki:FirstDeveloperMeetingMinutes#Day2-CommonDataModel for outcomes.
242 8 Markus Döring
243
244
245
### CDM Library
246
247 14 Markus Döring
Attendees: 
248 8 Markus Döring
249 14 Markus Döring
* Andreas Müller
250 8 Markus Döring
251 14 Markus Döring
* Ben Clark
252 1 Pepe Ciardelli
253 14 Markus Döring
254 24 Andreas Müller
The main topic of the discussion were technological aspects of which technologies to use. Some major issues were, which project management and building tool to use (ant, maven), the security framework 'asegi', how to use the framework 'Spring' in a rich-client-platform(RCP) environment, aspect oriented programming and testing with Spring, integration tests with dbUnit, etc.
255
256
Also Ben gave a introduction to the structure and to implementational aspects of the CATE project.
257
258
Questions of how to make both projects compatible and how to use synergetic effects were also under discussion with the result that the EDIT cdmLibrary could use CATE's technological knowledge gained over the last 2 years whereas CATE could use medium-term the EDIT cdmLibrary with it's broader data model and more general approach.
259
260 34 Andreas Müller
Semantic differences of the term synonym(list) in zoology and botany and it's impacts to service layer/strategy method implementation have been mentioned.
261
262 25 Andreas Müller
In a longer discussion detailed aspects of versioning (technology, data model, performance, alternatives) were looked at. See wiki:FirstDeveloperMeetingMinutes#Day2-CommonDataModel for outcomes.
263 24 Andreas Müller
264
265 14 Markus Döring
266 1 Pepe Ciardelli
### Geoservices + ATBI
267
268 14 Markus Döring
Attendees: 
269
270
* Pere Roca
271
272 16 Markus Döring
* Magda Zytomska 
273 14 Markus Döring
274 1 Pepe Ciardelli
* Markus Döring
275 16 Markus Döring
276
277 20 Markus Döring
The centre of discussion was the visualisation geo-services needed for other applications within the platform. The current webapplication demo is great for visualising multiple species to a human which would be exactly what is needed for ATBI sites and their point occurrence data on a limited survey site. But for taxonomic data two other simple map generation services are needed to visualise occurrence data (points) and distribution data (presence/absence) respectively. The services should be machine services, as far as possible simple URLs to be called, that do not need any human interaction. WMS services provide most of this functionality alread, but the data itself must be present as a layer already. We came to the conclusion that an intermediate service would be needed that translates a simple URL call into a proper WMS call, potentially creating a usable layer on the fly, and returning the requested image. See tickets  #64, #55, #56, #57, #58, #59 for details.
278 8 Markus Döring
279
280
281
### Tax Editor Requirements
282
283 13 Pepe Ciardelli
Attendees: 
284
285
* Pepe Ciardelli
286
287
* Dave Taylor
288
289
* Eckhard Raab-Straube
290
291
	
292 15 Pepe Ciardelli
The main topic of discussion was how to integrate the use case work done by Dave and his colleague at Kew Soraya Villalba into the design  of the Taxonomic Editor user interface. Dave's work for EDIT Deliverable 5.2.1.1 gathered descriptions of the work processes used by revisionary taxonomists throughout the EU to produced integrated use cases. Soraya's use cases (UseCasePalmMonography) (also detailed in proposals for Palm Web sent a few months ago to Eckhard) - detail the initial publication of a monograph and the attendant peer review process. 
293 13 Pepe Ciardelli
294
295
To date, Pepe's work on the UI design has been based largely on duplicating the functionality (EditorRequirements) of the Berlin Model Web Editor, which was built mainly to edit imported checklists; the work done by Kew will help extend the new Editor's functionality to a wider range of users. Known bottlenecks in the Web Editor - such as frequently used functions requiring a maddening number of clicks - will be relevant during UI design. In addition, the group of taxonomists working at BGBM-Berlin has a range of technical sophistication, and the UI development team in Berlin hopes to enlist as many of them as possible for usability tests and the like. Dave will likely join Pepe in the actual coding of the UI.
296
297
298
Dave and Pepe will be at the TDWG conference in Bratislava next week, and will continue the discussion there. 
299 8 Markus Döring
300
301
302
### Drupal
303
304 1 Pepe Ciardelli
305 10 Andreas Kohlbecker
Attendees: 
306
307
* Andreas Kohlbecker
308
309
  *	Lutz Suhrbier
310
311
  *	Simon Rycroft
312
313
  *	Julius Welby
314
315
	
316
The breakout group discussed on how the development and integration of Community Web Tools (mainly based on Drupal) can be improved and facilitated.
317
318 11 Andreas Kohlbecker
As an outcome to this, a [[DrupalModules|page on Drupal modules]] has been introduced into the developer Wiki by which experiences and EDIT specific modules are to be shared. This page will initially cover all modules used by bdTracker, by the EDIT WP5 Wiki and by the Scratchpads. By this we ensure a better harmonization between development made at the BGBM and at the NHM. 
319 10 Andreas Kohlbecker
320
There has been furthermore a intense discussion on finding the best way to incorporate data exchange between the modules which are used in the Scratchpads and the CDM (Common Data Model) Store. 
321
322
323
Another conversation was on Sibboleth, which has been chosen as authentication framework for the EDIT platform for cyber taxonomy. 
324
325 12 Markus Döring
Once the Shibboleth module for Drupal is finished, it will be installed into the Scratchpads to also allow federated login into this CommunityWebtools Compilation.