• Nenhum resultado encontrado

Relatorio Final CE-230 rv01

N/A
N/A
Protected

Academic year: 2021

Share "Relatorio Final CE-230 rv01"

Copied!
17
0
0

Texto

(1)

INSTITUTO TECNOLÓGICO DE AERONÁUTICA

 

CE‐230 QUALIDADE, CONFIABILIDADE E  

SEGURANÇA (SAFETY) DE SOFTWARE 

 

RELÁTORIO FINAL  

PROJETO SETRAIF – MODULO DCF  

CE‐230 

Valdir Guerra

Aluno

Professor Dr. Adílson Marques

Cunha

Fundação Getulio Vargas

(2)

2

1.

INTRODUÇÃO 1.1. Titulo

Relato Padronizado da disciplina CE230 Projeto SETRAIF Sub produto DCF – Relátorio Final. 1.2. Motivação

Desenvolver habilidades para inferir qualidade, confiabilidade e segurança em dispositivos de software embarcados de tempo real, métodos ágeis para realizar entregas mais rápidas e confiáveis em meus trabalhos acadêmicos e em projetos futuros.

1.3. Contexto

O projeto SETRAIF contextualiza o desenvolvimento de um protótipo do sistema de

repressão a acessos indevidos e fraudes o qual será utilizado inicialmente nos laboratório do instituto tecnológico da aeronáutica com fins acadêmicos para pratica das principais

disciplinas de desenvolvimento, teste, qualidade, confiabilidade e segurança de software embarcado de tempo real assim como a integração das disciplinas utilizando métodos e ferramentas case de engenharia de software auxiliadas por computador.

1.4. Objetivo do Protótipo

Consolidar a aplicação dos principais conhecimentos teóricos adquiridos nas Disciplinas CES-63, CE-235, CE-230 e CE-237, durante o processo de desenvolvimento do Protótipo do Sistema Embarcado de Tempo Real para Repressão a Acessos Indevidos e Fraudes - SETRAIF, visando melhorar a eficiência e reduzir o desperdício de recursos envolvidos.

 

1.5. Redução do Escopo

 

O Projeto SETRAIF foi dividido em 4 módulos (DMV, DCN, DCA, DCF). O Modulo em questão que será descrito abaixo é o do DCF (Dispositivo de controle de fraudes). Os outros módulos podem ser visualizados nos outros relatórios finais publicados na paginas do projeto. O Modulo DCF foi analisado junto com o PO (Product Owner). O objetivo do DCF é analisar a transação enviada pelo DCA e retornar um resultado de não fraude ou fraude indicando um percentual com a probabilidade de fraude.

 

 

O Modulo DCF ainda apresenta mecanismos de analise da disponibilidade dos serviços dependentes evitando assim a queda e o processamento de transações sem um claro resultado analisado, assim como dados e informações para futura analise.

 

 

1.6. Especificação de Requisito

 

A Especificação de Requisito foi elaborada utilizando “Users Storys” e teve as seguintes definições

Como DCF eu tenho que compor uma arquitetura de desenvolvimento dirigido a modelos MDA, a fim de compor o software embarcado de tempo real SETRAIF fornecendo o serviço de analise retornando fraude ou não fraude para o modulo do DCA.

Como DCF eu tenho que dispor de uma infraestrutura de serviços mínimos como banco de dados e servidores na nuvem a fim de armazenar dados para futura análise.

Como DCF e tenho que detectar a fraudes considerando o padrão de consumo, a localização geográfica e o dispositivo sendo utilizando, a fim de gerar um resultado apontando a transação como sendo uma fraude ou sendo uma transação legitimam.

(3)

3

Como DCF eu tenho que localizar classificar e registrar as transações e resultado de fraude para futuras análises e investigação de causas prováveis.

Como DCF eu tenho que aperfeiçoar o sistema de detecção de fraudes para eliminar o desperdício de tempo e financeiro em fraudes com transações de compra e venda por cartão de credito através do celular.

1.7. Ordem Apresentação do Relatório do Projeto Final da Disciplina

A Seção 1 apresenta os objetivos do projeto SETRAIF, assim como o ganho de conhecimento do time de desenvolvimento trazendo um solução inovadora para um problema antigo. A Seção 2 ...

 

2.

DESENVOLVIMENTO

 

2.1. DESCRIÇÃO DO PROJETO SETRAIF

O projeto SETRAIF contextualiza o desenvolvimento de um protótipo do sistema de repressão a acessos indevidos e fraudes. O Sistema foi elaborado utilizando MDA (“Model Driven Arquitecture” unindo diversas matérias permitindo assim o desenvolvimento de um solução de hardware e software integradas.

A solução consiste em propiciar uma venda através de um dispositivo móvel substituindo o tradicional modelo de cartão de credito.

METODO TRADICIONAL NOVO METODO

O Sistema apresenta ainda dispositivos de segurança que trabalham para diminuir e/ou eliminar os atuais problemas com fraudes

(4)

4

Arquitetura:

Diagrama de Estados:

PRODUCT BACKLOG

Como DCA/Servidor de Aplicação Web eu gostaria de um Arduino com acesso a internet para que eu possa realizar a troca de informações através da internet .

(5)

5

eu possa validar ou não uma transação .

Como desenvolvedor eu gostaria de um banco de dados modelado para suportar e consultar as informações da solução

Como um desenvolvedor eu gostaria de um ambiente de desenvolvimento para executar a implementação da solução .

Como um desenvolvedor eu gostaria de um servidor configurado para implantar minha solução.

Como DCA eu gostaria de validar se a localização de determinada transação indica se é uma possível fraude para que eu possa liberar ou não uma transação eletrônica de fundos

Como DCA eu gostaria de validar se o padrão de consumo de determinada transação indica se é uma possível fraude para que eu possa liberar ou não uma transação eletrônica de fundos.

Como DCA eu gostaria de validar se o dispositivo utilizado em determinada transação indica se é uma possível fraude para que eu possa liberar ou não uma transação eletrônica de fundos.

Como analista de fraudes eu gostaria de saber o endereço de onde partiu transação suspeita para que eu possa avaliar se o local da transação tem histórico de crimes.

Como analista de fraudes eu gostaria de obter um relatório de possíveis fraudes identificadas para que eu possa verificar manualmente padrões de transações fraudulentas.

Como analista de fraudes eu gostaria de realizar buscas nas fraudes detectadas para que eu possa obter detalhes de uma possível fraude. Como DCA eu gostaria de obter com agilidade se determinada transação é 1 uma possível fraude para que eu possa ser responsivo em tempo aceitável para o comércio.

Para construir o projeto SETRAIF foi utilizado as melhores praticas da metodologia ágil SCRUM. O Projeto foi dividido em 2 (duas) Sprints, abaixo segue a minha participação individual em cada Sprint:

Sprint 1

Minha Participação

Elaborou um modelo no Rational Rose Real Time da concepção das capsulas do DCA e DCF com destaque para o processamento do recebimento de um transação do DCA, analise da mesma em 3 níveis diferentes pelo DCF e devolução para DCA com resultado de fraude ou não fraude.

Elaborei o Harness Test do modelo citado acima, provando através de um diagrama de estrutura e um diagrama sequencia o happy path da interação entre o DCA e o DCF considerando todas as possibilidade de resultado.

Analisei os requisitos em formato de “User Story” e ajudei na concepção de adaptações que permitiram melhorar o entendimento do time na construção de um modelo

Participei de interações por e-mail com o time de desenvolvimento colaborando com a troca de informações para construção do software.

(6)

6

Elaborei a apresentação do resultado da Sprint 1 para apresentação da ListEx 3 e ajudeis na concepção.

Participei de reuniões por Skype para realizar inspeções e adaptações para melhorar a concepção da entregas dos manual de qualidade, e resultados do RRRT

Sprint 2

Minha Participação

Participei de reuniões presenciais para colaborar com a integração do DCF com DCA assim como a na concepção da integração de todos os outros 3 módulos, sempre se preocupando com o conceito de qualidade, segurança e confiabilidade.

Colaborei na participação da construção do script de alinhamento das entregas da Sprint 2 Ajudeis na definição das adaptações que o DCF deveria sofrer para gerar um resultado mais eficiente no que tange a analise de fraudes.

Participei das reuniões colaborando para a construção do segundo harness test da entrega da Sprint 2

Elaborei a apresentação do resultado da Sprint 2 para apresentação na reunião final.

Dei ideias para o modelo embarcado do DCF junto ao SCRUM máster 2.2. SÍNTESE DAS LISTEX 3

2.2.1. HARNESS TEST

O Objetivo é simular a execução do modelo DCF no Rational Rose Real Time

implementando um teste RQA - HARNESS com o proposito de aferir qualidade, confiabilidade e segurança entre a interação do DCA com o DCF

Para viabilizar o teste foi criando um projeto no ambiente do RRRT com duas capsulas representando o DCA (Dispositivo de controle de Acesso) e o DCF (Dispositivo de controle de Fraudes)

(7)

7

As capsulas DCA e DCF foi conectada utilizando um protocolo denominado como token, que tem a responsabilidade de transportar a transação.

Estrutura da capsula DCA tem o objetivo de receber uma nova transação, realizar a autenticação e enviar a transação para o DCF

Estrutura da capsula DCF tem o objetivo de receber a transação do DCA e validar a

transação com o padrão de consumo do usuário, depois validar a transação utilizando analises GEO Referenciadas e finalmente devolve para a transação para DCA com status de aprovada ou reprovada com todas interações devidamente logadas

(8)

8

Demonstração Pratica da Execução da Capsula SETRAIF com os subprodutos DCA e DCF Interagindo:

(9)

9

Analise do Trace

(10)

10

(11)

11

HARNESS TEST DIAGRAMA DE COLABORAÇÃO

HARNESS TEST DIAGRAMA DE SEQUENCIA HAPPY TEST

(12)

12

(13)

13

2.3. ANALISE DE SENSIBILIDADE Abaixo segue os objetivos dessa analise

• Qualidade

Desenvolver um produto vislumbrado na Visão do Produto, atendendo assim as expectativas do cliente.

• Confiabilidade

Desenvolver um software capaz de cumprir seus requisitos funcionais de forma alheia a falhas.

• Segurança

Garantir que o software execute suas funções, sem acarretar em riscos inaceitáveis para todo o sistema.

Dada às definições, foram então realizadas algumas interações por parte da equipe de qualidade, confiabilidade e segurança, a fim de garantir que os requisitos essências fossem garantidos.

INTERAÇÃO 1 - QUALIDADE Primeira pergunta

O P.O tem visibilidade do andamento da Sprint, mesmo com um time decentralizado? Resposta: Sim, para prover visibilidade do andamento da Sprint foi utilizada uma

ferramenta online, a fim de transparecer o andamento das atividades em tempo real para o P.O.

Segunda Pergunta

De que forma o time de desenvolvimento planejou as releases para desenvolver entregáveis que satisfaça de forma incremental a expectativa do P.O?

Resposta: Por se tratar de um ambiente sem material inicial como a VM com toda a suíte de ferramentas CASE do IBM Rose Rational Real Time, foi preciso planejar não somente a construção da aplicação, mas também o ambiente de desenvolvimento e da aplicação. Foi então dividido em 2 principais entregas, sendo elas a de desenvolvimento do ambiente de desenvolvimento e servidor e outra contemplando as regras e necessidades de negócio. Planejamento respaldado pelo cliente.

INTERAÇÃO 2 - CONFIABILIDADE Primeira Pergunta

Como pretendem minimizar ou gerenciar a introdução de bugs no sistema?

Resposta: Todas as partes críticas do sistema haverá testes unitários, a fim de assegurar que qualquer modificação no software seja feita de forma segura, mantendo uma boa cobertura de áreas compreendidas como alheias a bugs.

Segunda Pergunta

Como garantir que novos requisitos não tenham impactos profundos no prazo, garantindo assim, a agilidade da equipe em absorver itens com valores de negócios latentes?

Resposta: Além das cerimônias para inspeção e adaptação do processo/produto, também será construída uma arquitetura evolutiva, que visa o mínimo esforço necessário para

(14)

14

implementar uma feature visando a melhor relação entre custo beneficio da entrega do produto x escalabilidade da aplicação.

INTERAÇÃO 3 - SEGURANÇA Primeira Pergunta

Quais as medidas tomadas para garantir a disponibilidade no servidor de aplicação web? Resposta: A aplicação esta hospedada no ambiente do google, que gerencia e se responsabiliza por esse ambiente, atualmente o Google App Engine garante 99,95% de disponilidade.

Segunda Pergunta

Como serão tratadas exceções?

Resposta: Caso haja alguma falha, a transação será aprovada se o valor for inferior ao valor acordado com o cliente.

GRÁFICO KIVIAT

2.4. O PLANO DE GARANTIA

O Plano de Garantia do DCF foi elaborado para fornecer uma visão única sobre a qualidade para o projeto e assim, garantir que o software gerado estará de acordo com as normas e requisitos do cliente.

O plano foi elaborado com aderência as praticas de um ciclo de desenvolvimento iterativo e incremental de um protótipo acadêmico, que garanta que os requisitos do projeto e do cliente estejam sendo atendidos em sua totalidade e de forma contínua, produzindo resultados de valor aos interessados.

O Plano não contempla critérios de validação do produto, a validação do produto backlog, definição de pontos por estórias e definição de ponto.

Conformidade será validada considerando o principal produto a ser auditado. Verificando e validando o incremento de software potencialmente empregável e validado pelo Product Owner.

(15)

15

Foi utilizado como referencia a Norma: ABNT NBR ISO/IEC 9126-1:2003 - Qualidade de produto / Parte 1: Modelo de qualidade

2.5. CONSIDERAÇÃO SOBRE AFERIÇÃO DE QUALIDADE, CONFIABILIDADE E SEGURANÇA DE SOFTWARE.

Quando se considera que qualidade é conformidade com requisito, confiabilidade é qualidade no tempo e segurança é a avaliação do fator humano, interface homem maquina e analise dos fatores críticos, pode-se concluir que esses 3 pilares geram resultados capazes de eliminar prejuízos, reduzir desperdícios de tempo e garantir produtos de software realmente diferenciados.

O ponto aqui é como construir produtos de software que realmente tenham na sua concepção os 3 pilares.

Dessa maneira, a Lei natural de um software construído com qualidade, confiabilidade e segurança se aplica principalmente a forma de pensar das pessoas que interagem com o projeto.

Uma boa metodologia pode ajudar no incremento de qualidade, porem a instalação de um cultura de qualidade, confiabilidade e segurança é a única forma de realmente garantir produtos de software que sejam qualificados, confiáveis e seguros.

3.

PRINCIPAIS CONCLUSÕES

Com a execução do projeto SETRAIF - foi possível aprimorar o conhecimento das técnicas de aferição de qualidade confiabilidade e segurança em sistemas embarcados de tempo real utilizando métodos ágeis.

O trabalho de integração requer muita experiência e habilidade para aumentar a capacidade de extrair testes e resultados do modelo do RRRT RQA para garantir o funcionamento perfeito de todo o sistema embarcado de tempo real.

A implementação do modelo integrado utilizando RRRT e RQA em nuvem proporcionou uma grande agilidade no desenvolvimento das diversas turmas de teste, e desenvolvimento de sistemas embarcados.

4.

RECOMENDAÇÕES

O analise de qualidade, confiabilidade e segurança estão agora com os sistemas em nuvens incorporando um novo conceito que é o “Privacy”, onde o conceito de proteger os dados e informações de usuários está ganhando uma nova dimensão.

Recomenda-se também melhorar a qualidade das interações entre os times e o PO das diversas matérias, isso pode eliminar o desperdício de tempo.

5.

SUGESTÕES SOBRE TRABALHOS FUTUROS

O Recomendo o estudo mais aprofundado de arquiteturas de hardware como “appliances” que podem ser utilizados em nuvem.

REFERÊNCIAS BIBLIOGRÁFICAS

CUNHA, Adilson. CE-230 – QUALIDADE, CONFIABILIDADE E SEGURANÇA

DE SOFTWARE - 2012

(16)

16

CUNHA, Adilson. HANDBOOK OF SOFTWARE QUALITY ASSURANCE – Fourth

Edition

ANEXOS

ANEXO 1

Prova de Conceito (Proof of Concept – PoC) da Aplicação do Estudo de Caso (Problem Based Learning – PBL) no Protótipo do SETRAIF

O desenvolvimento acadêmico do Protótipo de um Sistema Embarcado de Tempo Real

para Repressão a Acessos Indevidos e Fraudes (SETRAIF), durante o 2o semestre

acadêmico de 2012, vem envolvendo alunos, professores, pesquisadores, colaboradores,

monitores, entre outros participantes dos Programas de Graduação em Engenharia da

Computação e de Pós-Graduação em Engenharia Eletrônica e Computação, na Área de

Informática (PG/EEC-I), no Instituto Tecnológico de Aeronáutica (ITA).

Do Programa de Graduação do ITA, foram envolvidos os alunos da disciplina CES-63

Sistemas Embarcados e, do Programa de Pós-Graduação, os alunos das disciplinas:

CE-235 Sistemas Embarcados de Tempo Real; CE-230 Qualidade, Confiabilidade e

Segurança de Software; e CE-237 Tópicos Avançados em Teste de Software.

Dentro do espírito inovador da Engenharia de Concepção, que caracteriza o ITA, e para

completar o desenvolvimento acadêmico do Protótipo do SETRAIF foi especificada,

com a participação dos alunos, uma Prova de Conceito de um Modelo de Engenharia

para a aplicação do Estudo de Caso (PBL) do SETRAIF, para ser demonstrada, na 17a

semana de aulas, como parte dos requisitos dos Exames Finais das respectivas

disciplinas.

Para realização dessa Prova de Conceito no Protótipo do SETRAIF deverão ser

realizadas:

1) Apresentações Orais do tipo Sumário Executivo – (em grupo) pelos Times de

Desenvolvedores e de Verificadores de Qualidade e Testabilidade), utilizando o MS

PowerPoint ou similar, com duração máxima de 30 (trinta) minutos. Estas apresentações

deverão consolidar os objetivos dos Subprodutos do SETRAIF, seus principais artefatos

e entregáveis em termos de Software e Hardware de um Sistema Embarcado de Tempo

Real, bem como a utilização do Scrum, suas boas práticas e a modelagem no IBM

RRRT;

2) Ao final das apresentações, deverá ser realizada uma demonstração da integração

entre os 4 (quatro) dispositivos do SETRAIF, dentro de um Cenário pré-estabelecido,

por meio da Execução de uma Prova de Conceito aplicada em uma Missão Atribuída

pelo Product Owner (PO) ou por seus representantes.

Os alunos da Disciplina CE-230, para fins de complementação da aplicação da Prova de

Conceito do Modelo de Engenharia no Protótipo do SETRAIF, deverão aferir e medir,

quanto a qualidade, confiabilidade e segurança (safety) de software, os Subprodutos que

o integram como Produto Final.

(17)

17

Os alunos da Disciplina CE-237, também para fins de complementação da aplicação da

Prova de Conceito do Modelo de Engenharia do SETRAIF, deverão verificar, quanto a

testabilidade os Subprodutos que o integram como Produto Final.

Para que isso seja possível, deverá ser demonstrada, para o PO e/ou seus representantes,

a realização da seguinte Missão Atribuída ao Protótipo do SETRAIF em um Cenário

Simulado de Repressão a Acessos Indevidos e Fraudes.

Missão Atribuída ao Protótipo do SETRAIF

(Script da demonstração ao Product Owner e seus Representantes)

1.

Um Vendedor informa o valor total de uma compra realizada no sistema do

caixa e o envia para o DMT-V;

2.

O DMT-V processa as informações de geolocalização, identificação do

vendedor, data e hora, solicita o token da transação ao DCA, gera o QRCode com estas

informações e apresenta o QRCode gerado na tela do caixa do Vendedor;

3.

Um Cliente utiliza seu dispositivo móvel com o aplicativo do DMT-C para:

realizar a leitura do QRCode gerado; apresentar as informações da compra para

verificação do cliente; solicitar sua senha; e enviar a solicitação de transação de

pagamento para o DCN;

4.

O DCN, como parte do DMT-C, recebe a solicitação da transação, faz a

criptografia e envia para o DCA via Internet;

5.

O DCA recebe a requisição, invoca o método de descriptografia do DCN e

autentica o dispositivo do vendedor (DMT-V), os dados do usuário (DMT-C) e a

transação (token);

6.

O DCA envia a transação para o DCF;

7.

O DCF verifica a autorização da transação; registra suas informações; e retorna a

avaliação para o DCA;

8.

O DCA envia a transação autorizada pelo DCF para Operadora e recebe a

resposta;

9.

O DCA envia a resposta da transação ao DCN no dispositivo móvel;

10.

O DCN envia a resposta ao DMT-C;

11.

O DMT-C exibe o resultado da transação ao cliente no dispositivo móvel; e

12.

O DCF exibe a transação em Relatório.

Referências

Documentos relacionados

Então são coisas que a gente vai fazendo, mas vai conversando também, sobre a importância, a gente sempre tem conversas com o grupo, quando a gente sempre faz

Neste capítulo foram descritas: a composição e a abrangência da Rede Estadual de Ensino do Estado do Rio de Janeiro; o Programa Estadual de Educação e em especial as

de professores, contudo, os resultados encontrados dão conta de que este aspecto constitui-se em preocupação para gestores de escola e da sede da SEduc/AM, em

De acordo com o Consed (2011), o cursista deve ter em mente os pressupostos básicos que sustentam a formulação do Progestão, tanto do ponto de vista do gerenciamento

Introduzido no cenário acadêmico com maior ênfase por Campos (1990), o termo accountability é de conceituação complexa (AKUTSU e PINHO, 2001; ROCHA, 2009) sendo

A Rhodotorula mucilaginosa também esteve presente durante todo o ensaio, à excepção das águas drenadas do substrato 1 nos meses de novembro, fevereiro e março, mas como

Contemplando 6 estágios com índole profissionalizante, assentes num modelo de ensino tutelado, visando a aquisição progressiva de competências e autonomia no que concerne

Crisóstomo (2001) apresenta elementos que devem ser considerados em relação a esta decisão. Ao adquirir soluções externas, usualmente, a equipe da empresa ainda tem um árduo