wiki:submissionOfContribtuionsForLinuxDistro

Plataforma para Submissão de Contribuições de Pacotes

Informação sobre o Projecto

Licença

GPL V2 (a actual licença utilizada em todos os projectos internos da Caixa Mágica)

Necessidade que visa colmatar

A plataforma existente que permite a contribuição de software para Linux é de difícil manutenção e pouco flexível. Este projecto visa a criação de uma nova plataforma que permita de uma forma simples a submissão e aprovação de software para diversas plataforma.

Descrição do projecto

O objectivo deste projecto é criar uma plataforma web que permita a qualquer utilizador registado submeter software para Linux, bem como pesquisar e descarregar outro software já aprovado. As principais componentes a instalar são:

  1. Estudo e reformulação da base de dados;
  2. Desenvolvimento do interface web para a plataforma de submissão;
  3. Gestão da submissão de software.

Roadmap

  • Fase 1: Análise e reformulação da base de dados actual

Sumário: Analisar a base de dados existente e fazer as alterações necessárias para a adaptação à plataforma de contribuições.

Deadline: 17/Julho/2009

Deliverable: Schema da base de dados reformulada

  • Fase 2: Desenvolvimento do Interface Web

Sumário: Desenvolvimento inicial do interface web da plataforma em termos de aspecto gráfico em PHP e HTML.

Deadline: 31/Julho/2009

Deliverable: Interface gráfico inicial

  • Fase 3: Autenticação LDAP

Sumário: Autenticação dos utilizadores no servidor LDAP, fazendo a distinção dos "roles" destes.

  • Fase 4: Submissão de software

Sumário: Submissão de software para Linux, submissão esta que deverá incluir um pacote com o código-fonte e um pacote binário.

Deadline: 21/Agosto/2009

Deliverable: Registo da submissão na base de dados e carregamento do software no servidor de builds.

  • Fase 5: Gestão de contribuições

Sumário: Verificação dos pacotes submetidos, pacotes aprovados ou pacotes com erros, mostrando um relatório ao utilizador responsável.

Deadline: 28/Agosto/2009

Deliverable: Motor de verificação do estado dos pacotes submetidos

  • Fase 6: Navegação e pesquisa de software

Sumário: Desenvolvimento de navegação no interface web para visualização do software disponível e do motor de pesquisa.

Deadline: 4/Setembro/2009

Deliverable: Páginas e motor de navegação e pesquisa de pacotes

  • Fase 7: Integração final do interface web

Sumário: Integração final do motor de submissão de software com o interface web

Deadline: 18/Setembro/2009

Deliverable:

  • Fase 8 (opcional): Gráficos e estatísticas

Sumário: Desenvolvimento de gráficos e estatisticas que demonstrem o número de pacotes submetidos, em testes, aprovados, com erro, etc.

Deadline: 18/Setembro/2009

Deliverable: Páginas e motor de apresentação de gráficos e estatísticas

Plano de risco

Riscos até ao momento identificados e possíveis soluções:

  • Complexidade do desenvolvimento da plataforma de gestão e contribuição de software;
  • Integração dos deliverables: Trabalhar em equipa com responsável pelo desenvolvimento da projecto BuildSystem

Interacção com a comunidade / incentivos à colaboração

A contribuição de software actividade essencial de qualquer distribuição Linux e para o envolvimento da comunidade, sendo necessárias soluções que facilitem e incentivem essa contribuição.

Perspectivas de continuação após o SAPO Summer bits

Pretende-se que esta plataforma de contribuição de pacotes entre em produção a seguir ao SAPO Summer Bits, substitindo a plataforma já existente na Caixa Mágica.

Informação sobre o orientador e co-orientador

Organização

Caixa Mágica Software

Descrição da Organização

A Caixa Mágica é um dos projectos Open Source com maior historial em Portugal.

Nascida em ambiente universitário, no ISCTE, no ano de 2000, tem tido um crescimento estável ao longo dos últimos 8 anos alicerçada num conjunto de valores, missão, visão e estratégia que a ajudam a manter o foco em tecnologias Open Source.

Em 2004 foi constituído uma empresa spin-off, sendo mantido uma forte ligação à ADETTI através de um contrato de partilha de desenvolvimento. A empresa Caixa Mágica Software teve resultados positivos em 2004 e tem tido um crescimento na ordem de 30% ao ano.

Hoje a Caixa Mágica está organizada em 3 área principais por onde se distribuem os seus 15/20 colaboradores:

  • Produto: unidade de engenharia que desenvolve a distribuição Linux Caixa Mágica. Actualmente, a CM comercializa cerca de 900 unidades / mês do seu produto entre venda on-line, loja e programas especiais.
  • Projectos / outsourcing: projectos de elevada exigência em tecnologias Open Source que os profissionais Caixa Mágica encaixam valor.
  • Investigação: projectos europeus e nacionais de R & D que fornecem tecnologia e competência às outras U.N.. Neste momento, existe um ciclo de 3 anos entre a investigação e "produtização".

Para além das acima, a Caixa Mágica tem 3 unidades de menor dimensão mas em crescimento: Formação, Serviços Profissionais e Appliances.

Orientador

Susana Nunes

Experiência profissional:

Susana Nunes é Technical Consultant da Caixa Mágica, sendo neste momento a responsável por toda a gama de sites e plataformas da Caixa Mágica. É também investigadora da ADETTI, onde trabalha no laboratório O2H na investigação sobre Sistemas Operativos e segurança.

Co-Orientador

Flávio Moringa

Experiência profissional:

Flávio Moringa é Technical Consultant da Caixa Mágica, sendo neste momento o responsável pelas versões estáveis da distribuição de Linux Caixa Mágica, bem como pelo desenvolvimento das novas versões. É também investigador sénior da ADETTI, onde trabalha no laboratório O2H na investigação sobre Sistemas Operativos e segurança.

URL da Proposta

Informação sobre o Aluno

Nome

Bruno Barão

Experiência anterior

Realização de vários projectos em PHP/(X)Html/Css/Javascript?, como:

  • PHP Directory Indexer (http://indexer.sf.net), uma alternativa em PHP ao indexador por defeito do HTTPd.
  • GerHo, um organizador de horários (não disponível publicamente).
  • Cajax, um pequeno calendário em que a mudança de dias/meses/anos é feita utilizando AJAX (não disponível publicamente).
  • Construção/setup de alguns sites e blogues.

Experiência e conhecimento de outras linguagens e paradigmas de programação, como Java, C/C++, Bash Scripting.

Situação actual

Estudante no Mestrado em Engenharia Informática na Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa.

Métodos de desenvolvimento que adopta

  1. Levantamento do que é necessário implementar.
  2. Estudo dos use cases.
  3. Implementação tendo em conta noções de usabilidade.
  4. Testes à implementação.

Descrição sobre o projecto e motivação

Este projecto tem como objectivo a criação de uma plataforma web-based, onde qualquer utilizador registado pode:

  • Submeter software para Linux (neste caso específico, em (S)RPM, mas poderia ser qualquer formato)
  • Pesquisar o software que já foi aprovado
  • Descarregar software (que já foi aprovado)
  • Pedir software que ainda não foi contribuído, ou uma nova versão de um software
  • Comentar as submissões

A grande motivação é que o Linux não é apenas feito por um grupo/empresa, é feito e construído por toda a comunidade, por isso deve ser dada a hipótese à comunidade de ajudar, neste caso, submetendo software que depois pode ser utilizado por qualquer pessoa.

Documentação do Projecto

Novo esquema

No image "SoftwareNew.png" attached to submissionOfContribtuionsForLinuxDistro

Referências

Last modified 9 years ago Last modified on Jul 23, 2009, 5:47:03 PM