15 de abril de 2009

Scrum X RUP

Nos dias atuais, fala-se muito de processos, qualidade de software, médotos ágeis, e outros jagões do mundo do desenvolvimento de Software.

O RUP (ou IRUP após a aquisição da Rational pela IBM) é um método da engenharia de software, que utiliza a abordagem da análise orientada a objetos em sua concepção. Utiliza a UML (Unified Modeling Language ou Linguagem de Modelagem Unificada) como base para sua documentação do sofware. Utiliza o ciclo de vida do sofware em espiral ou iterativo, aonde é possível determinar o tamanho de cada iteração, tendo assim, um pedaço ou release do sofware de tempos em tempos, o que nada impede que toda a iteração seja o sofware como um todo (não recomendável, é claro).
O RUP preza pela documentação (tanto visual utilizando a notação da UML como escrita), controle de escopo, controle dos requisitos, controle da qualidade, pelo time com papéis bem definidos, etc, etc.
O RUP, apesar de ser uma metodologia pesada, aconselhável para grandes times e grandes projetos, é possível de se adaptar para projetos menores, tornado-o "utilizável" em projetos de menor escala com equipes menores.

O Scrum, é uma metodologia (ou framework como alguns defendem) baseada no métodos ágeis (manifesto ágil) que parte do principio, que produto pronto é produto "rodando". O Scrum defende a idéia de mais código e software rodando do que documentação, mais negociação do que avaliação de escopo x contrato.
No Scrum não existem papéis definidos como no RUP. Só existem 3 funções: Product Owner (PO), Scrum Master (SM) e Time (Team). Essa equipe faz tudo: define requisitos, analisa a melhor forma de implementar, treina os usuários, implanta e controle escopo (será que controla?).
É uma metodologia bastante ágil, aonde se pode ter entregáveis (ou funcionalidades) prontas em um espaço de tempo bem curto, algo que pode varia entre 2 a 4 semanas.
É baseada também no metodo espiral da engenharia de software, que leva em conta o o processo de iteração, mas ao contrário do RUP, aonde você fica livre de determinar o tamanho da iteração, no Scrum o tempo máximo é de 4 semanas, que são chamados de Sprint´s.

Conclusão:
Não vou dizer quem é melhor que quem... mas em resumo, as duas metodologias são bastante parececias em alguns principios mas bem diferentes em outros. A escolha entre uma ou outra, vai desde o tamanho do projeto, tamanho de equipe, até mesmo o tamanho da empresa que deseja adotar um dos métodos.
Já vi várias empresas terem sucesso tanto com Scrum como com RUP, assim como, já vi projetos de implantação de RUP e Scrum afundarem... não tem como dizer qual é a melhor, somente vivenciando e definindo aonde você e sua empresa quer chegar.

Até a próxima, prometo escrever mais sobre essas duas metodologias, e vocês poderão tirar suas conclusões.
Não deixem de conferir os links:
pt.wikipedia.org/wiki/IBM_Rational_Unified_Process
pt.wikipedia.org/wiki/UML
www.scrum.org.br (Scrum user-group no Brasil)
scrum4you.wordpress.com (blog fo Boris, um nome importante no "meio" Scrum)

9 de abril de 2009

Seus executáveis estão grande? Compacte-os

Se você está com problemas com o tamanho dos executáveis e DLL´s do seu sistema, não se desespere, existe uma solução: UPX.
O UPX é um aplicativo gratuito, capaz de compactar os executáveis de sua aplicação, tornando-os menores para que possam ser transportados mais facilmente.
Ele mantém o executável da forma original, sem comprometer seu funcionamento, deixando até 50% menor que o arquivo original (já cheguei a 70% menor).
Isso ajuda muito, quando fazemos atualizações de aplicações e que depende de uma rede interna com alto tráfego de dados. Com aplicativo menor, o consumo de banda será bem menor na hora de atualizar os executáveis.
Veja alguns exemplos de compactação:
Winamp.exe --> Tamanho Original: 1.314 kb depois de compactá-lo: 507 kb
winword.exe --> Tamanho Original: 11.756 kb depois de compactá-lo: 5.725 kb

Se estiver com medo de ter algum problema como defeitos no software depois de compactá-lo, fique tranquilo, é muito difícil ocorrer. Utilizo ele em ambientes de produção já há algum tempo e não tive problemas até hoje.
Também não há uma redução de performance ao abrir o executável, não que seja perceptível.
Também não sobrecarrega memória ao usar o aplicativo compactado.
Não há necessidade instalar nada nas máquinas para executar o aplicativo compactado, já que ele permanece com a extensão .exe e é executado normalmente, como se não tivesse compactado.

Se interessou? Então baixe o UPX no site upx.sourceforge.net e teste.

6 de abril de 2009

Apoio Gerencial

Navengando pelo site do Sebrae, encontrei uma porção de documentos que são muito úteis para aqueles que estão buscando por informações a respeito de regras de negócio de uma empresa. Não são materiais muito complexos nem extensos, tem linguagem simples que qualquer terráquio consegue entender.
Os textos dão uma boa noção de Fluxo de Caixa, Custos Diretos e Indiretos, Formação de Preço de Venda, o que é Contabilidade, Ativos, Passivos, entre outras dicas, informações e o mais interessante, com exemplos simples, que facilitam o entendimento.
Se você é daqueles que está começando, ou quer entender um pouco mais de regras de negócio, vale a pena passar lá e baixar alguns destes documentos, pelo menos, quando você for fazer uma entrevista com algum cliente seu, ou quando estiver desenvolvendo um software, não vai ficar "boiando" na conversa, quando o usuário começar a falar de "débitos" e "créditos" da contabilidade, nem o que custo direto e indireto....

O site é www.sebrae.com.br/atendimento/instrumentos-de-apoio-gerencial.

1 de abril de 2009

Seus arquivos nas nuvens

Semana passada, navengando pela internet, descobri algo, não tão novo assim, mas me chamou a atenção: um serviço da Microsoft o SkyDrive (ou Disco nas nuvens???).

Todos tem uma conta no Windows Live, ou se preferir, do MSN, mas nem todos viram esse serviço que a Microsoft oferece gratuitamente no seu site www.windowslive.com do qual permite você armazenar até 25 GB de arquivos, é isso mesmo 25GB.
Se você precisava de espaço na internet para postar seus arquivos, acho que encontrou... pois 25GB é um bom espaço.

Com esse serviço você pode disponibilizar seus arquivos na internet, podendo compartilhá-los com quem quiser ou torná-los públicos para que qualquer pessoa possa baixar.
O serviço não é novo, a algum tempo já existem provedores que oferecem discos vituais... mas ainda não tinha encontrado nenhum que fosse de 25GB e de graça.
A Google, por exemplo, não tem (ainda, pois há rumores do gdrive).

Para usá-lo é muito simples, basta se conectar no site do windows live (use o link acima), usando sua conta do MSN e habilitar o serviço, acessando o menu do site "Mais", irá se abrir várias opções, e uma delas é o SkyDrive.
Lá você poderá criar novas pastas, criar pastas particulares, aonde só você poderá acessar, pastas públicas para postar arquivos comuns e compartilhá-los com seus amigos.
Ao postar um arquivo público, o SkyDrive oferece uma opção de enviar um link para esses arquivos públicos para os contatos do seu MSN ou para qualquer e-mail de sua preferência.

Desta vez, a Microsoft saiu na frente com esse serviço gratuito.

Bom, como nem tudo são "flores", o tamanho de cada arquivo é de no máximo 50 mb, ou seja, não dá pra deixar um filme inteiro lá para alguém baixar, você terá que quebrá-lo em vários arquivos menores. :-(