sábado, 30 de outubro de 2010

O cliente tem sempre razão..

Continuando...

Abaixo uma visão das notas dos alunos.
O professor pode incluir uma avaliação, e dar notas para seus alunos.






As representações gráficas diminuiram, foi adicionado um gráfico de barra para indicar o estado do aluno.




domingo, 17 de outubro de 2010

Diário HTML

Olá, depois de muito trabalhar...

Temos um diário feito inteiramente em HTML (tabelas) que servirá como template para impressão.






O processo com XLS do Excel é muito trabalhoso (para não dizer impossível).
Esse modelo foi gerado com base em um diário fornecido pelo professor Ivan.

Um abraço e até a próxima.

terça-feira, 12 de outubro de 2010

Progressos no LhamaDroid

Assim como prometido, vou colocar todos os avanços no LhamaDroid até o momento
Os principais trabalhos foram no sentido de implementar o banco de dados para que os dados reais fossem exibidos pelas telas. Então as listas de aluno, aulas e matérias já são carregadas a partir do banco, e as presenças já são modificadas nas telas de controle.

Lista de aulas carregada do banco

Título da tela (UML) agora corresponde à aula atual

O resumo da chamada corresponde aos totais registrados no banco

A lista de alunos é carregada do banco e 
ao modificar uma presença o valor é atualizado no banco

A lista de matérias que o professor 
ministra também corresponde ao banco

Tela de controle de presenças apresenta dados reais

Uma das maiores dificuldades no período foi a tela de controle de presenças, com a Expandable List do Android. Não encontrei nenhum tutorial na internet então me baseei na documentação e consegui após vários problemas fazer a lista carregar corretamente. Publicarei ainda um tutorial, com alguns cuidados a implementação é bem simples.

Agora implementadas as classes de persistência (que ainda passarão por ajustes) o próximo passo é o mais complexo, a integração com o serviço PHP sendo desenvolvido pelo Joaci, e a utilização de Bluetooth para realizar a chamada e trafegar dados. Tentarei manter uma frequência maior de publicação no blog nesse período.

sábado, 2 de outubro de 2010

SQLite no Android

Agora que já falei sobre o SQLite, vamos colocá-lo no contexto do Android.
O SQLite já faz parte do Android por definição, então já está disponível para qualquer desenvolvimento.
É possível inclusive acessar o arquivo .db a partir do emulador da SDK do Android, modificando o mesmo com qualquer programa que leia este tipo de arquivo, até com a extensão do firefox que comentei no outro artigo.
Para encontrar este arquivo, utilizando o eclipse, altere para a perspective Dalvik Debug Monitor Server (DDMS) e navegar para Data > Data > [Aplicação] > DataBases > [nome da Base], conforme print:


É muito prático trabalhar diretamente com a base, que pode ser transferida diretamente para o emulador depois de alterada.

Agora, seguindo na implementação do Android, a API oferece uma classe chamada SQLiteOpenHelper, que deve ser extendida e representa uma base de dados SQLite. No construtor é informado o nome da base sendo criada e a versão atual (que deve ser incrementada quando o app for atualizado), além de uma customização do cursor utilizado pelo banco (caso você tenha implementado uma).


public class DataBaseHelper extends SQLiteOpenHelper {


public DataBaseHelper(Context context) { 
super(context, DATABASE_NAME, null, 1);
}
}


Outros métodos importantes são o onCreate e o onUpgrade, que contém respectivamente os scripts de criação e de atualização da estrutura do banco.


//Executa as rotinas de criação das tabelas do banco
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE A");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//Executar scripts que devem ser rodados quando o banco sofre alteração numa atualização

}

Quando esta classe estiver implementada o banco já poderá ser utilizado. Utilizando o trecho abaixo é possível criar um objeto do tipo SQLiteDatabase, que oferece acesso às tabelas, oferecendo métodos para realizar CRUD.

SQLiteDatabase db = new DataBaseHelper(context).getReadableDatabase();        
db.rawQuery("SELECT * FROM TABLE", null); 

As consultas retornam cursores, que provavelmente não são novidade para quem já mexeu com outras bases de dados.

No contexto do lhama, os meus progressos foram:
-Adaptar a base de dados para o SQLite
-Preparar uma carga de exemplo para testes
-Integrar as consultas com as Views do Android para que os dados sejam manipulados.

A última parte consumiu a maior parte do meu tempo, especialmente na integração dos cursores do banco de dados com a ExpandableList do Android. O print abaixo já mostra a lista com dados carregados a partir do banco, já atualizando as presenças das aulas cadastradas quando o checkbox é alterado. Foi desenvolvido numa aplicação a parte para focar o meu trabalho nesta atividade.



SQLite, o pequeno notável

É pessoal, manter um blog atualizado não é fácil, então vou tentar tirar o atraso com uma série de posts contando o progresso nesse meio tempo.
Vou começar com o SQLite, que para quem não sabe, é o banco de dados implementado no Android.
Também é o mesmo banco utilizado no iPhone, e utilizado em vários lugares, como por exemplo para guardar as configurações do firefox (tanto que o firefox tem uma extensão para acessar bancos SQLite).
Como descrito no site oficial, o SQLite não é um concorrente do Oracle ou de bancos de grande porte, apenas é uma opção mais interessante do que utilizar persistência diretamente em arquivo, utilizando-se da estrutura do SQLite, já muito bem consolidada.



Os pontos interessantes do SQLite são que ele possui tipos apenas por "formalidade", com o exemplo fica um pouco mais fácil de entender: Ao criar uma coluna do tipo Integer, não é obrigatória a utilização de inteiros nessa coluna. Podemos inserir texto, datas, horas, enfim, qualquer tipo nessa coluna. Cabe ao programador utilizar este recurso de forma consciente para manter a consistência do banco.


Agora no contexto do Lhama, o meu trabalho foi adaptar o banco de dados estruturado em MySql para SQLite, e conhecer mais sobre a utilização do mesmo no Android, o que será tema do próximo post.

domingo, 19 de setembro de 2010

Aplicação rica!?



Boa noite!

Enfim começamos com o ambiente do professor:
Eu acredito que está bonito.
A idéia é que o professor ao clicar em algum do serviços veja as matérias que leciona e ao clicar nessa "pasta" como nome da matéria lhe será mostrado as ferramentas relacionadas as matérias/turmas.

Penso ser um dos processos mais trabalhosos....Mas tem que ser feito!






Complementando:

Agora uma imagem da visão que os professores vão ter dos alunos que cursam sua matéria.



Até a próxima!

quinta-feira, 9 de setembro de 2010

WBS


Olá pessoal segue uma fotinha do WBS, esperamos manter este escopo até o final do projeto.

terça-feira, 7 de setembro de 2010

Ambiente do Aluno LhamaWEB

Boa noite!

Depois de muito sofrer com navegadores e suas diferentes formas de renderizar ...
Segue uma primeira vista do layout (já funcional ) do LhamaWEB.

Foi implementado o login no sistema, com autenticação no banco e senhas hash MD5.
A consulta de faltas está a um passo (na verdade a um JOIN). Foram adicionados alertas (confirmações para sair do sistema...javascript).
Abaixo uma imagem da tela do aluno:

Tela dos alunos lhama web

É uma pena não poder linkar para demo (o banco está rodando em uma das minhas máquinas virtuais).

Até a próxima!

domingo, 5 de setembro de 2010

Primeiro deploy da aplicação

Hoje, com as primeiras telas prontas, também consegui instalar o app num celular Android (Milestone).
Como podem ver, é possível testar sem problemas no aparelho. Provavelmente dificuldades aparecerão quando eu começar os testes de comunicação bluetooth, onde teremos mais trabalho.

Telas do LhamaDroid

Leitores do blog, estou postando algumas telas do lhama para android.
Claro que não tenho o toque artístico do joaci, ainda falarei com ele para dar aquela arredondada no layout, mais ai vai uma degustação:



Definimos como tarefa inicial definir telas e navegação, para ter uma boa visão da usabilidade. É um projeto que precisa ficar bem intuitivo, para não ficar mais trabalhoso do que o processo normal de chamada ;)

quinta-feira, 2 de setembro de 2010

Ferramenta gerencial e cronograma do projeto

Dentre a semana passada e essa semana o grupo escolheu a Ferramenta Gerencial que ajudará no planejamento e controle do projeto, o PangoScrum, que se mostrou mais adequado levando em consideração que a Metodologia de Desenvolvimento escolhida foi o Scrum e com o PangoScrum conseguimos determinar e seguir todos os processos de uma maneira simplificada.

Hoje especificamente foi criado o cronograma do projeto onde todos os pacotes de trabalho foram quebrados em níveis mais específicos.

Obrigado,
Karina Monzano

terça-feira, 31 de agosto de 2010

Visão das faltas - Aluno.

Boa tarde!

Hoje trabalhei em uma forma simples e gráfica de representar as faltas e presenças de um aluno em determinada matéria em um semestre qualquer.

Foi desenvolvido uma representação e a mesma segue abaixo:





O resultado prévio pode ser visto clicando na imagem ou nesse link : VISÃO DE FALTAS.


Obrigado,
Joaci Brito

quinta-feira, 26 de agosto de 2010

Confecção de telas (Layout) do módulo Web

Bom dia!

Essa semana foram feitos alguns progressos no layout do Lhama Web.

Feita uma tela de Login(com os inputs customizados):


Feito também um menu com JavaSript (sem JQuery):

O menu funciona clicando no Item "+Serviços" que por vez abre os sub-menus.

Juntamente com o item serviços pode-se acrescentar outros itens que só são expandidos ao clicar.

O item clicado ao ser "re-clicado" retrai-se novamente.

Pode ser visualizado: CLIQUE PARA VER











Até..

terça-feira, 24 de agosto de 2010

segunda-feira, 9 de agosto de 2010

The Developers Conference

Caros amigos
Recomendo um link de uma conferência que vai ser realizada em São Paulo dias 20, 21 e 22.
O evento tem um custo de R$ 20 por dia e tem várias opções disponíveis para todos os gostos.
O link com mais detalhes é este. No meu caso assistirei Mobile, .Net e Web.

domingo, 8 de agosto de 2010

Novo Layout LhamaWeb - Mais ecológico...

Boa noite!

Apenas para deixar registrado:

Hoje trabalhei sobre um novo layout do módulo LhamaWeb.
Ainda não está finalizado.....Mas é possível ver onde os conteúdos vão ser alocados e uma prévia dos serviços disponíveis.
Agora verde e em 1024px por X(a altura dependerá do conteúdo :-).




No Topo foi usado como parte do banner uma imagem do diário (em papel enviado pelo professor).
No lado direito 2 botões (Exportar para PDF e Procurar).
Os serviços vão estar no lado direito.
As linha coloridas não são permanentes (servem apenas para marcar e facilitar o desenvolvimento de cada parte do layout). Essa linha vão ser ocultadas após a conclusão do layout.

As as Divisões na página não tem altura fixa (a medida que se atribui conteúdo elas "crescem" empurrando por exemplo o rodapé para baixo).

Penso em fazer na Parcela central (DIV do Meio) a exibição em um formato que lembre o máximo os diários em papel (por uma questão de familiaridade dos professores).

Aguardo sugestões.

Até a próxima!

domingo, 1 de agosto de 2010

Android e Lhama

Para quem não sabe, o projeto tem um módulo mobile para aparelhos com Android. Como ninguém no grupo conhece, estamos desvendando os segredos do desenvolvimento para Android, e no momento estou estudando o layout. recomendo este site que contém dicas e exemplos de telas para android, sendo que no momento estou apenas testando as possibilidades do sistema:



Temos um modelo de dados já estruturado, mas ainda em fase inicial, que provavelmente sofrerá diversas modificações. A partir desse modelo estamos estruturando as classes em java.
Por enquanto é só, aguardem novidades!

quarta-feira, 21 de julho de 2010

Layout do módulo Lhamaweb

Nos dias 17/18 foram elaborados os primeiros ensaios de layout para o módulo web.

Procuramos usar o mesmo padrão de cores do logo do Proyecto Lhama.

A idéia é que sejam feitos no mínimo 3 amostras para então escolhermos a mais adequada e customizar de acordo com os serviços/ferramentas da aplicação web.

Programas usados para a confeção do layout:
  • GIMP - desenho, texturas, cores.
  • PHP editor - auxiliar no CSS e HTML.
Até..

sábado, 17 de julho de 2010

Traçando de metas

Hoje nos reunimos e definimos as atividades a serem realizadas,
foram definidos os seguintes módulos do projeto:
LhamaWeb
LhamaDroid
LhamaJ2ME
LhamaCore

  • Os papéis desempenhados por cada participante da equipe.
  • Decidimos também que utilizaremos a metodologia Scrum;
  • Os documentos necessários a serem entregues;
  • As tecnologias a serem utilizadas e o porquê.