processo de desenvolvimento de software - design de software, interface, arquitetura e algoritmos

14
#PDS Prof. Natanael Simões facebook.com/natanaelsimoes Desenvolvimento: Design Atividades destinadas ao Design durante a Fase de Desenvolvimento no ciclo de vida dos sistemas @natanaelsimoes [email protected] steamcommunity.com/id/ natanaesimoes

Upload: natanael-augusto-viana-simoes

Post on 17-Dec-2014

327 views

Category:

Technology


2 download

DESCRIPTION

Abordagem sobre atividades de design realizadas durante a fase de desenvolvimento no ciclo de vida dos sistemas. Divide-se em Design de Software, Interface, Arquitetura e Algoritmos.

TRANSCRIPT

Page 1: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

#PDS

Prof. Natanael Simões

facebook.com/natanaelsimoes

Desenvolvimento: DesignAtividades destinadas ao Design durante a Fase de Desenvolvimento no ciclo de vida dos sistemas

@natanaelsimoes

[email protected]

steamcommunity.com/id/natanaesimoes

Page 2: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

• Introduzir as atividades realizados durante a fase de desenvolvimento no ciclo de vida dos sistemas• Aprofundar sobre atividades de design

Objetivo

Page 3: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

• Fase de desenvolvimento e suas sub-etapas• Atividades de Design

Conteúdo programático

Page 4: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

Envolve atividades destinadas a produção do software:•Design (Projeto/Desenho)• do Software• da Interface• da Arquitetura• dos Algoritmos

• Prototipação• Programação• Verificação (Testes)

Desenvolvimento

Page 5: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

• Atividade de concepção e especificação“A concepção é a atividade mental de criação do produto que satisfaça aos requisitos”• Concepção se concretiza na forma de especificação(projeto ou desenho)• Projeto define como o usuário irá interagir como sistema• Projeto tem foco na visão externa, aquela percebida pelo usuário (não do programador)

Design

Page 6: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

6

O que/por que projetamos?Design do software

Visão do programador Visão do usuário

•Define como o usuário irá interagir como sistema com foco na visão externa, aquela percebida pelo usuário (não do programador)

Page 7: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

XDesign de Software

(fase de desenvolvimento)- O que o software deve oferecer para satisfazer os requisitos

Requisitos de Software

(fase de definição)- O que o cliente quer- O que a organização necessita- As atividades dos usuários

Design do software

Page 8: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

Design do software

Exemplo de diagrama da UML utilizado para especificar as funções do sistema pelo ponto de vista do usuário e sua interação com o sistema

Page 9: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

RF1 - Realizar o cálculo do total de vendas e do lucro obtido

Designer de software:- Os dois cálculos serão realizados por uma única função ou por duas funções independentes?- Os cálculos serão realizados após o usuário fornecer os todos os dados ou os dados serão fornecidos para cada cálculo que se deseja fazer? Veremos mais sobre técnicas de design de

software ainda este bimestre, mas por enquanto é isso...

Design do software

Page 10: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

• Concepção e especificação da parte do programa que possibilita ao usuário interagir com o sistema• Apresenta menus, janelas, ícones, botões, caixas de texto...• Concretização do modelo de interação especificado no

design de software• Pode ser construído mediante prototipação

Design da Interface

Page 11: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

• Especifica configuração dos componentes de software (módulos, classes, objetos, funções, variáveis) e seus relacionamentos de interdependência e comunicação.• Realização do design do ponto de vista do programador

determinando de forma abstrata como a funcionalidade será implementada

Design da Arquitetura

Page 12: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

Design da Arquitetura

Exemplo de diagrama da UML utilizado para especificar os esquemas de interdependência dos componentes do software a comunicação entre si pelo ponto de vista do

programador

Page 13: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

• Especifica as estrutura de dados e algoritmos que realizam o que foi especificado no Design de Arquitetura (habilita o uso de componentes)• Componentes são códigos-fonte, bibliotecas (DLL, SO) ou

executáveis externos que podem ser incorporados na programação• São definidos os padrões de codificação a serem seguidos:• Nomeação de variáveis, objetos e classes• Organização dos arquivos fonte• Design pattern

Design dos Algoritmos

Page 14: Processo de Desenvolvimento de Software - Design de Software, Interface, Arquitetura e Algoritmos

1) Qual o objetivo da fase de desenvolvimento no ciclo de vida dos softwares?

2) Uma das tarefas executadas durante a fase de desenvolvimento é o Design. Em que consiste esta atividade?

3) Qual a diferença entre Requisito do Software e Design de Software?

4) Cite características das quatro formas de Design abordadas na fase de desenvolvimento.

Exercícios