… e até agora tudo bem. A melhora na interface e novas funcionalidades estão bem legais. Só não achei que ele está tão rápido assim…
17
2010
Top 10 technologies for tyranny
muito legal o artigo:
http://www.v3.co.uk/v3/news/2256252/top-technologies-tyranny
16
2010
Dynamics CRM 5.0: O que haverá de novo? (Parte 3)
Neste último artigo irei apresentar as melhorias e funcionalidades restantes, além de falar um pouco sobre o que gostaria de ver (e ainda não vi) no Dynamics CRM 5.0:
4- Solutions
Todas as customizações são realizadas a partir de uma Solution. É possível customizar a solução padrão (CRM out of box) ou criar uma própria. Para fazê-lo é preciso criar um publisher. O prefixo das customizações é agora relacionado ao publisher.
As soluções podem ser protegidas, o que significa que edições nas suas customizações não podem ser realizadas. Soluções podem ser construídas a partir de outras, o que cria uma dependência entre elas. O interessante é que o processo de exportação de uma solução extrai apenas o delta (diferença) das customizações. Exemplo: Ao exportar uma solução criada a partir da padrão, você obtem apenas as suas alterações, o que reduz significativamente o tempo do processo.
O que fará parte de uma solução? Basicamente tudo que pode ser customizado no CRM, com exceção do que estiver na pasta ISV.Planeja-se também a construção de soluções prograticamente através do Visual Studio.
Alguns pontos importantes ainda não estão definidos, como por exemplo o nível de proteção no formulário(provavelmente será a nível de aba ou seção) , exibições e entidades, mas a adoção do conceito de soluções vai permitir maior flexibilidade e controle em cenários onde existem várias frentes de desenvolvimento atuando em paralelo.Também possibilitará a o deploy de customizações de maneira mais eficiente.
Existe um planejamento para disponibilizar um controle de versionamento e de atualizações para as soluções, além de mecanismos de propriedade intelectual. Uma possibilidade é permitir que parceiros publiquem suas soluções no Market Place / PinPoint para download e instalação automáticos pelo cliente.
O que ainda pode-se esperar do CRM 5?
A Microsoft trabalha para incluir as seguintes melhorias e/ou funcionalidades no produto até o seu lançamento:
- Múltiplos formulários por entidade, baseado em direito de acesso, status dos registros ou ambos;
- Segurança em nível de atributo;
- Pesquisa Global;
- Melhorias no Outlook Client;
- Melhorias no Modelo da Aplicação (Application Model);
- Suporte ao Windows Communication Foundation (WCF);
- Melhorias no gerenciamento de endereços/
- Maior extensibilidade utilizando client side code (ISV Control);
- Relationship Explorer / Organization Chart.
O que ainda não foi visto (e que gostaríamos de ver) no CRM 5?
- Gerenciamento de Configurações do Usuário: O usuário possuirá muito mais recursos para customizar a aplicação, mas não existe nenhuma ferramenta de gerenciamento centralizado dessas configurações, como por exemplo a criação, manutenção e deploy de um conjunto de preferências, exibições e dados locais que pudessem ser associados à um ou a um grupo de usuários. Em ambientes com muitos usuários, em especial aqueles com Outlook Client for Laptops, isto tem sido uma fonte enorme de problemas e custos tanto para os clientes quanto para os parceiros.
- Workflows: Nada foi falado sobre os workflows, e isto é de se estranhar. Ou a mudança será profunda e está sendo mantida em segredo ou não será mudado nada. Já é um consenso de que o Serviço Assíncrono ficou com atribuições demais na versão 4.0 e que isto atrapalha a escalabilidade da aplicação, já que não é possível por exemplo, alocar multiplas threads ou determinar prioridade para a execução dos serviços considerados assíncronos (workflows, detecção de duplicatas, importação, etc.).E agora com as atividades recorrentes e a integração com o Sharepoint sob a sua guarda, a pergunta é o que podemos esperar? As melhorias disponibilizadas na versão 4.0 fizeram com que todos nós mergulhassemos de cabeça na construção de complexos workflows, e muitos pagaram um preço alto devido aos problemas de desempenho causados. É preciso garantia de escalabilidade e funcionalidade sob pena de o recurso passar a ser desprezado pelos usuários e parceiros, o que seria uma pena.
Segue a minha wishlist para os workflows na versão 5.0:
1- Melhor tratamento de erro: muitas das mensagens de erro não permitem que você descubra a causa do problema. Um log com a descrição do erro na plataforma não seria má idéia;
2- Suporte a transações: o proprietário do workflow poderia informar se no caso de uma falha, ocorreria um rollback das ações;
3- Maior opções de operações aritméticas e de data: cálculo em dias úteis e divisão, dentre outros;
4- Melhorias na ferramenta de criação: possibilidade de mover branches ou de alterar o tipo de condicional (de wait para if, por exemplo)
5- Maior escalabilidade para o Serviço Assíncrono: possibilidade de disponibilizar multiplas threads, definir priopridade de processamento, alocação de memória e de serviço assíncrono (workflows teriam prioridade sobre os outros serviços, por exemplo);
6- Workflow Síncrono: parece bobagem mas pensem em um tipo de workflow que atualize um registro aberto sem ter que realizar reload ou que ainda disponibilizasse registros automaticamente para o usuário. Você também poderia chamá-lo de Script Flow, Script Tool ou qualquer nome legal que encontrasse.
Bom, isto é tudo (ufa!). Assim que novo material surgir ou que a versão CTP seja disponibilizada, irei atualizá-los com as novidades.
Abraços,
16
2010
Dynamics CRM 5.0: O que haverá de novo? (Parte 2)
Continuando com a série de artigos sobre o Dynamics CRM 5.0, Irei apresentar os seguintes conjuntos de melhorias e funcionalidades construídos a partir dos pilares e princípios citados no post anterior:
1- Formulário e Navegação
· Navegação com ribbons (office 2007) com objetivo de ter menos poup ups. A navegação será in page, ou seja, sem poup ups;
· Todo formulário terá um header e um footer que podem ser customizados com atributos da entidade;
· As tabs (abas) foram movidas do formulário para o painel esquerdo (navigation panel);
· As sessões do formulário podem ser colapsadas;
· Main.aspx substitui loader.aspx e o edit.aspx, utilizando os seguintes parâmetros:
– pagetype – specifies form or grid
– id – specifies an entity id
– viewid – specifies a view
– viewtype – specifies type of view (system or user)
– etn – preferred method of specifying an entity
– extraqs – extra query string parameters (URL encoded)
Exemplos:
Criar um novo registro
http://<server name>/<org name>/main.aspx?etn=<entity name>&pagetype=entityrecord
Editar um registro existente
http://<server name>/<org name>/main.aspx? etn=<entity name>&pagetype=entityrecord&id=<object_id>
Acessar uma view de sistema
http://<server name>/<org name>/main.aspx?etn=<entity name>&pagetype=entitylist&viewid=<view_id>&
viewtype=1039
Acessar uma view de usuário
http://<server name>/<org name>/main.aspx?etn=<entity name>&pagetype=entitylist&viewid=<view_id>&
viewtype=4230
O impacto desta mudança é tremendo em cenários de upgrade, onde existem muitos jscripts ou pontos de integração ISV que utilizem as addressable views.
· Será adicionada uma pesquisa global ao sistema;
· Melhorias no formulário:
- Subgrid: escolhe-se a entidade baseada no relacionamento e a view (os quais views) que será utilizada;
- Será possível adicionar atributos a partir do próprio formulário, através de comandos no ribbon;
- Picklists Globais :Um set que pode ser utilizado em diversos picklists;
- Os picklists poderão armazenar múltiplos valores;
- Filtered Lookup: será possível escolher a view que será exibida e por qual atributo serão filtrados os registros, além de passar parâmetros fetchXML, XML e jscript para os lookups;
2- Grids (Exibições)
Runtime Filters: filtros para ordernar ou para pesquisar por algum valor de alguma coluna da view , será um botão no ribbon e alterará em tempo real a exibição. Similar ao auto-filtro do excel
User Select Default View: o usuário pode selecionar uma view padrão para cada entidade
Gráficos dos Dados do Grid
Gráficos Asp.Net for .Net Framework 3.5 que são exibidos para os dados que foram renderizados na última atualização do grid. Ainda é possível realizar drill down dos dados (um novo gráfico é criado).Os gráficos estão relacionados a cada exibição, e novos gráficos podem ser criados/importados através de um wizard. Uma possibilidade que está sendo estudada é habilitar os gráficos como visualização padrão dos dados ao invés da exibição, como dashboards.
3- Integração com Sharepoint
Também chamada de Sharepoint Provisioning. No momento da instalação do CRM será possível definir se haverá um site do Sharepoint para o armazenamento dos documentos, que então serão armazenados no mesmo e disponibilizados no CRM através de Iframes que exibem a páginas do site.
O foco atual é apenas o uso das document libraries do Sharepoint e a navegação foi concebida para ocorrer a partir do CRM e não ao contrário (apesar de ser possível). A estrutura padrão do site criado é por unidades e negócios e times (sim, os documentos por padrão são de propriedade dos times e não de usuários).
Importante ressaltar que a atualização entre as aplicações não é automática: existe um mecanismo de sincronização controlado pelo serviço assíncrono. Se um novo time é criado no CRM, a estrutura para armazenar seus documentos é criada no Sharepoint. Outro ponto importante é que documentos armazenados no Sharepoint não estarão disponíveis offline (e é claro, não teria nenhum sentido). Talvez por isto é que a Microsoft está migrando o Groove Server/Cliente para a plataformar MOSS (ele passará a chamar Sharepoint Workspace): um Sharepoint Workplace Client poderá trabalhar offline com espaços de trabalho do Groove e sites do Sharepoint.
Apesar de ser um recurso muito promissor (e desejado), existem alguns pontos importantes não definidos, como por exemplo qual o tratamento a ser adotado para anotações e mail merge. Existem também alguns limitantes, que irão requerer uma mudança no skill dos desenvolvedores: ações de manipulações dos documentos deverão ser realizadas utilizando o sdk do Sharepoint. Haverá suporte para workflows, mas apenas para ações que não manipularem propriedades dos documentos. Caso contrário deverão ser utilizados workflows do Sharepoint. Mas talvez a maior limitação seja o fato de que o Sharepoint Provisioning só estára disponível para soluções 100% on premise ou partner hosted.
Na 3a e última parte desta série de artigos, continuarei expondo as novas funcionalidades do CRM 5.0
16
2010
Dynamics CRM 5.0: O que haverá de novo?
Princípios
O desenvolvimento da versão 5 do Dynamics CRM foi baseado nos seguintes princípios:
Improve 'time to value': que pode ser traduzido como "otimizar o uso". A aplicação será mais fácil de utilizar e de customizar, além de uma melhoria no que pode ser chamado de "fundação"(CRM basics) do CRM: funcionalidades de segurança e colaboração ,vendas, marketing e serviços.
Bussiness Aplication Plataform: desde a versão 4.0 a Microsoft incita os parceiros a considerar o CRM como plataforma, mas isto só será totalmente verdade com a versão 5.0, que contará com recursos que facilitarão a convivência de diversas soluções em um mesmo ambiente, ou ainda a integração das mesmas com outras aplicações (conceito de solution ecosystem). Essa integração poderá ocorrem em aplicações na intranet ou na internet (cloud services). Uma experiência de desenvolvimento mais rica também será proporcionada.
Pilares
Baseado nos principios acima, a aplicação foi construída a partir dos seguintes pilares, sempre com o foco no aumento da produtividade, tanto do usuário quanto do desenvolvedor:
1- Interface Office (Office Class UX)
O toolbar do CRM irá desaparecer e uma interface no formato ribbon do Office 2007 tomará o lugar. O objetivo é aumentar a produtividade do usuário por que é uma interface familiar e baseada em cliques (não em janelas). Os ribbons podem ser customizados em nível de aplicação, formulários, grids e entidades, através de um arquivo de personalização XML próprio. No caso de uma migração, todas as customizações que estiverem no ISV.Config serão transferidas automaticamente para os ribbons. Isto traz uma outra boa notícia: adeus ISV.config!
2- CRM Basics
· Colaboração: é possível criar bibliotecas de documentos por entidades e armazená-las em um site do Sharepoint (Sharepoint Provisioning);
Mais detalhes a seguir
· Relacionamentos: Connections, que são relacionamento ad hoc do tipo tagging que não alteram o esquema do banco de dados (não criam atributos de relacionamento e não possuem cascading). Uma boa comparação é a melhoria e disponibilidade para todas as entidades do recurso Relacionamento, atualmente disponível apenas para Contas, Contatos e Oportunidades. Uma conexão pode ser aplicada a um ou aos dois registros relacionados.
Uma conexão poderá disparar um plugin e possivelmente um workflow.
· Times: os times passam a ser a principal componente na estrutura de segurança da aplicação: eles podem possuir e compartilhar registros. Podem ser atribuídos security roles aos times.
· Atividades Recorrentes: Uma grande limitação que agora foi resolvida, apesar da imensa complexidade. Isto por que Outlook utiliza um modelo de recorrência chamado Virtual Expansion, em que apenas as configurações são armazenadas (e não os registros em si). Esse modelo não poderia ser utilizado no CRM por que as atividades podem, por exemplo, fazer parte de workfkows e portanto devem existir no banco. Agora imaginem uma recorrência infinita. Deu para entender o tamanho do problema?
Foi então concebido um modelo chamado Partial Expansion, onde o número de instâncias passadas e futuras que serão armazenadas no banco são configuráveis pelo administrador. O Expansion Service será controlado pelo Serviço Assíncrono.
· Filas: as filas passam a ser do tipo User/Team Owned e, portanto sujeitas a estrutura de segurança determinada pelas bussiness units. Segue lista de outras melhorias bem vindas:
- As views podem ser customizadas;
- Os itens das filas podem disparar workflows;
- Foi adicionada uma pesquisa;
- Entidades personalizadas podem ser enviadas para filas;
- Um usuário pode rotear um item diretamente para outra fila;
- Consistência no delete: agora é possível deletar o item da fila e do sistema, além de só removê-lo da fila;
- Como times podem possuir registros, foi adicionado um outro status na fila chamado Working On, para indicar qual membro assumiu a responsabilidade pelo registro.
3- S + S (Software + Service)
· A Microsoft pretende disponibilizar espaço no Solution Finder e PinPoint para que os parceiros possam vender suas soluções online;
· Sandbox: modo isolado e seguro de acesso à plataforma para a execução de código customizado. É um modo opcional de execução dos plugins. Cada organização possuirá um sandbox próprio e um servidor pode ter um papel (role) para atuar dedicado apenas para esta função. As principais vantagens do uso deste recurso são:
o Os plugins poderão ser construídos e implementados em várias instalações sem necessitar de alteração de código, em um modelo de service provider;
o Os plugins são associados a um profile, e assim torna-se possível monitorar violações de restrições de segurança, exceções e consumo de recursos. Os plugins são desabilitados automaticamente pela plataforma quando apresentam erro consistentemente
O uso do sandbox permitirá agrupar os plugins por desenvolvedor ou por solução, e desta forma isolar problemas de desempenho e a ocorrência de falhas.
· Transações em Plugins: Opcionalmente, será possível registrar o plugin para atuar antes e depois da transação, mas haverá commit e rollback apenas de dados que estiverem no CRM. Transações distribuídas não serão permitidas;
· Tracing em Plugins: é possível realizar um rastreamento das ações do plugin, via WebService
· Auditing: é possível habilitar um audit trail por entidade. Provavelmente será obrigatório o uso do SQL 2008, já que este é um recurso nativo do mesmo.
· Outlook Client V4/V5: A Microsoft garantirá que os Outlook Clients versão 4.0 funcionarão mesmo após o upgrade do servidor para a versão 5.0. Não está descartada a construção de uma versão intermediária;
· Melhorias no Desempenho: remoção do deletion state code, otimizações em querys e em workfows;
· Novos recursos de desenvolvimento: bibliotecas de jscript (armazenamento centralizado), uso de código Silverlight, Child Pipeline CreateCrmService, Nested Pipelines e Custom Web Service Proxies;
· Endpoint Consolitation: CrmService e MetadataService serão consolidados em um único WebService;
· Solution Management: Solution é um conjunto de componentes que são criados, empacotados e gerenciados como um único software. Customizações de entidades, workflows, relatórios e plugins podem fazer parte de uma solution.
Vantagens
o Proteger propriedade intelectual no desenvolvimento;
o Agilizar o desenvolvimento e entrega;
o Facilitar o gerenciamento;
o Permitir a coexistência entre diversas fases de projeto ou entre projetos diferentes.
No próximo artigo desta série, irei apresentar as principais novas funcionalidades do CRM 5.0
01
2010
Novos Posts em Breve e Feliz 2010 para Todos!
Novos posts em breve…. prometo! Tenho gasto muito tempo elaborando treinamentos e estudando o material disponível da versão 5.0 do CRM.
Enquanto os novos posts não chegam, um bom 2010 para todos!
abcs,