Iota

Plataforma para gerenciamento de indicadores

API e website

Perl, Catalyst, DBIx::Class, postgreSQL, template-toolkit
Download .zip Download .tar.gz View on GitHub

Frontend da administração

HTML e JavaScript
Download .zip Download .tar.gz View on GitHub


Definição

O aplicativo é uma plataforma que permite a criação de grupos de dados baseados em indicadores, com o objetivo de facilitar o preenchimento por proprietários destas informações de maneira normalizada, facilitando a comparação, re-utilização e compartilhamento dos dados através de padrões de tecnologias abertas.

Ele foi criado inicialmente para atender ao "Programa Cidades Sustentaveis" uma parceria da Rede Nossa São Paulo, Instituto Ethos de Empresas e Responsabilidade Social e Rede Social Brasileira por Cidades Justas e Sustentáveis.

O que é um indicador ?

Indicador social é uma medida, geralmente estatística, usada para traduzir quantitativamente um conceito social abstrato e informar algo sobre determinado aspecto da realidade social, para fins de pesquisa ou visando a formulação, monitoramento e avaliação de programas e políticas públicas.

Lista de discussão

Há uma lista de discussão para debate sobre a plataforma:

https://groups.google.com/forum/embed/?place=forum/iota-br

Wiki

Temos uma Wiki no github, onde colocamos informações sobre como a plataforma funciona e como fazer a instalação.

Como executar uma versão própria no linux, debian 6

Contribuir

Para contribuir, você precisa do códido do repositório. O seguinte repositório contém o código da API e deploy do banco de dados.

$ git clone git@github.com:eokoe/Iota.git

Este outro repositório contém o código do administrador, feito interamente em javascript e html.

$ git clone git@github.com:eokoe/Iota-Admin-Frontend.git

Estrutura funcional

Cada indicador contém uma formula, que é composta por váriaveis.

Váriaveis são preenchidas por usuários, como valor, data e hora do ocorrido. Cada usuário pertence a uma cidade, portanto, todos os valores preenchido por ele é da cidade dele. Entretanto, pode-se salvar os dados por regiões dentro da cidade.

Para facilitar o entendimento, podemos visualizar o Iota assim:

Instituições e indicadores - iota
SuperAdmin
O SuperAdmin controla tudo no Iota. Ele pode criar indicadores, os dominios e os admins.
Admins
Cada admin pode criar mais indicadores (apenas para o dominio dele, ou alguns usuários) e crair usuários e cidades.
Instituições
Cada instituição tem seu próprio conjunto de cidades e de usuários.
Usuário
Usuário é quem preenche cada váriavel que vai compor o valor do indicador em cada periodo. Ele sempre precisa ter uma cidade, e cada cidade só pode ter um usuário. Porém, vários usuários podem pertencer a mesma cidade apenas se estes usuários sejam de instituições diferentes.

Exemplo:

O SuperAdmin criou a instituição movimento e prefeitura.
Depois, criou os dominíos (também chamado de rede) com a seguinte configuração:
prefeitura-azul.com.br = instituição prefeitura
prefeitura-verde.com.br = instituição prefeitura
movimentos.com.br = instituição movimento

Para cada um dos dominíos, ele criou um usuario admin.
prefeitura-azul.com.br = admin id 3, prefazul@email.com
prefeitura-verde.com.br = admin id 4, prefverde@email.com
movimentos.com.br = admin id 5, admin@mov.com

O SuperAdmin criou agora, duas váriaveis mensais: tamanho da cidade em km e Taxa de precipitação em milímetros.
Depois, criou o indicador Precipitação por quilómetros com a formula Taxa de precipitação em milímetros / tamanho da cidade em km.
Esse indicador é publico, portanto todos os usuários das redes (dominios) podem preencher.

O admin 3 criou a cidade de São Paulo e o admin 4 criou a cidade de Campinas. O SuperAdmin criou a cidade de Joinville.
Com as cidades já criadas, o admin 5 criou um usuário e para preencher os dados para Joinville, outro usuario para preencher os dados de Campinas e nenhum usuário ficou responsável por preencher os dados de São Paulo, e como esse é o unico admin que existe nessa instituição, essa instituição não terá os dados de São Paulo.

No final, a estruta final ficou como a tabela abaixo:

Admin / Dominio Usuario Cidade
5 / movimentos.com.br fulano@mov.com.br Joinville
5 / movimentos.com.br fulano2@mov.com.br Campinas
4 / prefeitura-verde.com.br verde-campinas@gmail.com Campinas
4 / prefeitura-verde.com.br verde@Joinville.com Joinville
3 / prefeitura-azul.com.br sao-paulo@sao-paulo.com São Paulo
3 / prefeitura-azul.com.br campinas@sao-paulo.com Campinas

Veja então, que as cidades são compartilhadas entre todos os admins. Cada dominío é apenas um filtro de cidades. E os dados das variaveis ficam nos usuários, e cada usuário só pode estar em uma instituição, e ainda, cada instituição só pode ter um usuário por cidade.