Aula T04 – Modelação Conceptual

Slides:



Advertisements
Apresentações semelhantes
Modelo de Casos de Uso Diagrama de Casos de Uso
Advertisements

Orientação a objetos identidade abstração classificação encapsulamento
Análise e Projeto Orientado a Objetos
Introdução à Programação: uma Abordagem Funcional PD I – Engenharia Elétrica Prof.ª Claudia Boeres 2008/2.
Gerenciamento de Projetos
Requisitos de Software
Engenharia de Software
APSOO Aula 03.
Rational Unified Process
(Unified Modeling Language)
E-business: Como as Empresas Usam os Sistemas de Informação.
> Fases de Engenharia de SW > Gestão de Projectos de SW
Rational Unified Process(RUP)
Projeto de Sistemas de Software
Metodologias Equipe do Curso de ES para SMA
Linguagens de Modelagem para SMA
SISTEMA DE INFORMAÇÕES DESENVOLVIMENTO DE SISTEMAS
O processo de coletar os requisitos (escopo do cliente)
Análise e Projeto de Sistemas
Sistemas de Informação
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Conceitos Básicos.
Especificação de Requisitos de Software com Casos de Uso
Aula T01 – Modelação de Sistemas
Modelação Aula T02 – Modelação Conceptual
Modelação Conceptual de Sistemas
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
Processos de Desenvolvimento de Software – Parte 2
UML – Diagrama de Classes
IEEE Std IEEE Melhores Práticas para Especificações de Requisitos de Software (ERS)
Modelação Conceptual de Sistemas
Extending And Formalizing The Framework For Information Style Architecture J. F. Sowa J. A. Zachman.
Modelação Aula T01 – Modelação de Sistemas Referência: –Conceptual Modeling of Information Systems (Capítulo 1) José Borbinha.
Análise e Projeto de Sistemas
LABORATÓRIOS DE INFORMÁTICA IV ENGENHARIA DE SOFTWARE: DA TEORIA À PRÁTICA GRUPO 13.
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Caso de Uso - Definição Um caso de uso é uma descrição narrativa de uma seqüência de eventos que ocorre quando um ator (agente externo) usa um sistema.
Casos de Uso no Engenharia de Software e Sistemas {abab, dtvp, jmmn, mscla, rmb2,
Modelação Aula T07 Modelação Conceptual
Análise de Sistemas de Informação
Bruno Silva Desenvolvido a partir de
UML Diagrama de Caso de Uso Profª. Marcelo Siedler
GERENCIAMENTO DE PROJETOS DE T.I
METODOLOGIA, MÉTODOS E FERRAMENTAS
Laboratório de Programação
Requisitos de Software
Técnicas e Projeto de Sistemas
Modelando Sistemas em UML
Fluxos secundários Só devem ser analisados e descritos após a descrição dos fluxos básicos. Fluxos alternativos situações especiais (desconto para um cliente)
Casos de Uso Tarciane Andrade
Sistemas de informação (nome da nossa disciplina)
Linguagem de Modelagem Unificada
ATSI 2006/2007 Aulas práticas. Plano da Aulas Práticas de ACSI 7 Março- Apresentação. Exemplos de projectos de anos anteriores Março- Introdução.
Alberto Silva / José Borbinha
Alberto Silva / José Borbinha
1 Planeamento:PSI > gera PDI,PDS,PDSI, Redesenho da organização com os SI Redesenho da organização através do planeamento e desenvolvimento dos SI Planeamento.
Modelação Aula T15 Modelação Conceptual de Sistemas Revisão do Comportamento OCL – Object Constraint Language José Borbinha.
Análise e Concepção de Sistemas de Informação
Modelação Aula T13 Modelação Conceptual de Sistemas Comportamento Referências: –Conceptual Modeling of Information Systems (Capítulos 11, 12, 13 e 14)
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
Projeto de Banco de Dados
Eugenio García ARTech Workflow: moda, re-branding, ou necessidade real?
Modelagem de Sistemas Orientada a Objeto Com UML
Aula 02 de Eng. de Requisitos
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
Aula 04 – Analise de Sistemas Profª Rita de Cassia Gaieski
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.
CMMI Capability Maturity Model Integration
Transcrição da apresentação:

Aula T04 – Modelação Conceptual Contexto e Domínio Referências: Conceptual Modeling of Information Systems (Capítulos 1 e 15) UML, Metodologias e Ferramentas CASE (Capítulos 1, 2 e 5) José Borbinha

Programa Modelação Conceptual de Sistemas T04: Contexto e Domínio T01-T03 – Módulo 1 Introdução à Modelação de Sistemas T04-T07 – Módulo 2 Modelação Conceptual de Sistemas T04: Contexto e Domínio Contexto; Domínio e Universo do Discurso Casos de Uso; “Stakeholders”; Actores e “roles” T08-T11 – Módulo 3 Ontologias T12-T15 – Módulo 4 Modelação de Sistemas: Dinâmica T16-T18 – Módulo 5 Modelação de Sistemas: Arquitectura T19-T25 – Módulo 6 Temas avançados Modelação

Contexto Modelação

...Sistema?... (da aula T01) Uma definição de sistema: um conjunto entidades que interagem entre si com o objectivo de atingir um determinado objectivo. Regra geral o objectivo de um sistema é a sua sobrevivência, o que pode ser levado à letra no caso dos sistemas biológicos, mas também em qualquer outro contexto (um sistema solar é sistema enquanto conseguir manter o seu equilíbrio, tal como uma organização, uma máquina, ...) Esta definição aplicada a um “sistema de informação” pode resultar em algo como: um conjunto de entidades (humanas e tecnológicas) interagindo entre si com o objectivo de satisfazer adequadamente as necessidades de informação de uma organização e respectivos processos de negócio! Modelação

Contexto (Negócio, Processos e Sistemas...) ...Os Processos... Processo A Processo B Processo C Processo D Processo A Processo B Processo C Processo D ! !! !!! Requisitos para o Sistema de Informação ...O Sistema de Informação Sistema x Sistema y Sistema z ... Componente 1 Componente 3 Modelação

Processo de negócio... Um processo de negócio pretende representar uma sequência de actividades que devem processar vários inputs e produzir vários outputs, e que devem ser executadas com determinados objectivos. Um processo de negócio pode ser realizado automaticamente por máquinas, por pessoas, ou por uma combinação de ambos. Exemplos de processos de negócio: a contratação de um empregado a inscrição numa cadeira no IST a reserva de uma viagem de avião Modelação

Processos de negócio... Information may come from external sources, from customers, from internal organisational units and may even be the product of other processes. A resource is an input to a business process, and, unlike information, is typically consumed during the processing. An event is the receipt of some object, a time or date reached, a notification or some other trigger that initiates the business process. The event may be consumed and transformed (for example a customer order) or simply act as a catalyst (e.g. nightly batch job). An output may be a physical object (such as a report or invoice), a transformation of raw resources into a new arrangement (a daily schedule or roster) or an overall business result such as completing a customer order. (a goal) is the reason the organization does (a process), and should be defined in terms of the benefits this process has for the organization as a whole and in satisfying the business needs. Modelação http://www.sparxsystems.com/EAUserGuide/index.html?businessmodelling.htm

Sistemas de Informação (uma classificação geral clássica) Tipo de Sistemas Exemplos Operacionais (reduzir custos operacionais) Facturação, Gestão de encomendas, Contabilidade geral, Gestão de armazéns, Pagamento de Salários Tácticos (satisfazer necessidades de informação para decisões prementes) Análise de vendas, Controlo orçamental, Contabilidade analítica, Gestão de inventário, Análise da qualidade Estratégicos (contribuir para a criação de novos produtos e serviços) Previsão de vendas, Planeamento da produção, Planeamento recursos humanos, Previsão de receitas e custos, Planeamento Financeiro Modelação

Tipos de Sistemas de Informação Laudon (Management Information Systems) 8/e Chapter 2 Information Systems in the Enterprise) Tipos de Sistemas de Informação Mais em AOSIE... Modelação © 2004 PRATICE HALL

Sistemas de Informação... Planeamento Estratégico de Sistemas de Informação: processo cuja finalidade é garantir o alinhamento dos sistemas de informação com os objectivos do negócio ou processo de decidir os objectivos para a função informática e identificar as aplicações informáticas potenciais requeridas Modelação

Arquitectura Empresarial (recordando a aula passada)... “conjunto de representações descritivas (modelos) relevantes para a descrição de um objecto de forma a que este possa ser elaborado de acordo com os requisitos (de qualidade) e mantido ao longo da sua vida útil” Zachman, 87. Definição genérica... Refere-se quer aos sistemas de informação quer à organização, uma vez que o mesmo modelo apresenta relativamente a cada conceito a perspectiva do negócio e dos sistemas de informação!!! A Framework de Zachman é assim uma estrutura lógica de classificação e apresentação dos modelos: de uma organização relevantes para a respectiva gestão desenvolvimento dos seus sistemas Modelação

Arquitectura Empresarial... Mais em APFSI ... Modelação

Sobre Eng.ª de SW e processo de desenvolvimento de sistemas Concepção do Sistema Especificação de Requisitos: descrição do problema na óptica do cliente. Análise: descrição do problema na óptica do engenheiro de sistema Desenho: especificação da solução em termos da plataforma e tecnologia computacional usada. Desenvolvimento e Manutenção do Sistema Concretização da solução desenhada... Testes ... Aceitação ... Manutenção ... Modelação

Sobre Eng.ª de SW e processo de desenvolvimento de sistemas Concepção do Sistema Especificação de Requisitos: descrição do problema na óptica do cliente. Análise: descrição do problema na óptica do engenheiro de sistema Desenho: especificação da solução em termos da plataforma e tecnologia computacional usada. Desenvolvimento e Manutenção do Sistema Concretização da solução desenhada... Testes ... Aceitação ... Manutenção ... Modelação

Sobre Modelação e Eng.ª de Software Engenharia de Software é a aplicação de um processo sistemático, disciplinado, e quantificado ao desenvolvimento, operação e manutenção de software; ou seja, a aplicação de técnicas de engenharia ao software (IEEE, 93) As actividades da Eng.ª de Software podem ser agrupadas em três grandes fases: concepção, implementação e manutenção A concepção de um sistema é efectuada sobre os requisitos, os quais por sua vez derivam dos objectivos de negócio. É nesta fase que a modelação é especial importante. Após a concepção de um sistema (na visão da Arquitectura empresarial) procede-se então à concepção do software (na concepção da Eng.ª de Software) Modelação

Universo do Discurso Modelação

Modelação Conceptual !!! “Na área de sistemas de informação usamos o termo Modelação Conceptual para a actividade de descoberta e descrição do conhecimento geral que um determinado sistema de informação necessita ter” (Conceptual Modeling of Information Systems, pag. xi) Nota de tradução importante “elicit” ≈ deduzir, descobrir, obter gradualmente “elicit” ≠ licitar !!! Modelação

De volta à definição de sistema Considera-se que um sistema tem três funções principais: Memória: manter a representação do estado de um domínio Informar: dar informação (ao exterior) sobre o estado de um domínio Actuar: agir para mudar o estado de um domínio (Conceptual Modeling of Information Systems, pag. 3) Modelação

Domínio ??? Um domínio é o fragmento do mundo real sobre o qual é focada a tarefa de modelação e construção de um sistema. Exemplos de domínios: Sistema bancário nacional Sistema universitário nacional O futebol ... Geralmente ao domínio também se dá o nome de universo do discurso (UoD = “Universe of Discourse”) Modelação

Domínio / UoD Na área de sistemas de informação assumimos que um domínio consiste num número de objectos e de relações entre eles, que são classificadas em conceitos. O estado de um dado domínio, num dado momento, consiste assim num grupo de objectos, num grupo de relações, e num conjunto de conceitos segundo os quais esses objectos e relações são classificados. (Conceptual Modeling of Information Systems, pag. 10) Classificação é o processo que associa um objecto do domínio a um conceito do domínio. Modelação

Conceitos Um conceito é algo que concebemos no nosso entendimento através da generalização de certas instâncias. Um conceito tem intenção e extensão: Intenção são as propriedades partilhadas por todas as instâncias Extensão são todas as possíveis instâncias desse conceito (Conceptual Modeling of Information Systems, pag. 12) Modelação

Esquemas Conceptuais A especificação do conjunto de conceitos de um domínio é o esquema conceptual desse domínio Para um mesmo domínio podemos definir mais que um esquema conceptual, dependendo da perspectiva e dos objectivos... Modelação

Esquemas Conceptuais mais em detalhe O modelo de um domínio, do sistema, ou base de informação*, são as entidades e relações desse domínio (conceito a desenvolver nas próximas duas aulas...) *Termo usado em “Conceptual Modeling of Information Systems” A descrição do modelo de domínio de um sistema é o esquema estrutural desse sistema. O esquema de comportamento especifica as acções válidas e as mudanças no estado do domínio que o sistema pode executar (a desenvolver mais adiante no semestre...) Ao conjunto formado pelo esquema estrutural e pelo esquema de comportamento de um sistema dá-se o nome de esquema conceptual. Modelação

De volta ao Sistema e Processos de Negócio Para poder cumprir as suas funções Memória, Informar e Actuar, um sistema necessita de ter conhecimento do seu domínio e das funções que tem de executar. Isto é, temos de definir o estado que o sistema deve representar e as suas regras de consistência de representação (função Memória) e as mudanças potenciais de ocorrer nesse estado (função Actuar). Finalmente, temos ainda de garantir ao sistema capacidade de inferência sobre o seu estado (função Informar). Processos de negócio são assim sequências de acções (função Actuar) desencadeadas com base na informação fornecida por um sistema (função Informar) e que têm como objectivo alterar o estado do sistema (função Memória) Modelação

Modelos Um modelo é uma interpretação de um sistema segundo um determinado ponto de vista, envolvendo a sua especificação a um certo nível de abstracção e de detalhe. Linguagem de Modelação É a estruturação e especificação da estrutura de conceitos segundo uma ou mais linguagens. Linguagens podem ser formais ou informais, textuais ou gráficas. No caso de linguagens de modelação gráficas, a notação consiste na apresentação visual dos diferentes elementos da estrutura de conceitos subjacente. Modelação

Esquemas Um esquema é a especificação de um modelo usando uma determinada linguagem, a qual pode ser formal, informal (e.g., linguagem natural); de texto, gráfica, ... Quando a representação do esquema é gráfica designa-se usualmente por diagrama. Modelação

UoD, Entidades do Modelo e Esquemas Mundo Real gap semântico dono homem carro lar casa Estrutura de Conceitos Esquema textual Esquema gráfico Modelação

Casos de Uso Modelação

Casos de Uso Relembrando: Ao conjunto formado pelo esquema estrutural e pelo esquema de comportamento de um sistema dá-se o nome de esquema conceptual Por outras palavras, um esquema conceptual define o conhecimento geral que um sistema precisa para executar as suas funções. Mas quais são essas funções e qual é o conhecimento requeridos para as executar? Essa informação é representada, ao mais alto nível, por casos de uso (“use cases”). Modelação

Casos de Usos Um caso se uso representa um conjunto de acções que um ou mais actores realizam num sistema para obter um resultado concreto Um caso de uso representa uma visão externa do sistema descreve o que faz um sistema (ou parte deste), não descreve como é que tal é realizado Modelação

Casos de Uso Um caso de uso deve ser representado num modo impessoal, por uma frase na voz activa, com um verbo no infinitivo (“Gerar relatórios”, “Criar factura”, “Calibrar roda”) Modelação

Actores Um Actor representa uma papel (“role”) que um utilizador pode desempenhar relativamente ao sistema a modelar. Um mesmo utilizador nominal pode desempenhar diferentes papéis, podendo, por conseguinte, representar conceptualmente diferentes actores (desempenhar vários “roles”). Um actor de um sistema pode ser um ser humano ou outro sistema! Cliente Administrador Alarme Modelação

Casos de uso e Cenários Um cenário é uma instância de um caso de uso quando este interactua com os actores. Representa assim uma sequência de acções concreta que ilustra um comportamento do sistema. É normal que um caso de uso possa ser descrito por vários cenários Tipos de cenários: Principal: descreve a sequência normal de acções (“happy day scenario”) Alternativo ou secundário: descreve uma sequência de acções a considerar para além da principal, o que pode acontecer devido a excepções ou apenas para outras acções possíveis Modelação

Casos de uso e Cenários - Exemplos Cenário principal do caso de uso “Fazer encomenda” O caso inicia-se quando o cliente selecciona “Fazer encomenda” O cliente introduz nome e endereço O cliente introduz códigos dos produtos desejados O sistema fornece descrição e preço dos produtos O cliente selecciona os produtos desejados O cliente fornece informação do cartão de crédito O cliente submete o pedido O sistema verifica a informação Quando o pagamento é confirmado é criado e apresentado ao cliente um código de encomenda. Caso termina Cenários secundários do caso de uso “Fazer encomenda” Informação do cartão de crédito incorrecta Pedido incompleto Cliente pretende pagar por cheque Cliente requer atendimento especial Endereço de entrega incompleto Produto já não comercializado Produto não existe em armazém Produto em promoção Modelação

Casos de Uso: Descrição Textual Pode-se especificar um caso de uso descrevendo textualmente o fluxo de eventos, de modo a que qualquer pessoa o possa entender. Tal especificação deve incluir: Assunções Pré-condições Inicialização: como e quando o caso de utilização começa Diálogo: quando é que o caso de utilização interactua com os actores Conclusão: como e quando o caso de utilização termina Pós-condições Para estas descrições deve usar-se “templates” Modelação

Casos de Uso: Exemplo de uma ”template” Name UC-8: Search Summary All occurrences of a search term are replaced with replacement text. Rationale While editing a document, many users find that there is text somewhere in the file being edited that needs to be replaced, but searching for it manually by looking through the entire document is time-consuming and ineffective. The search-and-replace function allows the user to find it automatically and replace it with specified text. Sometimes this term is repeated in many places and needs to be replaced. Other times, only the first occurrence should be replaced. The user may also wish to simply find the location of that text without replacing it. Users All users Preconditions A document is loaded and being edited. Basic Course of Events The user indicates that the software is to perform a search-and-replace in the document. The software responds by requesting the search term and the replacement text. The user inputs the search term and replacement text and indicates that all occurrences are to be replaced. The software replaces all occurrences of the search term with the replacement text. Alternative Paths In step 3, the user indicates that only the first occurrence is to be replaced. In this case, the software finds the first occurrence of the search term in the document being edited and replaces it with the replacement text. The postcondition state is identical, except only the first occurrence is replaced, and the replacement text is highlighted. In step 3, the user indicates that the software is only to search and not replace, and does not specify replacement text. In this case, the software highlights the first occurrence of the search term and the use case ends. The user may decide to abort the search-and-replace operation at any time during steps 1, 2 or 3. In this case, the software returns to the precondition state. Postconditions All occurrences of the search term have been replaced with the replacement text. Modelação

Casos de Uso: Exemplo de uma representação por diagrama, em UML A Máquina de Bebidas Cliente Comprar Bebida Repor bebidas Dono Agente do Fornecedor «include» Abrir a Máquina «include» «include» Colector Retirar dinheiro Fechar a Máquina «include» Modelação

Casos de uso... ...a continuar na próxima aula, com a Engenharia de Requisitos... Modelação