Category Archive: Projetos

Subcategories: Sem categorias

ASP.NET – primeiras impressões

Depois de muito tempo relutando, decidi aprender o ASP.NET e investi meu tempo lendo um livro da APRESS.

A primeira impressão foi muito boa, já que peguei a tecnologia amadurecida (.NET 4.0) e com um conhecimento de estruturas de linguagem já avançado, mas foi só começar a trabalhar na linguagem para começar a ver os problemas.

O primeiro é a mania da Microsoft de tentar redesenhar a roda. Um exemplo são as tags personalizadas (ie <asp:TextBox…, <asp:Label… etc). A lógica dessa abordagem é muito ruim, já que um desenvolvedor (que provavelmente sabe ou será obrigado a saber HTML) terá que aprender novas tags proprietárias da Microsoft para advinha só, o .NET convertê-las novamente em tags HTML padrão. Por mais que eu tenha tentando, não consegui descobrir como as pessoas engoliram isso. É muito ruim. No projeto que estava desenvolvendo (www.adecom.com.br) optei por utilizar as tags HTML padrão e apenas acrescentar o atributo runat=’server’. Depois percebi que a aposta da Microsoft, o MVC, já recomenda esta abordagem. Nunca é tarde para superar um erro.

Outro problema grave da lógica de funcionamento são os IDs (re)gerados no servidor. Dessa forma, se você cria uma tag <a ID=’nome1′… o .NET irá automaticamente convertê-lo em <a ID=’nomeASPNET1′… O problema dessa abordagem é que não será possível acessar o elemento via JavaScript ou CSS. A solução para este segundo caso é usar o “ClientIDMode” que permite informar ao .NET que o ID daquele elemento específico é estático.

Do lado positivo, a MasterPage, idéia muito boa e altamente produtiva. Fiquei muito surpreso ao descobrir que é possível ter várias MasterPages em um mesmo projeto. Isso é muito útil quando se tem páginas que precisam ser acessadas através de um login e páginas que estão liberadas para o público em geral.

Outro ponto interessante é a webConfig, que permite configurações globais para a aplicação e que me pareceu bem segura e fácil de acessar (por exemplo para pegar a String de Conexão).

Bom, é isso. Estou iniciando os meus estudos em MVC e depois postarei um artigo sobre a linguagem. Pretendo ainda este ano estudar o Ruby on Rails e fazer um comparativo dos dois.

Tagged , ,

Baseline: Ferramenta para gestão de projetos

Realizando uma pesquisa na web à procura de informações sobre Baseline pude perceber que as informações existentes estão extremamente distribuídas e sem uma estrutura organizadamente lógica. Já que precisei agrupar todas as informações para um trabalho do meu mestrado resolvi compartilhar o que pesquisei.

Definição

Entende-se por Baseline a linha de base para acompanhamento de projetos, ou seja, um caminho pelo qual o projeto deverá seguir. Ela é muito utilizada na produção de softwares (qual analista de sistemas nunca se deparou com uma?), mas é uma ferramenta a ser utilizada na gestão de qualquer projeto. Por exemplo, se seu objetivo é produzir uma dissertação de mestrado, possivelmente uma linha de base poderá ser criada para você acompanhar o andamento do projeto. Este é, inclusive, o foco principal da baseline, ser uma ferramenta que possibilite o acompanhamento de projetos e comparar sua execução com um planjemanto inicial.

Funções da Baseline

Além de ser a referência para o acompanhamento do projeto conforme já foi dito, a linha de base também poderá ser utilizada para os seguintes fins:
Reprodutividade: como ela cita lista todas as etapas de um projeto é possível reproduzir os acontecimentos que levaram a determinada situação do projeto.
Rastreabilidade: é possível rastrear quais são as etapas predecessoras e sucessoras de determinada atividade.
Produção de relatórios: a utilização da linha de base possibilita gerar relatórios com informações úteis sobre o andamento do projeto.

Tipos

  1. Tempo: A baseline de tempo é a que gera um calendário para o projeto. Nela especifica-se datas e distribuição de atividades de maneira que uma cadeia com todos os acontecimentos em ordem cronológica será construída.
  2. Custo: A linha de base de custo é um orçamento referencial de quanto se pode investir no projeto. Este orçamento é realizado com base em informações de projetos anteriores e disposição financeira da empresa.
  3. Escopo: É a definição de tudo o que se pretende “produzir” com o projeto que está sendo gerenciado.
  4. Qualidade: São métricas identificando as qualidades que se espera obter com os produtos do projeto.


Como Montar?

Para se montar uma baseline é preciso:

  • Construí-la com dados o mais próximo da realidade possível.
  • Baseá-la em projetos anteriores quando aplicável/possível.
  • Realizar medições consistentes antes e durante o projetos.
  • Realizar o trabalho idêntico ao definido na baseline.

Visualização de uma baseline

Veja abaixo o exemplo de uma baseline:


baseline1.png

Vantagens de se criar uma baseline

Possibilidade de criação de ramificações facilmente
Controle avançado sobre o projeto
Acompanhamento da utilização e disponibilidade de recursos

Variações

Variações são mudanças que acontecem em algum dos pontos a seguir:

  • Prazos
  • Custos
  • Disponibilidade de recursos
  • Riscos

Caso ocorra alguma variação no projeto é preciso validá-la junto ao gerente de projeto e caso ela seja aprovada aplicar à baseline, gerando então uma nova linha de base que deverá ser documentada.

Caminho Crítico

Entende-se por caminho crítico a sequência de atividades que não possuem nenhuma folga em sua relação de interdependência durante a execução do projeto. Em outras palavras, são as atividades que são realizadas sequencialmente sem que existe um período que possa ser utilizado para manter o prazo do projeto caso aconteça algum atraso em qualquer das atividades que fazem parte dessa cadeia. É o caminho crítico quem define qual será o menor prazo para a realização do projeto. Qualquer atraso na execução de uma atividade que faça parte do caminho crítico irá gerar ao projeto um atraso igual ou maior do que o ocasionado por esta atividade.

Abaixo um exemplo de um caminho crítico.


caminhocritico.png

Bom, acho que é isso! Deu para ter uma visão geral sobre Baseline… se ficar alguma dúvida entre em contato.

Abraços!