ENGENHARIA DE SOFTWARE
TRABALHO APRESENTADO À DISCIPLINA ANÁLISE E
PROJETO DE SISTEMAS, DO CURSO DE TÉCNICO EM
INFORMÁTICA INTEGRADO AO ENSINO MÉDIO, DO
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E
TECNOLOGIA – IFPA, CAMPUS CASTANHAL, COMO
REQUISITO AVALIATIVO PARA O 3º BI.
DOCENTE: FRANCIEL AMORIM
ALUNOS:
• ERISON DA SILVA NEGRÃO
• MÁXIMO SUSSUMU YAMASE VEIROS
• MATHEUS PEREIRA SOARES
• OCTÁVIO DE OLIVEIRA JORGE
• WALTER VIEIRA DA SILVA NETO
SUMÁRIO
• Introdução ......................................................................................................
• Processos de Software ..................................................................................
• Engenharia de Requistos ................................................................................
• Modelagem de Sistemas .................................................................................
• Projeto de Arquitetura ....................................................................................
• Projeto e implementação ................................................................................
• Teste de Software ..........................................................................................
• Evolução do Software ....................................................................................
• Referencias Bibliograficas:.....................................................................................
Introdução
• O livro escrito por Ian Sommerville e um grande, se não o maior,
fornecedor um amplo conhecimento na área de engenharia de
software. São apresentados conceitos : desde importantes coisas
relacionadas á área, até sobre ética.
• É uma das ramificações da engenharia que se preocupa com o
completo e total aspecto no quesito de produção do software.
Processos de Software
• Modelo Cascata
Desenvolvimento Incrementar
Engenharia de Software Orientada a Reuso
Processos fundamentais para construção de software
Rational Unified Process
Engenharia de Requistos
• 1) Como é e deve ser organizado um documento ?
• 2) Como se gerencia os requisitos?
• 3) Funcionais e não funcionais;
• 4) Necesssidades do usuário e do software;
Modelagem de Sistemas
• como os modelos são utilizados para representar sistemas de
software?
• Em um estágio inicial da especificação de um sistema, você deve
decidir os limites do sistema. Isso envolve trabalhar com os
stakeholders do sistema para decidir qual funcionalidade deve ser
incluída no sistema e o que é fornecido pelo ambiente do sistema.
Unifield Modelind Language (UML)
Projeto de Arquitetura
• Porque o projeto de arquitetura de software é importante?
Regras sobre a arquitetura de sistemas
• A arquitetura em pequena escala está preocupada com a
arquitetura de programas individuais.
• A arquitetura em grande escala preocupa-se com a arquitetura de
sistemas corporativos complexos que incluem outros sistemas,
programas e componentes de programas.
• A arquitetura de software é importante, pois afeta o desempenho e
a robustez, bem como a capacidade de distribuição e de
manutenibilidade de um sistema (BOSCH, 2000)
Padrões de arquitetura
• Os padrões de arquitetura foram propostos na década de 1990 sob
o nome de ‘estilos de arquitetura (SHAW e GARLAN, 1996), com
uma série de cinco volumes de manuais sobre a arquitetura de
software orientada a padrões, publicados entre 1996 e 2007
(BUSCHMANN et al., 1996; BUSCHMANN et al., 2007a;BUSCHMANN et al.,
2007b; KIRCHERE e JAIN, 2004; SCHMIDT et al.,2000).
Projeto e implementação
• Questões fundamentais para a implementação do software;
• requisitos iniciais do sistema até a manutenção e o gerenciamento
do sistema implantado
Open Source
• O desenvolvimento open source é uma abordagem de
desenvolvimentode software em que o código-fonte de um sistema
de software é publicado e voluntários são convidados a participar
no processo de desenvolvimento (RAYMOND, 2001).
Teste de Software
• Oqué é o teste de software?
• O teste é destinado a mostrar que um programa faz o que é
proposto afazer e para descobrir os defeitos do programa antes do
uso.
Evolução do Software
• Porque ocorre as evoluções?
• A evolução dos processos de software pode variar dependendo do
tipo de software que esteja sendo mantido,dos processos de
desenvolvimento usados em uma organização e das habilidades das
pessoas envolvidas.
Porque ocorre as manutenções?
• A manutenção de software é o processo geral de mudança em um
• sistema depois que ele é liberado para uso.
• Existem três diferentes tipos de manutenção de software:
• I. Correção de Defeitos
• II. Adaptação Ambiental
• III. Adição E Remoção de Funcionalidade
O que permanece no software e o que fica obsoleto?
• Para novos sistemas de software desenvolvidos por meio de
processos modernos de engenharia de software, como o
desenvolvimento incremental e CBSE, é possível planejar como
integrar o desenvolvimento do sistema e sua evolução.
Oque é CBSE
• A CBSE foi proposta na década de 90 Foi motivado pelo limitado
suporte ao reuso em desenvolvimento OO , CBSE é um processo de
definição, implementação e composição de componentes
independentes Componentes são fracamente acoplados ao sistema
REFERÊNCIAS
• SOMMERVILLE, Ian ; Engenharia de Software
• Foto da evolução dos softwares
(https://pt.slideshare.net/skosta/aula-engenharia-de-software)
• Oque é CBSE?
(http://homepages.dcc.ufmg.br/~figueiredo/disciplinas/aulas/cbse-
intro_v01.pdf)
• Gráficos,Diagramas e Tabelas retiradas do Livro “Engenharia de
Software” de Ian Sommerville

Engenharia de Software

  • 1.
    ENGENHARIA DE SOFTWARE TRABALHOAPRESENTADO À DISCIPLINA ANÁLISE E PROJETO DE SISTEMAS, DO CURSO DE TÉCNICO EM INFORMÁTICA INTEGRADO AO ENSINO MÉDIO, DO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA – IFPA, CAMPUS CASTANHAL, COMO REQUISITO AVALIATIVO PARA O 3º BI. DOCENTE: FRANCIEL AMORIM
  • 2.
    ALUNOS: • ERISON DASILVA NEGRÃO • MÁXIMO SUSSUMU YAMASE VEIROS • MATHEUS PEREIRA SOARES • OCTÁVIO DE OLIVEIRA JORGE • WALTER VIEIRA DA SILVA NETO
  • 3.
    SUMÁRIO • Introdução ...................................................................................................... •Processos de Software .................................................................................. • Engenharia de Requistos ................................................................................ • Modelagem de Sistemas ................................................................................. • Projeto de Arquitetura .................................................................................... • Projeto e implementação ................................................................................ • Teste de Software .......................................................................................... • Evolução do Software .................................................................................... • Referencias Bibliograficas:.....................................................................................
  • 4.
    Introdução • O livroescrito por Ian Sommerville e um grande, se não o maior, fornecedor um amplo conhecimento na área de engenharia de software. São apresentados conceitos : desde importantes coisas relacionadas á área, até sobre ética. • É uma das ramificações da engenharia que se preocupa com o completo e total aspecto no quesito de produção do software.
  • 5.
  • 6.
  • 7.
    Engenharia de SoftwareOrientada a Reuso
  • 8.
    Processos fundamentais paraconstrução de software
  • 9.
  • 10.
    Engenharia de Requistos •1) Como é e deve ser organizado um documento ? • 2) Como se gerencia os requisitos? • 3) Funcionais e não funcionais; • 4) Necesssidades do usuário e do software;
  • 11.
    Modelagem de Sistemas •como os modelos são utilizados para representar sistemas de software? • Em um estágio inicial da especificação de um sistema, você deve decidir os limites do sistema. Isso envolve trabalhar com os stakeholders do sistema para decidir qual funcionalidade deve ser incluída no sistema e o que é fornecido pelo ambiente do sistema.
  • 12.
  • 13.
    Projeto de Arquitetura •Porque o projeto de arquitetura de software é importante?
  • 14.
    Regras sobre aarquitetura de sistemas • A arquitetura em pequena escala está preocupada com a arquitetura de programas individuais. • A arquitetura em grande escala preocupa-se com a arquitetura de sistemas corporativos complexos que incluem outros sistemas, programas e componentes de programas. • A arquitetura de software é importante, pois afeta o desempenho e a robustez, bem como a capacidade de distribuição e de manutenibilidade de um sistema (BOSCH, 2000)
  • 15.
    Padrões de arquitetura •Os padrões de arquitetura foram propostos na década de 1990 sob o nome de ‘estilos de arquitetura (SHAW e GARLAN, 1996), com uma série de cinco volumes de manuais sobre a arquitetura de software orientada a padrões, publicados entre 1996 e 2007 (BUSCHMANN et al., 1996; BUSCHMANN et al., 2007a;BUSCHMANN et al., 2007b; KIRCHERE e JAIN, 2004; SCHMIDT et al.,2000).
  • 16.
    Projeto e implementação •Questões fundamentais para a implementação do software; • requisitos iniciais do sistema até a manutenção e o gerenciamento do sistema implantado
  • 17.
    Open Source • Odesenvolvimento open source é uma abordagem de desenvolvimentode software em que o código-fonte de um sistema de software é publicado e voluntários são convidados a participar no processo de desenvolvimento (RAYMOND, 2001).
  • 18.
    Teste de Software •Oqué é o teste de software? • O teste é destinado a mostrar que um programa faz o que é proposto afazer e para descobrir os defeitos do programa antes do uso.
  • 19.
    Evolução do Software •Porque ocorre as evoluções? • A evolução dos processos de software pode variar dependendo do tipo de software que esteja sendo mantido,dos processos de desenvolvimento usados em uma organização e das habilidades das pessoas envolvidas.
  • 21.
    Porque ocorre asmanutenções? • A manutenção de software é o processo geral de mudança em um • sistema depois que ele é liberado para uso. • Existem três diferentes tipos de manutenção de software: • I. Correção de Defeitos • II. Adaptação Ambiental • III. Adição E Remoção de Funcionalidade
  • 22.
    O que permaneceno software e o que fica obsoleto? • Para novos sistemas de software desenvolvidos por meio de processos modernos de engenharia de software, como o desenvolvimento incremental e CBSE, é possível planejar como integrar o desenvolvimento do sistema e sua evolução.
  • 23.
    Oque é CBSE •A CBSE foi proposta na década de 90 Foi motivado pelo limitado suporte ao reuso em desenvolvimento OO , CBSE é um processo de definição, implementação e composição de componentes independentes Componentes são fracamente acoplados ao sistema
  • 24.
    REFERÊNCIAS • SOMMERVILLE, Ian; Engenharia de Software • Foto da evolução dos softwares (https://pt.slideshare.net/skosta/aula-engenharia-de-software) • Oque é CBSE? (http://homepages.dcc.ufmg.br/~figueiredo/disciplinas/aulas/cbse- intro_v01.pdf) • Gráficos,Diagramas e Tabelas retiradas do Livro “Engenharia de Software” de Ian Sommerville