Aproveitando a experiência adquirida no projecto que tenho estado a desenvolver e numa formação, gostaria de falar um pouco sobre o Microsoft Commerce Server 2007 (CS). Um pouco em jeito de apresentação, trata-se de uma ferramenta para construir um negócio on-line e poderá ser uma solução a levar em conta ao avaliar os pedidos dos nossos clientes.
O CS disponibiliza uma boa base para criarmos o nosso código através de uma vasta API, mas destaca-se no aspecto de colocar nas mãos do cliente a gestão de produtos, encomendas, inventário, perfis de utilizadores e campanhas de marketing no site.
A instalação do CS inclui 4 aplicações de backoffice para gestão das várias componentes do negócio: Catalog Manager, Catalog and Inventory Schema Manager, Customer and Orders Manager e Marketing Manager.
Catálogo
O cliente pode criar e manter o seu catálogo de produtos. O catálogo é constituído por categorias de produtos e produtos. As categorias e produtos têm as suas propriedades base (nome, descrição, preço, etc), mas facilmente podem ser acrescentadas novas propriedades do tipo texto, númerico, opcional, etc. Por exemplo, criar um campo para as várias cores disponíveis de um produto. Também é possível relacionar categorias ou produtos entre si, facilitando a implementação daquilo que se vê em sites de vendas em que podemos ver os produtos parecidos ou do mesmo tipo do produto que estamos a ver. O catálogo facilita o uso de diferentes línguas e moedas.
Perfis
Podemos criar perfis de utilizadores e tornar a experiência de navegação mais personalizada. Com base no padrão de navegação e de cliques, poderá ser dirigida a atenção do user para uma campanha promocional ou fazer aparecer um determinado banner. Por exemplo, se o user é do sexo masculino então poderá aplicar-se um desconto nos casacos para homens.
Inventário
Permite gerir os stocks dos produtos, estabelecer quantidades disponíveis, pesquisar os itens esgotados, definir se um produto pode ser reservado, para dar alguns exemplos.
Marketing
Permite criar banners, campanhas e descontos. Por exemplo, definir em que situações um banner deverá aparecer quer seja com base no horário, perfil ou categorias de produtos. Ou então criar códigos de desconto para ser aplicado na compra de um produto ou aplicado ao total de uma compra. O código poderá ter algumas regras como um tempo de expiração ao fim do qual deixará de ter validade. O CS dispõe também de um Direct Mailer para envio de mails para campanhas publicitárias aos clientes registados da loja.
Encomendas
Esta componente faz a gestão dos vários carrinhos de compras, os que foram criados, abandonados ou que se traduziram em compras feitas. O CS está preparado para disponibilizar vários tipos de pagamento e apresenta algumas soluções de segurança para gerir números de cartões de crédito. Apresenta também soluções para vários cenários. Por exemplo, numa loja um cliente adiciona ao seu basket canetas e papel. Quando faz checkout, internamente é criado um novo basket com o pedido de papel para ser processado por uma outra loja que vende o papel. Também são usados pipelines, que são uma espécie de filtragem de produtos, ao qual é possível introduzirmos algumas regras. Por exemplo, podemos através dos pipelines prevenir que o user adicione mais que 10 produtos só de uma vez. Essa limitação é imediatamente aplicada ao site sem qualquer alteração ao code-behind da página.
No projecto em que estive a trabalhar não foi possível explorar todas as capacidades do CS, nem parece razoável que uma só aplicação venha a usar todas elas. Mas é bastante abrangente para poder apresentar várias soluções no âmbito do comércio on-line. Mesmo no caso de tratar-se de um pequeno negócio o CS poderá ser uma ajuda no seu crescimento.
A instalação do CS é bastante morosa pois implica a criação de vários web services, cada um para as várias componentes. Além disso, por motivos de segurança a Microsoft recomenda a criação de um user diferente para cada ws. Acrescentado a isso, temos de criar as permissões desses users em vários ficheiros, pastas e base de dados. Para integrar com o Sharepoint são precisas mais algumas configurações.
Estão disponíveis as seguintes edições: Standard, Enterprise e Developer. A diferença está no número de sites e servidores que são suportados.
Alguns sites que usam o CS2007:
http://www.nike.com
www.roxy-europe.com
http://www.booksdirect.co.uk
http://www.quiksilver-store.com/
www.harrods.com
sexta-feira, 20 de março de 2009
quinta-feira, 29 de janeiro de 2009
Ergonomia
Criar um site para a Web ou desenvolver qualquer outro tipo de aplicação envolve, acima de tudo, uma boa organização dentro da equipa de concepção. Este conceito aplica-se de duas formas: do programador para o utilizador e do programador para a sua equipa.
Como utilizadores regulares da Internet, todos sabemos como é fácil existir redundância de informação, pouca clareza na navegação, longos tempos de espera, inconsistência do ponto de vista gráfico, entre outras contrariedades que, com o pouco tempo do dia-a-dia, nos faz fechar a janela e procurar outra alternativa, tendo em conta que existem actualmente mais de mil milhões de páginas na internet.
Visto isto, é essencial tirar partido do nosso próprio usufruto da Web e pensar no utilizador final e na forma como este vai interagir com o produto. Há que ter em consideração:
• Usabilidade – A utilização da aplicação deve ser o mais amigável possível de forma a entender-se rapidamente como usá-la.
• Navegabilidade – A partir de uma boa estrutura hierárquica da aplicação deve pensar-se na navegação na tentativa de ser lógica, intuitiva, clara e não redundante.
• Simplicidade – Manter a aplicação simples. Demasiada informação ou informação repetida torna-se inconsistente para o utilizador e desvia a sua atenção do que é essencial reter.
• Consistência – Criar uma aparência consistente, sem utilizar muitos tipos de fontes, muitas cores que não se conjuguem nem se relacionem com a informação a ser passada.
Como programadores, acontece regularmente haver a necessidade de se modificar linhas de código realizadas por outro programador. Quando estamos a falar em grandes projectos, é fácil perdermo-nos naquela que será a organização de outra pessoa.
Como tal, o ideal é estandardizar o mais possível o desenvolvimento de um projecto elaborado em equipa. Para isso é essencial ter em conta algumas situações:
• Nomenclatura – É conveniente ter alguma atenção aos nomes de variáveis, métodos, classes, funções, etc. Devem ser coerentes e facilmente identificáveis com a informação que disponibilizam. É também importante que a escrita seja igual em toda a aplicação, como por exemplo utilizar só letras minúsculas ou o identificador de um controlo começar pelo diminutivo do tipo de controlo (Ex: btnClicar, em que o controlo é um botão)
• Formatação – Para uma mais fácil formatação de tabelas ou controlos utilizam-se folhas de estilo em cascata, CSS. Estas permitem controlar tamanhos, espaçamentos, cores entre outras propriedades. A utilização de CSS leva a uma diminuição de propriedades atribuídas directamente aos controlos e abre a possibilidade da reutilização do mesmo estilo em todo o site tornando-o assim mais consistente.
• Comentário – Nas situações de menor evidência do resultado de uma parte do código é fundamental colocar comentários que permitam uma maior clareza do funcionamento do mesmo.
• Funcionalidade – Para existir funcionalidade é indispensável reduzir a redundância. Se um excerto de código vai ser reutilizado mais vezes ao longo do projecto então será mais fácil desenvolver um método ou uma função que depois seja chamada ao longo do projecto ao invés de repetir as mesmas instruções várias vezes.
Nem sempre se consegue cumprir todas estas regras, e tantas outras, à risca. Mas se no desenvolvimento de software tivermos em conta que também poderemos ser nós utilizadores da aplicação ou programadores da equipa que está sujeita a proceder a alterações no projecto torna-se mais fácil entender o quão essencial é cumpri-las.
Como utilizadores regulares da Internet, todos sabemos como é fácil existir redundância de informação, pouca clareza na navegação, longos tempos de espera, inconsistência do ponto de vista gráfico, entre outras contrariedades que, com o pouco tempo do dia-a-dia, nos faz fechar a janela e procurar outra alternativa, tendo em conta que existem actualmente mais de mil milhões de páginas na internet.
Visto isto, é essencial tirar partido do nosso próprio usufruto da Web e pensar no utilizador final e na forma como este vai interagir com o produto. Há que ter em consideração:
• Usabilidade – A utilização da aplicação deve ser o mais amigável possível de forma a entender-se rapidamente como usá-la.
• Navegabilidade – A partir de uma boa estrutura hierárquica da aplicação deve pensar-se na navegação na tentativa de ser lógica, intuitiva, clara e não redundante.
• Simplicidade – Manter a aplicação simples. Demasiada informação ou informação repetida torna-se inconsistente para o utilizador e desvia a sua atenção do que é essencial reter.
• Consistência – Criar uma aparência consistente, sem utilizar muitos tipos de fontes, muitas cores que não se conjuguem nem se relacionem com a informação a ser passada.
Como programadores, acontece regularmente haver a necessidade de se modificar linhas de código realizadas por outro programador. Quando estamos a falar em grandes projectos, é fácil perdermo-nos naquela que será a organização de outra pessoa.
Como tal, o ideal é estandardizar o mais possível o desenvolvimento de um projecto elaborado em equipa. Para isso é essencial ter em conta algumas situações:
• Nomenclatura – É conveniente ter alguma atenção aos nomes de variáveis, métodos, classes, funções, etc. Devem ser coerentes e facilmente identificáveis com a informação que disponibilizam. É também importante que a escrita seja igual em toda a aplicação, como por exemplo utilizar só letras minúsculas ou o identificador de um controlo começar pelo diminutivo do tipo de controlo (Ex: btnClicar, em que o controlo é um botão)
• Formatação – Para uma mais fácil formatação de tabelas ou controlos utilizam-se folhas de estilo em cascata, CSS. Estas permitem controlar tamanhos, espaçamentos, cores entre outras propriedades. A utilização de CSS leva a uma diminuição de propriedades atribuídas directamente aos controlos e abre a possibilidade da reutilização do mesmo estilo em todo o site tornando-o assim mais consistente.
• Comentário – Nas situações de menor evidência do resultado de uma parte do código é fundamental colocar comentários que permitam uma maior clareza do funcionamento do mesmo.
• Funcionalidade – Para existir funcionalidade é indispensável reduzir a redundância. Se um excerto de código vai ser reutilizado mais vezes ao longo do projecto então será mais fácil desenvolver um método ou uma função que depois seja chamada ao longo do projecto ao invés de repetir as mesmas instruções várias vezes.
Nem sempre se consegue cumprir todas estas regras, e tantas outras, à risca. Mas se no desenvolvimento de software tivermos em conta que também poderemos ser nós utilizadores da aplicação ou programadores da equipa que está sujeita a proceder a alterações no projecto torna-se mais fácil entender o quão essencial é cumpri-las.
Subscrever:
Mensagens (Atom)