Decisão #1 Decisão-chaveUtilização de C para desenvolvimento do MCTCore. Drivers RNF: O MCTCore deve ser escrito em C. RNF: O MCTAlarms deve exibir os.

Slides:



Advertisements
Apresentações semelhantes
JBanana.
Advertisements

Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Engenharia de Software
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Bruno Rafael de Oliveira Rodrigues
CAPÍTULO Sistemas de supervisão 2. Sistema SCADA
Sistemas Operacionais
WAMP5 2.0 "Um pacotão completo e gratuito que inclui Apache, PHP5, MySQL database, PHPmyadmin e SQLitemanager!" O WAMP5 (que significa Windows, Apache,
GERENCIAMENTO DE REDES
Introdução a JDBC Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
Requisitos Funcionais e Não-Funcionais/ Documento de Requisitos
Sistema de Gestão de Manutenção
ENTERPRISE RESOURSE PLANNING
Sistemas Distribuídos
REDES DE COMPUTADORES II
DOCUMENTO CONFIDENCIAL DA MICROSOFT Set 2009 | Página 1 | Apresentação para BDMs.
Sistemas Operacionais
Modelo de referência OSI
GPRS leandro P.Santos.
Fundamentos de Engenharia de SW
Luiz Augusto da Silva Alves Professo Luís Henrique Maciel Kosmalski Costa Professor Otto Carlos Muniz Bandeira Duarte Redes 2 Novembro 2010.
Redundant Array of Independent Drives Raid
Google wave José Dihego Rafael Carício Rafael Bernardo
Sistemas Distribuídos
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Web Services Uninorte Semana de Tecnologia da Informação
Google wave José Dihego Rafael Carício Rafael Bernardo
Design Patterns / Acesso ao banco de dados (java.sql)
A autoria - II.
Programação de SCRIPTS
Arquitetura Cliente /Servidor
Redes de Computadores Aula Inaugural.
Conceitos de J2EE para a WEB
Otimizando sua TI, maximizando seus negócios
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05.
Professor: Márcio Amador
Arquitetura de Desenvolvimento Web MVC vs. Three Tiers
SISTEMAS OPERACIONAIS I
Tecgraf PUC-Rio Setembro de 2013 Introdução ao Openbus.
Engenharia de Software
Sistemas Operacionais
Apache Autenticação por usuário e senha. Introdução O princípio da autenticação é simples. O cliente envia o seu login e sua senha para o servidor Apache.
Padrões de Interação com o Usuário
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
Decisão #1 Decisão-chaveUtilização de C para desenvolvimento do MCTCore. DriversRNF: O código deve ser escrito na linguagem C. Descrição O sistema legado.
Google Wave (Arquitetura) Ademir Junior / Felipe Ferreira / Fernando Kakimoto.
Apresentação Fábrica IESolutions
Aguilar Figueira Dias Orientador Prof. Dr. João Bosco da Mota Alves
PCS - Departamento de Engenharia de Computação e Sistemas Digitais Projeto de Formatura – Turmas 2008 Integrantes: Professor Orientador: Co-orientadores:
Google Web Toolkit Milton Bittencout Augusto Verzbickas João Paulo Maiamaral Bruno Eduardo.
Capítulo 6: SAD – Arquitetura e aspectos de rede e segurança
AJAX Alunos: Heloísa de Souza Glória Laís de Oliveira Souza
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Servidores.
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Tecgraf PUC-Rio maio de 2011 Introdução ao Openbus.
Simple Network Management Protocol
Versão 1 - julho/2013 Tecgraf PUC-Rio Novembro de 2013 Introdução ao OpenBus.
Por que Redes? Estamos cercados por redes: supermercados, lojas, bancos, cinemas, farmácias e inúmeros outros lugares; Com a queda do custo de implementação.
PSW1 Prof. Rafael. Persistência Atividade que permite que o estado de um objeto exista mesmo após a extinção do processo computacional que o criou. Em.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Aula: Arquiteturas de redes: modelo de referência OSI 04/12/2010.
Segurança em Comércio Eletrônico Comércio tradicional realizado de maneira centralizada cercado de restrições legais Comércio eletrônico realização de.
Aplicativos para Web MVC Prof. Odair Indena Jr.
ALUNO: RONI FABIO BANASZEWSKI Model-View-Controller.
Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia em Redes de Computadores Projeto Integrador I Seminário Final Funcionalidades da.
Persistência de dados e padrão DAO
Persistência de dados e padrão DAO Padrões de Projeto Orientado a Objetos Profa. Danielle Martin/Mauricio Universidade de Mogi das Cruzes.
Capítulo 4 Estrutura do Sistema Operacional
Superintendencia Nacional de Administración Tributaria – SUNAT Lima – Perú, 19 de julio/2011. Modelo Brasil – NF-e Soluciones para pequeños contribuyentes.
Síntese do Negócio ONTOWEB. Ontoweb – Nova Geração de Ferramenta de Busca Possui comportamento inteligente que auxilia o usuário a organizar e compartilhar.
Transcrição da apresentação:

Decisão #1 Decisão-chaveUtilização de C para desenvolvimento do MCTCore. Drivers RNF: O MCTCore deve ser escrito em C. RNF: O MCTAlarms deve exibir os eventos detectados em cerca de 3 segundos depois da detecção. Descrição Existe um código legado a ser usado para comunicação com o sistema SCADA, que é escrito em C. C é uma linguagem imperativa de ótimo desempenho para aplicações em tempo real, e assim terá maior facilidade para obedecer aos requisitos de tempo de resposta do MCT (detecção rápida para transmitir via broadcast às maquinas que possuem o Alarms). VantagensAlto desempenho. DesvantagensDificuldade no tratamento de erros. Observações A linguagem não é tão familiar para os membros do time. Ainda precisa ser estudada com mais detalhes. StakeholdersDesenvolvedores; Testadores; Gerente.

Decisão #2 Decisão-chave Utilização de Java para desenvolvimento da lógica de negócio do MCTAlarms e MCT Viewer. Drivers- Descrição Java é uma linguagem orientada a objetos de alto nível. Desenvolvimento de sistemas nessa linguagem é muito facilitado pelo alto nível de abstração. Roda sobre uma máquina virtual, logo portabilidade é um ganho. VantagensPortabilidade devido à máquina virtual. Desvantagens Desempenho comprometido por conta da máquina virtual. Observações Java é utilizada para implementação da lógica de negócio. A interface gráfica propriamente dita será implementada em GWT/GXT no Viewer, e Swing no Alarms. StakeholdersDesenvolvedores; Testadores; Gerente.

Decisão #3 Decisão-chave Utilização de GWT (Google Web Toolkit) e GXT (Extended GWT) para desenvolvimento da interface gráfica do MCTViewer. Drivers RNF: O MCTViewer deve ser Web, possibilitando interface com o usuário através do browser. RNF: As telas do MCTViewer não devem sofrer refresh. Descrição ComGWT, eliminam-se os riscos sobre o desenvolvimento de boas interfaces web, pois o código é desenvolvido em Java e traduzido pelo GWT para Javascript otimizado e compatível com diversos navegadores. Além disso, a base da comunicação com o servidor no GWT é totalmente assíncrona, eliminando o refresh das páginas. Vantagens Portabilidade – código gerado possui compatibilidade com os browsers mais utilizados; Comunicação assíncrona (AJAX - Asynchronous Javascript and XML). Desvantagens Alguns membros da equipe não são familiares ao framework, gerando um tempo de aprendizado maior. Observações O GXT é uma biblioteca Java para utilização de widgets ricos no GWT. StakeholdersDesenvolvedores; Testadores; Gerente; Operadores.

Decisão #4 Decisão-chaveUtilização de criptografia MD5 para senhas. Drivers RF: Acesso ao sistema através de login e senha. RNF: As senhas dos usuários devem ser criptografadas. Descrição As senhas dos usuários armazenadas no banco de dados devem ser criptografadas usando a técnica MD5 para maior segurança no acesso aos dados. VantagensMétodo de criptografia seguro. Desvantagens- Observações- StakeholdersDesenvolvedores; Testadores; Gerente; Operadores.

Decisão #5 Decisão-chaveUtilização de SGBD MySQL. Drivers RNF: O banco de dados onde serão armazenados os dados obtidos do sistema SCADA deve ser gratuito. Descrição O SGBD MySQL é o maior e mais conhecido banco de dados open source do mercado. A comunidade é bastante ativa e seu uso é amplo em grandes projetos. Vantagens SGBD open source com comunidade ativa; Fácil configuração e manutenção. Desvantagens- Observações- StakeholdersDesenvolvedores; Testadores; Gerente; DBA.

Decisão #6 Decisão-chave Utilização de servidor Apache Tomcat como servidor Web. Drivers RNF: A interface do MCTViewer deve ser web. RNF: O servidor utilizado no MCTViewer deve ser gratuito. RNF: O MCTViewer deve suportar uma carga de 10 usuarios simultaneamente usando o sistema. Descrição O Apache Tomcat é um dos servidores web mais utilizados no mundo. Sua confiabilidade é reconhecida mundialmente. O volume de usuários médio necessário ao sistema é satisfeito pelo servidor escolhido. Vantagens Servidor utilizado amplamente em todo o mundo; Facilidade de configuração e manutenção; Portabilidade entre diferentes sistemas operacionais. Desvantagens- Observações- StakeholdersDesenvolvedores; Testadores; Gerente.

Decisão #7 Decisão-chave Utilização de persistência em arquivos para tolerância a falhas do banco de dados. Drivers RNF: O MCTCore deve registrar grandezas elétricas mesmo em situações onde o banco de dados encontra-se inoperante. Descrição Persistência em arquivos é a única alternativa caso o banco de dados se encontre inoperante. Vantagens Continuar registrando os valores obtidos do sistema SCADA. Desvantagens Meio menos seguro de armazenamento; Necessidade de copiar os dados para o banco de dados quando esse voltar a operação. Observações- StakeholdersDesenvolvedores; Testadores; Gerente; DBA.

Decisão #8 Decisão-chave Utilização de protocolo TCP para notificação das anormalidades e normalidades. Drivers RF: Fazer broadcast para todas as máquinas da rede em caso de detecção de anormalidades. RF: Fazer broadcast para todas as máquinas da rede em caso de volta à normalidade da tensão dos barramentos. Descrição O protocolo TCP é um protocolo de transporte de dados que garante confiança e ordem nos dados enviados a um destinatário. VantagensGarantia da chegada de mensagens de anormalidade. Desvantagens Mais lento que o protocolo UDP. Observações Como rodará na rede interna da empresa as perdas de tempo de transmissão e propagação serão praticamente desconsideráveis. StakeholdersDesenvolvedores; Testadores; Gerente.

Decisão #9 Decisão-chaveUtilização de padrão em camadas para o MCTViewer. Drivers- Descrição A arquitetura do MCTViewer é dividida em três camadas: visão, lógica de negócios e persistência. Essa divisão é clássica em aplicações Web de sucesso, e se aplica ao projeto pelas vantagens descritas abaixo. Vantagens Baixo acoplamento entre módulos, já que há isolamento entre as camadas “inferiores” e “superiores”; Partes do sistema podem ser trocadas sem afetar o restante do sistema; O isolamento da interface com o usuário numa camada separada permite construir interfaces usando várias tecnologias diferentes. Desvantagens Eficiência é prejudicada pela troca de mensagens entre as camadas distintas. Efeito cascata em mudanças realizadas nas camadas. Observações- StakeholdersDesenvolvedores; Testadores; Gerente.

Decisão #10 Decisão-chave Utilização de Java Swing para desenvolvimento da interface gráfica do MCTAlarms. Drivers RNF: O MCTAlarms deve ser compatível com o sistema operacional Windows. RNF: O MCTAlarms deve ser acessível através da bandeja do Windows. Descrição A biblioteca Swing é nativa de Java para o desenvolvimento de interfaces gráficas simples e funcionais. Como a interface do MCTAlarms exigida se encaixa nessa descrição e oferece API para utilização do System Tray do Windows, foi escolhida pela equipe. Vantagens Simplicidade de uso; Funcionalidade. Desvantagens Interface relativamente pobre. Observações Será utilizada apenas para geração de avisos e redirecionamento ao MCTViewer quando necessário. StakeholdersDesenvolvedores; Testadores; Gerente; Operadores.

Decisão #11 Decisão-chave Utilização do EasyAccept para testes da lógica de negócio. DriversPROCESSO XP1: Testes devem ser automatizados. Descrição Forma de validação e verificação do sistema através de testes automatizados. Vantagens Simplicidade de uso; Sintaxe simples e do conhecimento do cliente; Automatização. Desvantagens- Observações EasyAccept será usado para os módulos Java. No módulo C, os testes serão feitos através de comparação de arquivos (logs) gerados pela comunicação com o SCADA. StakeholdersDesenvolvedores; Testadores; Gerente.

Decisão #12 Decisão-chave Comunicação do MCTViewer com o banco de dados através de JDBC (Java Database Connectivity). Drivers- Descrição A utilização de JDBC ao invés de tecnologias ORM (Object-relational mapping) é satisfatória, pelo fato do modelo de dados do MCT ser simples, com um número bastante limitado de entidades. Vantagens Simplicidade de uso; Facilidade em caso de troca do banco de dados (basta alterar o driver). Desvantagens Utilização direta de SQL traz a necessidade de adaptação do código desenvolvido em caso de alterações no modelo. Observações Para evitar desorganização e acoplamento no código, será utilizado o padrão DAO (Data Access Object) no MCTViewer. StakeholdersDesenvolvedores; Testadores; Gerente.