Sistema de Gerenciamento de Compras Online

Olá pessoal,

Gostaria de uma pequena ajuda de vocês sobre como eu devo começar a desenvolver este projeto.

Preciso fazer um sistema de compras online, praticamente um site ecommerce com carrinho de compras e talz.
Mas também preciso fazer um sistema desktop para matriz e filiais.

Só gostaria de saber como devo começar… estou completamente perdido pois nunca fiz algo do tipo.
Sei que preciso trabalhar com webservice.
Só gostaria se alguém poderia me dar um rumo a seguir, o que devo começar a implementar primeiro e tudo mais.

Alguns requisitos obrigatórios que esse sistema deve possuir:

- diversos clientes e, consequentemente, multi-usuário
- operações básicas de manutenção de perfil via aplicação browser
    - manutenção de dados de cadastro de cliente
    - manutenção de dados de cadastro da endereços (endereço próprio, endereço de um amigo, no caso de um presente)
    - manutenção de dados de cadastro de lista de desejos (produtos em vista, ainda não adquiridos), apenas quando estiver identificado no sistema (logado?).
    - realização da compra (carrinho de compras, confirmação de produtos e quantidades, pagamento), apenas quando estiver identificado no sistema (logado?).
    - acompanhamento de pedidos (status, pagamento, prazo de entrega, etc.)
    - busca e visualização completa de produtos (informação pública).
    - busca de produtos e possibilidade de adicionar ao carrinho de compras, ou à lista de desejos.

- operações básicas da aplicação Desktop para as filiais
    - realização de vendas de balcão
    - emissão de relatório de fechamento de vendas diárias
    - manutenção de informações de estoque (quantidade de produtos disponíveis, recebimento de produtos).
    - consulta e processamento de pedidos online, recebidos da matriz

- operações de controle do sistema via aplicação Desktop para a matriz
    - manutenção de departamentos
    - manutenção inicial de dados do produto (dados, especificações, preço de venda, etc.)
    - relatório de quantidade de produtos disponíveis em cada filial
    - encaminhamento de pedidos online para a filial efetuar a entrega

- Segurança (requisito opcional)
    - para auditoria, é necessário registrar todas as operações de uso do sistema

- plataforma JavaEE
    - JSP/servlet/JSF
    - EJBs
    - JPA/Hibernate

- plataforma Desktop
    - JFC/Swing
    - EJBs

Obrigado!!!