Вы находитесь на странице: 1из 19

CENTRO ESTADUAL DE EDUCAO TECNOLGICA PAULA SOUZA ETEC SO PAULO

Princpios da engenharia de software

Parte I

Prof Evandro C Teruel - Etec SP

- Apresentar os princpios da engenharia de software; - Apresentar os estilos principais de desenvolvimento de software; - Em cascata; - Iterativo. - Apresentar os principais processos iterativos de desenvolvimento de software orientados a objeto; - RUP; - XP. - Apresentar a importncia da prototipao; - Apresentar as filosofias de anlise de sistemas. - Anlise estruturada; - Anlise orientada a objetos.
Prof Evandro C Teruel - Etec SP

Viso geral da rea de Engenharia de software

Engenharia de software
reas de abrangncia

Processo de desenvolvimento (Anlise de sistemas)


Estilos de anlise

Gesto de projetos PMBOK

Estilo cascata
Filosofias utilizadas

Estilo iterativo
Prototipao

Anlise Estruturada

Anlise Orientada a objetos (AOO)

Caractersticas do processo de desenvolvimento

Prototipao

Processo Unificado RUP


Prof Evandro C Teruel - Etec SP

Processo gil - XP

Fases da Gesto de Projetos


Planejamento, organizao, monitorao e controle

Fases do processo de desenvolvimento


Anlise estruturada (estilo cascata): comunicao, planejamento, modelagem, construo e implantao Anlise OO (processo unificado):concepo, elaborao, construo, transio e produo Anlise OO (processo gil XP):planejamento, projeto, codificao e teste
Prof Evandro C Teruel - Etec SP

ESTILOS DE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE


1. Em cascata: subdivide um projeto em um subconjunto de atividades.
Comunicao
- Iniciao do projeto - Levantamento de requisitos

Planejamento
- Estimativas - Cronograma - Monitorao

Modelagem
- Anlise - Projeto

Construo
- Codificao - Teste

Implantao
- Entrega - Manuteno - feedback

Prof Evandro C Teruel - Etec SP

ESTILOS DE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE


2. Iterativo: subdivide um projeto em um subconjunto de funcionalidades.
Comunicao
- Iniciao do projeto - Levantamento de requisitos

Planejamento
- Estimativas - Cronograma - Monitorao

Modelagem
- Anlise - Projeto

Construo
- Codificao - Teste

Implantao
- Entrega - Manuteno - feedback

Prof Evandro C Teruel - Etec SP

PRINCIPAIS PROCESSOS DE SOFTWARE ITERATIVOS ORIENTADOS A OBJETO


1. RUP (Rational Unified Process) um processo de software orientado por casos de uso, centrado na arquitetura, iterativo e incremental, projetado como uma estrutura de suporte para mtodos e ferramentas UML.
Concepo Elaborao
- Documento de viso - Modelo inicial de caso de uso - Glossrio inicial do projeto - Caso de negcio inicial - Avaliao inicial de risco - Plano de projeto, fases e iteraes - Modelo de negcio se necessrio - Um ou mais prottipos - Modelo de caso de uso - Requisitos suplementares incluindo os no funcionais - Modelo de anlise - Descrio da arquitetura do software - Prottipo arquitetural executvel - Modelo de projeto preliminar - Lista de riscos revisada - Plano de projeto incluindo planos de iterao, fluxos de trabalho adaptados, marcos e produtos tcnicos de trabalho - Manual preliminar do usurio

Caracterstica Principal de usabilidade do RUP: Usado em sistemas maiores com equipe de desenvolvimento grande. O desenvolvimento mais lento e fornece uma ampla documentao.
Construo Transio
- Modelo de projeto - Componentes de software - Incremento integrado de software - Plano e procedimento de teste - Caso de teste - Documentao de apoio (manuais do usurio, manuais de instalao e descrio do incremento atual) - Incremento de software entregue

- Relatrio de teste beta


- Realimentao geral do usurio

Produo
- Monitoramento suporte - Criao de verses

Prof Evandro C Teruel - Etec SP

PRINCIPAIS PROCESSOS DE SOFTWARE ITERATIVOS ORIENTADOS A OBJETO


1. XP ( Extreme Programming) um processo gil de desenvolvimento que usa uma abordagem orientada a objetos. Inclui um conjunto de regras e praticas em quatro fases: planejamento, projeto, codificao e teste.

Planejamento
- Histrias do usurio - Valores - Critrios de teste de aceitao - Plano de iterao

Projeto
- Projeto simples com cartes CRC

Codificao
- Refabricao (aperfeioamento da estrutura interna do cdigo) - Programao em pares

Teste

- Teste unitrio
- Integrao contnua - Teste do cliente - Incremento de software

Caracterstica Principal de usabilidade do XP: Usado em sistemas menores com equipe de desenvolvimento pequena ou mdia. O desenvolvimento mais rpido e fornece uma reduzida documentao.
Prof Evandro C Teruel - Etec SP

PROTOTIPAGEM
A prototipagem uma tcnica comumente usada dentro do contexto de qualquer um dos modelos de processo de anlise de sistemas, tanto em cascata como iterativo. A prototipagem auxilia o desenvolvedor e o cliente a entenderem melhor o que deve ser construdo quando os requisitos esto confusos ou quando h insegurana em relao a algum algoritmo.
Aps a comunicao com o cliente, um plano e projeto rpido gerado, um modelo rpido construdo e um prottipo gerado e implantado fornecendo assim um feedback equipe de desenvolvimento.
Prof Evandro C Teruel - Etec SP

FILOSOFIAS DE MODELAGEM DE ANLISE DE SISTEMAS O objetivo da anlise de sistemas criar uma variedade de representaes que mostram os requisitos de software quanto informao, funo e comportamento. Para criar essas representaes so usadas duas filosofias de modelagem: a anlise estruturada e anlise orientada a objetos.

Prof Evandro C Teruel - Etec SP

ANLISE ESTRUTURADA
A anlise estruturada considera o software um transformador de informao. Ela ajuda o desenvolvedor de software na identificao dos objetos de dados, seus relacionamentos e o modo pelo qual esses objetos de dados so transformados medida que fluem atravs de funes de processamento.

Como modelar o sistema usando a filosofia da anlise estruturada?


A ferramentas da anlise estruturada usam um dicionrio de dados como banco de dados central para a descrio de todos os objetos de dados. Uma vez definidas as entradas no dicionrio, diagramas entidade-relacionamento (DER Diagrama EntidadeRelacionamento) podem ser criados e hierarquias de objetos podem ser desenvolvidas atravs dos Diagramas de Fluxo de Dados (DFDs).
Prof Evandro C Teruel - Etec SP

DER

Departamento 1

possui 1..*

Funcionrio

Boletim

Contracheque

Aluno

Professor

DFD
Dados pessoais do aluno

Dados pessoais do professor

Software Escolar
Notas Solicitar boletim Solicitar contracheque

Prof Evandro C Teruel - Etec SP

ANLISE ORIENTADA A OBJETOS


A anlise orientada a objetos examina um domnio de problema definido Como modelar a extrair filosofia da como um conjunto de casos o desistema uso em umusando esforo para classes que definam o problema. Cada classe tem um conjunto de atributos e operaes. anlise orientada a objetos? Essas classes esto relacionadas entre si por uma variedade de modos e No modeladas desenvolvimento usando a filosofia da orientao a so por meiode desistemas diagramas da linguagem UML.

objetos, aps as duas primeiras fases da engenharia de requisitos (concepo e levantamento de requisitos) j teremos os requisitos funcionais ou servios necessrios para iniciar a modelagem do sistema atravs dos diagramas de caso de uso da UML. Aps o desenvolvimento dos casos de uso j temos condies de extrair as classes e estabelecer seus relacionamentos no diagrama de classe. Do diagrama de classes podemos construir um diagrama de seqncia para mostrar as interaes entre os objetos das classes em cada caso de uso. Outros diagramas devem ser desenvolvidos de acordo com a necessidade de visualizao do aspecto desejado.
Prof Evandro C Teruel - Etec SP

ANLISE ORIENTADA A OBJETOS


Para entender melhor a orientao a objetos necessrio conhecer alguns conceitos fundamentais utilizados:
Atributos: so colees de valores de dados que descrevem uma classe. Por exemplo, a classe Funcionrio pode ter os atributos nome, endereo, CPF, RG, telefone, e-mail etc.
Classe: Na programao estruturada existia o conceito de programa, que na orientao a objetos chamamos de classe. A classe encapsula dados e operaes necessrias para descrever o contedo e o comportamento de alguma entidade do mundo real, ou seja, classe uma descrio generalizada que descreve uma coleo de objetos semelhantes. Por exemplo, para poder manipular dados de um funcionrio, tenho que criar a classe Funcionrio definindo seus atributos e as operaes possveis com esses atributos, por exemplo, operaes para incluir, alterar, excluir etc.
Prof Evandro C Teruel - Etec SP

ANLISE ORIENTADA A OBJETOS


Para entender melhor a orientao a objetos necessrio conhecer alguns conceitos fundamentais utilizados: Objetos: so instncias de uma classe que herdam os atributos e operaes da classe. Por exemplo, cada funcionrio cadastrado uma instncia da classe funcionrio (objeto) que pode executar as operaes da classe como incluir, alterar etc. Operaes: so tambm chamadas de mtodos ou servios e fornecem uma representao de um dos comportamentos da classe. Por exemplo, a classe Funcionrio pode ter a operao incluir, alterar etc.
Prof Evandro C Teruel - Etec SP

ANLISE ORIENTADA A OBJETOS


Para entender melhor a orientao a objetos necessrio conhecer alguns conceitos fundamentais utilizados: Superclasse: tambm chamada de classe base. uma generalizao de um conjunto de classe relacionadas a ela. Por exemplo, a classe Conta a superclasse das subclasses Conta Corrente e Conta Poupana. Subclasse: especializao da superclasse, ou seja, classe que herda atributos e operaes da superclasse em uma situao conhecida como herana. Por exemplo, as subclasses Conta Corrente e Conta Poupana herdam atributos e operaes da superclasse Conta.
Prof Evandro C Teruel - Etec SP

Qual filosofia de modelagem de anlise de sistemas usar?


Apesar de boa parte dos desenvolvedores escolherem ou a filosofia da anlise estruturada ou da anlise orientada a objetos, Pressman (2006) afirma que o ideal combinar caractersticas de ambas as abordagens como mostra a figura
Elementos baseados em cenrios - Diagramas de casos de uso - Diagrama de atividades - Diagrama de raias Elementos orientados a fluxo - Diagrama de Fluxo de Dados (DFD) - Diagrama de Fluxo de Controle

Modelo de anlise
Elementos baseados em classes - Diagrama de classe - Diagrama de pacotes - Diagramas de colaborao - Modelos CRC Elementos comportamentais - Diagrama de estados - Diagrama de seqncia

Prof Evandro C Teruel - Etec SP

FOWLER, Martin. UML essencial: um breve guia para a linguagem-padro de modelagem de objetos. Porto Alegre: Bookman, 2005. PRESSMAN, Roger S. Engenharia de Software. So Paulo: Makron Books, 1995. _____. Engenharia de Software. So Paulo: McGraw-Hill, 2006.

Prof Evandro C Teruel - Etec SP

This document was created with Win2PDF available at http://www.win2pdf.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only. This page will not be added after purchasing Win2PDF.

Вам также может понравиться