Download - Engenharia de Software I - Aula 3
Alessandro Almeida | www.alessandroalmeida.com
Entre os dias 3 e 5 de outubro Provavelmente, no dia 5/10 teremos uma
palestra sobre...
Business Intelligence e o futuro da informação
(aguardem mais informações)
Alguém deseja compartilhar algo?
Palestra ou estudo de caso
O que vimos nas aulas passadas?
O que é Engenharia de Software?
Disciplina de engenharia cujo foco está em todos os aspectos da produção de software, desde os estágios iniciais da especificação do sistema até sua manutenção, quando o sistema já está sendo usado.
...todos os aspectos da produção de software...
Não apenas processos “técnicos”, mas também as atividades de gerenciamento de projeto, por exemplo.
Conclusão
Mas... O que é processo?
Um conjunto de atividades inter-relacionadas ou interativas, que transforma insumos (entradas) em produtos (saídas) [ABNT, 2001].
Entrada Processamento Saída
?
Vamos ver um exemplo?
Bolo de Limão
Insumos
Atividades inter-relacionadas
E o produto?!?!?!?!
E nas empresas?
Folha de Pagamento
Fechamento Contábil
Pagamento
Todas as empresas trabalham orientadas a processos!
Uma reflexão sobre os pontos que fazem a diferença no resultado das empresas
Resultado da Empresa
Tecnologia
Processos Pessoas
Sobre as pessoas...
Nosso pessoal está motivado!
▪ (Será?)
Investimos em capacitação.
▪ (Será?)
A remuneração está adequada.
▪ (Será?)
Etc.
▪ (Será?)
Sobre a tecnologia...
Investimos pesado!
▪ (Será?)
Utilizamos o que há de melhor.
▪ (Será?)
Etc.
▪ (Será?)
Sobre os processos...
?????????????????
CONHECER e institucionalizar o fluxo de trabalho
Identificar oportunidades de melhoria Definir papéis e responsabilidades Transformar o conhecimento tácito em
conhecimento explícito Estabelecer controles “Unir” pessoas e tecnologia Colocar a casa em ordem
As coisas simplesmente acontecem; O “sucesso” nos projetos acontece “por
acaso”;
“Por acaso, temos alguns heróis...”
“Por acaso, o cliente era mais desorganizado...”
É normal estouro de prazo e custos (entre outros problemas)
Ambiente sem controle (caos) Grande dependência dos heróis (mas não é
qualquer herói)
Está sempre sob pressão Nunca tira férias Anda sempre estressado Nunca tem tempo para os amigos Nunca se diverte Sempre tem que trabalhar 24 horas direto Até consegue terminar o projeto, mas...
Os processos sempre estarão lá, mesmo se a empresa preferir ignorá-los
Ou: Eles estão sempre lá, mesmo que a empresa não os conheça
Quem controla quem?
Legal... Mas o que posso considerar ao definir um processo que atenda minhas demandas
de Engenharia de Software?
Etc... mps.Br
PMBoK
BABoK
SWEBoK
Extreme Programming
SCRUM
RUP
EUP OpenUP
CMMI
CMMI e mps.Br
Modelos de referência
Sugerem “o quê” deve ser feito, e não “como fazer”
Podem ser utilizados como guias para orientar o trabalho de definição / melhoria do processo
Fornecem um método para avaliação
Qual é o significado do acrônimo?
Capability Maturity Model Integration®
Fontes: Houaiss e Merriam-Webster
Capability Maturity Model Integration®
1 : the quality or state of being capable 2 : poder de produção, de execução; rendimento máximo 3 : qualidade ou condição de capaz
Fontes: Houaiss e Merriam-Webster
Capability Maturity Model Integration®
1 : the quality or state of being mature 2 : estado, condição (de estrutura, forma, função ou organismo) num estágio adulto; condição de plenitude em arte, saber ou habilidade adquirida 3 : estado ou condição de pleno desenvolvimento
Fontes: Houaiss e Merriam-Webster
Primeiro você torna-se capaz de realizar algo, depois você adquire a maturidade
Sou capaz!
Aprendi, treinei e sei executar...
Possuo maturidade!
Sou capaz e tenho experiência...
Capability Maturity Model Integration®
1 : simplificação da realidade 2 : representação em escala reduzida de objeto, a ser reproduzida em dimensões normais; maquete
Fontes: Houaiss e Merriam-Webster
Compilação de “boas práticas” no processo de diversas empresas de software
Mostra O QUÊ fazer, e não COMO fazer Práticas distribuídas em “áreas de processo”
Área de Processo = PA (Process Area)
Agrupamento de práticas comuns de uma determinada “disciplina”.
Onde fica o “O que fazer?”.
Por exemplo: Project Planning (PP)
Modelos de maturidade mantidos pelo SEI (Software Engineering Institute)
http://www.sei.cmu.edu/cmmi
Abrangem todo ciclo de vida para o desenvolvimento (CMMI-DEV) e operação de software (CMMI-SVC)
Também aborda projetos de aquisição (CMMI-ACQ)
Sponsor:
DoD (U.S. Department of Defense)
Versão 1.3 publicada em novembro de 2010
Para quem não quer gastar...
Para quem quer investir...
[email protected] www.slideshare.net/alessandroalmeida