quinta-feira, 27 de novembro de 2008

Rejuvenescimento X redocumentação X reengenharia X refatoração

Houve uma grande duvida no inicio dessa disciplina com o nosso o grupo. Nós decidimos que iríamos falar sobre rejuvenescimento de software, mas não sabíamos na verdade o que é que se tratava.
Rejuvenescimento vem de você pegar algo antigo e transformá-lo em novo. Disso todos já sabiam, mas ai veio a principal dúvida: Qual a diferença entre rejuvenescimento, redocumentação, reengenharia e refatoração?
Após várias pesquisas, conseguimos desvendar todas essas diferenças, as quais eu escrevo aqui em baixo:

- Refatoração

É o processo de modificar um software para melhorar a estrutura interna do código, sem alterar o seu comportamento externo. As duas vantagens principais da refatoração é: suavizar a deterioração do software e deixar o código mais limpo e mais facil de manutenção.

- Redocumentação

Não modifica a estrutura do software, nem meche no código. Apenas faz uma análise estática do código fonte, verificando informações adicionais que podem ser úteis para a documentação do software.

- Reengenharia

Se trata da aplicação da engenharia reversa em um sistema já existente e depois aplica a "engenharia direta" para fazer mudanças na especificação e no projeto que completam o modelo lógico.

E agora, aonde entra o rejuvenescimento?

Rejuvenescimento é na verdade a junção de todas essas técnicas, com o objetivo principal de evitar a degradação total do software.

terça-feira, 25 de novembro de 2008

Funções e Responsabilidades no Project Office

Neste post iremos apresentar as principais funções e responsabilidades do Project Office.

Definir e manter metodologias e padrões

Deve-se definir ou manter as políticas, normas, processos e procedimentos que serão utilizadas nos projetos. Também deve ser criado os modelos dos seguintes documentos: planos, wbs, cronogramas e relatórios dos projetos.
Não sabe o que é WBS ? clique aqui!


Manter as Ferramentas

Escolher as ferramentas que serão usadas no ambiente corporativo (repositório de metologias, documentos, etc.), as ferramentas operacionais de planejamento e  controle ( WbsChartPro, MSProject ), Bases de conhecimento, etc.


Capacitação

Treinamento nas metodologias e ferramentas que serão utilizadas. Para auxiliar a capacitação, pode ser solicitadas consultorias e o aprendizado através das "lições aprendidas".


Controle

Pode ser feito através de acompanhamento do desempenho dos projetos, Auditoria ( levantamento das informações usando sistemas de gestão, contratos, etc. ), Consolidação e divulgação dos indicadores do projeto( painel executivo )


Gestão de Recursos

As suas principais funções são: apoio a seleção e contratação, planejamento do desenvolvimento, controle do desempenho.


Outras Funções

Suporte administrativo, Apoio a start-up de projetos, Apoio a projetos com problemas.

Tipos de Project Office

Single Control Project Office

É estabelecido para o controle de um único projeto e é completamente separado das outras operações da empresa. Possui a responsabilidade total sobre o sucesso do projeto.


Project Support Office

Atua, primordialmente, como apoio simultâneo para vários gerentes de projetos. Sendo que a responsabilidade sobre o sucesso do projeto não é do Project Support Office e sim do gerente do projeto que utiliza o seu serviço.


Project Management Center of Excellence

O seu foco é garantir que sejam utilizadas as metodologias e competências corretas na administração dos projetos. O Project Management Center of Excellence não irá assumir responsabilidade sobre o sucesso do projeto.


Program Management Office

Irá assumir o papel de responsável pelo projeto e pela condução das melhores práticas de gerenciamento de projetos. O Project Manegement Office incorpora o Project Support Office e o Center of Excellence.


Chief Project Office

É a autoridade central para os projetos, suas atribuições são diretamente ligadas à estratégia da organização.

Alguns Pontos Interessantes sobre o Project Office

As mudanças sempre se fizeram presentes na área da tecnologia da informação. Sempre há necessidade de atualização de hardware, devido a criação de novas tecnologias como processadores mais potentes ou redes cada vez mais rápidas,  como também de software para suprir as necessidades atuais do mercado.
Porém, devido a essas mudanças, surgem cada vez mais projetos com alto grau de complexidade e muitas novidades tecnológicas. Esse cenário se torna cada vez mais difícil de ser gerenciado.

Como Marcus Vinícius já disse nos posts anteriores, o Project Office é a única área da empresa que possui uma visão de todos os projetos. Nele podemos criar padrões e procedimentos para melhorar o gerenciamento de projetos, obter uma visão global de todo o projeto sem se perder em detalhes e aumentar as chances de sucesso do projeto.

Você pode estar se perguntando o que justificaria você adotar o Project Office na sua empresa. Essa resposta é simples!, alguma vez você já percebeu que na sua empresa, as lições aprendidas nos projetos não são documentadas ? (que normalmente a maioria dos seus projetos enfrentam os mesmos problemas, devido a não existir um base de dados das lições aprendidas.), Já percebeu que os Gerentes de Projetos estão sobrecarregados e sem tempo para análise de dados e tomada de decisão ?, Já percebeu que Gerência de Projetos é uma competência crítica para o sucesso da sua empresa ?

Se as respostas para as perguntas acima forem verdadeiras, você já possui motivos para a implementação de um Project Office na sua empresa!



terça-feira, 4 de novembro de 2008

Apresentaçao Semi-Final

O Governo Federal e os softwares

O Governo Federal já acumula grande conhecimento em migrações de sistemas legados para software livre. A experiência ensina o que fazer (e não fazer) para adotar com sucesso os softwares abertos.

Todas as instituições que começaram suas migrações desde 1999, tais como a Dataprev e a Marinha, ainda convivem com o desafio de superar o entrave dos sistemas legados de domínio institucional. Isso também se repete nos órgãos que começaram sua migração no primeiro mandato do atual governo, tais como o Serpro, a Embrapa, o ITI, os Correios, a Caixa Econômica, o Banco do Brasil e diversos Ministérios. Esses sistemas são relativos às soluções corporativas desenvolvidas há bastante tempo, em ambiente proprietário, com padrões fechados e com elevado grau de maturidade, tanto na utilização dos usuários como em sua manutenção. Embora exista um maior domínio institucional dos sistemas, estes, em sua maioria, são mais complexos e custosos para serem migrados.

O panorama encontrado na Administração Pública Federal, no contexto da elaboração de planos de migração para tratamento dos legados, aponta os seguintes passos como as ações mais adequadas para a realização de migração dos sistemas proprietários para software livre:

i) Estabelecer um ciclo de diagnóstico onde se realiza um mapeamento dos sistemas legados utilizados pelo usuário, tanto os sistemas internos quanto os adquiridos externamente;
ii) Consolidar as informações coletadas no mapeamento (em planilhas ou banco de dados), ordenando os usuários e sistemas segundo aptidão para realizar determinada rota de migração: estações, servidores, serviços e sistemas;
iii) Classificar os sistemas de acordo com os seguintes itens: grau de complexidade, domínio institucional, recursos envolvidos para migração e se os mesmos se tratam de um nó de migração;
iv) Identificar as possibilidades de migração de acordo com critérios técnicos pré-estabelecidos para o ambiente: aplicativos proprietários com similar livre sem perda de funcionalidades básicas, menor quantidade de aplicativos proprietários ativos, menor micro-legado, menor macro-legado, menor quantidade de nós de migração, etc.
v) Estabelecer os estágios tecnológicos que serão alcançados por cada sistema: adoção de padrões abertos, operação multiplataforma, interoperabilidade, parte de funcionalidades em software livre, migração parcial ou total.
vi) Definir o cronograma de execução das ações de migração, conjugando os critérios pré-estabelecidos com os estágios tecnológicos descritos acima, bem como a preparação técnica da equipe.

Fonte: http://webinsider.uol.com.br/index.php/2007/05/01/migracao-planejada-software-livre-e-os-sistemas-legados/