SETRAIF - DCF Dispositivo de Controle de Fraudes.

Post on 07-Apr-2016

218 views 2 download

Transcript of SETRAIF - DCF Dispositivo de Controle de Fraudes.

SETRAIF - DCFDispositivo de Controle de Fraudes

Agenda• Introdução• Desafio• Metodologia de Desenvolvimento• Ambiente de Desenvolvimento• Arquitetura da Solução• Modelo (RRRT)• Modelo de Dados• Qualidade, Confiabilidade e Segurança de Software• Testes• Conclusão• Recomendações

Introdução

Nos últimos anos, fraudes em transações computadorizadas vêm ocorrendo em diversas áreas, notadamente em sistemas de controle de acesso e sistemas bancários da área financeira onde atividades fraudulentas custam anualmente bilhões de dólares.A partir do desenvolvimento das Tecnologias da Informação (TI) e do advento da Internet, as atividades fraudulentas passaram a crescer e se diversificar, de maneira mais acentuada, em todas as áreas de conhecimento.O subproduto DCF tem como objetivo minimizar os prejuízos causados por fraudes em transações eletrônicas através de analise comportamental, histórica e geográfica do cliente.

Desafio

Desenvolver em 17 semanas uma solução integrada aos subprodutos SETRAIF, capaz avaliar milhares de transações fraudulentas com qualidade, confiabilidade e segurança.

Scrum – Time (16 pessoas)• Product Owener: Prof. Lineu Mialaret (CE-235)• Scrum Master: Fabiano Hino(CE-235 e CE-230 )• Time de Desenvolvimento: Allan Machado, Diego de Andrade,

Fabiano Hino, Marcos Máximo, Marcos Victor, Mateus Oliveira, Paulo Fernando, Thiago Ruback e Walter Cacau (CES-63 e CE-235); Fabiano Hino, Fábio Kfouri, Milton Abru, Robson Cassol, Valdir Guerra (CE-230); Luiz Eduardo e Luiz Felipe (CE-237)

Cerimônias• Sprint Planning: No início de cada Sprint• Release Planning: No início de cada Release• Daily Meetings: Segunda-Feira (Presencial) e Quinta Feira (E-

mail)• Sprint Review: Ao término de cada Sprint• Sprint Retrospective: Ao término de cada Sprint

Scrum - Visão do Produto

Para sistemas que necessitam verificar a legitimidade de uma transação eletrônica,o DCF,é um serviçoque baseado no histórico comportamental do usuário e os principais padrões fraudulentos, identifica fraudes de forma rápida e confiável.

Arquitetura da Solução

DCN

Dispositivo de Comunicação

na Nuvem

DMT

Dispositivo Móveis

de Transação

DCF

Dispositivo de Controle

de Fraudes

DCA

Dispositivo de Controle de Acesso

Arquitetura da Solução

DCA

Arduíno Google App EngineDispositivo de Controle de Acesso

SocketJSON

HTTPJSON

DCF

Dispositivo de Controle

de Fraudes

Product BacklogUser Story SP

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 .

8

Como um DCA eu gostaria de uma função que analise os dados para que eu possa validar ou não uma transação .

5

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

3

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

3

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

8

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

3

Product BacklogUser Story SP

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.

13

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.

2

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.

2

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.

3

Como analista de fraudes eu gostaria de realizar buscas nas fraudes detectadas para que eu possa obter detalhes de uma possível fraude.

1

Product BacklogUser Story SP

Como DCA eu gostaria de obter com agilidade se determinada transação é uma possível fraude para que eu possa ser responsivo em tempo aceitável para o comércio.

1

Primeira Release

Visão: Ambiente de Desenvolvimento e da AplicaçãoSprint: UmaEstórias do Usuário: CincoBurndown Chart:

InicioDail

y 1Dail

y 2Dail

y 3Dail

y 4Dail

y 5Dail

y 6CE660ral

CE660ral

CE660ral

IdealSprint 1

Ferramentas

Comunicação• Skype• Google Hangout• Celular• E-mail• Google GroupsCompartilhamento de Arquivos• Dropbox• Google DriveAcompanhamento de Atividades• Xp-Dev

Ambiente de Desenvolvimento• Sistemas Operacionais: Windows e Linux• IDE’s: Rose Rational RealTime e Sublime• Versionamento: GitHub• Linguagens: C e Python

Ambiente da Aplicação

Servidor de Aplicação Web: Google App Engine

Ambiente da Aplicação• Placa de Prototipagem: Arduíno

Segunda Release

Visão: Regras de NegócioSprint: UmaEstórias do Usuário: CincoBurndown Chart:

InicioDail

y 1Dail

y 2Dail

y 3Dail

y 4Dail

y 5Dail

y 6CE660ral

CE660ral

CE660ral

IdealSprint 2

Diagrama de Estrutura

Figura 1 - Diagrama de Estrutura

Diagrama de Sequência

Figura 2 - Diagrama de Sequência

Modelo de Dados

Figura 3 – Modelo de Dados (1ª Sprint Review)

Localização Geográfica

Se (local da transação é outro país && cliente não avisou previamente) então

é fraudeBusca no banco dados referentes à ultima transação

Calcula distância entre locais das transaçõesCalcula intervalo de tempo entre transações

Se (distância não pode ser coberta no intervalo, considerando velocidade de um vôo comercial) então

é fraude

Padrão de ConsumoListar Transações não Fraudes do Específico Cliente;Procurar a maior que ele realizou;

Se ((valor da Transação)-(maior valor de transação)) > 1000){//Verifica se há uma grande diferença entre os valores

Se valor da Transação > 1.8*Valor da Maior Transação //Verifica se foge do padrão de consumo. Se for um padrão de consumo com altos valores, nada afetará, e não será fraude. É Fraude;Se não Não é Fraude de Valor;

}se não, já não é fraude.

Dispositivo Conhecido

Relatórios

Filtros: Contas, Dispositivo, Data (De/Até) e localizaçãoFormato: HTML + Google Maps

Evidência de Performance

Grafíco com a performance

Qualidade, Confiabilidade e SegurançaCom a evolução das necessidades das empresas que desenvolvem software e a devida evolução das ferramentas que acompanham o seu desenvolvimento, foi possível popularizar o desenvolvimento de software decentralizado, criando assim, novos desafios para os profissionais da área.

Nesse contexto o software esta naturalmente sujeito à entropia caso alguns cuidados não sejam tomados e em ambientes críticos como o do projeto SETRAIF, garantir qualidade, confiabilidade e segurança de software é requisito primário para que o produto seja aceito.

O subproduto DCF do Projeto SETRAIF, conta com algumas equipes fisicamente distantes, o que caracteriza esse tipo de desenvolvimento. No intuito de garantir qualidade no produto, foi escolhida metodologia ágil no seu desenvolvimento, oque gerou desafios ainda mais novos, devido ao fato da pouca existência de referência bibliográficas que dissertam sobre essas questões.

Para garantir esses itens, as seguintes atividades foram definidas para serem executadas, sendo elas Teste de Instrumentação, Plano de Garantia de Software e Extração de Métric

Plano de Garantia de Software

O propósito do Plano de Garantia de Qualidade é fornecer um ponto de referência único sobre qualidade para o projeto e assim, garantir que o software gerado estará de acordo com as normas e requisitos do cliente.

Interações

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: Desenvolver um software capaz de cumprir seus requisitos funcionais de forma alheia a falhas.

InteraçõesQualidadeO P.O tem visibilidade do andamento da Sprint, mesmo com um time decentralizado?

Sim, para prover visibilidade do andamento Sprint foi utilizada uma ferramenta online, na qual ele poderá observar desde os detalhes das atividades até Burndown Chart.

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

Em todas as partes críticas do sistema haverá testes unitários, assegurando que qualquer modificação no software não comprometa os processos já testados.

SegurançaQuais as medidas tomadas para garantir a disponibilidade no servidor de aplicação web?A aplicação esta hospedada em um ambiente terceirizado, que se responsabiliza integralmente por esse ambiente, garantindo 99,95% de disponibilidade.

Teste de instrumentação

O Objetivo é simular a execução do modelo DCF no Rational Rose Real Time implementando um teste RQA - HARDNESS com o proposito de aferir qualidade, confiabilidade e segurança entre a interação do DCA com o DCF .Para viabilizar o teste foi criado 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).

Métricas

Testes

Conclusão

Recomendações