Vous êtes sur la page 1sur 6

CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET

___________________________________________________________________________________________________________________________________________________________________________________________________

gerenciamento de sistemas orientados a objeto.

UNIDADE I Fundamentos da Engenharia de


Conceitos da Engenharia Software
de Software Áreas de conhecimento da engenharia de
Software segundo o SWEBOK:
Nesta unidade vamos abordar
conteúdos relacionados a: Requisitos de Software.

Noções da Engenharia de software; Projeto (Design) de Software.

Conceitos de processo de software; Implementação de Software.

Fases do processo de software; Teste de Software.

Exemplos de modelos de processo de Manutenção de Software.


software;
Gerência de Configuração de Software.

Objetivos específicos: Gerência de Engenharia de Software.

Conhecer os modelos de processo de Processos de Engenharia de Software.

software para o desenvolvimento de Ferramentas e Métodos de Engenharia


software. de Software.

Qualidade de Software.
Introdução:
A partir de agora, vamos conhecer uma Para cada área de conhecimento listada
conjuntura de atividades que possibilitam a acima, está definido um conjunto de atividades
execução de uma análise de sistemas orientados a conceituais e práticas.
objeto. Essas atividades são definidas pelas Áreas
A - Requisitos de Software:
de Conhecimento da Engenharia de Software.
Fundamentos dos Requisitos
Entidades reguladoras – como o SWEBOK
Elicitação e Análise de Requisito
(Software Engineering Body Knowledge) que é um
“Corpo de Conhecimento da Engenharia de Especificação de Requisito

Software”, vinculado ao IEEE Computer Society Validação de Requisito


(Institute of Electrical and Electronics Engineers -
B - Projeto (Design) de Software.
Computer) – tratam das especificações do
desenvolvimento, gerenciamento e manutenção de Fundamentos
sistemas computacionais, ou seja, da Engenharia de Estrutura e Arquitetura do Software
Software, com o objetivo de garantir a qualidade da
Análise e Avaliação da Qualidade do
produção de sistemas. O SWEBOK define as áreas
Projeto de Software
de conhecimento da Engenharia de software, que
Notações do Projeto de Software
abrange as atividades voltadas para análise, para
projeto, assim como as atividades de Estratégias e Métodos do Projeto de
Software
_________________________________________________________________________________________________
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET
___________________________________________________________________________________________________________________________________________________________________________________________________

C - Implementação de Software. H - Processos de Engenharia de Software.

Fundamentos da Construção de Implementação e Mudanças em


Software Processos

Gerenciamento da Construção Definição de Processos

Considerações Práticas Avaliação de Processos

Medição de Processo e Produto


D -Teste de Software.

Fundamentos dos Testes de Software I - Ferramentas e Métodos de Engenharia de

Níveis de Teste Software.

Técnicas de Teste Ferramentas de Software

Medição dos Testes Métodos de Engenharia de Software

Processo de Teste J - Qualidade de Software.

E - Manutenção de Software. Fundamentos da Qualidade de Software

Processo de Manutenção Processo de Gerência da Qualidade

Técnicas de Manutenção As delimitações das áreas de conhecimento


permitem visualizar melhor as atividades
F - Gerência de Configuração de Software.
pertinentes a cada área. Com esta estruturação fica
Gerenciamento do Processo SCM mais fácil distinguir as seções de análise, projeto e
(Software Configuration Management) também de gerenciamento de sistemas. Se
Identificação de Configuração de estivermos planejando o desenvolvimento de um
Software sistema, podemos dizer que as atividades de análise
serão as de entendimento e comunicação com o
Controle de Configuração de Software
cliente na busca de identificação dos requisitos do
Contabilidade de Status de
sistema. Por outro lado, as atividades de projeto
Configuração de Software
serão de entendimento do programador. As
Exame de Configuração de Software atividades apropriadas a cada um deste dois setores
Gerência de Implantação do Software “análise” e o “projeto”, podem ser visualizadas
pelos seus respectivos status: Atividades de
G - Gerência de Engenharia de Software. análise, visam o entendimento do problema, ou
Iniciação e Definição de Escopo seja, o domínio do problema. A análise modela o

Planejamento de Projeto de Software problema. Por outro lado, as atividades atribuídas à


solução do problema são atribuídas à fase de
Projeto de Software
projeto, domínio do projeto.
Avaliação e Revisão

Mensuração de Engenharia de Software

_________________________________________________________________________________________________
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET
___________________________________________________________________________________________________________________________________________________________________________________________________

Quanta ao tipo, os requisitos devem ser


diferenciados entre funcionais e não funcionais.
Projeto
Análise
Funcionais: Devem identificar quais os
recursos e funções que o sistema deve
Atividades
Atividades fornecer.
de domínio
do para
solução Não funcionais: Estes requisitos podem
problema.
ser exemplificados por atividades de
controle do tempo de disponibilidade de
uma funcionalidade específica.
Figura 1 – Status das atividades
De usuário;
Noções das atividades
especificadas para estabelecimento De sistema.
dos Requisitos de Software.
a) Fundamentos dos Requisitos.
A - Requisitos de Software:
A meta é identificar os requisitos de acordo
As atividades predefinidas nesta etapa têm
com os objetivos e as necessidades para estabelecer
por finalidade determinar quais as funcionalidades
a documentação estratégica que será a base de
que o sistema deverá ter. Estas informações são
construção e do desenvolvimento do sistema.
obtidas junto ao cliente ou aos usuários do sistema.
Identificar as necessidades dos usuários, do
Os requisitos são classificados de acordo com sistema, a natureza dos requisitos e a técnica para
o foco e também são especificados quanto ao tipo, descrevê-los e organizá-los.
tais como:
b) Processo de Engenharia de Requisito.
Requisitos do usuário.
É o conjunto de seqüencial de atividades
São as declarações verbalizadas, ou ainda desenvolvidas para análise, documentação e
descritas em linguagem natural sobre as funções validação dos requisitos. O perfil deste conjunto de
que o sistema deve executar e as restrições sob os atividades se ajusta com o da aplicação, o que
quais deve operar. significa que não existe um único modelo. As
atividades de processos de Engenharia de
Requisitos de sistema.
Requisitos são compostas de alguns itens básicos:

Descrições detalhadas das funcionalidades Estudo de viabilidade.


definidas em contrato e que o sistema de software
Obtenção e análise de requisitos.
deverá prover. Este documento é estabelecido entre
Especificação e documentação de
o cliente e o contratado.
requisitos.
Especificação de projeto de software. Validação de requisitos.

Descrições que definem a base do projeto de c) Elicitação de Requisito.


software.

_________________________________________________________________________________________________
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET
___________________________________________________________________________________________________________________________________________________________________________________________________

As atividades desta fase usam técnicas organizada. Estes eventos são compostos por uma
apropriadas para descobrir, identificar, deduzir, série de elementos que formatam um padrão de
extrair a organização como um todo, o domínio da administração durante o desenvolvimento do
aplicação, os processos de negócio específicos, as sistema, através de normas dos modelos de
necessidades e as restrições que o software deve processo de software, garantindo a qualificação e
atender. São identificados: os usuários, os clientes e automatização do processo de desenvolvimento do
especialistas de domínio e os engenheiros de sistema. Pode-se, citar exemplos dos elementos que
requisitos. ocorrem no processo de Software: Métodos,
procedimentos, técnicas, modelos de processos,
d) Análise de Requisito.
roteiros, atividades, artefatos (contratos, avaliações,
São enumerados e classificados, de forma código fonte e manuais de usuários), recursos,

segura, os requisitos que dão base para o recursos humanos, ferramentas de software,

desenvolvimento do sistema. É fundamental a hardware, marcos (eventos que podem ser


determinação das prioridades e a identificação de utilizados como referências de gerenciamento do
conflitos e inconsistências. progresso do desenvolvimento do sistema), entre
outros.
e) Especificação de Requisito.
Um processo de software deve garantir um de
Documento resultante com a descrição
produto final de qualidade. Entretanto, não existe
e diagramação dos requisitos do sistema.
um modelo de processo específico a ser a aplicado.
f) Validação de Requisito. A definição do modelo de processo ocorre de
acordo com o perfil de cada caso. Atividades como
Os documentos de requisitos gerados
análise e especificação de requisitos, projeto,
devem estar completos e adequados ao
implementação e testes, formam a arquitetura de
sistema que o cliente pretende.
um processo de desenvolvimento. A escolha de um
g) Gerência de Requisitos. modelo de processo ou modelo de ciclo de vida

As necessidades de ajustes dos pode ser feita através da análise das atividades e da

requisitos estabelecidas devem ser definição de recursos e artefatos necessários.

controladas e documentadas por uma Exemplos de alguns modelos de processo de


Gerência de Requisitos, de forma a software:
garantir a interação entre os requisitos,
Modelos de ciclo de vida:
as dependências e os demais artefatos
produzidos no processo de software. Modelo Linear Seqüencial (Royce em 1970):
Apresenta as fases de acordo com o diagrama da
Processo de Software
figura 2.
A especificação processo de software é
Viabilidade: Atividades que determinam se o
atribuída ao conjunto de eventos, métodos e
desenvolvimento proposto é viável.
ferramentas, que são aplicados no desenvolvimento
de um sistema de software de forma seqüencial e Requisitos: Determinam quais
_________________________________________________________________________________________________
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET
___________________________________________________________________________________________________________________________________________________________________________________________________

funcionalidades o sistema deve prover. como básicos, ou seja um processo de referência,


ou um processo “padrão” de desenvolvimento de
Projeto: Determina como o software deverá
sistemas de software. Sendo assim, cada nova
prover as funcionalidades.
aplicação pode ser instanciada a partir de um
Implementação: Construção do software. modelo de processo padrão. Esses processos
instanciados são ditos processos de projeto
Teste: Execução do software com dados para
(FALBO, 2005).
avaliação do funcionamento.
Existem algumas normas e modelos de
Viabilidade
qualidade de processo de software (Ex Modelo de
Maturidade) como: ISO 9001, ISO/IEC 12207 e
Requisitos
CMMI (Capability Maturity Model Integration). do
Software Engeneering Institute - SEI, são utilizadas
Projeto
para avaliar a qualidade dos processos de sistemas.

Implementação
Modelo de Quarta Geração

Teste Conforme FREIRE (2009), o modelo tem a


capacidade de se especificar o software de uma
Figura 2 – Ciclo de vida seqüencial
máquina em um nível que esteja próximo à
Fonte : Gustafon 2002
linguagem natural. Engloba um conjunto de
Modelo de Prototipagem: Constrói uma
ferramentas de software que possibilitam que:
versão descartável para teste de conceitos e
O sistema seja especificado em uma
requisitos.
linguagem de alto nível e o código fonte seja
Modelo Incremental: D.L.Parnas – Projetar gerado automaticamente a partir dessas
e entregar ao cliente um conjunto mínimo do especificações.
sistema que continuasse a ser utilizável, em todo o
O ambiente de desenvolvimento inclua as
ciclo de vida com incrementos adicionais mínimos,
ferramentas:
ou seja uma versão rápida, dos sistema para atender
o cliente. Gustafson (2003). Linguagens para consulta de banco de
dados, geração de relatórios, manipulação de
Espiral: Um modelo que começa no meio e
dados, interação e geração de telas e códigos e
continuamente revisa as tarefas básicas do usuário:
elaboração de planilhas eletrônicas
a comunicação, planejamento, análise de riscos
Técnicas de Quarta geração: Obtenção dos
entre outras. A evolução ocorre através de vários
Requisitos, Estratégia de Projeto, Implementação
ciclos completos de especificação, projeto e
usando 4GL e Teste.
desenvolvimento.
O Processo Unificado de desenvolvimento
Embora cada aplicação apresente diferenças
de sistemas de software combina os ciclos iterativo
de tipos de restrições e funcionalidades, é possível
e incremental para a construção de sistemas.
definir um conjunto de atividades e procedimentos
_________________________________________________________________________________________________
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET
___________________________________________________________________________________________________________________________________________________________________________________________________

Estabeleceu a Linguagem de Modelagem Unificada A fase de transição consiste na instalação,


- UML (Unified Modeling Language no preparo de entrega do sistema ao cliente, que consiste em
todos os artefatos do sistema. A UML agrega o entregar o sistema e manutenção.
conjunto de artefatos para desenvolver uma sistema
Por esta primeira unidade, devemos saber que
a partir dos requisitos do usuário.
na engenharia de software os processos e métodos
A caracterização do processo unificado é são partes integrantes de um sistema de solução
suportada por três parâmetros que são: baseado num padrão de comunicação. Tais
processos e métodos são aplicáveis no
Direcionados a casos de uso: Caso de uso é
desenvolvimento e manutenção de sistemas
uma descrição de ações executadas por um ou mais
orientados a objeto. Em seguida, vamos verificar
atores (usuários e sistema), com o objetivo de
como utilizar uma ferramenta para análise e
capturar requisitos, dirigir a análise, o projeto e a
desenvolvimento de sistemas.
implementação.
AUTO-AVALIAÇÃO
Centrados na arquitetura: Arquitetura é a
organização fundamental do sistema como um todo 1) O que pode ser considerado um marco, sua
(elementos estáticos e dinâmicos). finalidade e característica, respectivamente:

a) Deve estar relacionado ao progresso de


Iterativos e incrementais: Uma iteração é
desenvolvimento do software.
um miniprojeto que resulta em uma versão do
sistema. Essa versão viabiliza uma evolução b) Deve ser definido na fase de viabilidade.
incremental sobre alteração anterior.

2) Indique para cada tipo de documento, a fase


As quatro Fases do Processo Unificado (Ciclo de
correta no ciclo de vida do software.
vida):

Concepção, Atividades do ciclo de vida

Elaboração, a) Manual final do usuário

Construção, b) Código fonte

Transição. c) Seqüência de trabalho

d) Estimativa de custo
A fase de concepção corresponde ao estudo
de viabilidade e a uma parte da análise de e) Relatório de teste

requisitos. Define os riscos, escopo do projeto e


Fases do ciclo de vida
propõe arquitetura do projeto.
( ) Viabilidade.
A fase de elaboração corresponde à maior
( ) Implementação
parte da análise de requisitos, à análise de domínio
( ) Planejamento do projeto
e ao projeto (fim da análise).
( ) Teste
A fase de construção inclui a programação
( ) Implementação
(desenvolvimento do sistema) e testes.
_________________________________________________________________________________________________

Vous aimerez peut-être aussi