-
Notifications
You must be signed in to change notification settings - Fork 45
Engenharia de Produto de Software
O plano de Ensino na disciplina pode ser encontrado aqui.
De acordo com o PMBOK: “Um projeto é um esforço temporário empreendido para criar um produto, serviço ou resultado exclusivo. Os projetos e as operações diferem, principalmente, no fato de que os projetos são temporários e exclusivos, enquanto as operações são contínuas e repetitivas.”
Segundo a ABNT, na norma técnica NBR 10006, Projeto é “Processo único, consistindo de um grupo de atividades coordenadas e controladas com datas para início e término, empreendido para alcance de um objetivo conforme requisitos específicos, incluindo limitações de tempo, custo e recursos.” De acordo com o Project Management Institute (PMBOK, 2013), Projeto é “Um esforço temporário empreendido para criar um produto, serviço ou resultado único.”
Em resumo, projeto é um evento que possui um início, meio e um fim bem definidos. O que o diferencia de uma operação, que é uma tarefa do dia a dia e não se tem o conhecimento de quando ela não mais será necessária, algo rotineiro.
Segundo Pressman, para que um projeto de software seja bem sucedido, é necessário que alguns parâmetros sejam corretamente analisados, como por exemplo, o escopo do software, os riscos envolvidos, os recursos necessários, as tarefas a serem realizadas, os indicadores a serem acompanhados, os esforços e custos aplicados e a sistemática a ser seguida. A análise de todos estes parâmetros seria a função típica do gerenciamento de projetos, qual, em geral, se inicia antes do trabalho técnico e prossegue à medida que a entrega do software vai se concretizando.
Projeto busca atingir um objetivo claro, sendo conduzido por pessoas e possuindo parâmetros bem definidos de tempo, custo, recursos envolvidos e qualidade.
Na definição do Guia PMBOK® (2013), gerenciamento de projetos é “a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto, fim de atender os requisitos das partes interessadas”. Para Vargas (2009) “o gerenciamento de projetos pode ser aplicado a qualquer situação onde exista um empreendimento que foge ao que é fixo e rotineiro na empresa (ad hoc)”.
Satisfazer ou exceder as necessidades envolve equilibrar as várias demandas concorrentes em relação ao:
- Escopo, tempo, custo e qualidade;
- Partes interessadas com necessidades e expectativas diferenciadas; e
- Requisitos identificados (necessidades) e requisitos não identificados (expectativas).
Para cobrir todas as áreas que fazem parte da gerência de projetos o Guia PMBOK® dividiu-as em grupos de processos, conforme a figura a seguir.
Características de um projeto:
- Temporariedade
- Individualidade
- Empreendimento não repetitivo
- Sequência clara e lógica
- Início, meio e fim
- Elaboração progressiva
A função de um gerente de projetos é planejar, controlar e executar projetos que podem ter um tempo determinado, com uma data para começar e acabar, ou que podem ser a longo prazo, como o objetivo de negócio de uma empresa, por exemplo.
Durante o andamento de um projeto, esse profissional é responsável por atribuir papéis, tarefas, acompanhar e documentar o andamento da equipe por meio de ferramentas e técnicas apuradas, administrar investimentos e integrar as pessoas para trabalharem juntas por um só objetivo. Além de monitorar possíveis riscos e estar sempre preparado para mudanças.
A partir do seguinte texto: What Successful Project Managers Do
Atualmente, gerentes de projeto combinam métodos tradicionais e ágeis, visando mais flexibilidade e melhores resultados.
Gerentes de projeto sempre enfrentarão situações inesperadas, mesmo tendo o melhor planejamento e gerenciamento de riscos possível. Situações como por exemplo, falta de empregados, a falência de um fornecedor, ou mudanças de requisitos por parte do cliente.
- Viés: otimismo, custos afundados, confirmação/inércia.
- Pouco ou nenhum planejamento.
- Não há lições aprendidas de projetos passados.
- Falta de treinamento em gerência de projeto.
- Falta de treino de novas tecnologias.
- Falta de liderança ou comprometimento dos Stakeholders.
Da gestão tradicional (PMBok) para gestão ágil - baseada na leitura - https://hbr.org/2016/05/embracing-agile
EPS/MDS - FGA/UnB
Métodos de Desenvolvimento de Software
Gestão de Portfólio e Projetos de Software
RUP (Rational Unified Process)
Fase Elaboração (RUP) Planejamento(PMBOK)
Fase de Construção (RUP), Execução/Monitoramente e Controle (PMBOK)
Fase Transição (RUP), Finalização (PMBOK)
Acceptance Test Driven Development (ATDD)
Integração Contínua Deploy Contínuo
Automação de Ambiente com Docker
Orquestração de Containers com Docker Compose
Automação de Ambiente com Vagrant
Deploy Contínuo na Plataforma Heroku
Integração Contínua com Travis CI
Disponibilizando a Aplicação com o Proxy Reverso Nginx
Tutorial de Instalação do Ionic
Android Integração contínua com Circle CI
Configuração de Ambiente para React Native
Tutorial Instalação Ruby on Rails
Teste Automatizado Cucumber JS
Teste Automatizado Cucumber Rails
Testando AngularJS com Jasmine
Teste Automatizado com Selenium IDE
Configurar o SonarCloud para um projeto usando Jest
Configurar o SonarCloud para um projeto usando Pytest
Configurar o SonarCloud para um projeto usando Mocha e Istambul