MODELOS DE INTERFACE If x > 0 then x=x+1 msgbox “Atenção” endif Interface Projetista Usuário Código Programador BD Funções do Projetista Desenhar a planta da interface Para isto ele precisa: Entender o usuário, suas tarefas e suas expectativas Conhecer princípios de desenvolvimento de interface Conhecer a capacidade e as limitações dos programadores e suas ferramentas Modelos São recursos utilizados para analisar o relacionamento entre elementos de interface, programação e usuários Um modelo fornece a moldura da interface Um modelo não chega ao nível de detalhe do protótipo, mas ajuda a construí-lo. Modelos Básicos proposto pela IBM Modelo Conceitual do Usuário Modelo do Projetista Modelo do Programador Exemplo Simplificado dos 3 Modelos propostos pela IBM MODELO CONCEITUAL DO USUÁRIO O usuário gostaria de comprar livros como faz em uma livraria física. Ele espera poder achar um livro em prateleiras bem identificadas, folhear o livro, colocar num cesto e pagar no caixa. MODELO DO PROJETISTA (De preferência usar diagramas) Para atender à solicitação do usuário, serão utilizados os objetos: Cliente, Prateleira, Livro, Cesto e Caixa. O Cliente deve ter as seguintes propriedades: Nome, Endereço, CPF O Cesto deve ter as seguintes propriedades: Conteúdo, Valor do Item, Valor Total, Valor do Frete O Cliente poderá alterar seu endereço e sua senha. O Cesto poderá receber mercadoria, retirar mercadoria, calcular frete. Para ver detalhes de um produto, basta que o usuário dê um duplo clique no produto no cesto. MODELO DO PROGRAMADOR Cada objeto definido no Modelo do Projetista deverá ser um Class Module As propriedades deverão ser definidas como Properties em cada Class Module e todas devem ter os métodos Get, Let e Set Cada objeto Cesto deve gerar um registro temporário na tabela Cesto. Ao concluir a compra, o conteúdo do Cesto deve gerar um registro na tabela Pedido e, em seguida, o registro da tebela Cesto deve ser eliminado. Deve haver uma chamada para o método AbreProduto no evento DuploClique sobre Produto Modelo Conceitual do Usuário É uma imagem mental formada pelo usuário Normalmente o usuário não consegue desenhá-lo e a maioria nem se dá conta que ele existe Ajuda a prever o que acontecerá em determinadas situações É baseado na experiência do usuário Experiências diferentes, modelos diferentes Modelo Conceitual do Usuário Para o projetista construir este modelo, é necessário: Usar recursos como entrevistas, lista de funcionalidades e análise de requisitos Incorporar informações que o usuário fornece Conduzir testes de usabilidade Este processo deve ser cíclico Modelo Conceitual do Usuário O modelo deve ser INTUITIVO. O inesperado gera preconceitos. Modelo Conceitual do Usuário Use METÁFORAS Modelo Conceitual do Usuário A metáfora deve permitir que o usuário vá além do que faz na realidade. Modelos Básicos Modelo Conceitual do Usuário Modelo do Projetista Modelo do Programador Modelo do Projetista É importante conhecer conceitos de orientação a objetos Neste modelo o projetista identifica: Objetos Propriedades Comportamentos Ressaltar como o usuário interage com os objetos Modelo do Projetista O comportamento dos objetos não devem ser diferentes do esperado pelo usuário O objetivo do projetista é criar um modelo que atenda aos vários modelos conceituais do usuário Exemplo Simplificado dos 3 Modelos propostos pela IBM MODELO CONCEITUAL DO USUÁRIO O usuário gostaria de comprar livros como faz em uma livraria física. Ele espera poder achar um livro em prateleiras bem identificadas, folhear o livro, colocar num cesto e pagar no caixa. MODELO DO PROJETISTA (De preferência usar diagramas) Para atender à solicitação do usuário, serão utilizados os objetos: Cliente, Prateleira, Livro, Cesto e Caixa. O Cliente deve ter as seguintes propriedades: Nome, Endereço, CPF O Cesto deve ter as seguintes propriedades: Conteúdo, Valor do Item, Valor Total, Valor do Frete O Cliente poderá alterar seu endereço e sua senha. O Cesto poderá receber mercadoria, retirar mercadoria, calcular frete. Para ver detalhes de um produto, basta que o usuário dê um duplo clique no produto no cesto. MODELO DO PROGRAMADOR Cada objeto definido no Modelo do Projetista deverá ser um Class Module As propriedades deverão ser definidas como Properties em cada Class Module e todas devem ter os métodos Get, Let e Set Cada objeto Cesto deve gerar um registro temporário na tabela Cesto. Ao concluir a compra, o conteúdo do Cesto deve gerar um registro na tabela Pedido e, em seguida, o registro da tebela Cesto deve ser eliminado. Deve haver uma chamada para o método AbreProduto no evento DuploClique sobre Produto Modelos Básicos Modelo Conceitual do Usuário Modelo do Projetista Modelo do Programador Modelo do Programador Neste modelo o projetista identifica como programador poderá implementar os objetos identificados no Modelo do Projetista Exemplo Simplificado dos 3 Modelos propostos pela IBM MODELO CONCEITUAL DO USUÁRIO O usuário gostaria de comprar livros como faz em uma livraria física. Ele espera poder achar um livro em prateleiras bem identificadas, folhear o livro, colocar num cesto e pagar no caixa. MODELO DO PROJETISTA (De preferência usar diagramas) Para atender à solicitação do usuário, serão utilizados os objetos: Cliente, Prateleira, Livro, Cesto e Caixa. O Cliente deve ter as seguintes propriedades: Nome, Endereço, CPF O Cesto deve ter as seguintes propriedades: Conteúdo, Valor do Item, Valor Total, Valor do Frete O Cliente poderá alterar seu endereço e sua senha. O Cesto poderá receber mercadoria, retirar mercadoria, calcular frete. Para ver detalhes de um produto, basta que o usuário dê um duplo clique no produto no cesto. MODELO DO PROGRAMADOR Cada objeto definido no Modelo do Projetista deverá ser um Class Module As propriedades deverão ser definidas como Properties em cada Class Module e todas devem ter os métodos Get, Let e Set Cada objeto Cesto deve gerar um registro temporário na tabela Cesto. Ao concluir a compra, o conteúdo do Cesto deve gerar um registro na tabela Pedido e, em seguida, o registro da tebela Cesto deve ser eliminado. Deve haver uma chamada para o método AbreProduto no evento DuploClique sobre Produto