A solução proposta pelo método
iRON -
i
ntegração de
R
equisitos
O
rientados a
N
egócio
Construção de
Software Orientado ao Negócio
Eduardo José Ribeiro de Castro, MSc Roberto Avila Paldês, MSc
1) Construção coletiva
Site: www.metodoiron.com.br
2) Referencial teórico
Livro: Engenharia de Requisitos – Um Enfoque Prático na Construção de Software Orientado ao Negócio
Diferenciais do Método iRON:
3) Apoio de Ferramenta (versão Educacional)
4) Educação e integração com o mercado
● Cursos abertos a comunidade
● Graduação em Análise e Desenvolvimento de Software -www.uniceub.br
● Pós Graduação em Engenharia de Requisitos de Software –
www.uniceub.br
5) Integração com a Academia:
● Apresentação no Simposio Argentino de Ingeniería de Software (ASSE 2014)
6) Integração com Governo
● Citação: Minuta - Guia de Projetos de Sistemas com Praticas
Métodos Ágeis e Terceirização do Desenvolvimento SISP – Versão 1.0
1) Introdução
● Alguns Desafios
2) Método iRON ● Engenharia de requisitos ● Princípios norteadores ● Estrutura do método 3) Estudo de caso● Visão geral do emprego do iRon
"A primeira regra de qualquer tecnologia
utilizada nos negócios é que a automação
aplicada
a
um
processo
eficiente
aumentará a eficiencia.
A segunda é que a automação aplicada a
um
processo ineficiente
aumentará a
ineficiência.”
(Bill Gates)
DADOS
PROCESSO
INFORMAÇÃO
SISTEMA DE INFORMAÇÃO – S.I.
Automação
SISTEMA DE INFORMAÇÃO – S.I.
DADOS PROCESSO INFORMAÇÃO Descrição do Processo Mapeamento do Processo Análise do Problema Proposta de Solução AutomaçãoDesafio
1) Contextualização ● Alguns Desafios 2) Método iRON
● Engenharia de requisitos
● Princípios norteadores ● Estrutura do método 3) Estudo de caso● Visão geral do emprego do iRon
Engenharia de Requisitos
Processos de
...
aquisição
, refinamento e verificação das
necessidades dos usuários,
....por meio do
uso de técnicas
sistemáticas e
repetíveis para
...assegurar que os
requisitos
do software
sejam completos, consistentes, relevantes e
...que
atendam às necessidades
do cliente
iRON Pontos de Automação Qualidade de Software Integração de Requisitos Orientado ao Negócio Solução INTEGRADA ao NEGÓCIO Processo de Negócio Inicio Fim
A integração garante a
RASTREABILIDADE
O que é um REQUISITO ?
“Podemos
conceituar
requisitos
como
sendo uma
ação
a ser executada por um
sistema, possuindo
características
e
condições
próprias e que devem ser atendidas conforme as
necessidades de
negócio
do usuário.”
• Uma
compreensão
completa do problema e a
definição
dos
requisitos
do
software
e
sua
especificação
minuciosa
é
fundamental
para
o
processo
de
desenvolvimento obter um software com alta
qualidade
.
• Não importa quão bem projetado ou codificado está um
programa, se ele for
mal analisado e especificado
desapontará
o
usuário
e
trará
aborrecimentos
ao
desenvolvedor.
Dois tipos de DOCUMENTO
de REQUISITOS
Clientes
Técnicos
Especificação
dos Requisitos
Definição
dos Requisitos
•Lista do que o Cliente espera que
o sistema faça;
•Compreensível ao Cliente; •Consenso entre Cliente e
Analista;
•Redefine os requisitos em termos
técnicos;
•Compreensível para o Projetista •Consenso entre Analista e
Desenvolvedor
1) Contextualização
● Causas de fracasso em projetos de software
2) Método iRON
● Engenharia de requisitos
● Princípios norteadores
● Estrutura do método 3) Estudo de caso
● Visão geral do emprego do iRon
Método iRON
Conceito
:
Processo de identificação, definição, refinamento,
verificação e controle de mudanças em requisitos
de software que atendam as necessidades do
processo de negócio do cliente
Fonte: PFLEEGER, Engenharia de Software
Fonte: PFLEEGER, Engenharia de Software
Princípios
:
Apoio a
:
• Organização de Dados
• Métrica de Software
• Gerência de Projeto
Negócio orienta o Software
Software automatiza Processo
Requisitos a partir de Tarefas
Protótipo define e valida Requisitos
O RUP – Rational Unified Process é um processo iterativo e adaptativo
de desenvolvimento, organizado e consistente.
Com relação as Metodologias ágeis, o iRON também pode participar das etapas iniciais de levantamento de requisitos.
Software automatiza as tarefas de um processos de negócio
Modelagem de Processo
As tarefas de um processo de negócio nos auxiliam a
identificar e definir os requisitos do software
Software Processo de Negócio Conjunto de Tarefas Conjunto de Requisitos Automação LP BD Define Análise do Negócio Análise de Requisitos
Identificador Requisito Funcional Requisito de dados Regra de Execução RF01 O sistema deve permitir incluir usuário RD01 RE01 RF02 O sistema deve incluir autor RD02
RF03 O deve incluir RD03 RE02 RF04 O sistema deve permitir alterar usuário RD01 RE01 RF05 O sistema deve permitir excluir usuário RD04 RE03 RF06 O sistema deve permitir incluir premio RD05 RE08
Vantagens
Integração do Desenvolvimento e da Manutenção Respeito aos prazos Maior qualidade Menor custo Identificação prematura de problemas Documentaçãode apoiopara fases seguintes
Aderência aos processos organizacionais Minimiza o retrabalho Transparência do processo Presente em TODO o ciclo de vida do software
1) Contextualização
● Causas de fracasso em projetos de software 2) Método iRON
● Engenharia de requisitos ● Princípios norteadores
● Estrutura do método
3) Estudo de caso
● Visão geral do emprego do iRon
i
ntegração de
R
equisitos
O
rientado ao
N
egócio
Análise do Negócio Definição dos Requisitos Disciplinas Fases Análise Validação Elicitação Documentação Proposta de Solução Prototipação Teste Gerência de Requisitos
Disciplinas de Apoio
Gerência deMapeamento do Processo Identificação do Problema Análise do Problema Análise do Negócio Viabilidade Produção e Gerência de Requisitos Definição dos Objetivos Proposta de Solução Funcionalidades e Recursos Definição e Controle dos Requisitos Engenharia de Requisitos Descrição do Processo
QUEM? Quem é o cliente ou usuário ou beneficiário do processo? Quem executa? Quem Gerencia?
O QUÊ? Quais são as entradas e saídas do processo? Quais são os recursos ou ferramentas? Quais são os problemas?
QUANDO? Quando é planejado o processo?
ONDE? Onde é planejado o processo? Onde é executado?
POR QUÊ? Por que ou para que este processo existe
COMO Como é executado? Como as informações são registradas e disseminadas?
Como é avaliada a satisfação do cliente?
ZOPP
Mapeamento
a) Analise do Negócio
b) Análise de Requisitos
c) Prototipação
d) Modelagem de Requisitos
e) Modelagem de Dados
DAN DDR Prototipo Modelagem Lógica Teste Problema Solução Requisito Funcional Requisitos de Dados Regra de
Execução Formulário Caso de Uso Tabelas
Especificação de Requisitos Código Caso de Teste
Método iRON
RASTREABILIDADE
RastreabilidadeTipos de Requisitos de Software do
iRON
• Funcionais (
ações
)
• Ex.: O sistema deve gerar extrato bancário
• Dados (
atributos da ação
)
• Ex.: O sistema deve gerar extrato bancário contendo
nome, hora, data, saldo e movimentação
• Regras de Execução (
condição da ação
)
• Ex.: Quando o sistema gerar o extrato bancário o sistema
deve apresentar a movimentação dos 5 último dias
• Não Funcionais (Norma ISO 9126 -
Qualidade
)
• Ex.: Quando o sistema gerar o extrato bancário o sistema
1) Contextualização
● Causas de fracasso em projetos de software 2) Método iRON
● Engenharia de requisitos
● Princípios norteadores
● Estrutura do método
3) Estudo de caso
● Visão geral do emprego do iRon
4) Debates e análise de casosDesafios e Problemas
DAN DDR Prototipo Modelagem Lógica Teste Problema Solucao Requisito Funcional Requisitos de Dados Regra de
Execução Formulario Caso de Uso Tabelas
Especificação de Requisitos Código Caso de Teste Rastreabilidade Clientes Técnicos Especificação dos Requisitos Definição dos Requisitos Documentação Processo
• Visão Geral do uso do método iRON
1. Analise de Negócio 2. Mapeamento do processo 3. Analise de Requisitos 4. Rastreabilidade 5. Prototipação 6. Modelagem de Requisitos 7. Modelagem de Dados 8. Métrica de Software“A Editora ABC trabalha com diversos autores que escrevem livros para ela publicar. Alguns autores escrevem apenas um livro, enquanto outros escrevem muitos. Além disso, alguns livros são escritos por diversos autores. Mensalmente é enviado às livrarias um catálogo com o nome dos livros lançados e seus respectivos autores. Esse catálogo é organizado por assunto para facilitar a divulgação.
Informações sobre a cota de compra de cada livraria são modificadas a cada três meses, de acordo com a média de compra no trimestre solicitada pela livraria. Uma carta é enviada à livraria anunciando a nova cota em cada assunto e os descontos especiais que lhe serão concedidos para comprar em quantidades maiores.
Aos autores dos dez livros mais vendidos no ano, a Editora ABC oferece prêmios. A festa de premiação é anunciada com dez dias de antecedência, por meio de publicação em jornal dos dez livros mais vendidos, com seus respectivos autores.”
Subprocesso Gerar
Sub-Processo Gerar Catálogo (Requisitos Funcionais)
RF01 – O Sistema deve cadastrar autor (RD01)
RF02 – O sistema deve cadastrar livro (RD02) (RNG01) RF03 – O sistema deve cadastrar as livrarias (RD03) RF15 - O sistema deve registrar publicação (RD14)
RF04 – O sistema deve gerar catalogo de lançamento de livros (RD04) (RNG02) (RNG03)
Sub-Processo Gerar Catálogo (Requisitos de Dados)
RD01 – O sistema deve cadastrar autor contendo nome, endereço, telefone (RF01)
RD02 – O sistema deve cadastrar livro contendo o nome do livro, assunto e seu(s) respectivo(s) autor(es) (RF02)
RD03 – O sistema deve cadastrar livraria contendo nome da livraria, endereço, telefone e cota (RF03) RD04 – O sistema deve gerar catalogo contendo nome do livro, assunto, data publicação, e autor (RF04)
RD15 - O sistema deve registrar publicação contendo nome do livro, data de publicação, assunto e seu(s) respectivo(s) autor(es) (RF15)
Sub-Processo Gerar Catálogo (Regra de Execução)
RE01 – Quando o livro for cadastrado o sistema deve permitir cadastrar um ou mais autores (RF02) RE02 – Quando o catalogo de lançamento do livro for gerado o sistema deve organizar por assunto (RF03)
RE03 – Quando o catalogo de lançamento do livro for gerado o sistema deve verificar se o período é de 30 dias (RF03)
DAN DDR Prototipo Modelagem Lógica Teste Problema Solucao Requisito Funcional Requisitos de Dados Regra de
Execução Formulario Caso de Uso Tabelas
Especificação
de Requisitos Código
Caso de Teste
Identificador Requisito Funcional Requisito Complement ar Regra de Negócio RF01 O sistema deve permitir cadastrar usuário RD01 RE01 RF02 O sistema deve cadastrar autor RD02
RF03 O sistema deve cadastrar livro RD03 RE02 RF04 O sistema deve cadastrar Livraria RD04
DER criado após a análise de alguns requisitos funcionais
Identificador: Requisitos Funcional
RD01 – O sistema deve cadastrar o usuário pelos seguintes atributos. RF01 / RFXX
Nome O S E Descrição Exemplo Tipo Nome usuário x x Atributo que representa o nome completo do usuário Pedro Silva Motta. A Login x x Atributo que representa o login do usuário. Este atributo é utilizado para efetuar o login no sistema. PedroSM A Senha x x Atributo que representa a senha do usuário. Este atributo é utilizado para efetuar o login no sistema. 12345678 A Data de cadastramento x Atributo que representa a data do cadastramento do usuário a ser identificado pelo sistema 17/11/2002 D Status x x Atributo que representa o status do usuário. I ou A --CPF x x Atributo que representa o número do cadastro da pessoa física do usuário. 021.058.194-08 N RG x Atributo que representa o número do registro geral do usuário. 1.487.599 N UF do RG x Atributo que representa a unidade da federação de expedição do RG do usuário. DF, BA, RR. C Órgão expedidor do RG x Atributo que representa o órgão que expediu o RG do usuário. SSP/DF C e-mail x Atributo que representa um e-mail do usuário. [email protected] A
RD02 – O sistema deve cadastrar o autor pelos seguintes atributos. RF02 / RFXX
Nome O S E Descrição Exemplo Nome Autor x Atributo que representa o nome completo do autor Pedro Silva Motta. Unidade Federação - UF x x Atributo que representa a unidade da federação do endereço do autor DF, BA, RJ, SP Cidade x x Atributo que representa a cidade do endereço do autor São Paulo
Endereço x x Endereço do autor SQN 216 BL V APT 326 Bairro x x Bairro do endereço do autor Asa Norte
Município x x Município do endereço do autor
CEP x x CEP do endereço do autor 70000-000 Telefone residencial x Número do telefone residencial do autor (61) 3034-8457 Telefone Celular x Número do telefone celular do autor. (61) 9999-8877 e-mail x e-mail do autor [email protected]
RD03 – O sistema deve cadastrar o livro pelos os seguintes atributos RF03 / RFXX Nome O S E Descrição Exemplo
Título livro x x Atributo que representa o título do livro do autor. Qualidade de Software
Autor x x Atributo que representa o(s) autor(es) de um mesmo livro Ivan Mecenas e Viviane Oliveira Edição x x Atributo que representa a edição do livro 3ª.
Editora x x Atributo que representa a editora do livro Atlas Ano x x Atributo que representa o ano da edição do livro 2010
ISBN x x Atributo que representa o código ISBN (International Standard Book Number) 978-85-7194-312-4
DER atualizado após a análise dos Requisitos de dados
Identificação da regra de execução
Descrição da regra de execução
RE01 Quando o livro for cadastrado o sistema deve permitir cadastrar um ou mais autores
RE08 Quando cadastrar o premio o sistema deve permitir relacionar prêmio ao autor
Regras de execução consideradas
DER atualizado após a análise das regras de execução
O iRON sugere a utilização da APF e da NESMA para mensuração do tamanho do software no processo de produção de requisitos.
Outras métricas de tamanho podem ser utilizadas, pois o método iRON possibilita a identificação de todos os dados necessários para a mensuração inicial e final.
Após a elaboração do DAN pode-se realizar a contagem estimada (Nesma), e após a elaboração da DDR realizar-se-ia a contagem detalhada (IFPUG).
Para realizar a contagem estimada do estudo de caso da Editora ABC, analisa-se o modelo de dados e os requisitos funcionais que facilitam a identificação dos ALIS e AIES.
Identificação dos ALI, Dados de código e Dados de referência do modelo de dados da Editora ABC
Pela
Contagem Estimada
tem-se o valor de 7 PF x 5 ALIS
computando o total de 35 PF e 7 PF para o dado de
referência.
Ao todo são
42 PF
correspondentes as
funções de dados
.
Não existem AIES nesse estudo de caso.
Com relação as funções transacionais, o quadro apresenta parte dos requisitos funcionais.
Essa tabela permite identificar inicialmente as EE, SE e CE.
Seriam inicialmente 6 EE. Na contagem estimativa cada EE recebe 4 PF. Assim teríamos 6 EE x 4 PF = 24 PF.
A contagem estimada até o momento é de 42 PF + 24 PF = 66 PF.
Identificador Requisito Funcional Requisito de Dado
Regra de Execução
RF01 O sistema deve incluir usuário RD01 RE01 RF02 O sistema deve incluir autor RD02
RF03 O sistema deve incluir livro RD03 RE02 RF04 O sistema deve permitir alterar usuário RD01 RE01 RF05 O sistema deve permitir excluir usuário RD04 RE03
RF06 O sistema deve permitir incluir premio RD05 RE08
Parte dos requisitos funcionais da Editora ABC
1) Contextualização
● Causas de fracasso em projetos de software 2) Método iRON ● Engenharia de requisitos ● Princípios norteadores ● Estrutura do método 3) Estudo de caso
● Visão geral do emprego do iRon
Ferramenta
iRON Explorer
Tela principal da Ferramenta iRON Explorer
PROBLEMA OBJETIVO GERAL OBJETIVOS ESPECÍFICOS FUNCIONALIDADES REQUISITOS FUNCIONAIS REQUISITOS DE DADOSMENSAGENS REGRAS DE EXECUÇÃO
DOCUMENTO DE ANÁLISE DO NEGÓCIO (DAN)
Artefatos:
• Documento de Análise de Negócio – DAN
• Descrição e mapeamento do processo• Definição do problema e proposta de solução
• Documento de Definição de Requisitos – DDR
• Requisitos de software• Rastreabilidade • Prototipação