Labs SEI >

Respostas a perguntas sobre o projecto


Respostas sobre a Entrega Final do Projecto

  1. Como será a avaliação final do projecto?

    A avaliação final do projecto será realizada num horário a marcar, nas duas semanas seguintes à entrega final do projecto.

    Cada grupo deverá preparar uma breve apresentação do trabalho em que se demonstra o funcionamento: do processo de encomenda, do processo de entrega e das extensões desenvolvidas.

    Compete aos alunos valorizar o seu trabalho, sublinhando os pontos fortes da solução desenvolvida.

    Seguir-se-á uma breve discussão onde cada aluno deverá ser capaz de responder a questões sobre o trabalho e de defender as opções técnicas que foram tomadas.



Respostas sobre a 3ª Entrega do Projecto

  1. É obrigatório usar o SVN?

    Não, o uso do SVN é opcional. Trata-se de um recurso à disposição dos alunos que permite uma melhor gestão do código fonte do projecto.

    Consultar a página sobre o SVN.


  2. É necessário concluir o que não foi feito na segunda entrega?

    Sim, mas apenas na quarta entrega (final). Para a terceira entrega devem implementar o processo de entregas e apresentar as propostas de extensões.

    Mais uma vez devem usar adaptadores, composições BPEL (quando necessário) e ter o processo BPM principal (que seja entendível pelas pessoas do negócio).


  3. É necessário entregar o plano de projecto mais uma vez?

    Sim, o plano de projecto deverá ser actualizado e entregue novamente. Desta vez, devem acrescentar os detalhes relacionados com a implementação do processo de entregas: serviços usados, entidades informacionais e tecnologia utilizada.

    Devem também incluir as propostas de extensão, indicando qual a opção (ver lista do enunciado) e justificar sucintamente. No caso da proposta "à escolha" do grupo, deverão indicar qual o resultado esperado e fornecer os detalhes técnicos recolhidos preliminarmente para mostrar como pretendem fazer a integração.


  4. Quantas propostas de extensões devemos entregar?

    Devem apresentar duas propostas para implementar na quarta entrega (final). Uma das propostas pode ser livre, a outra deve ser escolhida a partir da listagem apresentada no enunciado. Em todos os casos, as extensões propostas terão que ser discutidas antes de serem oficialmente aceites na aula de 28 e 29 de Abril.


  5. Qual é o formato da fatura eletrónica?

    A fatura eletrónica deve ser produzida no formato UBL, de acordo com a adaptação realizada pela Saphety.

    Para mais informação, consultar a página dos anexos ao projecto.


  6. Qual é o formato do Advanced Shipping Notice?

    O ASN deve ser em formato a definir pelo grupo. Como referência sobre qual o conteúdo normal num ASN, devem consultar o formato EDI descrito pela GS1 UK.

    Para mais informação, consultar a página dos anexos ao projecto.


  7. É necessário integrar com um serviço de mapas?

    Sim, é esperado que exista uma integração simples com um serviço de mapas para fornecer informação sobre o itinerário das entregas.

    Uma integração mais avançada poderá ser uma das extensões a propor.

    Para mais informação, consultar a página dos anexos ao projecto.


  8. É necessário implementar interacções humanas?

    Não, as interacções humanas poderão ser uma das extensões a propor para a quarta entrega (final).


  9. É necessário implementar regras de negócio?

    Não, as regras de negócio poderão ser uma das extensões a propor para a quarta entrega (final).



Respostas sobre a 2ª Entrega do Projecto

  1. É necessário entregar novamente o plano de projecto?

    Sim, o plano de projecto deverá ser actualizado e entregue novamente. Para o processo das encomendas, deverão acrescentar: serviços usados, entidades informacionais e tecnologia utilizada em cada um.

    Os serviços deverão ser apresentados como uma árvore, onde as folhas (nós sem descencentes) são serviços básicos, e os nós são serviços compostos. Deverão ainda assinalar os serviços externos à empresa.

    As entidades informacionais correspondem aos esquemas de dados. Por exemplo, para a entidade Cliente, deverão indicar em que tabelas e ficheiros são guardados os dados (ou parte deles). Não é necessário o detalhe de todos os atributos, apenas os considerados mais relevantes.


  2. É necessário implementar serviços?

    Sim, deverão implementar os serviços SOA (Web Services) que forem necessários para algumas das actividades do processo de encomenda.

    Para desenvolver novos serviços básicos deverão usar Java (JAX-WS).
    Para compor serviços a partir de adaptadores da Oracle (File, DB, etc) deverão usar BPEL.
    Sempre que possível deverão optar pela via de usar adaptadores já existentes no Oracle BPM SOA.


  3. O que é necessário guardar na base de dados?

    Toda a informação relevante para o negócio deverá ser guardada na base de dados, nomeadamente, os dados dos produtos, os dados do cliente e os dados das encomendas.

    Compete a cada grupo decidir que mais dados guardar, tendo em vista as funcionalidades futuras.


  4. Como obter dados dos produtos?

    Não é necessário ainda contactar um serviço externo, como a Amazon ou outro catálogo.

    Podem definir os próprios dados de teste.

    Como exemplo, podem consultar uma base de dados de demonstração, como a Southwind, variante da Northwind que é uma base de dados de teste bastante completa usada em produtos Microsoft.


  5. Como preencher os dados dos produtos na BD?

    A base de dados pode ser preenchida por um script SQL para testes preliminares.

    Para a implementação, deverá ser criado um processo BPEL que recebe um ficheiro com dados de produtos e os actualiza/insere na BD. Este BPEL deve executar-se quando um ficheiro de dados é colocado numa directoria monitorizada.


  6. Quais os formatos das encomendas?

    Nesta entrega deverão considerar o formato CSV (Comma Separated Values - valores separados por vírgulas) e XML, ambos definidos por cada grupo.

    Não necessitam considerar EDI.


  7. Quais os meios de recepção de encomendas?

    Nesta entrega deverão considerar as encomendas recebidas por transferência de ficheiro (colocação de ficheiro numa pasta ou transferência FTP) e por invocação de serviço (Web Service).

    Não necessitam considerar recepção por email.


  8. É necessário desenvolver a validação de morada através dos CTT?

    Sim. Dado que a generalidade dos grupos modelou a validação de morada como um serviço, usado uma ou mais vezes (na encomenda e/ou nas entregas), é pedido a todos os grupos que desenvolvam já nesta entrega do projecto um adaptador para validar a morada junto dos CTT.

    Poderão optar por uma implementação simples que retorna uma indicação se a morada existe ou não, deixando validações detalhadas para mais tarde.

    Pede-se aos grupos que depois demonstrem uma invocação do serviço de validação de morada, seja a partir de um BPM, seja a partir de um BPEL.


  9. Como vai ser avaliada a segunda entrega?

    Os alunos devem comparecer no turno de laboratório onde estão inscritos e apresentar o seu projecto a funcionar no seu computador pessoal ou num dos computadores do laboratório.

    Alguns dos itens relevantes a mostrar são o funcionamento do processo de encomenda, os ficheiros de dados recebidos, o conteúdo da base de dados, e a invocação ao serviço dos CTT.



Respostas sobre a 1ª Entrega do Projecto

  1. É obrigatório usar a ferramenta da Oracle para modelar os processos em BPMN?

    Não é obrigatório, mas é recomendado.



Respostas sobre o Oracle BPM SOA

  1. Como resolver o unexpected error do JDeveloper?

    Deverão limpar os ficheiros temporários da ferramenta:

    cd /home/oracle/.jdeveloper/system...
    
    rm -rf *
    
    Mais informação. Agradecimentos ao aluno Manuel Reis.


  2. Como testar serviços?

    Primeiro, fazer deploy no servidor aplicacional.

    Depois, aceder ao EM (Enterprise Manager), e seleccionar o componente e escolher o separador Test, preencher argumentos e carregar no botão Test Web Service.

    Depois é possível consultar todos os passos da execução do processo, seleccionando a instância desejada (normalmente a mais recente).


  3. Como resolver o erro Could not create the TopLink session?

    O TopLink é uma biblioteca da Oracle que faz o mapeamento de dados relacionais (e de outros modelos) para objectos Java. É utilizado pelo adaptador de dados (DbAdapter) do Oracle BPM SOA. Quando surgem erros no acesso à base de dados, tipicamente é esta a primeira linha do erro. Por exemplo:

    Could not create the TopLink session.
    This session is used to connect the datastore.
    Caused by javax.resource.spi.InvalidPropertyException: Missing Property Exception.
    [ConnectionFactory> xADataSourceName or dataSourceName]
    
    Neste caso, o erro aparenta ser a falta de definição da propriedade xaDataSource. Para corrigir, é necessário ir à configuração do DbAdapter e definir a propriedade. Depois de acrescentar o valor deve-se carregar em enter, pois sem este último, o botão save não guarda a definição. Para confirmar, voltar ao ecrã e verificar que o valor ficou definido.



© Docentes de Sistemas Empresariais Integrados, Dep. Eng. Informática, Técnico Lisboa
Última actualização em 5 de Maio de 2014 por Miguel Pardal