CI1163 – Design de software
CI0163 – Projeto de Software

Segundo Semestre de 2019

Página com informações gerais da disciplina: ementa, datas das provas, bibliografia, exercícios, etc.

Avisos

====================

====================

 

Material de aula

Organização do conteúdo detalhada, por tópico e com bibliografia

Material complementar

Abaixo há uma lista de bom material complementar que pode ser usado como suporte para a disciplina, além da bibliografia.

Criação de modelos e metamodelos para um projeto de software

Criação de diagramas de sequência usando os plug-ins Papyrus (Eclipse)

  • Executar o Eclipse a partir do seu home: /home/soft/linux/eclipsemodeling/eclipse/eclipse -vm /usr/lib/jvm/java-8-oracle/bin/
  • Criar um novo “Papyrus Project” , escolher um nome para o projeto, e selecionar “Sequence Diagrams”. A paleta de elementos possíveis encontra-se à direita do editor
    • A partir desse ponto a criação de diagramas pode iniciar.
  • Outros diagramas UML também podem ser criados usando este editor. Selecionar: Novo -> “Papyrus Model”: estará disponível para seleção todos os modelos suportados.

Executando o Loopback (3 e 4) nos servidores do Departamento 

  • Baixar o NodeJs versão 8.9 ou superior: https://nodejs.org/download/release/v8.9.2/  Escolher o arquivo node-v8.9.2-linux-x64.tar.gz
    • curl https://nodejs.org/download/release/v8.9.2/node-v8.9.2-linux-x64.tar.gz -o node.tar.gz
    • tar -zxvf node.tar.gz
  • O diretório de execução dos 2 próximos comandos será o <dir_descompactado>/bin. O diretório de execução pode ser outro, desde que os binários do node estejam no PATH
    • cd node-v8.9.2-linux-x64/bin 
    • export PATH=${PATH}:${PWD}
    • ./npm init
    • ./npm i loopback-cli –> para instalar o Loopback 3, ou ./npm i @loopback/cli, para Loopback 4
    • export PATH=${PATH}:${PWD}/node_modules/.bin/
  • Executar “lb”, e escolher um nome de projeto
    • Escolher o exemplo “hellor world”, ou seguir as instruções do “Getting Started” para uma aplicação mais completa
    • Executar o “npm start” dentro do diretório do projeto criado pelo lb
  • Para executar as opções do LB, verificar a documentação do Loopback
  • Problemas comuns
    • Estouro de quota: excluir arquivos
    • Node já instalado com outra versão: excluir diretório HOME/.npm
    • Caso não encontre o db.datasource.json ao executar:
      • Copiar o arquivo de src/datasources/db.datasources.json para dist/datasources/.
  • Exemplo de diagrama para ser implementado: Diagrama do ensalamento

Horário

  • Quartas: 15:30h – ct03
  • Sextas: 15:30h – ct03

Ensalamento

http://ensalamento.c3sl.ufpr.br/?tipo=nd&disciplina=ci163

Datas

 

Avaliação

  • Duas provas e 2 trabalhos (ver datas acima).
  • Cálculo da Média Parcial: T1*0.20+  P1*0.30 +T2*0,30+ P2*0.20
  • Cálculo da média final:
    • igual à média parcial, se esta é igual ou superior a 7.0 ou inferior a 4.0,
    • média aritmética entre a média parcial e a nota no exame final, caso contrário.
    • Será aprovado o aluno que apresentar freqüência mínima igual ou superior a 75% das aulas e obtiver média final igual ou superior a 5.0.

Bibliografia

  • Model-Driven Software Engineering in Practice by Marco Brambilla, Jordi Cabot, Manuel Wimmer Morgan & Claypool, 2012, 182 pages
  • Larman, C. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design Prentice-Hall, New Jersey – USA, 1997
  • Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Ed. Campus – Elsevier, Rio de Janeiro, 2007
  • Pressman, R.B. Engenharia de Software: Uma Abordagem Profissional Bookman McGraw-Hill, Sexta Edição, 2011, Porto Alegre, RS
  • Booch, G.; Rumbaugh, J. and Jacobson, I., The Unified Modeling Language User Guide. Addison-Wesley, 1999
  • Garlan, D., Software Architecture: a Roadmap. Carnegie Mellon University, 2000. CMU-CS-94-166
  • Wazlawick, R.S. Engenharia de Software: Conceitos e Práticas Elsevier, Rio de Janeiro, RJ, 2013
  • Sommerville, I., Software Engineering. Addison-Wesley, 1996
  • Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides. Padrões de Projeto: Soluções Reutilizáveis de Software Orientado a objetos. Bookman
  • (o mesmo livro acima em inglês) Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides. Elements of Reusable Object-Oriented Software. Addison-Wesley Professional;