management system for collections of biotechnological interest · management system for collections...

56
Management System for Collections of Biotechnological Interest Sidnei de Souza Centro de Referência em Informação Ambiental, CRIA Rio de Janeiro, July 2008

Upload: lenhan

Post on 30-Nov-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

Management System for Collections

of Biotechnological Interest

Sidnei de Souza

Centro de Referência em Informação Ambiental, CRIA

Rio de Janeiro, July 2008

WhatWhat is SICol?is SICol?

SICol is a multi-user , multi-platform , multi-language software,

being developed by the Centro de Referência em Informação

Ambiental, CRIA , sponsored by the Financiadora de Estudos e

Projetos, Finep.

Its goal is to improve management and documentation

processes in biological collections (currently focused on

archaea , bacteria , filamentous fungi , yeasts and protozoa ),

ensuring the traceability of procedures and open dissemination

of data through the internet.

(on-line catalogue, SIColNet and the species Link network).

Software designSoftware design

� CABRI guidelines were adopted for the basic design

� Several meetings with collection curators to adapt concepts and guidelines to basic requirements

� Efforts to have a single implementation model for all different collections

� Special attention to the user interface , keeping it as clean , logical, and friendly as possible

� Controlled vocabulary should be used wherever possible

� Free text fields to store general information

� Basic text formatting tools (such as bold, italic, hyperlinks) when enter ing data in free text fields should be available

� When entering free text, internal references to documents, bibliographic references, and taxa

UserUser interface interface -- ListList

UserUser interface interface -- ViewView

User interface User interface -- EditEdit

Bold italic

Superscript

hyperlink

� Multi-Platform� Windows, Linux , MacOS, etc.

� Multi-Web Server� Apache , Microsoft IIS , etc.� User friendly interface

� Multi-Browser� Mozilla Firefox , Microsoft IE , Safari, etc.

� Multi DBMS� MySQL• PostgreSQL, MS-SQL Server, etc.

Multi-Language for use� Navigation menus and field labels in different languages

Portuguese and English : default implementation

� Multi-Language for content� Some fields should have their contents in more than one language.

Software design Software design -- TechnologicalTechnological CharacteristicsCharacteristics

� Security� Multi-user� Users Groups� Access control by record

� Tracing operations� All operations will be registered to allow traceability of any changes made on each

record.

� Most non-free text fields are configurable� The content of each pre-defined field can be configured by the administrator

to meet specific needs

� Names Dictionary� Support to the Taxa module data• Available on-line at http://names.cria.org.br

Software designSoftware design

SecuritySecurity

� Level 1• Applied to: each user• permissions: Access to Sub-Collections

� Level 2• Applied to: each user and/or group• permissions: Create and/or Delete each record on each module

� Level 3• Applied to: each user and/or group• permissions: View and/or Edit each record on each module

� Level 4• Applied to: each record on each module• permissions: make records available to the

open Catalogue

MÓDULOS• Taxa• Strains• Institutions• People• Documents• Bibliographic References• Preservation• Distribution

MÓDULOS• Taxa• Strains• Institutions• People• Documents• Bibliographic References• Preservation• Distribution

Already implemented componentsAlready implemented components

Documentation(archaea, bacteria, fungi, yeast e protozoa)

� Modules: StrainsStrainsTaxaInstitutionsPeopleDocumentsBibliographic References

� Operations: Insert, Edit, and Search

Documentation of processesPreservationDistributionQuality ControlStock Control (minimum stock alert)

Catalog for external on-line access, version 1

TAXATAXA **

INSTITUTIONSINSTITUTIONS

PEOPLEPEOPLE

DOCUMENTSDOCUMENTS REFERENCESREFERENCES

PRESERVATIONPRESERVATION DISTRIBUTIONDISTRIBUTION

GENERALGENERAL

IDENTIDENT

DEPOSITDEPOSITGROWTHGROWTH

CHARSCHARS

PROPSPROPS

STOCKSTOCK

COLLECTCOLLECT

ISOLATIONISOLATION

QCQCSTOCK MAPSTOCK MAP

ONON--LINELINECATALOGCATALOG

ADVANCED SEARCHADVANCED SEARCH&&

REPORTSREPORTS

USERSUSERSACCESSACCESS

CONTROLCONTROLGROUPSGROUPS

CONFIGCONFIG

LOGLOG

USER’SUSER’SMANUALMANUAL

iocl

cbmai

STRAINSSTRAINS

Software statusSoftware status

MultiMulti --collectioncollection andand subsub --collectionscollections

Strain number is unique for each collection

Strain 2Strain 1 Strain 3 Strain 1 Strain 2

Collection 1

Sub-collection 1CCC-B

Sub-collection 2CCC-L

Collection 2

sub-collection 1CCM

Database

Software statusSoftware status

Database

Installation

General General ViewView

PEOPLEINSTITUTIONS

ORIGIN

STRAINS

ISOLATION

IDENTIFICATION

DEPOSIT

GROWTH

GENERAL

PROPERTIES

QC

TAXA

CHARACTERISTICS

DISTRIBUTION

DATABASE

COLLECTION

SUB-COLLECTION

DOCUMENTS REFERENCES

PRESERVATION

STOCK

GENERAL

SEGURITY

GENERAL

SEGURITY

GENERAL

SEGURITY

GENERAL

SEGURITY

GENERAL

SEGURITY

GENERAL

SEGURITY

GENERAL

SEGURITY

INSTALATION USERS

SECURITY

Local area network with a dedicated server

Installation examplesInstallation examples

Single user installation

Local area network with a shared desktop

MultiMulti --ArchitectureArchitecture

Network with multiple dedicated servers

MultiMulti --ArchitectureArchitecture

Installation examplesInstallation examples

Software Software status status –– Next stepsNext steps

� Under development/analysis

� Configurable Nomenclature (re-implementation)� Stock mapping/position� Advanced Search� Specific Reports� SIColNet and speciesLink integration� History of Operations (traceability)

Complementary Activities

� Real world tests with two collections: CBMAI and CLIOC� Analysis of existing data, re-structuring, and import � User’s Manual ( current version: 1.16, April 2008)

Nomenclature setupNomenclature setup

StockStock positionposition

Advanced search & reportsAdvanced search & reports

InteroperabilityInteroperability

data spLinker

SIColManagement

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

ScreenshotsScreenshots

Sidnei de [email protected]

Centro de Referência em Informação Ambiental, CRIAwww.cria.org.br

ThankThank youyou !!

Estruturar o sistema a fim de prover níveis suficientes de segurança, com uma arquitetura que ofereça uma qualidade de software compatível aos modelos abertos, o que possibilitará facilidades no entendimento, manutenção e expansões futuras. Esta estrutura segue o modelo de “Arquitetura em Camadas”, onde se tem:

� Camada de Apresentação

� Camada de Negócio

� Camada de Composição

� Camada de Dados

FreeFree OpenSourceOpenSource : : LayersLayers

� Camada de Apresentaçãoonde se reúne código e arquivos referentes ao que se apresenta ao usuário final. Esta camada, para uma interface web, ainda é dividida em quatro partes:

Interação : arquivos de código em linguagem JavaScript, proveêm uma melhor experiência de utilização do sistema pelo usuário final;Página : arquivos de código XHTML (Extensible HyperText Markup Language), proveêm a estrutura de cada página do sistema;Formatação : arquivos de código CSS (Cascading Style Sheets), definem toda a formatação e disposição de textos e objetos em cada página do sistema.Ilustração : arquivos de imagem utilizados nas páginas do sistema.

� Camada de Negóciomódulos em linguagem Python que reúnem todo o entendimento, lógica e funcionamento do sistema. Estão sendo desenvolvidos utilizando-se o conceito de “Programação Orientada à Objetos” (POO), que é adotado amplamente no setor de desenvolvimento por contribuir significamente pela independência de componentes, permitindo reutilizações e expansões rápidas e eficientes sem comprometer as bases da estrutura.

FreeFree OpenSourceOpenSource : : CamadasCamadas

� Camada de Composição

contém arquivos necessários e/ou auxiliares que podem ser usados por todas as demais camadas. Neste sistema, temos três partes desta camada:

SQL: módulos independentes de código SQL (Structured Query Language) usados de acordo com o Sistema Gerenciador de Banco de Dados (SGBD) em uso.Translations : arquivos que contém traduções de tela para os idiomas usados no sistema.Configs : arquivo usado para configurar a instalação do sistema e suas variáveis de ambiente.

� Camada de Dados

onde ficam as bases de dados mantidas pelos seus respectivos sistemas gerenciadores.

FreeFree OpenSourceOpenSource : : CamadasCamadas

� Programação• Orientação a Objetos; [1][2]• Implementação em multi-camadas. [3][4][5]• XML [19]

� Banco de Dados• MySql 5.0 [16]• Sqlite [17]• ISO/ANSI SQL-92 [18]

� Interface• XHTML 1.1; [6]• CSS 2.1; [7]• JavaScript Cross-browser; [8][9]• AJAX; [10][11]• Tableless. [12]

� Dados• RFC 3066; [13]• ISO 639; [14]• ISO 3166. [15]

� Referências[1] http://en.wikipedia.org/wiki/Object-oriented_programming[2] http://pt.wikipedia.org/wiki/POO[3] http://pt.wikipedia.org/wiki/N_camadas[4] http://en.wikipedia.org/wiki/Three-tier_(computing) [5] http://en.wikipedia.org/wiki/Multitier_architecture[6] http://www.w3.org/TR/xhtml11[7] http://www.w3.org/TR/CSS21[8] http://developer.mozilla.org/en/docs/JavaScript[9] http://www.mozilla.org/docs/web-developer/upgrade_2.html#DevCrossBrowser[10] http://pt.wikipedia.org/wiki/AJAX_(Web)[11] http://en.wikipedia.org/wiki/Ajax_(programming) [12] http://tableless.com.br/aprenda/faq/[13] http://www.ietf.org/rfc/rfc3066.txt[14] http://www.oasis-open.org/cover/iso639a.html[15] http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/index.html[16] http://www.mysql.org/doc/refman/5.0/en/index.html[17] http://www.sqlite.org[18] http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt[19] http://www.w3.org/TR/2006/REC-xml-20060816

FreeFree OpenSourceOpenSource : : PadrõesPadrões

Servidor IOC

Acesso InternoColeções

Acesso externoInternet

BD1

BD2

BD3

BD4

BDn

SIColsoftware

http://sicol.ioc.fiocruz.br

http://sicol.ioc.fiocruz.br

http://sicol.ioc.fiocruz.br

http://sicol.ioc.fiocruz.br

http://sicol.ioc.fiocruz.br

SIColcatálogo

http://ioc.fiocruz.br/col1

http://ioc.fiocruz.br/col2

http://ioc.fiocruz.br/col3

http://ioc.fiocruz.br/col4

http://ioc.fiocruz.br/coln

Filt

ros

Proposta de InstalaProposta de Instala çção do SICol na Fiocruzão do SICol na Fiocruz