Controle de Manutenção
Tecnologias adotadas
- J2EE (JSP/Tomcat)
- MySQL?
- Utilizar jWebUnit para testar a interface WEB?
- Talvez utilizar o Struts como framework?
- que tal experimentar o DBUnit? Dois artigos recentes:
DeveloperWorks article: Control your test-environement with DbUnit and Anthill.
Effective Unit Testing with DbUnit
Histórias
- Usuário detecta problema em um computador, se não conseguir usar o micro com problemas, utiliza o micro ao lado, abre então o navegador e acessa o endereço do Controle de Manutenção. Informa o laboratório e o computador com problema, a descrição do problema e se quiser informa seu e-mail para receber um retorno sobre a resolução do problema.
- O técnico acessa o Controle de Manutenção e verifica os problemas ainda não resolvidos. Escolhe um problema para resolver e muda seu status para indicar que está sendo resolvido.
- O técnico acabou de resolver um problema existente, acessa o Controle de Manutenção e indica que o problema já foi resolvido.
- Técnico deseja ter um controle dos recursos que disponibiliza. Para tal precisa controlar quantas e quais salas possui e o que está disponível, em termos de máquinas e recursos adicionais (projetor, etc.) em cada sala. Para cada máquina que existe ele gostaria de ter um controle individual, podendo definir características particulares a cada uma.
Entidades
- Salas(identificador, capacidade,{Maquina},{RecursosAdicionais})
- Maquina(Sala, identificador,cpu,memoria,{Programa},identificacaoPatrimonio)
- Programa(nome,versao)
- TiposDeRecurso?(descricao)
- RecursoAdicional?(Sala, tipo, identificacaoPatrimonio)
Equipe
Script de criação do banco de dados
CREATE TABLE TIPOSDERECURSOS(TIPORECURSO VARCHAR(50), PRIMARY KEY(TIPORECURSO)) TYPE = INNODB;
CREATE TABLE PROGRAMAS(NOMEPROGRAMA VARCHAR(100), VERSAOPROGRAMA VARCHAR(20), PRIMARY KEY(NOMEPROGRAMA,VERSAOPROGRAMA)) TYPE = INNODB;
CREATE TABLE SALAS(IDSALA VARCHAR(10), CAPACIDADE INTEGER, PRIMARY KEY(IDSALA)) TYPE = INNODB;
CREATE TABLE MAQUINAS(IDSALA VARCHAR(10), IDMAQUINA VARCHAR(20), IDPATRIMONIO BIGINT UNIQUE, CPU VARCHAR(20), MEMORIA SMALLINT, PRIMARY KEY(IDMAQUINA)) TYPE = INNODB;
CREATE INDEX IDXMAQUINASIDSALA ON MAQUINAS(IDSALA);
ALTER TABLE MAQUINAS ADD FOREIGN KEY(IDSALA) REFERENCES SALAS(IDSALA);
CREATE TABLE RECURSOSADICIONAIS(IDRECURSOADICIONAL VARCHAR(20), IDSALA VARCHAR(10), TIPORECURSO VARCHAR(50), IDPATRIMONIO BIGINT UNIQUE, PRIMARY KEY(IDRECURSOADICIONAL)) TYPE = INNODB;
CREATE INDEX IDXRECURSOSADICIONAISIDSALA ON RECURSOSADICIONAIS (IDSALA);
CREATE INDEX IDXRECURSOSADICIONAISTIPORECURSO ON RECURSOSADICIONAIS (TIPORECURSO);
ALTER TABLE RECURSOSADICIONAIS ADD FOREIGN KEY(IDSALA) REFERENCES SALAS(IDSALA);
ALTER TABLE RECURSOSADICIONAIS ADD FOREIGN KEY(TIPORECURSO) REFERENCES TIPOSDERECURSOS(TIPORECURSO);
CREATE TABLE MAQUINAPROGRAMAS(IDMAQUINA VARCHAR(10), NOMEPROGRAMA VARCHAR(100), VERSAOPROGRAMA VARCHAR(20), PRIMARY KEY(IDMAQUINA, NOMEPROGRAMA, VERSAOPROGRAMA)) TYPE = INNODB;
CREATE INDEX IDXMAQUINAPROGRAMASIDMAQUINA ON MAQUINAPROGRAMAS (IDMAQUINA);
CREATE INDEX IDXMAQUINAPROGRAMASNOMEPROGRAMAVERSAOPROGRAMA ON MAQUINAPROGRAMAS (NOMEPROGRAMA,VERSAOPROGRAMA);
ALTER TABLE MAQUINAPROGRAMAS ADD FOREIGN KEY(NOMEPROGRAMA,VERSAOPROGRAMA) REFERENCES PROGRAMAS(NOMEPROGRAMA,VERSAOPROGRAMA);
ALTER TABLE MAQUINAPROGRAMAS ADD FOREIGN KEY(IDMAQUINA) REFERENCES MAQUINAS(IDMAQUINA);
Atividades realizadas
- 14/09 - Estudo inicial do problema. Escolha das tecnologias adotadas.
- 21/09 - Integração com novos membros da equipe. Novo foco inicial de desenvolvimento (nova história - cadastro de recursos)
- Definição de como será trabalhado com o Tomcat (grupo de usuários será criado no servidor liberando acesso a pasta webapps do Tomcat).
- Discussão sobre o problema e definição inicial da estrutura do sistema
- 24/09 - Servidor preparado para acesso pela equipe (conectar via SSH usando as mesmas contas do CVS)
Local da instalação do Tomcat: /usr/local/jakarta-tomcat-5.5.2/webapps --
DiegoAbadan - 24 Sep 2004
- 28/09 - Criação da versão inicial do banco de dados
Plano de trabalho
- 29/09 - Tomcat e MySQL? instalados e bando de dados criado. Início do desenvolvimento da história de cadastro de recursos (elaboração dos testes e possível início de implementação).