




























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Um plano desenvolvido para melhorar os processos internos da utfpr, com objetivo de atingir o nível 2 de maturidade de acordo com o cmmi. O documento inclui uma análise de metodologias de desenvolvimento de software atuais na utfpr, a criação de uma proposta de modelo de desenvolvimento baseada em cmmi, e a importância da comunicação e gerenciamento da informação no desenvolvimento de software. O texto também discute os modelos de processo de software e o modelo de maturidade cmmi, e compara o modelo cascata e o modelo espiral de desenvolvimento.
Tipologia: Notas de estudo
1 / 112
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Trabalho de Conclusão do Curso de Bacharelado em Sistemas de Informação, apresentado à UTFPR como requisito parcial para obtenção do título de bacharel em Sistemas de Informação. Orientador: Robson Ribeiro Linhares
Cruz, L., e Moro, L. ANÁLISE E APLICAÇÃO DE PRÁTICAS DO CMMI EM DESENVOLVIMENTO DE SOFTWARE. 2016. Monografia – Trabalho de conclusão de curso de Bacharelado em sistemas de informação, Universidade tecnológica federal do Paraná. Curitiba, 2016.
This Project presents an analysis of the maturity levels in the software development process of a department inside a federal university, using the principles of CMMI. The concepts of software development and project management are presented. The CMMI model and its focus are also discussed, as well as its relationship with the development processes. Complemented for a research performed with the members of the studied department, and an analysis of the process documents, the study found flaws inside the current development model. As result it presents an improvement plan, developed after the analysis, which aims to help the department to reach maturity level 2 in CMMI, as well as a website developed to publish this plan.
Keywords: CMMI. Systems modeling. Maturity in software development. Process modeling. Project management.
CMMI Capability Maturity Model® Integration
SEI Software Engineering Institute
RUP Rational Unified Process
REQM Gerenciamento de Requisitos
PP Planejamento de Projeto
PMC Monitoramento e Controle de Projeto
SAM Gestão de Acordos com Fornecedores
MA Medição e Análise PPQA Garantia da Qualidade de Processo e Produto
CM Gerenciamento de Configuração
AI Amplamente Implementada
PI Parcialmente Implementada
NI Não Implementada
∑ Somatório
n Número de respostas
ai Resposta amplamente implementada
pi Resposta parcialmente implementada
p Peso (0 – 1) das respostas parcialmente implementada
Divulgação deste modelo local por meio de um website de consulta de conteúdo para divulgar os processos a serem seguidos no desenvolvimento de software.
1.3 Justificativa
Um dos grandes desafios encontrados na produção de software é o gerenciamento da informação. Hoje em dia a tradicional divisão entre engenharia de software e o gerenciamento da informação nele contida vem diminuindo, e em grandes empresas o gerenciamento da informação já é moldado pela estrutura de processos usada na mesma.
Muitas empresas aplicam as práticas propostas pelo CMMI buscando uma maior maturidade no desenvolvimento de software, isso aperfeiçoa seus processos internos, o que consequentemente reduz os custos e aumenta sua produção. Ao se aplicar essas mesmas práticas na UTFPR é esperado um aumento da qualidade dos softwares produzidos caso ela venha a adotar um modelo estratégico eficiente. Outro fator muito importante é que como se trata de uma Universidade pública que muitas vezes tem recursos bem limitados, a redução do custo de desenvolvimento pode criar um melhor aproveitamento das verbas disponíveis para os projetos em questão.
1.4 Método de Pesquisa
O primeiro passo da pesquisa foi encontrar um departamento de desenvolvimento de software com projetos em andamento que pudéssemos avaliar. Foi encontrado um Departamento da Universidade (DU) que era responsável pelo desenvolvimento de software na UTFPR. Foi entrado em contato com o diretor do departamento que em uma primeira instância se mostrou bastante entusiasmado com a ideia e nos forneceu a documentação do projeto que estava em desenvolvimento. A
partir daí deu se início a pesquisa do referencial teórico, avaliando quais seriam os melhores métodos a serem utilizados para analisar a situação atual do processo de desenvolvimento utilizado pelo DU e qual seu nível de maturidade. Após um período de estudo do CMMI e de seus processos de análise, foi decidido que a melhor maneira de realizar a análise do nível de maturidade atual do departamento seria por meio de uma adaptação do Practical Implementation Indicator Document (PIID). Com isso foi criado um questionário (Apêndice A) que foi respondido pelos membros do time de desenvolvimento e que juntamente com a análise da documentação do projeto, nos permitiram avaliar as deficiências no processo do departamento estudado. A partir do resultado dessa análise, foi construído um plano de melhoria que foi baseado nos planos e metas e no GAP analisys do CMMI, onde são listadas todas as ações que são necessárias para se atingir o nível 2 de maturidade do CMMI, em seguida as ações foram organizadas por áreas de processo e adaptadas para a realidade do departamento, customizando-as de modo a gerar uma proposta de melhoria simples e organizada que pudesse de fato ser seguida e implementada. Por fim, com o intuito de disponibilizar a proposta do plano de melhoria, foi criado um website que pudesse ser facilmente acessado e visto por todos os membros e gestores do time de desenvolvimento do DU.
1.5 Organização do Trabalho
Este trabalho está dividido em 5 capítulos. Este primeiro capitulo de introdução situa o contexto deste trabalho e descreve os principais objetivos a serem alcançados. No segundo capitulo é apresentado o referencial teórico do modelo CMMI bem como o de outros processos de desenvolvimento de software.
Neste capitulo é apresentado o referencial teórico dos principais modelos de processo de software e do modelo de maturidade escolhido para a análise de CMMI.
2.1 Processos de Software
Uma das melhores definições do que é um processo de software foi apresentada por um economista chamado Howard Baetjer, que diz o seguinte:
“Pelo fato de software, como todo capital, ser conhecimento incorporado, e pelo fato de esse conhecimento ser, inicialmente, disperso, tácito, latente e em considerável medida, incompleto, o desenvolvimento de software é um processo de aprendizado social.” (Baetjer, 1998)
A metodologia para as atividades, ações e tarefas no desenvolvimento de software poderiam ser traduzidas como “processo de software”. Este processo segue uma metodologia genérica de engenharia de software que pode ser apresentada em cinco atividades: comunicação, planejamento, modelagem, construção e emprego (Pressman, 2010).
A primeira atividade é a comunicação que compreende o momento anterior ao início da parte técnica no desenvolvimento do software. Sua principal função é o levantamento dos requisitos do sistema que irão definir as características e funções do software. Nesta etapa do processo é de extrema importância a comunicação entre os stakeholders , neste caso o cliente e o grupo de desenvolvimento.
A segunda atividade é o planejamento que tem como objetivo a criação de um plano de projeto de software, que deve descrever as tarefas técnicas a serem conduzidas, quais são os riscos possíveis, quais recursos serão utilizados, o que será produzido e um cronograma do projeto.
A terceira atividade é a modelagem que tem como finalidade desenvolver um “esboço” da solução, para que se tenha uma ideia de tudo que o software precisa. Caso seja necessário compreender melhor o problema e como resolvê-lo, deve-se refinar o tal “esboço” para que possa atender as necessidades do projeto.
A quarta atividade é a construção que é caracterizada por ser mais técnica, onde é gerado o código do software (manual ou automatizada) e são realizados os testes de software para que estejam atendendo os requisitos.
A última atividade é o emprego que é conhecida muitas vezes como entrega ou integração, no qual o cliente recebe o software e faz uma avaliação e fornece um feedback.
2.2 Modelos de Processo
A seguir são apresentados os modelos de processo de software mais relevantes no escopo deste trabalho
2.2.1 Modelo Cascata
Muitas vezes conhecido como ciclo de vida clássico no desenvolvimento de software, o modelo cascata tem uma abordagem sequencial e sistemática do processo de desenvolvimento de software. Começando desde o levantamento de requisitos pelo cliente, avançando para o planejamento, modelagem, construção, até a entrega e suporte continuo do software (Pressman, 2010). O modelo cascata é considerado o paradigma mais antigo dentro da engenharia de software, que pode ser visualizado na Figura 1.