Compositor colaborativo on-line. Usuários e Público-Alvo Cenário atual, Escopo, Cenário com o...

Post on 21-Apr-2015

114 views 2 download

Transcript of Compositor colaborativo on-line. Usuários e Público-Alvo Cenário atual, Escopo, Cenário com o...

Compositor colaborativo on-line

ROTEIRO Usuários e Público-Alvo Cenário atual, Escopo, Cenário com o

Maestro Gerenciamento Andamento

Planejamento Elaboração Primeira iteração

Arquitetura Desenvolvimento Dificuldades encontradas Plano para a próxima iteração

USUÁRIOS

Devakhan

USUÁRIOS

USUÁRIOS

USUÁRIOS

Do

is a

do

is

PÚBLICO-ALVO Conhecimento médio de Teoria musical

Conheci

mento

teóri

co

PÚBLICO-ALVO Conhecimento médio de Teoria musical Faixa etária: 16 a 30 anos

PÚBLICO-ALVO Conhecimento médio de Teoria musical Faixa etária: 16 a 30 anos Compõem em conjunto

PÚBLICO-ALVO Conhecimento médio de Teoria musical Faixa etária: 16 a 30 anos Compõem em conjunto Têm acesso à internet (em casa, lan house ou na

faculdade)

PÚBLICO-ALVO Conhecimento médio de Teoria musical Faixa etária: 16 a 30 anos Compõem em conjunto Têm acesso à internet (em casa, lan house ou na

faculdade) Já usam softwares sem colaboração web

CENÁRIO ATUAL Uma banda de Heavy metal

Integrantes

Roberto(baixo) Luís(guitarra) Leandro(bateria) Elcimar(vocal) Arthur(guitarra)

CENÁRIO ATUAL - GUITAR PRO Desktop Armazena informações em um Arquivo .gp Edição avançada de partituras e tablaturas Suporte a vários canais por música Execução da música em MIDI

CENÁRIO ATUAL Guitar Pro => “song.gp”

Compartilhamento: por e-mail

Focaremos nas dificuldades desse tipo de colaboração

“Song.gp”

CENÁRIO ATUALLuís

Roberto

Elcimar Leandro

Arthur

?

!!!!!

MUITOTEMPO DEPOIS ...

CENÁRIO ATUALLuís

Roberto

Elcimar Leandro

Arthur

NOSSA SOLUÇÃO:

ESCOPO

Composição musical

ESCOPO

Composição musical

Na Web

ESCOPO

Composição musical

Na Web

Colaborativa

ESCOPO

Composição musical

Na Web

Colaborativa

Em tempo real

ESCOPO

Composição musical

Na Web

Colaborativa

Em tempo real

Documento de Requisitos em: www.cin.ufpe.br/~lumnis

CENÁRIO COM O MAESTRO

Luís

Roberto

Elcimar Leandro

Arthur

CENÁRIO COM O MAESTRO

Luís

Arthur

Melhor assim,olha!

Ah...Verdade!Vê assim

agora!

ArthurLuís

CENÁRIO COM O MAESTRO

Luís

Roberto

Elcimar Leandro

Arthur

Lanhouse

Música pronta rapidamente!E contando com a participação de todos.

GERENCIAMENTO Horários no CIn por semana

GERENCIAMENTO Horários no CIn por semana Avaliação 360º

DeterminaçãoTrabalhar Em EquipeEntusiasmoDisponibilidade / DisposiçãoProatividade Avaliação

360º

ANDAMENTO

ProspecçãoPlanejame

nto Elaboração 1ª Iteração

ANDAMENTO - PLANEJAMENTO

ProspecçãoPlanejame

nto Elaboração 1ª Iteração

ANDAMENTO - PLANEJAMENTO

Tarefa Prazo inicial

Novo prazo Semáforo Responsável

Escopo 15 de março

- Design int. usuário

Cronograma

15 de março

- Gerente

Riscos 15 de março

- Arquiteto

Plano de Equipe

15 de março

- Gerente

Plano de Projeto

15 de março

- Arquiteto

9 de março a 15 de março

ANDAMENTO - ELABORAÇÃO

ProspecçãoPlanejame

nto Elaboração 1ª Iteração

ANDAMENTO - ELABORAÇÃO

Tarefa Prazo inicial

Novo prazo Semáforo Responsável

Definir requisitos

19 de março

20 de março

Design int. usuário

Definir arquitetura

22 de março

29 de março

Arquiteto

Definir tecnologia

22 de março

27 de março

Gerente e arquiteto

Treinamento da equipe

22 de março

- Arquiteto e Designer

17 de março a 22 de março

Motivo: Arquiteto não teve tempo de sozinho entender o projeto como um todo para projetar a arquitetura.

Plano de Mitigação: o gerente, o designer e um desenvolvedor foram alocados para ajudá-lo.

Motivo: Dificuldade em escolher a melhor tecnologia gráfica para a representação de partituras, requisito crítico do projeto.

Plano de Mitigação: todo o grupo foi alocado emergencialmente para testar Applets, Ajax, Flash/Flex e JavaFX

ANDAMENTO – 1ª ITERAÇÃO

ProspecçãoPlanejame

nto Elaboração 1ª Iteração

ANDAMENTO – 1ª ITERAÇÃO

Tarefa Prazo inicial

Novo prazo Semáforo Responsável

Definir arquitetura

29 de março

- Arquiteto

Definir tecnologia

27 de março

- Gerente e arquiteto

23 de março a 5 de abril

Tarefas remanescentes da elaboração

Problema da interface

Applets : Simplório

Ajax : Complicado

JavaFX : Suporte fraco

Flash/Flex

ANDAMENTO – 1ª ITERAÇÃO

Tarefa Prazo inicial

Novo prazo Semáforo Responsável

Definir arquitetura

29 de março

- Arquiteto

Definir tecnologia

27 de março

- Gerente e arquiteto

23 de março a 5 de abril

Tarefas remanescentes da elaboração

Tecnologias Adotadas

Interface Gráfica: Flex Representação Musical: MusicXML

Representa partiturasConversível para MIDI

Banco de dados: MySQL com JDBCGratuito, conhecido pela equipe

Servidor: Java e ServletsCompatível com Flex

ANDAMENTO – 1ª ITERAÇÃO 23 de março a 5 de abril

Tarefa Prazo inicial

Novo prazo Semáforo

Responsável

Planejar a iteração

23 de março - Gerente

Elaborar protótipo

25 de março 7 de abril Designer e Designer Int. Us.

Redefinir arquitetura

29 de março - Arquiteto

Desenvol-vimento

5 de abril Próxima iteração

Desenvolvedores

Testes 5 de abril - Desenvolvedores

Avaliar iteração

5 de abril - Gerente

Motivo: Fizemos um prótotipo visual, mas tivemos uma idéia para deixar a interface mais limpa com menos botões e ainda não fizemos o protótipo novo.

Plano de Mitigação: explicamos a nova idéia em reunião

Andamento: 28 %

Motivo: Dificuldades na comunicação do cliente Flex com o servidor Servlet. Vários requisitos estão só dependendo disso.

Plano de Mitigação: três desenvolvedores que finalizaram seus módulos serão realocados

ARQUITETURAVisão 4 + 1 (Philippe Kruchten)

Visão de Processos

Visão de Implantação

Visão de ImplementaçãoVisão Lógica

Visão de Casos de Uso

ARQUITETURA – VISÃO LÓGICA

ARQUITETURAVisão 4 + 1 (Philippe Kruchten)

Visão de Processos

Visão de Implantação

Visão de ImplementaçãoVisão Lógica

Visão de Casos de Uso

ARQUITETURA – VISÃO DE IMPLEMENTAÇÃO

Padrão Arquitetural Layers

GUI

Serviços

Classes Utilitárias Persistência

ARQUITETURA – VISÃO DE IMPLEMENTAÇÃO Padrões de Projeto utilizados:

MVC – Camada de apresentação Singleton – Camada de serviços Command – Camada de classes

utilitárias

ARQUITETURA - VISÃO DE IMPLEMENTAÇÃO

MVC

ARQUITETURAVisão 4 + 1 (Philippe Kruchten)

Visão de Processos

Visão de Implantação

Visão de ImplementaçãoVisão Lógica

Visão de Casos de Uso

ARQUITETURA – VISÃO DE IMPLANTAÇÃO

ARQUITETURAVisão 4 + 1 (Philippe Kruchten)

Visão de Processos

Visão de Implantação

Visão de ImplementaçãoVisão Lógica

Visão de Casos de Uso

ARQUITETURA – VISÃO DE PROCESSOS

Diagrama de Atividades

DESENVOLVIMENTO (REQUISITOS) Criar/Abrir/Editar partitura na web

Funciona parcialmente no cliente, sem persistência Estruturado no servidor, falta a comunicação

Partitura Funciona parcialmente no cliente, sem persistência Estruturado no servidor, falta a comunicação

Execução em MIDI BD => MusicXML => MIDI concluído O cliente consegue MIDI gerando MusicXML, mas Flex

não toca BD e representação de dados

BD armazena dados compatíveis com MIDI http://www.cin.ufpe.br/~lumnis/iteracao1

DIFICULDADES ENCONTRADAS Teoria musical envolvida

Os integrantes tiveram que aprender rápido

Manipulação de MusicXML

Aprendizado de nova tecnologiaFlex

Configuração do ambiente IDEs, variáveis, SDKs

DIFICULDADES ENCONTRADAS Devemos continuar com JDBC no banco

de dados?Hibernate seria mais fácil?Alguma outra tecnologia daria maior

suporte à colaboração e a edições concorrentes?

Compatibilidade de dados Cliente x Servidor

Flex e Servidor JavaComunicaçãoMIDI

PLANO PARA A PRÓXIMA ITERAÇÃO 6 de abril a 14 de abrilTarefa Início Prazo Responsável

Planejar a iteração

4 de abril 5 de abril Gerente

Elaborar protótipo

6 de abril 7 de abril Designer e Designer Int. Us.

Redefinir arquitetura

6 de abril 8 de abril Arquiteto

Desenvolvimento

6 de abril 14 de abril Desenvolvedores

Testes 11 de abril 14 de abril Desenvolvedores

Avaliar iteração

11 de abril 14 de abril Gerente

DESENVOLVIMENTO (REQUISITOS)

Requisitos não implementados da Iteração 1

Múltiplos Canais Partitura:

Armadura, alteração de fórmulas, pausas Copiar/recortar/colar compassos (desejável)

Representar os dados do BD graficamente Precisa da conexão cliente - servidor.

Suporte à colaboração Edição concorrente

DÚVIDAS?

OBRIGADO!