segunda-feira, 29 de dezembro de 2008

Um 2009 cheio de colheitas

Aos amigos e colegas.

Final de ano... Época aonde as esperanças se renovam... Época aonde refletimos sobre o ano que passou e tentamos influenciar nosso futuro.

Durante 2008, muitos investimentos, de tempo, de esforço, de dedicação. Plantamos sementes de realização, de amor, de felicidade, de esperança...

Algumas frutificaram durante 2008. Temos que continuar a cuidar de nossa plantação, para que em 2009, possamos colher muitos frutos....

Um final de ano cheio de paz, harmonia e amor entre todos seus familiares, e um ano novo repleto de colheitas.

São os votos do Fábio Dippold.

sábado, 9 de agosto de 2008

Reuso de Software

Reutilização. No contexto de desenvolvimento de software, esta é a palavra-chave para aumento de produtividade, qualidade e redução de custos. Quanto menos linhas de código são reescritas – fato que geralmente acontece por falta de planejamento e organização de conhecimento –, mais software novo pode ser criado. O aumento de qualidade se dá com a utilização deste código já bem documentado e testado.
O ponto chave do sucesso dessas organizações é que elas possuem a coragem que falta em outras, para “perder” parte do seu staff, momentaneamente, "pensando e fazendo, exclusivamente" reuso de software e depois, se deleitar dos benefícios obtidos pela decisão corajosa.
O reuso de software é o uso de software existente para o desenvolvimento de novo software.
No reuso de software duas decisões estão envolvidas. A primeira é se devemos, ou não, adquirir software para reusar. Sistemas operacionais devem ser comprados, bibliotecas de códigos devem ser desenvolvidas, ou compradas, arquiteturas de domínio específico para famílias de produtos devem ser produzidas.Se o software a ser reusado já é possuído como resultado de outra atividade, esta decisão é desnecessária.A segunda decisão é se devemos, ou não, reusar software em instâncias particulares.
A questão é: o desenvolvedor deve escrever uma rotina, ou deve buscá-la na Internet? Justamente pelo fato de que o processo de reuso de software envolve encontrar software, entender como reusá-lo, e talvez, modificá-lo antes de ser de fato reusado, pode ser mais atrativo para redesenvolver.

Algumas vezes estas decisões são simples.Muitas formas de reuso de software não são comumente denominadas de “reuso”; elas são práticas padrões já que não há alternativa real.No entanto, algumas decisões são menos simples, ou diretas, e requerem análise apropriada antes delas serem tomadas.
Mas como?

Neste sentido, um modelo de adoção de reuso (ou seja, uma estratégia) ajuda a organização a entender como o reuso irá mudar o modo como ela faz negócios, e como ela deve planejar para esta mudança. Um modelo de adoção de reuso é um guia para o processo de melhoria. Ele sugere área onde a capacidade pode ser medida de modo sistemático em uma organização num dado ponto do tempo.

As técnicas são:
  • Adoção de reuso no processo de desenvolvimento software
  • Engenharia de domínio
  • Componentização
  • Frameworks
  • Linhas de Produtos
  • Utilizar padrões de projeto (Design Patterns)

terça-feira, 17 de junho de 2008

Comunicação eficiente

A maioria dos projetos é uma salada de personagens e interesses. Alguns apóiam o projeto, outros o rejeitam. Alguns entendem que a metodologia pode trazer produtividade e controle, enquanto outros a consideram burocracia desnecessária. Há ainda aqueles que terão vários benefícios com o produto do projeto, e outros que serão afetados negativamente.

Neste contexto, a comunicação é um fator essencial para obter melhores resultados e prosseguir com o projeto sem maiores tropeços.

O Gerente de Projeto deve ter objetividade em sua comunicação. O fato é que nem sempre a informação que ele precisa chegará de forma direta e clara. Para isto, sugiro o seguinte:

1) Faça perguntas difíceis. É muito confortável fazer uma reunião na qual não há questionamentos… mas também totalmente inútil. O bom Gerente de Projeto sabe fazer as perguntas difíceis, que realmente trazem à tona a situação das atividades, expõem riscos e tiram a equipe da zona de conforto. A sensação falsa de controle é um dos maiores problemas que o Gerente pode encontrar.

2) Não aceite respostas incompletas.
Não é difícil perceber quando você está sendo enrolado. Insista até obter informações claras (com as perguntas difíceis) e mostre que não está para brincadeiras.

3) Formalize o necessário. Ninguém gosta de usar seu tempo escrevendo e-mails e relatórios, mas estes são necessários. É responsabilidade do Gerente de Projeto definir um Plano de Comunicação que permita o mínimo possível de formalidade sem perder o registro das informações importantes do projeto. Lembre-se que a informação bem documentada aumenta a responsabilidade dos envolvidos.

4) Saiba quem é quem. A análise dos stakeholders é uma ferramenta importante para preparar sua comunicação. Quando você sabe quem se encaixa em cada um dos perfis que descrevi no primeiro parágrafo deste artigo, conseguirá adaptar sua comunicação para obter o melhor de cada um.

5) Dê seguimento. Em inglês existe o termo “head fake”, que é aquela situação na qual se discute algo em uma reunião, todos concordam balançando a cabeça, mas depois da reunião é como se nada tivesse acontecido. Acho que todos sabem do que estou falando. Quando o Gerente de Projeto dá seguimento estrito a todas as decisões e atividades do projeto, a equipe entenderá que terá que ser responsável por suas ações e atitudes.

6) Dê o Exemplo. Mesmo que não tenha autoridade formal sobre a equipe (acontece em muitas empresas), o Gerente de Projeto deve assumir uma posição de liderança em relação às boas práticas em projetos. A velha frase “Em casa de ferreiro o espeto é de pau” não se aplica nesta situação. Ao mostrar um nível de controle e produtividade avançados, o Gerente de Projeto mostrará à equipe os benefícios de seguir a metodologia e se comunicar abertamente.

Para finalizar, uma recomendação geral: especialmente no Brasil, ainda há o costume de não dizer exatamente o que pensamos, seja por medo da reação, seja para não ferir os sentimentos do outro ou até porque é mais fácil evitar qualquer tipo de conflito (mesmo o conflito construtivo). Mesmo que isto tenha uma base cultural, temos que adquirir gradualmente o costume da comunicação aberta e objetiva (nos negócios!). Os benefícios serão para todos os envolvidos na comunicação.


Texto capturado do site: http://ogerente.com.br

sexta-feira, 28 de março de 2008

Commited to open source

Uma frase muito comum no mundo dos negócios entre os grandes
“players” do mercado de software (IBM, Oracle, Sun e outros) em relação do software livre é: “commited to open source”. Em outras palavras, as empresas desenvolvedoras estão aderindo ao modelo “open source” com uma presença cada vez mais relevante, para oferecer mais opções, flexibilidade e um baixo custo para computação para seus usuários finais.
O Gartner prevê que “até 2012, 80% de todos os softwares
comerciais irão incluir elementos tecnológicos de software aberto. Muitos dispositivos de software aberto são maduros e estáveis, permitindo redução nos custos e retorno do investimento.”
Para desenvolver essa oferta junto a seus produtos, é necessário um significativo investimento em desenvolvimento, testes, otimizações e suporte a a essas tecnologias “open source” escolhidas como por exemplo: JBoss, Apache, Eclipse e outros.

sábado, 23 de fevereiro de 2008

Um vídeo que todos deveriam ver...

Pessoal, vi esse vídeo no blog de meu amigo Vicente e achei importante vocês que me visitam também o vejam. Obrigado Vicente. T+

terça-feira, 19 de fevereiro de 2008

Design Patterns

Na curta, porém rapidamente evolutiva história das ciências da computação e da engenharia de software, variaram muito as técnicas, métodos, processos, meios e recursos utilizados. Os projetos fracassavam com freqüência porque os desenvolvedores não conseguiam comunicar um ao outro bons projetos de software, arquiteturas e práticas de programação. Não faz muitos anos, estruturas de dados, fluxogramas e técnicas modulares de programação dominavam o cenário. Então, o paradigma de orientação a objetos iniciou sua trajetória. No contexto do desenvolvimento de software orientado a objetos, os padrões de projeto (…) tornaram-se um dos tópicos mais “quentes” na área de engenharia de software nos últimos anos. O simples uso da OO não garante que obtenhamos sistemas confiáveis, robustos, extensíveis e reutilizáveis. O foco das metodologias de desenvolvimento está na solução em si (o que e como) e não em suas justificativas (porque).

“Um Pattern descreve um problema que se repete várias vezes em um determinado meio, e em seguida descreve o núcleo da sua solução, de modo que esta solução possa ser usada milhares e milhares de vezes” [Christopher Alexander]. Sistematicamente nomeia, motiva e explica um projeto genérico, que endereça um problema de projeto recorrente em sistemas orientados a objetos.

As principais vantagens de utilizarmos padrões são:
  • Capturam o conhecimento e a experiência de especialistas em projeto de software, pois difícil compartilhar a experiência entre experts e novatos
  • Especificam abstrações que estão acima do nível de classes ou objetos isolados ou de componentes [Gamma et al 1995].
  • Definem um vocabulário comum para a discussão de problemas e soluções de projeto [Gamma et al 1995].
  • Facilitam a documentação e manutenção da arquitetura do software [Buschmann et al 1996].
  • Auxiliam o projeto de arquiteturas mais complexas.
Reusabilidade real não se obtém de técnicas de “cut & paste” nem do simples reaproveitamento de módulos de software. E melhora do uso não se obtem reusando o mesmo template milhares de vezes e sim entendendo a tarefa do usuário e como a funcionalidade se encaixa no processo.

Este texto foi compilado a partir de várias fontes publicadas na internet.

terça-feira, 5 de fevereiro de 2008

Aprendendo a Gerenciar Riscos

Gestão de Risco Pessoal.

Uma definição comum de risco é “Um evento ou condição incerta que se ocorrer, terá um efeito sobre pelo menos um objetivo”. Essa definição genérica nos permite aplicar a gestão de riscos para uma grande gama de atividades, onde quer que possamos definir objetivos distintos. Isso inclui a gestão de riscos pessoal, identificando e gerenciando as incertezas que podem afetar a conquista dos nossos objetivos pessoais.

Como em qualquer outra área de aplicação, a gestão de riscos pessoal pode ser aplicada em diferentes níveis de detalhe. O segredo está na habilidade em especificar bem os nossos objetivos pessoais. Num nível mais alto podemos dizer que o nosso objetivo é ser “feliz, saudável, estar em forma e ser sábio” e podemos identificar e gerenciar os riscos pessoais estratégicos que podem afetar estes objetivos principais. Isso requer a abordagem de assuntos mais amplos como nossos relacionamentos pessoais, dieta e regime de exercícios, ou investimentos e planos de pensões.

Ou podemos identificar objetivos pessoais mais específicos do tipo “Reduzir meu peso em 9 quilos até o final de junho” ou “Aprender a falar fluentemente uma língua estrangeira antes das minhas férias de verão” ou “Obter uma promoção em doze meses”. Para cada um destes objetivos específicos nós podemos então aplicar os processos de gestão de riscos para nos ajudar a alcançá-los.

O processo é exatamente o mesmo como qualquer outra área aplicação de gestão de riscos. Depois de definir os objetivos, o próximo passo é identificar os riscos, incluindo ambas: as ameaças que podem nos atrapalhar e as oportunidades que podem nos ajudar. Para um objetivo de desenvolvimento de carreira, por exemplo, os riscos negativos poderiam incluir o seguinte: eu poderia ser designado a uma nova função que absorva todo o meu tempo e energia; eu poderia investir em uma formação que não forneça as técnicas ou conhecimentos necessários; eu poderia ter expectativas irrealistas e desistir.

No lado positivo, uma nova oportunidade pode surgir no trabalho ou em outro lugar; eu seria capaz de utilizar habilidades completamente diferentes para mudar de área; eu poderia encontrar alguém que me oferecesse meu próximo trabalho ideal. Após a identificação dos riscos vem a análise qualitativa e quantitativa, estimando a probabilidade e o impacto de cada risco identificado para priorizá-los para ações futuras. Escalas simples com “alto/médio/baixo” podem ser usadas para este propósito, permitindo encontrar as piores ameaças e as melhores oportunidades.

Isso precisa ser seguido de um plano de respostas a riscos, encontrando as ações eficazes e apropriadas para minimizar as ameaças e maximizar as oportunidades. Algumas dessas ações podem ser simples (conversar com o chefe ou colegas sobre possíveis oportunidades internas, procurar cursos de formações disponíveis) e outras ações podem exigir um esforço e investimentos maiores (obter coaching para explorar melhor meus objetivos pessoais, juntar-se a uma associação profissional para melhorar meu networking). Finalmente, as respostas identificadas precisam ser implementadas e seus efeitos devem ser monitorados, para verificar se estão nos conduzindo em direção aos nossos objetivos. Onde for necessário, devemos desenvolver novas respostas, permanecendo-nos alertas a possibilidade de riscos secundários. E nossa análise qualitativa e quantitativa de riscos deve ser atualizada com freqüência para encontrarmos e respondermos as novas ameaças e oportunidades.

O começo de um Ano Novo pode ser um bom momento para aplicarmos a gestão de riscos pessoal, revendo onde estamos atualmente em relação onde queremos estar ou chegar, e desenvolver estratégias e ações para mudar onde for necessário. A gestão de riscos não é aplicada somente no trabalho ou para o mundo dos negócios, ela pode nos ajudar também a conquistar nossos objetivos pessoais. Tente aplicar os processos de riscos para sua vida pessoal e você perceberá que diferença isso pode fazer.

Esse artigo foi criado por Dr David Hilson PMP FAPM.

terça-feira, 29 de janeiro de 2008

Comunicação eficiente

A maioria dos projetos é uma salada de personagens e interesses. Alguns apóiam o projeto, outros o rejeitam. Alguns entendem que a metodologia pode trazer produtividade e controle, enquanto outros a consideram burocracia desnecessária. Há ainda aqueles que terão vários benefícios com o produto do projeto, e outros que serão afetados negativamente.

Neste contexto, a comunicação é um fator essencial para obter melhores resultados e prosseguir com o projeto sem maiores tropeços.

O Gerente de Projeto deve ter objetividade em sua comunicação. O fato é que nem sempre a informação que ele precisa chegará de forma direta e clara. Para isto, sugiro o seguinte:

1) Faça perguntas difíceis. É muito confortável fazer uma reunião na qual não há questionamentos… mas também totalmente inútil. O bom Gerente de Projeto sabe fazer as perguntas difíceis, que realmente trazem à tona a situação das atividades, expõem riscos e tiram a equipe da zona de conforto. A sensação falsa de controle é um dos maiores problemas que o Gerente pode encontrar.

2) Não aceite respostas incompletas.
Não é difícil perceber quando você está sendo enrolado. Insista até obter informações claras (com as perguntas difíceis) e mostre que não está para brincadeiras.

3) Formalize o necessário. Ninguém gosta de usar seu tempo escrevendo e-mails e relatórios, mas estes são necessários. É responsabilidade do Gerente de Projeto definir um Plano de Comunicação que permita o mínimo possível de formalidade sem perder o registro das informações importantes do projeto. Lembre-se que a informação bem documentada aumenta a responsabilidade dos envolvidos.

4) Saiba quem é quem. A análise dos stakeholders é uma ferramenta importante para preparar sua comunicação. Quando você sabe quem se encaixa em cada um dos perfis que descrevi no primeiro parágrafo deste artigo, conseguirá adaptar sua comunicação para obter o melhor de cada um.

5) Dê seguimento. Em inglês existe o termo “head fake”, que é aquela situação na qual se discute algo em uma reunião, todos concordam balançando a cabeça, mas depois da reunião é como se nada tivesse acontecido. Acho que todos sabem do que estou falando. Quando o Gerente de Projeto dá seguimento estrito a todas as decisões e atividades do projeto, a equipe entenderá que terá que ser responsável por suas ações e atitudes.

6) Dê o Exemplo. Mesmo que não tenha autoridade formal sobre a equipe (acontece em muitas empresas), o Gerente de Projeto deve assumir uma posição de liderança em relação às boas práticas em projetos. A velha frase “Em casa de ferreiro o espeto é de pau” não se aplica nesta situação. Ao mostrar um nível de controle e produtividade avançados, o Gerente de Projeto mostrará à equipe os benefícios de seguir a metodologia e se comunicar abertamente.

Para finalizar, uma recomendação geral: especialmente no Brasil, ainda há o costume de não dizer exatamente o que pensamos, seja por medo da reação, seja para não ferir os sentimentos do outro ou até porque é mais fácil evitar qualquer tipo de conflito (mesmo o conflito construtivo). Mesmo que isto tenha uma base cultural, temos que adquirir gradualmente o costume da comunicação aberta e objetiva (nos negócios!). Os benefícios serão para todos os envolvidos na comunicação.


Texto capturado do site: http://ogerente.com.br

quinta-feira, 10 de janeiro de 2008

Gerentes de Projeto e Gestão do Conhecimento

A abordagem orientada à gestão por projetos não parece ser necessariamente suficiente para a implementação de novas alternativas de negócio da forma mais eficaz e eficiente, a não ser que se trate o conhecimento organizacional envolvido em sua gestão. Este componente fundamental, o conhecimento organizacional tratado em cada projeto, deve ser particularmente gerenciado em favor de ganhos significativos de escala. A idéia embutida neste raciocínio é a de que o conhecimento gerado em um dado projeto possa ser reaproveitado de forma produtiva nos projetos subsequentes ao mesmo. E, neste contexto, os gerentes de projeto assumem um papel fundamental, pois a própria gestão do conhecimento embutido na mudança pode, por si só, tornar-se um fator de alto potencial competitivo.

Para revisarmos ...

O que são um projetos?
“Um projeto é um esforço temporário empreendido para criar um produto ou serviço único. Temporário significa que todo projeto tem um início e um término bem definidos. Único significa que o produto ou serviço distingue-se substancialmente de todos os produtos e serviços existentes”.

O que é conhecimento?
“Conhecimento é uma mistura fluida de experiência condensada, valores, informação contextual e insight experimentado, a qual proporciona uma estrutura para avaliação e incorporação de novas experiências e informações. Ele tem origem e é aplicado na mente dos conhecedores. Nas organizações, ele costuma estar embutido não só em documentos ou repositórios, mas também em rotinas, processos, práticas e normas organizacionais”
(DAVENPORT e PRUSAK, 1999).

O que é capital intelectual?
Um conceito estreitamente relacionado à gestão do conhecimento é o de capital intelectual. Neste caso, STEWART(1998) considera que o capital intelectual pode ser encontrado nas pessoas (o capital humano, ou a “fonte da inovação e renovação”), nas estruturas (o capital estrutural) e nos clientes (o capital do cliente, considerando “o valor dos relacionamentos de uma empresa com as pessoas com as quais faz negócios”, que também pode incluir os relacionamentos com os parceiros e fornecedores. No entanto, o autor enfatiza que “o capital intelectual não é criado a partir de partes distintas de capital humano, estrutural e do cliente, mas do intercâmbio entre eles” .

O que é Inteligência Organizacional?
É a capacidade coletiva disponível em uma organização para identificar situações que justifiquem iniciativas de aperfeiçoamento, conceber, projetar, implementar e operar os sistemas aperfeiçoados, utilizando recursos intelectuais, materiais e financeiros.

Esse conteúdo foi capturado no artigo de Roberto Luís Capuruço Gattoni.