| | 1 | == PhyloWS BioHackathon Report == |
| | 2 | === Brainstorm sessions (Monday) == |
| | 3 | * What's our scope for now? |
| | 4 | * Accumulate use cases |
| | 5 | * Accumulate requirements |
| | 6 | * Propose a simple API |
| | 7 | * Start reference implementations |
| | 8 | * Have another round of OTU discussions |
| | 9 | === Formalizing scope, use cases, requirements (Tuesday) === |
| | 10 | * Identify inputs and outputs (white board) |
| | 11 | * For all I/O combinations, imagine a [https://www.nescent.org/wg/evoinfo/index.php?title=PhyloWS#Use_Cases use case], move to NESCent wiki |
| | 12 | * For each use case, classify [https://www.nescent.org/wg/evoinfo/index.php?title=PhyloWS#PhyloWS_Requirements scope] and requirements |
| | 13 | === Scopes === |
| | 14 | * '''Phylogenetic tree database''', i.e. a persistence service based on BioSQL |
| | 15 | * '''Phylogenetic data conversion''', i.e. make sure that inputs and outputs of data work syntactically |
| | 16 | * '''Phylogenetic data analysis''', i.e. actual computations |
| | 17 | === API design === |
| | 18 | ''Assuming that syntax and semantics of the data can be solved, what would be the syntax and semantics of making the connections?'' |
| | 19 | === API design principles === |
| | 20 | # Stateless REST, no accumulate-and-fire |
| | 21 | # Architecture modeled as resources on which CRUD operations are performed |
| | 22 | # Use common HTTP methods (GET, PUT, POST, DELETE) |
| | 23 | # Describe RESTful API in WSDL 2.0 |
| | 24 | # Reuse prior art |
| | 25 | === URL API === |
| | 26 | We started to design a URL API (pathinfo + query strings) on the NESCent Wiki |
| | 27 | === Actual implementation === |
| | 28 | All displacement activities aside, we did some coding: |
| | 29 | * Started conversion and persistence services |
| | 30 | * Improve plumbing (format support, database support) |
| | 31 | === Moving forward === |
| | 32 | * Expand/formalize API, following manifesto? Recommendations? |
| | 33 | * Implement services. |
| | 34 | |
| | 35 | |
| | 36 | |
| | 37 | |
| | 38 | |
| | 39 | |
| | 40 | |
| | 41 | |
| | 42 | |
| | 43 | |
| | 44 | |
| | 45 | |
| | 46 | |
| | 47 | |