Desafios no desenvolvimento de aplicações científicas comerciais

Post on 20-Jul-2015

59 views 3 download

Transcript of Desafios no desenvolvimento de aplicações científicas comerciais

Desafios no Desenvolvimento de

Aplicações Científicas Comerciais

uma perspectiva pessoal

Apresentação

2001 – Engenheiro Químico pela UFPB

2003 – Mestre em Engenharia Química pela UNICAMP

2008 – Doutor em Engenharia Química pela UNICAMP

Alguns Projetos

LabFen –Simulador de Experimentos do Laboratório de Fenômenos de Transporte da

UFPB (Iniciação Científica)

VOCGUI –Simulador para treinamento de operação do sistema de queima controlada

de VOCs (Vopak e Stolthaven)

IDEA –Inventário Dinâmico de Emissões Atmosféricas (REPLAN – Refinaria de

Paulínia)

FCCGUI – Simulador acadêmico do controle de uma unidade FCC (Acadêmico)

Blend de

Diesel–

Levantamento e análise do sistema de otimização do Blend de Diesel da

REPLAN

Reconciliare – Software para Reconciliação de Dados (Mestrado e Doutorado)

CBTA – Relatórios PDAI

SIMCARR – Simulador de Carreamento de Cascalhos (GTEP PUC-Rio)

1989~1992 8 bits

64K de RAM

Modelagem Matemática

“(…), and most writers can remember the

first book he/she put down thinking: I can do

better than this. Hell, I am doing better than

this!”

Stephen King

LabFen – Simulador de Experimentos do Laboratório de

Fenômenos de Transporte da UFPB

FORTRAN & Borland Delphi

LabFen – Simulador de Experimentos do Laboratório de

Fenômenos de Transporte da UFPB

FORTRAN & Borland Delphi

Anti-pattern Smart UI

OnClick

begin

(… regras de negócio)

end

Reconciliare – Software para Reconciliação de Dados e Detecção de

Erros Grosseiros

VOCGUI – Sistema para Treinamento do Pessoal de Operação da Unidade

de Queima Controlada de Compostos Orgânicos Voláteis

“A indústria brasileira ainda é mal

servida pelos desenvolvimentos em TI e

TA nacionais”

“A indústria brasileira ainda é mal

servida pelos desenvolvimentos em TI e

TA nacionais”

“A indústria brasileira é um importante

nicho, cheio de oportunidade de

negócios a serem exploradas pelos

jovens desenvolvedores

empreendedores nacionais”

Os Problemas da Indústria Nacional

• Muitas vezes um baix(íssim)o nível de TI e TA

• Não é um setor de early adopters

• Voos de Galinha da Economia Nacional

Oportunidades na Indústria Nacional

• Simulação para Treinamento de Pessoal

• Gestão Ambiental

• Modelagem Matemática de Processos

• Otimização e Controle Avançado de Processos

• Reconciliação de Dados e Detecção de Erros Grosseiros

Oportunidades na Indústria Nacional

• Aprender a linguagem da Indústria

• Descobrir e apontar as oportunidades para a própria indústria

• Desenvolver modelos de negócios adequados

Oportunidades na Indústria Nacional

• PDAIs – Planos Diretores de Automação e Informática Industrial:

“oncotô-onconvô”

• Quanto maior a maturidade da automação industrial, maior a

quantidade de dados disponíveis e maior o valor que pode ser

extraído

Os Desafios do Desenvolvimento

Estar Preparado para a Complexidade

e

Estar Preparado para um Longo Ciclo de Vida

Ferramentas para a Complexidade

• Object Oriented Programming – OOP

• Design Patterns

• Princípios SOLID (Single responsibility, Open-closed, Liskov

substitution, Interface segregation and Dependency inversion)

• Princípio KISS (Keep it Simple, Stupid!)

• Se a aplicação é intensiva em cálculos: invista em pacotes

numéricos!

Ferramentas para a Complexidade

Domain Driven Design

“Domínio é um conjunto de nomes, conceitos, papéis, e corpos de

conhecimento associados a uma determinada área”

Domain Driven Design

Linguagem Ubíqua

• Linguagem comum entre os especialistas do negócio e os

desenvolvedores

• Refletida no código

Manutenibilidade

Se preparar para um longo ciclo de vida evolutivo...

• Baseando-se em princípios compreendidos por todos

• Usando uma linguagem comum

• Construindo uma documentação detalhada

• Versionando o código

SimCarr – Simulador de Carreamento de Cascalhos

GTEP-PUCRio/CENPES-Petrobras

O Drama do Código

Legado

Finalizando...

• Existem outros domínios além de automação

comercial/financeiro/bancário

• Domínios complexos exigem dedicação e estratégias

• Domínios complexos podem ser INTERE$$ANTES