viewpoint (trabalho nº 2) engenharia de software docente: eng. isabel brito realizado por: marisa...

21
ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos, nº 3767 Ano Lectivo 2004 / 2005 Engenharia Informática

Upload: internet

Post on 17-Apr-2015

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

ViewPoint(Trabalho Nº 2)

Engenharia de SoftwareDocente: Eng. Isabel Brito

Realizado Por: Marisa Campos, nº 3794

Pedro Silva, nº 3583

Ricardo santos, nº 3767

Ano Lectivo 2004 / 2005

Engenharia Informática

Page 2: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

2

:: Introdução ::

Este trabalho tem como objectivo a caracterização geral de viewpoints.

O viewpoint é utilizado para fazer uma melhor caracterização dos problemas, ou seja, aborda um problema ou sistema de perspectivas diferentes para posteriormente serem analisadas por meio de um “viewpoint template” que consiste em descrever os atributos, eventos, serviços e sub-viewpoints.

Neste trabalho iremos dar exemplos da utilização dos viewpoints.

Page 3: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

3

:: O que é o ViewPoint ::

Viewpoints são uma forma natural para estruturar a elicitação de requisitos.

Os viewpoints são uma parte da engenharia de requisitos.

Os viewpoints estão divididos em duas classes:

ViewPoints directos - correspondem directamente aos clientes, que recebem e enviam informações para o sistema

ViewPoints indirectos - são aqueles que estão ligados ao sistema mas não interagem com ele

Page 4: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

4

:: Exemplo das Classes dos ViewPoints ::

Viewpoint

Direct

Indirect

System

Operator

Regulatory

Organisation

Engineering

Environment

Maintenance

Standards

Page 5: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

5

:: Tipos de ViewPoints ::

Fontes ou destinos de dados

Viewpoints são responsáveis pela produção ou consumo de dadosExemplo: usado no SADT

Frameworks de representação

Viewpoints representam tipos particulares de modelos do sistema. Estes podem ser comparados afim de descobrir requisitos que seriam omitidos se fosse usada apenas um representação

Exemplo: DEA, DTE

Recebedores de serviços

Viewpoints são externos ao sistema e recebem serviços dele. Adequado para sistemas interactivos

Exemplo: VORD

Page 6: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

6

:: Método VORD(1) :: Identificação dos viewpoints

Descobrir viewpoints que utilizam serviços do sistema e identificar os serviços acedidos por cada viewpoint.

Estruturar os viewpoints

Agrupar viewpoints relacionados numa hierarquia. Serviços comuns estão localizados nos níveis mais altos da hierarquia.

Documentação dos viewpoints

Refinar a descrição dos viewpoints e serviços identificados

Mapeamento viewpoint - Sistema

Transformar a anáise num desenho Object Oriented

Page 7: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

7

Identificação deviewpoints

Estruturar viewpoints

Documentar viewpoints

Mapearviewpoints

:: Método VORD(2) ::

Page 8: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

8

:: ViewPoint Template(1) ::

VORD usa templates padrão padrão para guardar informações dos viewpoints. O template engloba:

Um numero identificador do viewpoint

Nome do viewpoint

Descrição do problema em questão

Tipos de viewpoint

OS atributos do problema que descrevem a evolução do viewpoint

Especificação das subclasses dos viewpoints

Cenários que descrevem a interacção entre o viewpoint e o sistema

Page 9: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

9

:: ViewPoint Template(2) ::

Identifier:Label:Description:Type:Attributes:Requirements:Event scenariosSpecializations:History

Identifier:Label:Description:Structuraldefinition:

Identifier:Statement:Rationale:Type:Source:Priority:Specification:Version:

Identifier:Service identifier:Description:Graphical scenario:

*

Viewpoint template

Page 10: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

10

:: Notação dos ViewPoints(1) ::

VORD usa uma notação gráfica muito simples para representar os viewpoints:

Uma caixa rectangular que representa o viewpoint

O identificador do viewpoint é colocado no canto superior esquerdo da caixa e o nome do viewpoint é colocado na parte debaixo do rectângulo

O atributo é indicado através de uma linha vertical do lado esquerdo da caixa do rectângulo

O tipo de viewpoint aparece no topo do lado direito

As subclasses do ViewPoint aparecem da esquerda para a direita

Page 11: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

11

Label

n Type

n.1

n.2

[m | attribute]

Viewpoint identifier

attribute list

Generalisation

:: Notação dos ViewPoints(2) ::

Page 12: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

12

:: Identificação dos ViewPoints ATM(1) ::

O processo de compreensão do sistema em analise, deve ser extremamente seguro uma vez que vai tratar de dinheiro:

Existem pessoas ou documentos relacionados com a aplicação.

Incluem sistemas de utilizadores finais, procedimentos de sistemas, engenheiros de sistemas e documentação dos sistemas existentes.

VORD é uma maneira e generalizar o sistema em classes do tipo abstracto que podem ser utilizadas de forma a determinar os viewpoints do problema em questão

Page 13: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

13

:: Identificação dos ViewPoints ATM(2) ::

Bank customer

Home customer Security officer

Bank

Bank staff

Bank manager

Bank teller

ATM operator

Customer database

Card database

2 Operator

2.1

Foreign customer

Bank customer2.2

Bank customer

1 Operator

Bank staff1.1

Bank staff1.2

Bank staff1.3

3 Organisation

4 Organisation

System5

System6

Page 14: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

14

:: Exemplo de um ViewPoint(1) :: Identificação de ViewPoints

Querybalance

Gettransactions

Cashwithdrawal

Transactionlog

Machinesupplies

Cardreturning

Remotesoftwareupgrade

Ordercheques

Userinterface

Accountinformation

Messagelog

Softwaresize Invalid

userSystem cost Printe

r Security

Cardretention

Stolencard

Orderstatement

Remotediagnostics

ReliabilityUpdateaccount

Fundstransfer

Messagepassing

Cardvalidation

Customerdatabase

Manager

Accountholder

Foreigncustomer

Hardwaremaintenance

Bankteller

Page 15: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

15

:: Exemplo de um ViewPoint(2) :: Serviços dos ViewPoints

FOREIGNCUSTOMER

Withdraw cashQuery balance

Service list

Withdraw cashQuery balanceOrder chequesSend messageTransaction listOrder statementTransfer funds

Service list

Run diagnosticsAdd cashAdd paperSend message

Service list

ACCOUNTHOLDER

BANKTELLER

Page 16: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

16

Dados e Controle do ViewPoint

:: Exemplo de um ViewPoint(3) ::

Start transactionCancel transactionEnd transactionSelect service

Card detailsPINAmount requiredMessage

Control input Data inputACCOUNTHOLDER

Page 17: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

17

:: Exemplo de um ViewPoint(4) :: Dados e Controle do ViewPoint

EngineerManagerTellerForeign

customerAccountholder

Services

Order chequesSend messageTransaction listOrder statementTransfer funds

Customer Bank staff

All VPs

Services

Query balanceWithdraw cash

Page 18: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

18

:: Exemplo de um ViewPoint(5) :: Templates para Clientes / Levantamento

Customer

Account numberPINStart transactionSelect serviceCanceltransactionEnd transaction

Cash withdrawalBalance enquiry

Account holderForeigncustomer

Reference:

Attributes:

Events:

Services:

Sub-VPs:

Cash withdrawal

To improve customer serviceand reduce paperwork

Users choose this service bypressing the cash withdrawalbutton. They then enter theamount required. This isconfirmed and, if funds allow,the balance is delivered.

Customer

Deliver cash within 1 minuteof amount being confirmed

Filled in later

Reference:

Rationale:

Specification:

VPs:

Non-funct.requirements:

Provider:

Page 19: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

19

:: Relação com a Engenharia de Software ::

Ambos utilizam o mesmo tipo de templates para uma melhor abordagem ao problema em análise

O Diagrama de classes da Engenharia de Software é muito semelhante aos serviços dos ViewPoints.

Page 20: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

20

:: Conclusão ::

Neste trabalho tentámos fazer uma aproximação ao desenvolvimento de software através do uso de ViewPoints.

Acreditamos que os ViewPoints facilitam a tomada de decisão para determinados problemas porque apresentam diversas formas de os visualizar.

Page 21: ViewPoint (Trabalho Nº 2) Engenharia de Software Docente: Eng. Isabel Brito Realizado Por: Marisa Campos, nº 3794 Pedro Silva, nº 3583 Ricardo santos,

21

:: Referencias :: Internet

www.woorisol.kyungpook.ac.kr www.cs.toronto.edu www.cs.pitt.edu www.di.inf.puc-rio.br

Livros Sommerville, Ian, “Software Engineering”, Fifth edition, Addison- Wesley Software Development”. In: Workshop on Aspect-Oriented Modeling with

UML, 2003, Boston. Araújo, J., et al. “Identifying aspectual use cases using a viewpoint-oriented

requirements method” In: Aspect-Oriented Requirements Engineering and Architecture Design, Boston, 2003.

Bertagnolli, S. C., and Lisbôa, M. L. B. “Improving the Quality of the Software through Aspects”. In: Argentine Symposium on Software Enginnering, 2003, Buenos Aires.

Bertagnolli, S. C., and Lisbôa, M. L. B. “The FRIDA Model.” In: Analysis Aspect- Oriented Software, Germany, 2003. (Held in conjunction with ECOOP 2003).

Acetatos Cedidos pela Professora