Processo de design de software



Documentos relacionados
Design Conceitual. Elaboração do modelo conceitual da aplicação Modelo Conceitual da Aplicação

Abordagem baseada numa visão evolutiva do desenvolvimento de software, afetando o processo como um todo Protótipo de software é um sistema que...

Análise e Projeto de Software

Requisitos do usuário, do sistema e do software [Sommerville, 2004]

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Introdução : 1. Temas Abordados no Livro 1. Novidades no Excel Explorando o ExceI O Microsoft Excel 3

Introduzir e formatar texto no MS Word

Descomplicando_Informatica_cad_00.indd 14 07/08/ :34:44

PROJETO (OU DESIGN) DO SOFTWARE Diagrama de Estrutura

Modelos de Processo (métodos)

Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.

SAMUEL INFORMÁTICA SEAP Curso Básico de MS Office Word 2010/BrOffice Writer

Organização de Computadores Software

A abordagem da Engenharia Semiótica para o desenvolvimento de software centrado no usuário

Migrando para o Word 2010

Mauricio Barbosa e Castro

SISTEMAS DE INFORMAÇÃO GERENCIAIS

Professor Paulo Lorini Najar

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word Sumário

Prototipação de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: Arquitetura de Software Aula 03

Desenvolvimento de Interfaces Prototipação

1 Introdução. Componentes Usuários. Provedor de Serviços. Figura 1.1 Ambiente de oferecimento de serviços

Conectar diferentes pesquisas na internet por um menu

Edital N.º 11/PROAD/SGP/2015 e complementares

Dados. Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade. fatos no estado bruto, conforme Platão;

1. Criar uma nova apresentação

Programação Funcional. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2015.

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

PROPOSTA DE PRESTAÇÃO DE SERVIÇO. Novo Site da Minas Comunica

QUESTIONÁRIO DE AVALIAÇÃO Primeira Fase

Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

PowerPoint Operações básicas, criação de uma apresentação, edição e formatação, inserção de gráficos e desenhos

Análise de Sistemas. Contextualização. O Sucesso. Aula 4. Instrumentalização. Aula 4. Prof. Emerson Klisiewicz. Clientes satisfeitos

DOMINE O EXCEL Fascículo 1

ESTRATÉGIAS /ACTIVIDADES. Fazer uma abordagem teórica e simples

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Centro de Seleção/UFGD Técnico em Refrigeração ==Questão 26==================== Assinale a alternativa que define refrigeração.

UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor.

Formador: Carlos Maia

Endereço de acesso:

4.1. UML Diagramas de casos de uso

BLOG ESCOLAS. Após acessar o seu respectivo blog, você será direcionado a tela a seguir. Vamos conhecê-la um pouco melhor.

Pontifícia Universidade Católica de Minas Gerais Bacharelado em Sistemas de Informação Trabalho de Diplomação

Energia e Desenvolvimento Humano

Journal of Transport Literature

Modelos de Sistemas Casos de Uso

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais prof@edison.eti.

Engenharia de Software

OFICINA DE POWER POINT

Manual do Usuário. Menus: Produtor Rural, Propriedade Rural e GTA Módulo: Produtor Rural. dezembro de 13

Densímetro de posto de gasolina

FEMA Fundação Educacional Machado de Assis INFORMÁTICA Técnico em Segurança do Trabalho P OW ERPOI NT. Escola Técnica Machado de Assis Imprensa

2. Conceitos e Arquitetura de Bancos de Dados

Microsoft PowerPoint para apresentações. Formador: Carlos Maia

MULTIACERVO Implementações da versão 20-1

O Processo de Engenharia de Requisitos

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

Datas Importantes: Recepção de Trabalhos: 01/09/2014 a 21/09/2014. Resultado das avaliações dos artigos: 05/10/2014. Início das inscrições: 15/09/2014

FundamentosemInformática

UM SISTEMA WEB PARA TORCEDORES EM CAMPEONATOS ESPORTIVOS ESTUDANTIS

Informatica Báica: Aplicativos de escritório

Operador de Computador (Código 49)

MS PowerPoint. O que é? Gestão Comercial e da Produção

Professor: Curso: Disciplina: Aula 4-5-6

MODELIX SYSTEM SOFTWARE DE PROGRAMAÇÃO DE ROBÔS

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

Agenda Semântica. Grupo: Francisco Rodrigues Júnior Guilherme Daher Ferreira Luana Vieira Morellato Renan Rigo

Laboratório de Hardware

Modelos de Sistemas. Leitura: Cap7: Sommerville; Cap: 7-8 Pressman; Cap3: Ariadne

Qualidade de Software. Prof.: Ivon Rodrigues Canedo. PUC Goiás

Projeto "Aqui Tem Cultura"

Curso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP

Banco de Dados Conceito de Arquitetura

O Windows é um software de sistema, que permite ao utilizador interagir com o computador e com os seus periféricos.

PORTAL MODELO. APOSTILA DE ATUALIZAÇÃO CONSELHOS REGIONAIS - CRAs. PASSO A PASSO PARA ATUALIZAÇÕES Conselhos Regionais de Administração

Manual do Aluno para o Curso do SEER à Distância

Para criar uma nova apresentação: 1.Escolha a opção Apresentação em Branco Clique no botão Ok

Computador Digital Circuitos de um computador (Hardware)

Tutorial ConvertXtoDVD 3

RESERVAR MANUAL SISTEMA DE RESERVAS DE SALAS INFORMATIZADAS

Introdução à Programação. João Manuel R. S. Tavares

Técnico/a de Refrigeração e Climatização

LISTA DE EXERCÍCIOS. Prontuário Nome Assinatura QUESTÕES TEÓRICAS

Gerenciamento de Tarefas

O Processo Unificado: Captura de requisitos

1. Introdução. Avaliação de Usabilidade Página 1

Transcrição:

Design de Software Processo de converter a especificação num conjunto de modelos que descrevem a estrutura e o comportamento do software, particionado em unidades abstratas. Descreve como o software será realizado. Modelos de processo mais atuais consideram que o design pode ocorrer simultaneamente com a especificação e com a implementação Atividades - Visão tradicional: Arquitetura, Especificação abstrata; Design das interfaces; Design de componentes; Design de algoritmos e estruturas de dados; Atividades Visão moderna: Todas as anteriores e mais: Design conceitual e design das interfaces de usuário. Muitas vezes ocorrem na definição. Processo de design de software Requirements Design activities Architectural design Abstract Interface design Component design Data structure design Algorithm design System architecture Software Interface Component Data structure Algorithm Design products Fonte: Ian Sommerville

Quando e como realizar o design Quando O design começa desde a fase de definição, com o design conceitual, arquitetura inicial, design de interface de usuário, ajudando a especificar os requisitos. Na fase de desenvolvimento, é feito o design arquitetural detalhado (módulos, componentes e interfaces), design de algoritmos e dados Na engenharia de software moderna, análise e design são inter-relacionados Como Design baseado em modelos Vários modelos estruturais e comportamentais são produzidos Design baseado em prototipação Protótipos da interface de usuário, protótipos de componentes As duas abordagens podem ser utilizadas em conjunto Design Conceitual Elaboração do modelo conceitual da aplicação Modelo Conceitual da Aplicação Descreve abstratamente a aplicação Ponto de vista externo (do usuário) Modelo Conceitual da Aplicação Modelo Funcional Modelo de Interação Modelo Funcional Descreve o comportamento do sistema em termos de funções que ele oferece Descreve os conceitos da aplicação, sua propriedades e seus relacionamentos Modelo de Interação Descreve como o usuário interage com o sistema

Exemplo Editores de texto Diferentes editores de texto possuem modelos conceituais distintos Para editar o documento ao lado em diferentes editores de texto, é preciso utilizar diferentes conceitos Parágrafos, Caixa de texto, Tabelas, Seções, Títulos. Word Margens da coluna e página Títulos Seção com 1 coluna estilo Seção com 2 colunas Parágrafos Seção com 2 colunas Legenda

HTML Cabeçalho Tabela,1 linha, 2 colunas Tabela, 1 linha, 2 colunas Tabela, 3 linhas 2 colunas Parágrafos Imagem Powerpoint Caixas de texto Caixas de texto Figura

Elementos do Modelo Conceitual Elementos Objetos (fonte, parágrafo, página, ) Propriedades (cor, tamanho, estilo, ) Ações (formatar, copiar inserir, ) Relacionamentos (parágrafo contém palavra) Restrições Comportamento (resultado de ação) Como o usuário entende o modelo conceitual da aplicação? Através da Interface de Usuário Signos: nomes, ícones, símbolos e figuras utilizados Widgets: botões, menus, formulários Representação da informação Através de tutoriais, manuais e ajudas Modelo Conceitual da Aplicação Modelo Conceitual da Aplicação Modelos de de Funcionalidade Modelos de de Interação Usuário-Sistema Arquitetura e Componentes de de Software Interface de de usuário

Modelo conceitual de um condicionador de ar Temperatura ambiente Velocidade do vento Esquema do funcionamento do condicionador Ventilador Compressor Termostato Gás Serpentina de gás Tubo de circulação

Modelo Conceitual do condicionador Ventilador Velocidade empurra Controla Compressor Ligado Liga esfria Gás Liga contém Serpentina de gás Termostato Distância esfria Modifica distância Ar Temperatura Velocidade Controle A Posição Controla Controle B Posição Diagrama de Estados do condicionador ControleA: desligado Desligar compressor e ventilador Compressor.Ligado: não Ventilador.Velocidade: 0 Termostato.Distância: Compressor.Ligado: sim Ventilador.Velocidade: 2 Termostato.Distância: ControleA : F2 ControleA:F2 Ligar compressor e Acionar ventilador na velocidade 2 ControleA: V2 Ligar compressor e Acionar ventilador na velocidade 2 Acionar ventilador na velocidade 2 ControleA : F1 ControleA: desligado Desligar compressor e ventilador ControleA :V1 Acionar ventilador na velocidade 1 Compressor.Ligado: não Ventilador.Velocidade: 2 Termostato.Distância: Acionar ventilador na velocidade 1 ControleA : V1 Desligar compressor Compressor.Ligado: sim Ventilador.Velocidade: 1 Termostato.Distância: Compressor.Ligado: não Ventilador.Velocidade: 1 Termostato.Distância: ControleA : F1 Ligar compressor ControleA: V2 Acionar ventilador na velocidade 2

Prototipação Abordagem baseada numa visão evolutiva do desenvolvimento de software, afetando o processo como um todo Protótipo de software é um sistema que... funciona não tem tempo de vida definido pode servir a múltiplos propósitos deve ser construído rapidamente e com baixo custo é parte integrante de um design centrado no usuário, para avaliação e modificação Objetivos e Tipos de Prototipação Objetivos Apoio ao levantamento e validação dos requisitos. Explorar soluções de design alternativas Experimentos de funcionamento e usabilidade Prototipação evolucionária Um protótipo inicial é produzido e refinado através de inúmeras etapas de avaliação e re-design até tornar-se um produto final Prototipação descartável Utilizado na descoberta e validação dos requisitos e depois descartado. O resultado é a especificação de requisitos.

Ferramentas de prototipação Descartável (não executável ou falso) Papel e lápis, editores gráficos, maquetes, Descartável e Evolucionária Linguagens dinâmica de alto-nivel Smalltalk, Lisp, Prolog, HTML, PHP, Perl Ferramentas de Programação Visual Visual Basic, Delphi, Linguagens de 4a. Geração (4GL) para programação de bancos de dados Access Linguagens de configuração (montagem) de componentes scripting TCL/TK, Lua, Python, Ferramentas de montagem de aplicações MS Office, Director, Flash, Protótipo falso

Maquetes Interfaces feitas de papelão alert box buttons menu combo box list box tabs entries Usando HTML

Problemas Evolucionária Mudanças rápidas e falta de documentação levam a problemas de: gerenciamento manutenção contrato Descartável Pode ser que o sistema final não atenda aos requisitos não funcionais desempenho, robustez, confiabilidade Baixa qualidade do processo Documentação e Manutenção difíceis