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 10 years ago Last modified on Jul 23, 2009, 5:47:03 PM