The Best Way Architecture

Exposição de idéias pessoais, divulgação de artigos técnicos voltados pra Plataforma .NET. Palestras, Consultorias e discussões de todos os tipos, tamanhos e sabores.

Últimos posts

Tags

Categorias

Navigation

Páginas

Arquivo

Blogroll

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

Nova Comunidade OnLine WCF Brasil - http://www.wcfbrasil.net

Ola pessoal,

Venham participar da primeira comunidade dedicada exclusivamente ao estudo do WCF - Windows Communication Foundation.


A WCF Brasil, é parceira da Comunidade Codificando.NET e visa compartilhar conhecimento focado no estudo de aplicações Distribuídas utilizando WebServices, WCF, SOA etc.


Se você não conhece este plataforma de desenvolvimento de aplicativos distribuídos este é o lugar certo para você se aperfeiçoar no assunto.


Windows Communication Foundation (WCF) é um modelo de programação unificado e ambiente de execução (Framework) criado pela Microsoft que visam a construção de aplicações orientadas a serviços (Service Oriented Architecture).


O objetivo principal do WCF permitir que analistas e desenvolvedores criem aplicações voltadas para computação distribuída.


O WCF possui ainda um conjunto de bibliotecas (classes) que permitem aos desenvolvedores criar estas aplicações para funcionarem sob o sistema operacional Windows.

Então se você está construindo um sistema distribuido, baseado no padrão SOA de arquitetura ou pretende integrar sua aplicação e gerenciar o consumo de webservices o WCF é ideal para sua aplicação e seus projetos.

Venha fazer parte agora mesmo.
http://www.wcfbrasil.net

Um forte abraço a todos.

Evilázaro Alves
MVP, MCTS, MCBMSS, MCP

clip_image001

Posted: ago 11 2009, 09:58 by evilazaro | Comentários (0) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tudo é uma questão de CONCEITO.

Olá pessoal,

Já há tempos eu venho pensando em como escrever sobre um assunto que considero de extrema importância pra quem trabalha com TI, no meu caso em específico, com o desenvolvimento de software.

É muito comum, você encontrar profissionais jovens nesta área específica da informática, profissionais estes que, com toda sua ânsia de aprender, devoram livros e livros, artigos técnicos, WebCasts e todo material disponível que encontram.

Na minha época, quando comecei, o portal MSDN Brasil, por exemplo, estava apenas no início então, quando surgia um vídeo de uma palestra do TechEd, por exemplo, (Na época era PDC) agente ficava louco pq sabia que era informação de primeira qualidade e o principal, informação RARA.

Com o BUM da Internet, principalmente da Web 2.0, a geração de conteúdo é muito rápida, dinâmica e volumosa.

Acontece que, estes mesmos profissionais jovens, muitas das vezes se perdem em muitas siglas e não sabem diferenciar o que é uma tecnologia específica do que é uma implementação de algum conceito já existente.

Em uma empresa que representa um grande software de ERP, estava reunido com um desenvolvedor e estávamos questionando sobre a forma com que, o ambiente de desenvolvimento deste produto trabalhava com os objetos de banco de dados, ou seja, como ele criava tabela, trabalhava os relacionamentos entre estas tabelas e etc.

Dentro de um ponto específico da conversa, tínhamos dois objetos Relations um dentro de um objeto chamado Lookup e um dentro de um objeto Table. Então questionei ao desenvolvedor, em qual destes dois objetos eu garanto a INTEGRIDADE REFERENCIAL dos dados? Já que, eu não posso fazer isto diretamente no banco e sim, através da IDE do ERP.

Bom, parecia que eu havia feito uma pergunta em RUSSO e este mesmo profissional parecia não fazer a mínima idéia do que era INTEGRIDADE REFERENCIAL. Ele simplesmente respondeu: Não entendi a pergunta.

Neste momento, tive que fazer uma explicação de uma situação em que, se eu excluísse um dado da tabela Pai, o que ocorreria com a tabela Filho. Se eu perderia os dados? Ficar-se-iam registros em uma tabela e na outra não e assim por diante.

Ao explicar estas situações ele pode entender que, TODO o desenvolvimento que ele havia feito até o momento estava de certa forma errada e o que precisaria ser feito eram muitas alterações, pois ele não havia entendido o conceito de Integridade Referencial e sim apenas sabia como a ferramenta funcionava.

Pode parecer que, seja um caso isolado, mas estamos falando de vários desenvolvedores que já caem no mercado de trabalho sem ter passado por uma plataforma de desenvolvimento mais complexa, como. NET, JAVA , VB, Delphi etc.

Quando pegam estes ambientes de ERPs, focam apenas em regras de negócios esquecendo muitas vezes o que está por debaixo de todas aquelas camadas.

Este profissional que estou citando, por exemplo, já tiraram praticamente TODAS  as certificações necessárias para se desenvolver neste produto de ERP o que teoricamente, o torna totalmente capacitado para a função.

Acontece que, se analisarmos estas provas, o que cai é totalmente baseado na Ferramenta e não são tratados conceitos de desenvolvimento de Software.

Espero que, o processo de seleção destas empresas busque encontrar desenvolvedores de software e não apenas pessoas para customizarem sistemas de ERP. Quando isto começar a ocorrer ai sim, teremos desenvolvedores que estarão aptos para desenvolverem soluções Reais para as empresas.

Espero que tenham gostado do texto.

Um forte abraço a todos.

Evilázaro Alves
MVP, MCTS, MCBMSS, MCP

clip_image001

Posted: jul 22 2009, 15:12 by evilazaro | Comentários (1) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Não insistam no Modelo de Desenvolvimento de Software Cascata.

Olá pessoal,

O post de hoje é mais um post opinativo do que o que geralmente posto que sejam notícias e novidades tecnológicas. Quero colocar aqui, a experiência profissional que vivi a alguns meses em uma empresa que representa um software de ERP. O assunto que gostaria de falar hoje é sobre processo de desenvolvimento de software, alguns modelos de processos e o que vivenciei nesta empresa.

Imagine uma situação, em 2009 vc em uma grande empresa de software fazendo o seu trabalho e então é convidado para uma reunião onde serão apresentados os processos de desenvolvimento de software da empresa e os novos COORDENADORES. Uma situação extremamente normal em qualquer empresa de software, nada como analisar, discutir e até mesmo melhorar todo o processo produtivo de software não é mesmo?

Chegando à reunião, vários desenvolvedores, estagiários, COORDENADORES e Gerentes de Projetos, ou seja, praticamente todos os papéis de um desenvolvimento de Software, eis que quem começa a reunião, para apresentar o processo de desenvolvimento é um GERENTE DE PROJETOS. Bom, o cara não tem experiência nenhuma com desenvolvimento de Software, aliás, ele tem experiência em CUSTOMIZAÇÃO da ferramenta o que pode ou não ser considerado um desenvolvimento de software dependendo do ponto de vista.

Feito isto, ele inicia mostrando um fluxograma em que contém várias fases do desenvolvimento e o básico que é:

· Análise

· Desenvolvimento

· Testes

· Homologação

· Produção

Já começa a reunião perguntando pra um estagiário “o que é a etapa de análise?”, neste momento, já percebi como seria a reunião (uma imensa demonstração de que o gerente de projetos é quem tem o conhecimento de como se desenvolve um software, e ele estaria lidando com macacos). Em cada parte do processo ele ia perguntando quem sabia o que aquela etapa significava. Vamos parar aqui e imaginar a cena:

Uma sala, de uma grande empresa de software de ERP repleta de Desenvolvedores ou Customizadores como costuma chama – los, e o cara me pergunta o que é cada etapa do processo? Tipo, estas cinco fases que citei acima é conhecida até por quem desenvolve em ACCESS (Sim, eu conheço gente que desenvolve em Access. Aliás, conheço até empresa que vive de produto feito em Access), mas enfim, a reunião seria um saco, enquanto ele falava, eu analisava o fluxograma e percebi que não passava de um modelo cascata de desenvolvimento de Software e que, na verdade, o modelo deles pregava que, toda a análise seria feita antes mesmo da codificação iniciar e que, somente depois da especificação de requisitos pronta, é que o desenvolvedor colocaria a mão na massa.

Dentro do processo pregava que, a especificação deveria voltar para o Consultor funcional quantas vezes fosse necessário até que ficasse “boa” o suficiente para que o desenvolvedor pudesse seguir com seu trabalho.

Não sou o maior especialista do mundo em processo de desenvolvimento de software, pra isto, tenho amigos Mvps super competentes que tratam deste assunto e quando preciso realmente de um deles, é só recorrer que tenho a melhor ajuda especializada do mercado, porém, não precisa ser nenhum mestre da computação pra saber que a Engenharia de Software tenta fazer o Modelo Cascata funcionar tem só 40 anos.

Para comprovação do que eu estava imaginando e também claro, para meu desespero total (pois estava perdendo meu tempo em que poderia estar estudando algo interessante, vendo e-mails ou mesmo trabalhando hehehe) ele me solta a seguinte frase:

“E para comprovar como estamos evoluindo em nossas exigências de especificação funcional, estamos na DÉCIMA versão de uma determinada especificação funcional para uma customização do cliente X”

Pessoal, eu quase caio da cadeira, eu quase pensei que na verdade não ouvi aquilo e sim, que por eu estar imaginando que estavam pensando de forma em Cascata eu teria pensado aquilo e achado que ele falou isto até que ele repetiu.

Eu ergui a mão e perguntei, mas décima versão?

E ele disse sim, pois estamos muito exigentes agora.

Eu perguntei, e o CLIENTE? Como fica? Como são tratados os prazos do CLIENTE? Ele simplesmente espera pacificamente NÓS resolvermos os problemas internos e chegarmos há uma versão de especificação?

Gagueja daqui, gagueja dali, muito veja bem e então ele fala:

Infelizmente, nós desenvolvedores precisamos tirar o nosso da reta pq os Consultores Funcionais não fazem uma boa especificação e tudo acaba estourando no desenvolvimento.

Pela primeira vez na reunião, ele falou uma coisa sensata, os consultores não estavam fazendo realmente uma boa especificação e isto prejudica o desenvolvimento, porém, fiz a seguinte contra – argumentação.

Vocês já perguntaram para os consultores se, eles SABEM levantar requisitos? Afinal, eles são consultores funcionais e muitos deles eram usuários do sistema e estão passando para consultoria, praticamente nunca participaram de um processo de desenvolvimento de customização. Já propus uma vez a diretoria em fazer um Workshop para os consultores explicando como Extrair Requisitos, mostrando alguns padrões de especificações e minha idéia foi simplesmente ignorada.

Bom, mais gagueja daqui, mais veja bens e escuto:

Sua opinião é muito boa, mas não funcionaria pq geraria um problema político e os consultores não aceitariam nossa ajuda, afinal pensariam que estaríamos tentando ensinar o trabalho deles.

Dai, neste momento teve a intervenção de outro COORDENADOR da empresa, que acabou de entrar na empresa. O cara é PSCICOLOGO, ASTROLOGO E VIDENTE hehehehe (ESTAVA ENSAIANDO ESTA TIRADA HA TEMPOS) e tenta explicar todo o problema emocional que poderíamos causar na equipe de Consultores Funcionais da empresa.

Neste momento, desisti de vez da reunião, mas eu era obrigado a continuar. : )

Pessoal, saindo da reunião, procurei os coordenadores da consultoria e perguntei se poderíamos trabalhar em conjunto para que chegássemos a um entendimento de como montar a especificação e propus o workshop. A aceitação foi de 100% e ainda gostaram da idéia, pois todos alegaram ter a oportunidade de aprender algo novo, algo que poderia ajudar ELES MESMOS em não voltar tanta especificação.

Este Workshop é claro, vai ser transformado em algo comercial que colocarei aqui no blog pra quem tiver interesse. :)

Então pessoal, o motivo do post é dizer o seguinte:

O MODELO CASCATA NÃO FUNCIONA se ouvir algum gerente maluco falando isto, intervenham, será o melhor pra vocês.

Caso vocês queiram conhecer um pouco mais sobre alguns processos de desenvolvimento de Software, sugiro um WebCast do Arquitect Academy que foi organizado pelo meu amigo da Microsoft Alexandre Nardi. Clique aqui para baixar o WebCast.

Um forte abraço.

 Evilázaro Alves

MVP, MCTS, MCBMSS, MCP

clip_image002

Posted: jul 17 2009, 05:50 by Evilazaro | Comentários (3) RSS comment feed |
  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Microsoft Anuncia forma de Cobrança da Plataforma Azure

Olá pessoal,

Agora em minhas palestras, poderei dar a tão esperada resposta aos participantes de como serão “cobrados” os serviços disponibilizados pela plataforma Azure da Microsoft.

Durante uma conferência anual par desenvolvedores que foi realizada nos Estados Unidos nesta terça – feira, a Microsoft anunciou os modelos de cobrança da plataforma Windows Azure que será lançado em Novembro (Ainda bem).

As três formas de cobrança serão:

  • Por consumo
  • Assinatura
  • Volume

Por consumo os clientes acabam pagando pelo que eles realmente utilizam, o que pode ser uma boa forma de cobrança se você possui um tráfego pequeno.

Assinatura, você terá uma taxa fixa que você paga por um determinado período, seja mensal, trimestral, anual enfim, fica a escolha do cliente e por volume, permite que integre o Azure em outros contratos já firmados com a Microsoft.

Abaixo, a imagem do Slide em que sempre me perguntavam como será monetizado o Windows Azure e agora posso dizer que a resposta está neste post.

MonetizacaoAzure

O Azure embora lançado em Novembro, só estará disponível para o Brasil em 2010 então, vamos esperar ansioso :).

Espero que tenham gostado.

Um forte abraço.

Evilázaro Alves

MVP, MCTS, MCBMSS, MCP

clip_image002

Posted: jul 15 2009, 15:28 by Evilazaro | Comentários (0) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Evolução do .NET Framework

Olá Pessoal,

Lembro –me como se fosse hoje em 1999 quando recebi atravéz do portal MSDN Brasil a primeira versão beta do que a Microsoft anunciara como Estratégia .NET. 10 anos se passaram (isto mesmo pessoal, 10 anos) e quando posso analisar a evolução do .NET Framework aidna me espanto com a quantidade de recursos que esta plataforma disponibiliza para seus desenvolvedores. Acredito que a imagem abaixo ilustra bem as versões que o Framework já passou.

E que venha o Visual Studio 2010 e o .NET Framework 4.0.

Um forte abraço a todos.

Evilázaro Alves

Diretor de Tecnologia – Br Soluções Integradas
Microsoft Most Valuable Professional – MVP | WCF
Microsoft Student Partner Mentor
Microsoft Certified Technology Specialist - SQL SERVER | ASP.NET | SP Services
Microsoft Certified Business Management Solutions Specialist - MCBMSS
Microsoft Certified Professional - MCP
WCF Brasil - http://www.wcfbrasil.net

Posted: jul 07 2009, 06:40 by Evilazaro | Comentários (22) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5