Upload
mikaela-lago
View
218
Download
2
Embed Size (px)
Citation preview
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