Engenharia de Software

Benefícios da programação em par

A programação em par é uma prática um tanto quanto controversa, e altamente ágil contra-intuitiva. Em poucas palavras, são duas pessoas que trabalham na mesma coisa, usando apenas um computador, ao mesmo tempo. Parece loucura que isso funcionaria de fato, muito menos ser melhor do que dois programadores trabalhando separadamente. Mas de alguma forma ela funciona.

Estamos usando essa técnica há algum tempo, e tenho notado alguns benefícios interessantes que gostaria de compartilhar. (mais…)

Artefatos do Scrum: Product Backlog

As regras dos Scrum são simples, porém difíceis de aplicar, os artefatos não são muitos, na verdade palpável mesmo apenas o Product Backlog, e é dele que irei falar hoje.

“O Backlog do Produto é uma lista ordenada de tudo que deve ser necessário no produto, e é uma origem única dos requisitos para qualquer mudança a ser feita no produto. O Product Owner é responsável pelo Backlog do Produto, incluindo seu conteúdo, disponibilidade e ordenação.”  (Scrum Guide, pág. 13)

Como vimos no Scrum Guide, o Backlog do produto representa tudo aquilo que o Product Owner deseja par ao produto, e pode ser mantido de várias formas: lista de cartões, planilha Excel, softwares para gestão de Backlog. Fato mesmo é que sem ele não há produto, pois o time de desenvolvimento precisa saber o que deve ter no produto. (mais…)

Curso Online e gratuito de Análise de Pontos de Função

O curso a seguir é de iniciativa de um portal chamado Universidade 24 horas. É possível realizar uma introdução a técnicas de Análise de Pontos de Função, passando por tópicos como: (mais…)

Métricas de processo e projeto de software

Métrica é um conjunto de medidas. Medição existe em qualquer processo de construção de qualquer coisa. A medição é realizada não apenas na Engenharia de Software. É fundamental para qualquer atividade, principalmente de engenharia. Seu propósito é avaliar alguma coisa. A partir dela, podemos ter o entendimento da eficácia de algumas situações, como do processo de software.

Por exemplo, para avaliar se o processo pelo qual uma empresa produz software é bom ou ruim, como se faz? O CMM é um modelo para avaliar a qualidade do processo. Ele se baseia em medidas como tempo, número de erros, de linhas de código, de manutenções, etc., para saber se o processo está funcionando bem. Não é possível avaliar algo sem alguma medição. (mais…)

Depuradores (Debbugers)

Um depurador é um programa de computador usado para testar outros programas e fazer sua depuração, que consiste em encontrar os defeitos do programa. Erros de software incluem aqueles que previnem o programa de ser executado e aqueles que produzem um resultado inesperado. (mais…)

ABC da SOA

O que é arquitetura orientada a serviços (SOA)?

Service-Oriented Architecture (SOA) – ou, em português, Arquitetura Orientada a Serviços – é um termo que descreve duas coisas muito diferentes. As duas primeiras palavras expressam uma metodologia para desenvolvimento de software. A terceira palavra é um panorama de todos os ativos de software de uma empresa, assim como uma planta arquitetônica é uma representação de todas as peças que, juntas, formam uma construção. Portanto, “service-oriented architecture” é uma estratégia que proclama a criação de todos os ativos de software de uma empresa via metodologia de programação orientada a serviços. (mais…)

Arquitetura de Aplicações em 2, 3, 4 ou N camadas

Fiz uma compilação de partes de textos e iremos aqui discutir cada um dos conceitos, mostrando as vantagens e desvantagens de aplicações em cada quantidade de camadas existentes, ou seja, toda sua evolução. (mais…)

Mapa Mental de UML – Diagramas, Fases e Detalhes

Resolvi juntar os mapas mentais que encontrei sobre UML nesse post para ficar mais fácil. Quem tiver mais e quiser contribuir com a coleção, fique a vontade para me enviar.

Diagramas de Estrutura

Diagramas de Comportamento

Fases do UML

Detalhes dos Diagramas
(mais…)