Você está na página 1de 27

FES

FES -- Fundamentos
Fundamentos de
de
Engenharia
Engenharia de
de Software
Software

Apresentação da Disciplina

Professor: Cleyton Carvalho da Trindade


Agenda
• Objetivos
• Cronograma
• Bibliografia
• Projeto Final
• Avaliação
• Faltas
• Dúvidas
• O que é Engenharia de Software?
• Profissionais Envolvidos
– Salários
• Responsabilidade profissional e ética
Objetivos
• Apresentar conceitos e processo da engenharia de
requisitos;
• Apresentar e construir os diversos modelos de
análise e projeto de sistemas;
• Apresentar as diversas formas de desenvolvimento
de software: ágil, baseada em reuso e em
componentes;
• Apresentar e construir os casos de teste de
software funcionais;
• Apresentar conceitos básicos da gerência de
projetos de software;
• Fornecer conhecimento sobre a gerência de
qualidade e de configuração
Avaliação
• 1ª VA
– 80% Prova Escrita
– 20% Projeto
• 2ª VA
– 60% Prova Escrita
– 40% Projeto
• 3ª VA
– 100% Prova Escrita
• Final:
– 100% Prova Escrita
Cronograma
• Datas Importantes
– 03/05 – Entrega Projeto
– 09/05 – 1ª VA
– 06/06 – Entrega/Apresentação Projeto Final
– 21/06 – 2ª VA
– 11/07 – 3ª VA
– 19/07 – Final
Bibliografia
• Bibliografia Básica
– Pressman, Roger S. Engenharia de Software. McGraw-Hill.
2006.
– Sommerville, Ian. Engenharia de Software. Prentice Hall.
2003.
– Cardoso, Caíque. UML na Prática. Ciência Moderna. 2003.
– Conallen, Jim. Desenvolvendo Aplicações Web com UML.
Editora Campus.
• Bibliografia Complementar
– Guedes, Gilleanes, UML – Uma Abordagem Prática.
Novatec. 2007.
– PMBOK - Project Management Institute. A Guide to the
Project Management Body of Knowledge. 2004.
– RUP - Rational Unified Process.
DOI=http://www.wthreex.com/rup/. 2003.
Projeto Final
• Está dividido em sete partes:
– Requisitos do Software
– Análise e Projeto Orientado a Objetos
– Arquitetura do Software
– Interface com o Usuário
– Desenvolvimento do Software
– Verificação e Validação
– Gerência de Projeto de Software

• Cada parte do projeto é realizada após a


conclusão do assunto
Projeto Final
• O projeto será realizado em equipe:
– Entre 3 e 4 alunos
• [não mais que 4!!!]
• TODOS os alunos devem trabalhar em TODAS as
partes do projeto
– [me comuniquem caso isto não esteja acontecendo!!!]
• O projeto final deve ser apresentado por todos à
turma
– [a apresentação corresponde a 40% da nota]
– [o aluno que faltar a apresentação receberá nota zero!!!]
• Entregar documentação escrita e slides
Faltas
• Faltas serão abonadas apenas com:
– Atestado médico
– Declaração de trabalho (informar antes)
– Declaração de participação em evento/aula
de campo (informar antes)

• O número de faltas será divulgado


mensalmente
Dúvidas
• Dúvidas podem ser esclarecidas por e-mail ou
pessoalmente na UAST, na sala Docentes 03

• Horário:
– Terça, 17h00 às 18h30

• E-mail
– cleyton@uast.ufrpe.br
– No campo “Assunto”, informar: [FES]
Página da Disciplina
• Disponível em:
– http://sites.google.com/site/fesuast/
• Contém
– Aulas
– Cronograma
– Avisos
– Exercícios
– Textos diversos e etc
O que é Engenharia de
Software?
• É uma disciplina de engenharia relacionada com
todos os aspectos da produção de software.
• Engenheiros de software devem - dependendo
do problema a ser resolvido, das restrições de
desenvolvimento e dos recursos disponíveis -
adotar uma abordagem sistemática e
organizada para seu trabalho.
– Aplicação de teorias, métodos e
ferramentas para construção de produtos
de software
O que é Engenharia de
Software?
• Também envolve atividades de
gerenciamento de projetos de
software, de processos e qualidade;
• Desenvolvimento de ferramentas,
métodos e teorias que dêem apoio à
produção de software;
Profissionais Envolvidos
• Gerente de Configuração
– Disponibiliza o ambiente e a infra-estrutura geral de
Gerenciamento de Configuração para a equipe de
desenvolvimento do produto.
– Suporte à atividade de desenvolvimento de produtos para
que os desenvolvedores e integradores tenham espaços de
trabalho adequados para criar e testar seus trabalhos
– permite que todos os artefatos fiquem disponíveis para
inclusão na unidade de implantação, conforme necessário.
– Assegura que o ambiente de trabalho facilite a revisão do
produto e as atividades de controle de mudanças e
defeitos.
– Acompanha e dar suporte as solicitações de mudança.
Profissionais Envolvidos
• Analista de processos
– Faz o levantamento das necessidades de
melhorias dos processos produtivos ou de
serviços, pertinentes ao negócio, por meio de
um mapa de como eles são executados; propõe e
implementa melhorias; executa o
monitoramento dos processos, com intuito de
melhorá-lo continuamente.
Profissionais Envolvidos
• Gerente de processos
– Faz o planejamento de metas e objetivos. Avaliação de
fornecedores.
– Responsável pelo mapeamento dos processos existentes
da unidade de negócio e proposição de redesenhos que
visem melhorias de resultado e qualidade
(produtividade).
– Melhora diversas frentes do negócio com o objetivo de
diagnosticar gargalos, propor novo fluxos e processos,
tendo em vista a busca de melhores resultados e
excelência em qualidade.
– Responsável pela implantação de processos, controles e
padrões de melhoria, controle de produção e
profissionalização das unidades de negócio.
Profissionais Envolvidos
• Chefe de sistemas
– Supervisiona, coordena e controla as atividades
de desenvolvimento de sistemas, manutenção dos
sistemas já existentes e implantação de sistemas
de informação, definindo políticas de
descentralização e distribuição do
processamento de dados na empresa.
– Elabora manuais de rotina para uso do
departamento.
– Analisa estudos referentes ao uso dos
equipamentos e seus periféricos.
Profissionais Envolvidos
• Coordenador de projetos de sistemas
– Coordena, controla e acompanha as atividades de
desenvolvimento de projetos de sistemas, atendimento às
necessidades dos clientes, distribuindo tarefas à sua equipe,
esclarecendo dúvidas de programação dos sistemas, a fim de
assegurar a sua idealização dentro dos padrões de qualidade
exigidos e dos prazos estipulados.
– Realiza análise e projeto de sistemas, em geral novos,
utilizando linguagem específica, levantando necessidades com
os clientes, remodelando as informações em plataformas
atuais e desenvolvendo os sistemas até sua fase final.
– Realiza testes finais de funcionamento dos programas
desenvolvidos, avaliando desempenho de suas funções de
aplicação, criando arquivos e simulando situações.
– Realiza estudos de viabilidade de mudanças nos projetos dos
sistemas já desenvolvidos, analisando sua aplicação e
interferência na nova plataforma.
Profissionais Envolvidos
• Engenheiro de sistemas – software
– Elabora e desenvolve sistemas operacionais e aplicativos,
analisando desenhos (arquiteturas) de sistemas,
apurando e solucionando problemas decorrentes de
ordem técnica, segundo os padrões predefinidos,
aplicando testes, a fim de garantir o funcionamento
desejado dos softwares.
– Avalia o impacto do hardware na performance do
software, procurando identificar possíveis divergências
de ordem técnica e tomar as medidas corretivas.
– Pesquisa novas tecnologias, a fim de aplicar melhorias nos
sistemas operacionais e nas suas performances.
– Recomenda eventuais alterações aos projetistas de
software.
Profissionais Envolvidos
• Gerente de projetos de sistemas
– Gerencia, planeja e coordena as atividades da área de
Sistemas, desenvolvendo estudos sobre viabilidade
técnico-econômica, destinados a aplicação e implantação
de novos projetos computadorizados, definindo com os
usuários suas necessidades e características, elaborando
cronogramas de trabalho, definindo linguagem mais
adequada, gerando alternativas de montagem dos
sistemas, especificação de documentos e controles e
testando os sistemas, para avaliar suas funções e
aplicações, solucionando as deficiências encontradas.
Profissionais Envolvidos
• Gerente de projetos de sistemas
– Supervisiona a implantação de sistemas e métodos de
trabalho, normas e procedimentos, formulários e
arranjos físicos, bem como definindo, codificando e
testando os programas desenvolvidos.
– Coordena os trabalhos de manutenção dos sistemas já
implantados e seus módulos, baseado em seu desempenho
e avaliação dos resultados apurados, providenciando
processamento das alterações necessárias, a fim de que
atendam às novas exigências dos usuários.
Salários
Salário
Cargo
Júnior Pleno Sênior
Analista de processos 2.500 3.200 4.500
Gerente de processos 12.000 12.500 15.000
Chefe de sistemas 7.282 8.583 11.325
Chefe programação de sistemas 7.979 8.367 10.550
Coordenador de projetos de
7.450 10.248 12.477
sistemas
Engenheiro de sistemas –
5.541 5.550 5.562
software
Gerente de projetos de sistemas 12.995 13.873 15.596
Muitos desses profissionais interagem com pessoas o tempo todo, portanto está muito mais
exposto aos conflitos, por isso não basta que conheça as técnicas, ele precisa saber lidar com
pessoas.
Responsabilidade
profissional e ética
• A engenharia de software envolve
responsabilidades mais amplas do que
simplesmente a aplicação de habilidades
técnicas.
• Os engenheiros de software devem se
comportar de modo honesto e eticamente
responsável para serem respeitados como
profissionais.
• O comportamento ético é mais do que
simplesmente a sustentação de leis.

Fonte: ©Ian Sommerville 2006 -Engenharia de Software, 8ª. edição. Capítulo 1


Questões de
responsabilidade
profissional
• Confidencialidade
– Os engenheiros devem normalmente
respeitar a confidencialidade de seus
funcionários ou clientes,
independentemente de ter ou não assinado
um acordo formal.
• Competência
– Os engenheiros não devem desvirtuar o seu
nível de competência. Eles não devem
conscientemente aceitar um trabalho que
esteja fora de sua competência.

Fonte: ©Ian Sommerville 2006 -Engenharia de Software, 8ª. edição. Capítulo 1


Questões de responsabilidade
profissional
• Direitos sobre propriedade intelectual
– Os engenheiros devem estar cientes das leis
locais que regem o uso de propriedade
intelectual, tais como patentes, direitos
autorais, etc. Eles devem tomar cuidado para
assegurar que a propriedade intelectual dos
funcionários e clientes seja protegida.

Fonte: ©Ian Sommerville 2006 -Engenharia de Software, 8ª. edição. Capítulo 1


Questões de responsabilidade
profissional
• Mau uso de computadores
– Os engenheiros de software não devem usar as
suas habilidades técnicas para fazer mau uso
dos computadores de outras pessoas. O mau
uso de computadores varia desde relativamente
trivial (execução de jogos na máquina do
funcionário, por exemplo) até extremamente
sério (disseminação de vírus).

Fonte: ©Ian Sommerville 2006 -Engenharia de Software, 8ª. edição. Capítulo 1


FES
FES -- Fundamentos
Fundamentos de
de
Engenharia
Engenharia de
de Software
Software

Apresentação da Disciplina

Professor: Cleyton Carvalho da Trindade

Você também pode gostar