segunda-feira, março 20, 2006

Monografia sobre Extreme Programming

A pedidos do colega Alexandre Gontijo da lista do Yahoo xprio, estou publicando sua interessante monografia com uma visão global sobre Extreme Programming.

Resumo

O presente trabalho tem como objetivo fornecer uma visão global do que é Extreme Programming, também conhecido simplesmente como XP, analisando seus fundamentos e práticas. Extreme Programming é uma metodologia ágil de desenvolvimento de sistemas, aplicável principalmente em equipes pequenas e médias. É uma metodologia original, diferente das tradicionais, com práticas heterodoxas, algumas das quais também um tanto controversas, como, por exemplo, a programação em pares e o design incremental. XP tem como valores supremos a comunicação, o feedback, a simplicidade, a coragem e o respeito. Para uma aplicação prática mais fácil, são descritas ao final deste trabalho possíveis formas de se implantar a metodologia.

O artigo se encontra na seção de downloads do site Erudio.

Marcadores:

Proposta de um Roteiro para a Redução do Tempo de Desenvolvimento de Projetos de Software

A pedidos do meu grande amigo e colega professor André Luiz Dias Ribeiro estou publicando mais um de seus artigos, que propõe um Roteiro para a Redução do Tempo de Desenvolvimento de Projetos de Software.

Resumo:

A realização de um projeto de software dentro do prazo planejado é um dos desafios da engenharia de software moderna. A agilidade e rapidez com que os produtos do mercado evoluem tornam o fator de atendimento do prazo como um diferencial entre as empresas de desenvolvimento de sistemas. A proposta do roteiro é organizar as técnicas e práticas de engenharia de software que auxiliem no planejamento, na definição da arquitetura e na aplicação da engenharia simultânea com o objetivo de obter-se ganhos reais no tempo de desenvolvimento do software e no aumento da produtividade que permitam a realização do projeto dentro do prazo estabelecido.

O artigo se encontra na seção de downloads do site Erudio.

Marcadores:

sexta-feira, março 17, 2006

Estratégia Competitiva da IBM na Indústria de Ambientes Integrados de Desenvolvimento (IDEs) para a plataforma Java

Escrevi um artigo para o mestrado do IPT (Instituto de Pesquisas Tecnólogicas) a respeito da Estratégia Competitiva da IBM na Indústria de Ambientes Integrados de Desenvolvimento (IDEs) para a plataforma Java.

Segue o breve resumo:

A indústria de IDEs Java é marcada por uma forte competição. Este artigo realiza uma análise estrutural da indústria de IDEs Java. Logo após detalha as estratégias da IBM para competir nesta indústria e como seus movimentos ofensivos deram uma vantagem inicial na conquista de mercados.


PALAVRAS-CHAVE

Estratégia competitiva, Vantagem Competitiva, Cinco forças, IBM, JAVA, IDE, Plataforma.

As seguintes referências bibliográficas foram utilizadas:

CUSUMANO, M.; GAWER, A. Platform Leadership. Boston: Harvard Business School Press, 2002.

CUSUMANO, Michael. The Business of Software. New York: The Free Press, 2004.

EWEEK. Sun Offers New Java Tool Set for Free. EWeek.com, 2005.

GROVE, Andrew. Só os paranóicos sobrevivem. São Paulo: Editora Futura, 1997.

IBM. About IBM. IBM, 2006.

KOENIG, John. Seven open source business strategies for competitive advantage. IT Manager´s Journal, 2004.

LAURILA, Pietari. The effect of open source on software industry profitability. Pietari Laurila, 2004.

McGRATH, Michael. Product Strategy for High-Technology Companies, 2nd Edition. New York: McGraw-Hill, 2001.

OSI. Open Source Licenses . Open Source Initiative, 2006.

PORTER, Michael. Estratégia Competitiva. 6a. Edição. Rio de Janeiro: Editora Campus, 1986.

PORTER, Michael. Vantagem Competitiva. 5a. Edição. Rio de Janeiro: Editora Campus, 1989.

SUN. The Source for Java Developers. Sun Microsystems, 2006.

TAFT, Darryl. IBM Completes Rational Acquisition . EWEEK.COM, 2003.

THEREGISTER. Borland rides Segue on trip out of IDE biz. TheRegister, 2006.


O artigo se encontra na seção de downloads do site Erudio.

segunda-feira, março 13, 2006

Leituras da Semana VI

Essa postagem traz alguns livros importantes para a aplicação e uso prático da UML para facilitar a comunicação, documentação e realização de arquitetura em projetos.

UML 2 Toolkit --> O exemplo final no capítulo 11 (acompanhado
com todos os diagramas e código-fonte no CD) é excelente. Realiza o
processo desde os requisitos, passando por análise e design e
chegando ao código. Eu achei ótimo para mostrar como se passa de
modelos para código (aliás esse é o ponto mais difícil de ensinar. É
por isso que muitas vezes pego turmas que não entendem o porquê da
UML e em seus TGs realizam uma documentação de sistema sem aderência
nenhuma à arquitetura e ao código-fonte ).

Applying UML and Patterns, 3rd Edition --> Essa 3a. edição é
bem diferente das anteriores e extremamente recomendável. Esse livro
facilita muito o entendimento em especial de quando, aonde e porquê
usar design patterns.

UML in Practice --> Um livro recheado com exemplos diversos e
bem didáticos.

Streamlined Object Modeling --> Um livro que possui
procedimentos e patterns para melhorar o modelo conceitual (ou modelo
de domínio ou diagrama de classes preliminar).
Particularmente achei muito mais didático que o livro do
Fowler "Analysis Patterns". É baseado no também excelente e mais
antigo "Java Modeling in Color with UML" de Peter Coad.

Building J2EE Applications with RUP --> Excelente livro que
pega um exemplo de sistema de leilão e o transforma aos poucos
utilizando as disciplinas e atividades do RUP. Quando entra na
arquitetura e no design utiliza o o contexto do J2EE. Excelente
exemplo e organização.

Domain Driven Design --> Esse já é pro pessoal mais avançado.
O livro recém-lançado "POJOs in Action" mostra, usando as mais novas
tecnologias Java, como aplicar na prática os conceitos de Domain-Driven Design.

Use Case Modeling --> Como eu escrevi na resenha da Amazon
sobre esse livro: If you can buy only one book about use cases (and
an excellent introduction about Vision artifact and stakeholders
also) then buy this one !!!!

Engenharia de Software, 2a. Edição de Wilson de Pádua Paula
Filho--> Para terminar e prestigiar um excelente professor e autor
brasileiro. Seu livro de Engenharia de Software, com um processo
baseado no UP chamado Práxis, é excelente também em termos de seus
exemplos de modelagem. Uma boa referência para os que possuem
dificuldade com o inglês.

Marcadores:

sábado, março 04, 2006

Gerenciamento de Projetos Tradicional x Gerenciamento de Projetos Ágil: Uma Análise Comparativa

A pedidos do meu grande amigo e colega professor André Luiz Dias Ribeiro estou publicando seu artigo que compara o gerenciamento de projetos tradicional com o gerenciamento de projetos ágil.

Além da bibliografia sugerida por ele, no final do artigo, recomendo os seguintes livros que já li e são essenciais para entender a gestão ágil de projetos:

- Effective Project Management: Traditional, Adaptive, Extreme, Third Edition de Wysocki e McGary

- Radical Project Management de Rob Thommsett

- Agile Project Management : Creating Innovative Products de Jim Highsmith

- Managing Agile Projects de Sanjiv Augustine

- Agile Project Management with SCRUM de Ken Schwaber

- Agile Project Management: How to Succeed in the Face of Changing Project Requirements de Gary Chin


Sem mais delongas, segue o resumo do artigo de André Luiz Dias Ribeiro. O dowload pode ser feito na seção de downloads de Engenharia de Software do site Erudio.



Resumo

O ambiente de desenvolvimento de software passa por um processo de mudanças. Os projetos de software tornam-se cada vez mais complexos, sujeitos a constantes alterações e com prazos cada vez mais restritos para atender as demandas de mercado.
Neste cenário, os métodos de gerenciamento de projetos tradicional e de gerenciamento ágil são analisados criticamente numa busca do que é mais eficaz na gestão de desenvolvimento de software.
O objetivo deste artigo é apresentar os conceitos principais de cada método e realizar uma análise comparativa entre eles, gerando subsídios que permitam a análise de qual método é mais apropriado de acordo com as características de cada projeto.

Abstract
The software development environment is changing. The projects are getting more complex, with constants changes and reduced time-to-market.
In this scene, the traditional and agile project management have been critically analyzed to search for an effective software development management.
This paper presents the methods main concepts and a comparative analysis between them that help choosing the best method for managing the project in hand.

Palavras-chave: Gerenciamento de Projetos, Métodos Ágeis, XPM, Engenharia de Software.

Marcadores:


Veja as Estatísticas