Engenharia Informtica 2015/2016Viviane Cilene Lopes Fonseca
Disciplina
Engenharia de Programao
Curso, ano e semestre
Engenharia Informtica, 4 ano, Primeiro Semestre
Carga horria
75h (Divididas entre aulas tericas e praticas)
Enquadramento e objetivos da disciplina
Estudar os diferentes modelos de desenvolvimento e manuteno de aplicaes informticas nomeadamente os ciclos de vida do desenvolvimento de sistemas e a prototipagem.
Proporcionar uma introduo geral aos problemas do desenvolvimento de sistemas e aplicaes com bases nas necessidades do utilizador.
Sistema de Avaliao
NF = 0.6 x PF + 0.3 x TP + 0.1 x OEA
NF - Nota Final
PF - Projeto Final (realizado ao longo do semestre)
TP - Trabalhos prticos (realizado ao longo do semestre)
OEA - Assiduidade (realizado ao longo do semestre)
Programa da disciplina
Software e Engenharia de Software
Processo: Uma Viso Genrica
Modelos Prescritivos de Processo
Desenvolvimento gil
Engenharia de Sistemas
Engenharia de Requisitos
Modelagem de Anlise
Programao orientada a objetos Projecto de software Construo de softwares em equipe. Como projetar software: poderosos mecanismos de
abstrao; padres conhecidos por funcionarem com sucesso na prtica; como apresentar projetos de forma que voc possa comunic-los e critic-los de maneira eficiente
Como implementar em Java Como fazer direito: software confivel e flexvel Como ser um arquiteto, no um simples programador
de baixo nvel
Introduzir a Engenharia de Programao eexplicar a sua importncia.
Por que a engenharia de software importante?
Programas de computador e a documentao associada tais comorequisitos, modelos de desenho e manuais de utilizadores
Produtos de software podem ser desenvolvidos para algum emparticular ou para um determinado mercado em geral.
Produtos de Software podem ser:
Genricos desenvolvidos para serem distribuidos para um grupodiferenciado de pessoas
medida desenvolvidos para uma determinada realiade especifica de algum conforme as suas necessidades
Podem ser criados novos Software desenvolvendo novos programas, configurando software genrico ou reutilizando software existente
Engenharia de software uma disciplina quepreocupa com todos os aspectos de produo do software.
Engenheiros de software devem adoptar umaabordagem sistemtica e organizada no seutrabalho e utilizarem ferramentas aproriadas e tcnicas adequadas ao problema que se pretenderesolver, as restries existentes e os recursosdisponveis.
As economias de quase todos os paises esto dependentes de
Software.
Investimentos em software representa uma fraco significativa do
PNB de um nmero crescente de paises
Contribuies do mercado de software economia americana
Maior supervit comercial das exportaes
24 bilhes de dlares em softwares exportados, 4 bilhes importados,
totalizando um saldo positivo de 20 bilhes de dlares
http://www.sei.cmu.edu/solutions/softwaredev/
E em Cabo Verde ?
http://www.nosi.cv/index.php?option=com_docman&Itemid=110&lang=pt
Naturesa dos Sistemas de Softwares conciste numa variedades de aplicaes: Comercias, Engenharias, Cientificas
No apenas a Internet Tranporte, energia , medecina , finanas
Os softwares esto se tornando cada vez mais presentes em dispositivos embutidos. Novos carros,por exemplo, tm entre 10 e 100 processadores para gerenciar todo tipo de funes, desde msica at frenagem.
Varias Categorias de Softwares: Simples Complexos, uso interno em organizaes ou para uso
publico, Local ou Distribuido, real time
Software negcio competitivo?
desafios do desenvolvimento de software?
Desenvolver aplicaes de Software complexos e grandes implicam desafios enormes
Esforo intenso
Custo alto
Tempo de desenvolmimento elevado
Necessidade de aptar mudanas para os usurios
Alto riscos de fracasso, aceitao do usario, desempenho, facilidade de manuteno
O custo de Software superior na maior dos casosdo custo do Hardware
H um maior custo na manuteno de um Software do que na sua construo. E o custo de manuteno normalmente tende a aumentar com software com longa vida.
Engenharia de software procura meios paradesenvolvimento de SW com custos eficientes.
Estudos indicam que os custos com desenvolvimento rondam 60% do custo total.
Para sistemas medida os custos de evoluoquase sempre excedem o custo do desenvolvimento
Custo variam dependendo no tipo de sistema emdesenvolvimento, nos requisitos do sistema
Os custos de distribuio depende no modelo de desenvolvimento adoptado.
O software deve conter as funcionalidades e performances requeridas pelosutilizadores e deve ser fcil de manter e seguro
Manuteno Software deve ser fcil de manter
Segurana Deve ser confivel e seguro
Eficincia No dever ser desperdiado recursos
Aceitabilidade Deve ser aceitvel para os utilizadores para os quais foi desenhado, no que
diz respeito a compreenso, usuabilidade, e compatibilidade com outrossistemas.
Software confivel, seguro, fcil de usar e de manter.
Engenharia de SW concentra especificamente em produzir software com esses atributos e ao contrrio de programar no est somente preocupado com as funcionalidades de um sistema.
Engenharia de Software particularmente importantepara sistemas em que as h organizaes e pessoas quedependem deles para fazerem seu trabalho
Cincia de Computao preocupa com teorias e os fundamentos; Eng. SW preocupa com a prtica de desenvolver e implantar software teis.
Teorias da cincia de computao soinsuficientes para uma sustentao completa daEngenharia de Software.
Engenharia de Sistemas preocupa com todos os aspectos do desenvolvimeto de sistemas computacionais incluindohardware, software e o processo de engenharia
Engenheiros de sistemas esto envolvidos na especificao, desenho da arquitectura, integrao e deployment
Engenharia de Sofware parte deste processo preocupado com o desenvolvimento da infra-estrutura de software, do controlo, das aplicaes, bases de dados no sistema
Um conjunto de actividades cujo objectivo o desenvolvimento ou evoluao de um software.
Actividades genricas em qualquer processo de software so: Especificao o que o software deve fazer e as
restries no seu desenvolvimento Desenvolvimento produo do software Validao Validar se o que o software faz o que
desejado por quem vai us-lo Evoluo mudanas no software em resposta s
mudanas na realidade subjcante.
Uma representao simplificada de um processo de software apresentado de uma perspectiva especfica
Exemplos de perspectivas so: Perspectiva do Workflow sequncia de actividades;
Perspectiva Data-flow - fluxo de informao;
Perspectiva Role/action quem faz o qu .
Mdelos genricos de processo de SW Waterfall;
Desenvolvimento iterativo
Engenharia SW baseado em componentes
Abordagens ao desenvolvimeto de software que incluemmodelos de sistemas, notaes, regras de desing e guia do processo
Descrio do modelo Descries do modelo grfico ;
Regras Restries aplicadas ao modelo;
Recomendaes Conselhos e boas prticas
Guia do processo Que actividades seguir
Qd as ferramentas so integradas de forma que a informao criadapor uma ferramenta possa ser usada por outro estabelecido um
Ou Sistema de suporte ao desenvolvimento Engenharia de Software auxiliada por computador
finalidade oferecer mecanismos de automao para actividades do processo de software.
Sistemas CASE so usados essencialmente como suporte a um determinado mtodo.
Upper-CASE Ferramentas para suporte das actividades iniciais de requisitos e desenho;
Lower-CASE Ferramentas para suportar as actividades de desenho e programao
(1) aplicao de uma abordagem sistemtica, disciplinada e quantificavel ao desenvolvimento, operao e manuteno de software, ou seja , a aplicao da engenharia ao Software
(2) o estudo de abordagens do tipo delcarado em (1)
IEEE standard 610.12
Engenharia de Software uma disciplina de Engenharia cujofoco so os vrios aspectos da produo de software.
Produtos de software consistem em programas e respectivadocumentao. Atributos essncias tem a ver com a manuteno, segurana, eficincia e usuabilidade.
O processo de software consiste em actividades relacionadascom o desenvolvimento de produtos software. Actividadesfundamentais so : especificao, desenvolvimento, validao e evoluo.
Mtodos so formas organizadas de produzir software. Incluemsugestes ao processo que deve ser seguido, notao que deveser usada, regras para descrio do sistema.
Top Related