Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Laboratório de Programação
Professor
João Ferreira
Chefe do Setor de
T.I. da
UFRPE/UAST
joao.ferreira@uast.ufrpe
Introdução a Java
A plataforma JAVA
• Simplicidade
• Portabilidade
• Distribuição
• Robustez
• Concorrência
• Performance
• Paradigma de Orientação a
Objetos
Oct 23, 2008
Java é Simples
• Ausência de ponteiros
• Fortemente tipada
• Coleta de lixo automática
(garbage collection)
• Exceções tipadas
• Variáveis (member variables) são
inicializadas automaticamente.
• Objetos e Classes
• Encapsulamento
• Herança e Subtipos
• Polimorfismo
• Ligações dinâmicas (dynamic
binding)
• Criação e remoção dinâmica de
objetos
• Exceções.
Oct 23, 2008
Como funciona um compilador e um
interpretador Java?
O compilador gera um O bytecode deve
arquivo denominado Código Java
ser interpretado
bytecode, e este é um para a linguagem
arquivo neutro e de máquina do
independente de sistema operacional
plataforma. Compilador no qual o mesmo
Java deve ser
executado.
Bytecode
Plataforma Java
Compilação
Programa
Bytecodes Compilado
Sistema Operacional
Oct 23, 2008
Ambiente de Desenvolvimento Java
típico
• Os programas em java, em geral,
passam por 5 fases:
– Editor
– Compilador
– Carregador de classe
– Verificador de bytecode
– JVM
• Criar um programa
– Programa editor – para editar o
código-fonte. O nome do arquivo
deve terminar com a extensão.java.
– Existem os Ambientes de
Desenvolvimento Integrado (IDEs
´Integrated Development
Environments)
Operação Operadores
• Programa para
somar 2 números
Adição +
inteiros.
Subtração - • Programa para
somar,
Multiplicação * multiplicar, dividir
e calcular o resto
Divisão / da divisão de 2
números inteiros.
Resto %
Oct 23, 2008
Exemplos
Operação Operadores • Programa para
comparar 2 inteiros
Igualdade ==
usando as
Diferença != instruções if e todos
os operadores
É maior > relacionais ao lado.
É menor <
É maior ou >=
igual
É menor ou <=
igual Oct 23, 2008
Tipos primitivos
Tipo Tamanho em bits Valores
Boolean Depende da True ou false
plataforma
Char 16 Conj. de caracteres
Unicode ISO
Byte 8 -128 a 127
Short 16 -32768 a +32767
Int 32 -231 a 231-1
Long 64 -263 a 263-1
Float 32 IEEE 754
Double 64 IEEE 754
Laboratório de
Programação
Prof. João Ferreira
Motivação
• Correções
– 80% do tempo de um típico produto
de software é gasto com erros
– A maioria dos re-desenvolvimentos
são relatados por inadequação,
inconsistência e requisitos
imprecisos.
– Corrigindo um erro tarde no ciclo de
desenvolvimento de software pode
custar de 30 a 1000 vezes mais.
Oct 23, 2008
O que é a Engenharia de Requisitos?
• Exemplos:
• Usabilidade (Facilidade de Uso)
– Interface com o usuário, material de
treinamento e documentação do
sistema(Help, Instalação automática).
• Desempenho
– Relacionado com
• Eficiência
• Tempo de resposta de processamento.
• Restrição de HW e SW
– Relacionamento com o hw e sw para
desenvolver e executar o sistema. Oct 23, 2008
• Plataforma Cliente (Windows? Linux? Web?)
Principais características dos RNF
• Redefinindo os requisitos
– Desempenho:
• O Sistema deve responder em menos de
10s
OU
• 80% dos usuários que participarem da
etapa de beta-testes devem avaliar o
tempo de resposta do sistema no
mínimo como satisfatória.
• Entrevista
– Usado quanto poucas pessoas
conhecem as informações
necessárias para o desenvolvimento
do sistema.
– Precisa ser preparada
antecipadamente
– Ter perguntas objetivas
– Evitar constrangimento dos
participantes.
Oct 23, 2008
Exercício sobre requisitos
Necessidades
dos stakeholders
PROCESSO DE
Padrões ENGENHARIA DE Requisitos
Organizacionais REQUISITOS Documentados
Leis e
Regulamentos
sobre o domínio
O Processo de Engenharia de
Requisitos: Etapas
Esboço dos Requisitos
Analise e Negociação
Elicitação
Requisitos
Documento
Acordados
de Requisitos
Validação Documentação
Analise e Negociação
Elicitação
Requisitos
Documento
Acordados
de Requisitos
Validação Documentação
• Entrevistas
• Questionários
• Observação direta
• Brainstorm
• Leitura de Documentos
• Cenários
• Observações e análises
sociais(etnografia)
• Reuso de Requisitos
• Prototipação Oct 23, 2008
Algumas técnicas de Elicitação
A Entrevista
• Antes: planejar, identificar a posição e
responsabilidade do entrevistado, marcar
horário, escolher local sossegado.
• Durante: apresente-se informando a
finalidade da entrevista, explique as
anotações que fizer, não demore mais do
que 2 horas, agradeça a contribuição.
• Depois: documente os pontos
relevantes; envie a documentação ao
entrevistado (aprovação final), envie os
resultados para os usuários e seus
Oct 23, 2008
gerentes
Algumas técnicas de Elicitação
• Questionário
– Usado quanto muitas pessoas
conhecem as informações
necessárias para o desenvolvimento
do sistema.
– Preparar antecipadamente com
questões objetivas
– Desvantagem:
• comunicação restrita com o usuário e
não há troca de informação face a face.
• A preparação exige tempo.
• Questionário
– Preparação: identificar o tipo de informação
que deseja obter.
• Enviar carta acompanhando o questionário
enfatizando a sua importância.
– Identificar quem responderá: nome, função
e localização.
– Distribuir com instruções detalhadas de
como preencher e o prazo de devolução
– Analisar e consolidar as informações
recebidas, documentar as principais
descobertas e enviá-las juntamente com
cópia do relatório para todos os
respondentes.
• Observação direta
– Utilizada como processamento e
confirmação de outros resultados
(entrevista e questionário).
– Identificar documentos que devem
ser coletados para posterior análise.
– Observar diretamente quem
desenvolve o trabalho.
– Deve ter aprovação antecipada das
gerências.
Oct 23, 2008
Algumas técnicas de Elicitação
• Prototipação
– Um protótipo é uma versão inicial do um
sistema que poderá ser usado para
experimentação.
– Protótipos são úteis para elicitação de
requisitos porque os usuários poderão
experimentar o “sistema” e mostrar os
pontos fortes e fracos.Eles terão algo
concreto para criticar
– O desenvolvimento rápido dos protótipos é
essencial para que eles fiquem disponíveis
logo para o processo de elicitação
Oct 23, 2008
O Processo de Engenharia de
Requisitos: Etapas
Esboço dos Requisitos
Requisitos
Documento
Acordados
de Requisitos
Validação Documentação
• Verificação da necessidade
• Verificação de consistência e
completude.
• Verificação de Viabilidade
• Negociação dos requisitos
– Discussão dos requisitos
– Priorização dos requisitos
– Concordância dos requisitos
Elicitação
Analise e Negociação
Requisitos
Documento
Acordados
de Requisitos
Validação Documentação
Elicitação
Analise e Negociação
Requisitos
Documento
Acordados
de Requisitos
Validação Documentação
• Revisão
– Os requisitos são analisados
semanticamente por uma equipe de
revisores.
• Prototipação
– Um protótipo do sistema é mostrado aos
usuários finais e clientes.
• Validação de modelos
– Requisitos são documentados utilizando
linguagem natural e diagramas.
• Geração de casos de teste
– Casos de teste são projetados a partir dos
requisitos.
Oct 23, 2008
Riscos e Prioridades dos Requisitos
• Determinar a prioridade do cliente em
relação a cada um dos requisitos
levantados.
• Através do desenvolvimento de
protótipos é possível permitir que
o risco seja reduzido ou negociar
com o cliente uma nova forma de
atender aquele requisito.