Home
Metodologias e Projetos de Software
Contents
1. 182 Metodologias e Projetos de Software S ntese Nesta unidade voc aprendeu que um objeto algo que tem estado comportamento e identidade Uma classe uma defini o abstrata de um conjunto de objetos que compartilham uma estrutura e um comportamento comuns mas que todo sistema engloba muitos objetos que cooperam entre si para produzir a funcionalidade desejada A produ o das funcionalidades s poss vel pela exist ncia de diferentes tipos de relacionamentos como a associa o a depend ncia e a generaliza o Dentre as caracter sticas do relacionamento de associa o a multiplicidade uma das mais importantes A multiplicidade indica o n mero de inst ncias que participam desta associa o Voc tamb m viu que as opera es determinam como um objeto age e reage s mensagens que ele recebe e que poss vel agrupar estes objetos e classes em pacotes l gicos criando uma vis o mais clara sobre o sistema Voc tamb m estudou a import ncia de modelar o sistema em diferentes camadas como as camadas de controle fronteira e persistente Esta modelagem cuidadosa facilita futuras manuten es no seu projeto Em resumo esta unidade englobou conceitos e abstra es relacionadas aos aspectos est ticos do sistema Mas para o bom andamento do projeto necess rio ter uma vis o din mica destes objetos e exatamente este ponto que ser abordado na pr xima unidade Un
2. Revis es efetuadas para garantir que a qualidade seja mantida medida que cada etapa conclu da Documenta o desenvolvida e controlada para garantir que informa es completas sobre o software estejam dispon veis para uso posterior Controle das Mudan as institu do de forma que as mudan as possam ser aprovadas e acompanhadas pelos gerentes e pela equipe de projeto SE O 3 Modelo de desenvolvimento de software O processo de desenvolvimento apresentado na se o 2 um modelo gen rico isto significa que suas etapas s o aplic veis a qualquer modelo independente do paradigma de desenvolvimento utilizado As diferentes formas de proceder em rela o ao processo de desenvolvimento apresentam caracter sticas pr prias a cada modelo procurando adaptar se as diferentes necessidades das empresas desenvolvedoras de software ou mesmo ao tipo de sistema desenvolvido Metodologias e Projeto de Software PRESSMAN 2002 define o modelo de desenvolvimento como uma representa o abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software ser o conduzidas e inter relacionadas para atingir o objetivo do desenvolvimento do software Existem alguns modelos que est o a muitos anos conosco outros s o muito recentes D uma olhadinha a seguir nos mais conhecidos por sua utiliza o junto s empresas a Modelo Cascata No modelo cascata os sub pro
3. VIS O DE IMPLEMENTA O VIS O DE PROJETO e Diagrama de componentes e Diagrama de estado e Diagrama de atividades e Diagrama de sequ ncia e Diagrama de colabora o e Diagrama de classes e Diagrama de objetos e Diagrama de estados e Diagrama de atividade e Diagrama de segii ncia e Diagrama de colabora o Figura 4 2 As 5 vis es dos diagramas da UML Os aspectos est ticos do sistema s o capturados pelos diagramas de classes de objetos de componentes e de casos de uso os aspectos din micos pelos diagramas de estado de atividade de sequ ncia e de colabora o O modelo funcional suportado pelos diagramas de componente e execu o Unidade 4 103 Universidade do Sul de Santa Catarina escolha de alguma destas ferramentas fundamental para que voc continue seus estudos 104 SE O 5 Ferramentas Para modelar um sistema utilizando a nota o UML fundamental que voc utilize uma ferramenta que automatize o J Como a UML utiliza se de uma nota o gr fica uma O boa ferramenta agiliza o processo de constru o e recupera o da informa o As ferramentas dispon veis subdividem se na categoria software livre e demos s o ferramentas pagas que oferecem 30 dias para avalia o A seguir est o listadas algumas delas a Software Livre a Orqu dea http www umlnapratica com br orquidea orquidea php Orqu dea uma ferramenta CASE que
4. retirado de opera o ao final de sua vida til O que processo de software O Quando se fala em processo longo nos vem a mente uma seq ncia de passos para atingir um objetivo E como afirma P dua 2000 processo de software exatamente isto um conjunto de passos ordenados constitu dos por Unidade 1 21 22 Universidade do Sul de Santa Catarina atividades m todos pr tica e transforma es usado para atingir uma meta Como voc j deve estar imaginando processos podem ser definidos para atividades em todas as etapas do desenvolvimento de um software PRESSMAN 2002 sugere a divis o do desenvolvimento em tr s processos gen ricos acompanhe a figura O que Defini o Desenvolvimento Manuten o Figura 1 1 Etapas do desenvolvimento de software Fonte PRESSMAN 2002 Cada etapa pode ser detalhada como a Defini o primeira etapa constitui se por identificar quais informa es devem ser processadas qual fun o e desempenho s o desejados quais interfaces devem ser estabelecidas quais restri es de projeto existem ex o cliente precisa do software em 60 dias e quais crit rios de avalia o s o exigidos para se definir um sistema bem sucedido ex existem normas internacionais que devem ser obedecidas no ch o da f brica e devem ser incorporadas ao sistema A etapa de defini o se subdivide em Planejamento do projeto no
5. Cancelar Figura 8 7 DTE para matr cula de um curso Fonte Esmin 2005 Quando voc possui uma a o a a o possui um processo a transi o do estado A transi o de estado normalmente um processo de curta dura o e que n o pode ser interrompido Muitas vezes ao inv s de a es voc pode ter atividades relacionadas Quando isto acontece voc tamb m possui um processo associado mas o processo est associado a um estado O processo mais duradouro e a atividade pode ser eventualmente interrompida por um evento A condi o de guarda uma express o de valor l gico usada em uma transi o Voc pode definir a condi o O utilizando se par metros refer ncias e liga es da classe Observe na figura 8 7 S ser incluido um aluno no curso se contador for menor que 10 Unidade 8 211 Universidade do Sul de Santa Catarina Quando voc define uma condi o de guarda ela s disparada se o evento associado ocorrer e se a condi o for verdadeira A condi o de guarda sempre aparece no DTE com o uso de colchetes como por exemplo Realizar saque quantia Iquantia saldo sacar quantia No diagrama da figura 8 8 Lima 2004 apresenta um DTE para Pedidos O pedido pode ser confirmado ou cancelado pelo cliente O estado Pendente possui uma a o reflexiva Pedidos Pendentes Ao finalizar o Pedido o estado do Pedido estar alterado Evento Cliente cancPed
6. Resposta Ele um processo porque representa uma execu o uma fun o que deve ser executada no sistema para que o usu rio alcance seu objetivo que fazer o cadastro do paciente para a cl nica Quem s o as entidades externas ret ngulo para este processo Resposta S o todos os consumidores e criadores das informa es que este processo ir gerar Observe que para cadastrar um paciente necess rio que o paciente informe seus dados al m dele temos a atendente que vai inserir os dados do paciente no sistema Assim este processo tem no m nimo duas entidades externas Paciente e Atendente Por que Dados Paciente um dep sito de dados no diagrama Resposta Todas as informa es do paciente devem ser armazenadas no sistema se n o fosse assim o paciente teria que informar seus dados a cada consulta na clinica Para representar a armazenagem dos dados a nota o usada o dep sito de dados Portanto neste processo Figura 3 1 os dados do paciente representam um dep sito de dados onde as informa es do paciente ser o guardadas pelo sistema na cl nica Metodologias e Projetos de Softwares Seria assim a entidade externa informa seus dados para o processo Cadastrar Paciente nome endere o telefone a Atendente entidade externa por sua vez informa os dados ao processo cadastrar paciente por meio do fluxo de dados Ap s alimentarem o processo essas informa es s o transformadas
7. Um dos aspectos mais importantes a capacidade de ger ncia por meio de fases e milestones incorporados ao projeto Ao lado de suas vantagens tamb m temos limita es do m todo entre elas o fato do RUP n o abordar a gest o de pessoal e contratos como o fato da ferramenta ser um sistema de hipertexto dificultando as integra oes com outras ferramentas Talvez um dos fatores mais cr ticos do m todo seja o fato do m todo ser previsto para qualquer porte de empresa A implanta o em empresas de pequeno porte tem se mostrado no entanto dif cil pelo volume de responsabilidades e a quantidade de atividades de cada fluxo de atividade Quer conhecer mais Para aprofundar seus conhecimentos sobre esta unidade acesse a midiateca no EVA Leia o texto Um M todo de Desenvolvimento de Sistemas de Grande Porte Baseado no Processo RUP Com ele voc vai poder avaliar melhor o processo RUP Unidade 9 235 236 Universidade do Sul de Santa Catarina SE O 4 ICONIX O ICONIX uma metodologia de desenvolvimento de software com caracter sticas interativas e incrementais Classificar o ICONIX dif cil por um lado possui uma veia tradicional com um processo bem definido por outro lado aproxima se dos m todos geis procurando a redu o da documenta o e a simplicidade no processo Mastelari 2004 define ICONIX Software Engineering como um processo enxuto e robusto voltado para o trabalho com equipes pequenas
8. Veja a seguinte situa o Em nosso estudo de caso da V deo Locadora o contratante do projeto deseja a inser o no cadastro do cliente das prefer ncias do cliente por exemplo as prefer ncias do cliente a respeito do tipo de filme com dia romance fic o etc diretores atores Para voc inserir esta funcionalidade na modelagem dos casos de uso segue o seguinte racioc nio m O caso de uso gerenciar cliente vai descrever a sequ ncia de intera es para inserir os dados cadastrais do cliente m Normalmente o cliente informa apenas as informa es cadastrais e salva seus dados este ent o o fluxo normal de intera es m MAS caso o cliente deseje ele pode ainda inserir informa es sobre as suas prefer ncias relacionadas aos filmes a Esta possibilidade de inserir prefer ncias opcional e depende da solicita o do usu rio ent o pode ser definido como um caso de uso estendido Veja como este relacionamento representado inserir cliente gerenciar lt lt extend gt gt prefer ncias cliente X lt lt extend gt gt Figura 5 7 Relacionamento de Extens o Unidade 5 119 Universidade do Sul de Santa Catarina O diagrama geral de casos de uso atualizado seria ent o cd locadora gerenciar filmes Atendente Inserir Prefer ncias Tua extend D gerenciar cliente Cliente Gerenciar Loca es dE Gerente Gerenciar Relat rios realizar cobran
9. o de suas responsabilidades e colabora es As colabora es representam outras classes que interagem com a classe descrita para o cumprimento de suas responsabilidades O uso do cart o CRC realizado com o envolvimento de toda a equipe e para isso uma sess o organizada Para realizar a sess o O primeiro passo a escolha do grupo de pessoas que ir representar um cen rio ou seja exatamente o cen rio do dom nio do problema Para cada Classe de objeto identificada dentro do cen rio criado um cart o CRC Na segunda etapa cada participante associado a uma classe Assim cada pessoa passa a pertencer aquela classe e todo o cen rio ser encenado pelos participantes Aos poucos cada cart o preenchido com as responsabilidades e os colaboradores Durante a sess o pela explora o dos cen rios comum que novos cart es sejam criados pela descoberta de novas classes Observe o cart o CRC criado a partir do seguinte cen rio O balconista faz a abertura da venda O balconista registra os itens venda podendo inserir novos itens de venda exclu los e edit los O sistema totaliza a venda para o cliente O sistema calcula os impostos sobre a venda O balconista encerra a venda Unidade 6 153 154 Universidade do Sul de Santa Catarina Tabela 6 1 Exemplo de um cart o CRC Nome da Classe Venda Responsabilidades Colabora es Inserir excluir item de venda i
10. os diagramas s o empregados como fluxogramas O diagrama permite visualizar especificar construir e documentar o comportamento de qualquer elemento da modelagem Os diagramas de atividades podem ser anexados a classes interfaces componentes n s casos de uso e colabora o Na figura 8 9 observe os poss veis componentes de um Diagrama de Atividades Estado Inicial Atividade 1 Decis o Atividade 2 Condi o de Guarda Senao Condi o dejGuarda Se Concorr ncia Atividade 3 Atividade 4 Sincroniza o Estado Final Figura 8 9 Modelo de um Diagrama de Atividades Metodologias e Projetos de Software O diagrama sempre tem um estado inicial e um estado final A transi o de t rmino liga um estado a outro ou seja o t rmino de um passo o in cio de outro Cada uma das a es disparada no momento em que ocorre o t rmino do evento anterior Os pontos de ramifica es s o pontos onde a partir de uma transi o de entrada voc pode ter v rias transi es de sa da o caso das condi es de guarda do diagrama Os objetos apresentados no diagrama podem ser Atividade representada pelo ret ngulo ovalado Objeto representado por um ret ngulo Seta cheia rela o de preced ncia entre atividades Seta pontilhada consumo ou produ o de objeto por atividade Linha horizontal cheia ponto de sincroniza o Pequeno c rcul
11. 4 cancela pedido confirm Ped Confirmado canc Ped atendPed Condi o de qor E iem RR a RED atend Ped haPendente pendente Pendente do incrementarOtdAtend Atividades associadas ao estado entry no in cio marcarPedAtendimento entry atender do repetir at sa da exit na sa da Figura 8 8 DTE Emitir Pedido LIMA 2004 M Lembre se utilize o diagrama de transi o de estados para a descrever o comportamento de um objeto ao longo de v rios casos de uso m modelar objeto dotado de comportamento muito din mico 212 Metodologias e Projetos de Software SE O 2 Modelo de Atividade O diagrama de atividades o quarto diagrama respons vel pela descri o dos aspectos din micos de um caso de uso O diagrama de atividade modela a l gica utilizada em um caso de uso Neste caso o diagrama de atividade permite apresentar intera es decis es e passos executados em paralelo imposs veis de representar somente com o caso de uso Pode ser utilizado para descrever um processo de neg cio a partir da necessidade de entender melhor um problema O diagrama vai permitir que voc entenda melhor o comportamento do sistema no decorrer dos diversos casos de uso Este modelo tamb m utilizado para especificar a programa o com multithreading O diagrama de atividade lembra muito o antigo fluxograma lembra se dele O diagrama de atividade deve ser
12. Acervo 13 statusitem verificarStatus 1 6 registrarSaida emprestimo item item 1 5 dataCorrente 4 obterDataCorrente 1 confirmaEmprestimo coditem codUsuario Biblioteca Bibliotecario 1 4 statusUsuario 4 1 2 usuario RA verificarStatus obterUsuario codUsuario 1 7 relacionar emprestimo y Cadastro usuario Usuario Figura 7 11 Diagrama de Comunica o Fonte Liesenberg 2005 Relogio O diagrama inicia a comunica o pela mensagem confirmarEmpr stimo e se finaliza pela mensagem adicionar Transi ao no objeto Log Observe que o diagrama apresenta a rela o existente entre os diferentes objetos de forma bastante leg vel pelo uso da numera o e do uso do direcionamento das mensagens por meio das setas Afinal diagrama de sequ ncia ou diagrama de comunica o O Um diagrama de seq ncia de sistema representa uma sucess o de eventos de entrada gerados por um ator ao executar um fluxo de um caso de uso Nos diagramas de seq ncia existe uma linha de vida do objeto A linha de vida a linha tracejada vertical que representa a exist ncia de um objeto em um per odo de tempo 198 Metodologias e Projetos de Software Al m disso existe o foco de controle que mostra o per odo durante o qual um objeto est desempenhado uma a o diretamente ou por meio de um procedimento subordinado Este diagrama interessante na descri
13. Os objetos aparecem no topo de uma linha vertical tracejada 1 pre o lt 10 00 Venda aVista produto Utilizado para mensagens s ncronas Objetos s o criados e destru dos durante uma colabora o 2 l _codigo Utilizado para mensagens ass ncronas Objetos s o criados durante uma colabora o Metodologias e Projetos de Software 2 Construa o diagrama de sequ ncia da Cl nica Bem Estar visto na unidade 5 atividade 4 de auto avalia o para o caso de uso Agendar Hor rio 202 Universidade do Sul de Santa Catarina 3 correto afirmar que intera o a Prop e a troca de mensagens entre atores b Mensagens s o trocadas entre um conjunto de objetos em um determinado contexto para a realiza o de um prop sito c Aintera o pode ser definida como uma solicita o de execu o de uma opera o em outro objeto d Na intera o a mensagem s ncrona o objeto remetente n o esperaresposta para prosseguir com seu processamento j na ass ncrona o objeto remetente espera que o objeto receptor processe a mensagem antes de recome ar o seu processamento S ntese Nesta unidade voc foi apresentado ao modelo din mico do projeto Foi poss vel perceber que esta vis o aborda aspectos internos do sistema chegando ao n vel das fun es que ser o implementadas futuramente O uso de diagramas de intera o permite uma visualiza o e entendimento do funcionamento
14. Uma classe pode ter qualquer n mero de atributos ou mesmo nenhum atributo Os atributos s o sempre individuais e cada objeto da classe possui seus pr prios atributos Recordando do projeto da videolocadora voc pode definir as classes E poss vel detectar imediatamente tr s classes neste projeto m Classe Cliente Dados e m todos do cliente a Classe Filmes Dados e m todos dos filmes m Classe Loca o Dados e m todos sobre a loca o gt O que s o opera es O Unidade 6 149 Universidade do Sul de Santa Catarina As opera es implementam servi os que podem ser solicitados por algum objeto da classe para modificar o comportamento ou seja todos os objetos da classe v o compartilhar destas opera es As opera es s o executadas quando um objeto recebe uma mensagem de outro objeto Entretanto existem situa es onde uma classe pode n o ter nenhuma opera o ou mesmo ter v rias opera es CLASSE c digo nome endere o ATRIBUTOS telefone bairro incluir cliente excluir_cliente OPERA ES consultar cliente Figura 6 4 Classe Cliente Observe que para nomear a classe voc deve escolher um substantivo por exemplo Fornecedor Produtos Cliente para nomear uma opera o fa a uso de um verbo ou mesmo de um verbo mais um substantivo A escolha do nome da opera o deve possuir um nome que indique o resultado da opera o Cancelar Fornecedor acresc
15. constru o do software para as etapas de planejamento e estimativa b Os m todos estabelecem detalhes de como fazer para construir um software em todas as etapas do processo as ferramentas automatizam os m todos facilitando sua utiliza o os procedimentos estabelecem controles artefatos que assegurem a correta utiliza o do m todo c Procedimentos proporcionam os detalhes de como construir o software ferramentas automatizam os procedimentos os m todos formam o elo de liga o entre ambos Metodologias e Projeto de Software 4 Relacione as caracter sticas de cada modelo Clascata Plrototipa o ncremental ou Elspiral a Neste modelo de desenvolvimento poss vel avaliar riscos de projeto tomando se decis es baseadas na experimenta o de diferentes solu es b O modelo facilita a identifica o de requisitos para a constru o do futuro software por meio de prot tipos c O sistema fragmentado sendo que cada fragmento percorre todo o ciclo de desenvolvimento do software d Neste modelo as sub tarefas s o executadas de forma sequencial e bastante r gida sendo que o cliente tem contato com o sistema somente quando ocorre sua conclus o 5 Assinale com x qual dos modelos a seguir oferece menor contato com o cliente a Modelo cascata c Modelo prototipa o b Modelo incremental d Modelo espiral 6 A empresa CONSTON IS procu
16. o S o necess rias novas tecnologias Em quais habilidades Quais recursos devem ser suportados pelo sistema proposto mb Alguns modelos e Em nossa midiateca est o dispon veis alguns modelos para o Levantamento de Requisitos eles podem servir como modelos para futuros levantamentos d uma olhadinha Roteiro para An lise do Problema baseado em PETERS 2000 Unidade 2 53 Universidade do Sul de Santa Catarina RUP O Rational Unified Process um processo de engenharia de software que pretende aumentar a produtividade da equipe oferecendo pr ticas eficientes executadas por meio de diretrizes templates e orienta es sobre ferramentas para todas as atividades cr ticas de desenvolvimento de software 54 SE O 3 Especifica o de requisitos A sub etapa de especifica o de requisitos visa estabelecer um conjunto de requisitos consistentes e sem ambig idades e que possa ser usado como base para o desenvolvimento do software Nesta etapa tamb m comum a negocia o para resolver conflitos detectados A especifica o de um requisito de software a descri o de um produto de sofware programa ou conjunto de programa espec fico que executa uma s rie de fun es do ambiente de destino PADR O IEEE 830 1993 Em resumo pode se dizer que na especifica o propomos a solu o para o problema do cliente A especifica o pode ser totalmente descritiva como
17. Pr condi o Corretor logado no sistema e o Propriet rio do im vel precisa estar cadastrado no sistema como cliente Fluxo Principal 1 Corretor informa c digo do cliente 2 Corretor insere dados do im vel no sistema 3 Corretor confirma cadastro Fluxo Alternativo 1 1 Corretor seleciona bot o Cancelar 2 Os dados da janela s o limpos Fluxo Alternativo 2 8 Corretor deseja alterar dados do im vel 9 Corretor seleciona um im vel cadastrado 10 Sistema mostra informa es do im vel 11 Corretor altera informa o 12 Corretor confirma a altera o 13 Dados do Im vel s o armazenados Fluxo Alternativo 3 5 Corretor deseja excluir im vel 6 Corretor seleciona um im vel cadastrado 1 Seleciona bot o Exclus o 2 Dados do im vel s o exclu dos do banco de dados P s condi o Im vel atualizado no banco de dados Regras de Neg cio RNO3 Agora para praticar os conhecimentos conquistados nesta unidade realize a seguir as atividades propostas Unidade 5 139 Universidade do Sul de Santa Catarina amp Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 Assinale a afirmativa correta a Um caso de uso procura apoiar a especifica o de detalhes necess rios implementa o do sistema b O caso de uso documenta as a es necess rias comportamentos e sequ ncias visan
18. b 2 A segu ncia correta 256 Metodologias e Projetos de Software 3 A sequ ncia correta 4 A defini o dos requisitos funcionais RF01 O sistema deve permitir o gerenciamento de funcion rios e seus dados cadastrais RFO2 O sistema deve controlar o sistema de acesso de acordo com as permiss es de cada ator RFO3 Deve ser poss vel realizar o gerenciamento de hor rio dos funcion rios REO4 O sistema deve possibilitar o lan amento de hor rios de consulta por meio de uma agenda m dica RFO5 Deve ser poss vel a consulta de hor rios marcados por m dico por data RF06 O sistema deve possibilitar o gerenciamento de Paciente cadastro e ficha m dica RF07 Deve ser poss vel incluir novos conv nios ou mesmo excluir conv nios com os quais a cl nica opera RFO8 necess rio que o sistema ofere a relat rios estat sticos de atendimento por conv nio RFO9 necess rio que o sistema emita relat rios estat sticos de atendimento por rea de especializa o 257 258 Universidade do Sul de Santa Catarina A defini o dos atores Ator Descri o Responsabilidade Todos os 34 m dicos possuem especializa o todos possuem conhecimentos b sicos de inform tica e no o do M dicos funcionamento e procedimentos da cl nica A faixa et ria se Gerenciamento de Paciente encontra entre 30 e 48 anos Nenhum m dico possui qualquer de
19. com cr ticas e sugest es ao modelo Empresas como a Hewlett Packard I Logix DEC IBM Microsoft Oracle Texas entre outras investiram maci amente no aperfei oamento do m todo Os pesquisadores Booch Jacobson e Rumbaugh foram os idealizadores do projeto mas o produto final em sua vers o 1 3 foi resultado de um trabalho de equipe por meio da participa o de diversos colaboradores contribuindo com suas experi ncias e seu ponto de vista Em 1997 a UML foi aprovada como padr o pela OMG Object Management Group A UML uma linguagem completamente visual por meio de elementos gr ficos ela permite a representa o de conceitos da orienta o a objetos utilizados na estrutura de elabora o de um projeto de software Voc pode representar o sistema por diferentes perspectivas dependendo do diagrama que voc ir utilizar Cada um de seus diagramas possui uma forma pr determinada de desenhar o elemento uma sem ntica que define o significado deste elemento e onde o mesmo pode ser utilizado N o existe depend ncia de linguagem no uso da UML ou processos de desenvolvimento Ela pode servir para qualquer linguagem que o desenvolvedor venha a utilizar Al m de ser utilizada como uma linguagem de especifica o para construir modelos a UML oferece a possibilidade de conectar seus modelos a diversas linguagens como JAVA C Visual Basic e inclusive bancos de dados Em outras palavras voc pode gerar c
20. elas podem ser vistas como um subsistema De acordo com PRESSMAN 2000 quando visto de fora um subsistema pode ser tratado como uma caixa preta que cont m um conjunto de responsabilidades e suas pr prias colabora es Interface gr fica Regras de neg cio TE Ww Acesso ao Banco Figura 6 23 Pacotes l gicos E importante ressaltar que o pacote deve ter um nome nico e textual Metodologias e Projetos de Software SE O 5 O que diagrama de objetos Os diagramas de objetos s o como uma fotografia de um sistema Orientado a Objetos em execu o O diagrama mostra os objetos os valores de seus atributos e as liga es entre eles al m de ser est tico como o diagrama de classes bastante til quando voc estiver modelando uma estrutura de Em alguns livros voc dados complexa vai encontrar o nome diagrama de inst ncias O diagrama de objetos representado por um ret ngulo com como sin nimo de dois compartimentos Na parte superior voc identifica o objeto a o eo sublinhado Na parte inferior voc referencia os atributos com seus valores Analise a figura a seguir Note que na parte superior est o as tr s classes associadas Pedido item Pedido e Produtos A inst ncia Pedido est associada a duas inst ncias do itemPedido que consequentemente est ligada a uma inst ncia do Produto data date ai nome String hora String quantidade ger descri o String DT
21. lise orientada a objetos que traz inova es an lise tradicional aproximando a ainda mais do cliente Saiba mais Para conhecer um pouco mais sobre a an lise estruturada voc deve dar uma olhadinha nos seguintes livros YOURDON Edward An lise estruturada moderna Rio de Janeiro Campus 1992 DEMARCO Tom An lise Estruturada e Especifica o de Sistema Rio de Janeiro Campus 1989 Unidade 3 91 92 Universidade do Sul de Santa Catarina No EVA por meio da ferramente Midiateca voc vai encontrar exemplos pr ticos utilizando a metodologia estruturada Mas para implementar os diagramas da an lise estruturada ser preciso ferramentas Conhe a algumas visitando os sites http Avww sparxsystems com au http www otwsoftware com english index shtml http Avww rational com products rose index jsp http Avww ilogix com a http argouml tigris org a http Awww gentleware com products download php3 UNIDADE 4 Vis o geral da UML Objetivos de aprendizagem m Compreender as diferen as fundamentais existentes entre a an lise estruturada e a an lise orientada a objetos Perceber as diferentes vis es da UML e os diagramas oferecidos para viabilizar seu entendimento Conhecer a hist ria e o surgimento da linguagem de modelagem UML e suas diferentes possibilidades de aplica o Se es de estudo Se o 1 O Paradigma da orienta o a objetoss Se o 2 Quala origem das l
22. o Para voc entender a utiliza o destes n veis de abstra o necess rio conhecer conceitos e relacionamentos vinculados ao modelo de classes O modelo de classes um dos modelos mais ricos em termos de nota o e concentra o cerne est tico de todo o projeto Ent o que tal escalar o mundo conceitual das classes Metodologias e Projetos de Software SE O 1 O que s o objetos e classes de objetos De acordo com P DUA 2000 as entidades de dom nio s o representadas na modelagem orientada a objetos por objetos O objeto representa uma entidade que pode ser f sica ou de software Na realidade um objeto sempre descrito por meio do estado comportamento e identidade identidade uma propriedade que ir distingu lo dos demais O estado de um objeto compreende caracter sticas herdadas ou distintas que contribuem para que se torne nico O comportamento de um objeto define como sua a o e rea o a est mulos em termos de mudan as de estados e mensagens G Classe Cliente Identidade Cliente Estado Nome C digo Endere o Telefone Permiss o Comportamento Adicionar Cliente Excluir Cliente Consultar Cliente Unidade 6 147 Universidade do Sul de Santa Catarina Os objetos tamb m s o chamados de inst ncia Um objeto sempre uma inst ncia de uma classe Quando voc fala de uma classe est falando tamb m de seus objetos 148 Voc pode dizer
23. o de uma sequ ncia particular de funcionamento mas pode ser confuso quando existem muitas sequ ncias alternativas Os diagramas de colabora o sempre apresentam o caminho que indica como um objeto est vinculado a outro al m disto existe o n mero de sequ ncia para indicar a ordem temporal de uma mensagem Se voc precisa de um diagrama que demonstre o fluxo de eventos no decorrer do tempo ent o voc deve utilizar o diagrama de seq ncia se a nfase for o contexto do sistema a melhor op o o diagrama de comunica o Quer conhecer mais Para conhecer um pouco mais sobre os modelos de intera o acesse a Midiateca O texto Exemplo Sequencia amp Colabora o apresenta o diagrama de colabora o e de sequ ncia para um sistema de videolocadora Agora para praticar os conhecimentos conquistados nesta unidade realize a seguir as atividades propostas Unidade 7 199 200 Universidade do Sul de Santa Catarina 5 Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 Relacione os conceitos abaixo observe que uma mesma op o pode se repetir Cl usula Condi o Mensagem New Destroyed mo Npp Transient m Linhas de Vida Cl usula Itera o I O Call Send a S o as linhas horizontais com flechas que ligam uma linha de vida a outra Objetos s o destru dos durante uma colabora o
24. pre oUnit rio Currency desconto Currency produto13 Produto item 1 itemPedido nome folha A4 descri o String precoUnit rio 0 50 Doo desconto 0 10 item 2 itemPedido quantidade 10 quantidade 12 Pedido 1 Pedido data 13 10 2000 hora 16 00 Do produto12 Produto nome l pis preto descri o String precoUnit rio 1 50 desconto 0 0 Figura 6 24 Diagrama de Objetos Fonte Adapta o de Bezerra 2000 Unidade 6 177 Universidade do Sul de Santa Catarina Mas qual a nomenclatura a ser utilizada na especifica o de um diagrama de objetos Existem duas possibilidades os atributos e as opera es a Atributos Os atributos foram apresentados at o momento utilizando se apenas o nome mas com certeza em seu projeto voc ter que explicit los de forma mais detalhada A sintaxe a ser apresentada visibilidade nome tipo valor inicial A visibilidade se refere ao n vel de acesso o quanto os atributos de um objeto estar o vis veis a outros objetos Pode ser m P blica todos t m acesso podendo ser utilizado por opera es declaradas dentro de outras classes a Protegida pode ser acessado apenas por opera es dentro da pr pria classe pelas classes da hierarquia e pelas classes do pacote Privada s pode ser acessado por opera es dentro da pr pria classe O uso das propr
25. total e muitas palavras se perdem durante o di logo Um desenho no papel do prot tipo de uma tela torna se 100 vezes mais claro e objetivo al m de conseguirmos 100 da aten o do cliente d Modelo Incremental O Modelo Incremental foi desenvolvido atrav s da combina o entre os modelos linear e prototipa o Pressman 2002 Quando voc usa este modelo todo o desenvolvimento dividido em etapas que s o produzidas de forma incremental at se chegar a um sistema finalizado Para cada etapa realizado um ciclo completo de desenvolvimento e novas funcionalidades s o adicionadas ao sistema Assim voc pode dizer que todo o desenvolvimento evolui em vers es M dulo 3 M dulo 2 M dulo 1 Figura 1 5 Modelo Incremental Fonte P DUA 2000 Se voc deseja utilizar este modelo considere a forma como todo o projeto ser constru do Pense em quest es relacionadas prioridade o que mais importante para o cliente e o risco de cada requisito Tenha estrat gia em mente e observe se o que priorit rio pode ser desenvolvido primeiro N o esque a o primeiro m dulo o cart o de visitas de sua empresa para o cliente Metodologias e Projeto de Software Neste modelo temos uma participa o forte do cliente no projeto que avalia os incrementos entregues o que propicia que voc possa corrigir problemas nos m dulos em desenvolvimento e realize
26. tulo do filme que deseja j o ator atendente oferece ao caso informa es como o c digo Agora observe o diagrama geral de casos de uso a partir dos requisitos funcionais apontados na se o 1 O diagrama geral apresenta de forma gen rica os casos de uso solicitados sendo que todo o relacionamento existente de comunica o Unidade 5 117 Universidade do Sul de Santa Catarina cd locadora gerenciar filmes Atendente gerenciar cliente Cliente Gerenciar aca oss a Gerente Gerenciar Relat rios realizar cobran a Figura 5 6 Diagrama de Casos de Uso da V deo Locadora O que relacionamento de extens o O Os casos de uso possuem na maioria das vezes um fluxo principal e v rios fluxos alternativos Os casos de uso secund rios s o muitas vezes inseridos no caso de uso por meio do relacionamento de extens o O relacionamento de extens o deve ser usado para representar m um comportamento opcional um comportamento que s ocorre sob certas condi es alarmes por exemplo 118 Metodologias e Projetos de Software em fluxos alternativos dependentes da escolha de um ator Para entender melhor considere a seguinte situa o Quando o ator decide executar o caso de uso extensor ele executa e ap s sua execu o retorna ao caso de uso estendido Voc pode comparar um caso de uso extensor a uma fun o que voc desenvolve em um algoritmo de programa o
27. 3 Requisitos Espec ficos Perspectiva do produto seu relacionamento com sistema maior Hip tese Indicam como altera es feitas na ERS afetam se es espec ficas da ERS EX quais diagramas de fluxo de dados s o afetados ou mudan as de fun es ou exclus o das mesmas 31 Interfaces externas 3 2 Requisitos de processo e dados 3 3 Requisitos de desempenho e qualidade 3 4 Requisitos de banco de dados l gico 3 5 Restri es de projeto 3 6 Atributos de sistema de software 3 7 Organiza o de requisitos espec ficos Restri es de projeto Pol ticas regulamentares limita es de hardware interfaces com outros aplicativos opera o paralela seguran a e perfil etc 4 Rastreabilidade dos requisitos Ap ndice ndice remissivo Quer conhecer mais N Se voc estiver interessado neste modelo oferecido por Peters leia o cap tulo 2 do livro PETERS J F PEDRYCZ W Engenharia de software teoria e pr tica Rio de Janeiro Campus 2001 Modelos A especifica o tamb m pode ser feita na forma de modelos Mas voc sabe o que um modelo 56 Metodologias e Projeto de Software Um modelo uma representa o de alguma coisa do mundo real uma abstra o da realidade Al m disso tem a finalidade de servir como fundamento para o projeto de software facilitando a compreens o do fluxo de dados e de controle do processamento funcional da opera o comportament
28. 3 empresas mas apresenta possibilidades de aumentar este n mero A cl nica realiza em torno de 56 consultas dia Metodologias e Projetos de Software 9 Descri o de situa es consideradas cr ticas e atores envolvidos A cl nica apresenta situa es criticas relacionadas a marca o incorreta de hor rio com m dico indesejado ou mesmo data e hor rio indesejado As atendentes poderiam ser orientadas para telefonar ao paciente confirmando a consulta com tr s horas de anteced ncia 10 Restri es do projeto O cliente n o deseja dispender recursos com a plataforma de sistema operacional e o banco de dados sendo que deve ser considerada uma possibilidade open source Unidade 3 1 Sequ ncia correta B G D F C E D 2 a Um professor leciona v rias disciplinas em sua universidade disciplina professor O n 0 1 b A universidade emprega v rios funcion rios universidade funcion rio c Os funcion rios s o lotados em um departamento departamento funcion rio d Um aluno pode estar matriculado em nenhuma ou v rias disciplinas aluno disciplina 0 n 0 n 255 Universidade do Sul de Santa Catarina UNIDADE 4 1 Alternativas corretas a e b 2 A sequ ncia 3 A sequencia correta a Poliformismo b Encapsulamento c Mensagem d Heran a 4 A sequencia correta UNIDADE 5 1 A afirmativa correta
29. Create cria um objeto Destroy destr i um objeto Retorno return retorna o controle a quem ativou um Call Se o 2 O que Diagrama de Intera o Um diagrama de intera o mostra uma intera o formada por um conjunto de objetos e seus relacionamentos incluindo as mensagens que poder o ser trocadas entre eles O diagrama de intera o apresenta o funcionamento interno do sistema para que o ator ao realizar o caso de uso consiga atingir seus objetivos uso assim como pode ser necess rio o uso de v rios diagramas para modelar a intera o de um caso de uso que possui diferentes cen rios Um diagrama de intera o pode modelar um caso de Unidade 7 191 Universidade do Sul de Santa Catarina Para construir um diagrama de sequ ncia necess ria a pr via defini o do diagrama de classes com a indica o das opera es associadas 192 Existem dois diagramas de intera o o diagrama de sequ ncia e o diagrama de comunica o a Diagrama de Seqii ncia Um diagrama de sequ ncias um diagrama de intera o que enfatiza a ordena o temporal de mensagens apresentando os objetos que participam da intera o e a sequ ncia de mensagens trocadas O diagrama de sequ ncia descreve o comportamento interno mostrando os eventos entre objetos mas omite a associa o entre estes objetos A descri o sempre uma intera o dentro de uma unidade de tempo E idea
30. DTE voc s tem um estado inicial Figura 8 3 Estado Inicial Metodologias e Projetos de Software c Estado Final o estado final indica o final do ciclo de vida de um objeto representado por um c rculo eclipsado O estado final opcional e pode existir mais de um em um mesmo DTE Figura 8 4 Estado Final Emitindo Pedido Atualizando Estoque In cio Figura 8 5 Exemplo DTE Final No diagrama da figura 8 5 o estado final acontece logo depois da atualiza o do estoque que modifica o estado do objeto estoque d Transi o quando a a o ou atividade de um estado est completa o fluxo de controle passa ao estado seguinte de a o Especifica se esse fluxo utilizando transi es para mostrar o caminho de um estado de a o ou de atividade para o estado seguinte Graficamente voc representa a transi o por uma linha simples com uma dire o As transi es n o ativadas podem ter condi es de prote o significando que a transi o ser iniciada somente se essa condi o for satisfeita Unidade 8 209 210 In cio Universidade do Sul de Santa Catarina Imagine quando voc est no banheiro pronto para iniciar o banho Automaticamente voc pensa em duas possibilidades o estado do chuveiro est ligado ou desligado Em outras palavras voc pode representar isto em um diagrama de estados Neste DTE o evento Girar torneira e as a es s o Abrir e Fechar desligado
31. Descri o dos usu rios do sistema para cada usu rio descreva cargo e poss veis fun es dentro do processo 6 Descri o detalhada dos processos existentes COMO O SISTEMA ATUAL FUNCIONA Para marca o da consulta 62 Metodologias e Projeto de Software Como funciona o processo de atendimento 7 Itens produzidos no sistema quais s o os relat rios e consultas existentes ou solicitados pelos clientes 8 Volume de informa es do sistema atual 9 Descri o de situa es consideradas cr ticas e atores envolvidos 10 Restri es do projeto Unidade 2 63 64 Universidade do Sul de Santa Catarina S ntese O objetivo do desenvolvedor de software sempre deve ser o fornecimento de um software de qualidade que atenda as necessidades dos clientes Nesta unidade voc aprendeu que para obter essa qualidade preciso realizar a etapa de an lise de requisitos de forma consistente utilizando se metodologias apropriadas que permitam a revis o constante de todo o processo O uso de diferentes t cnicas como entrevistas question rios durante o levantamento de requisitos ajudam a variar o foco da observa o do projetista Na especifica o o uso de diferentes modelos pode ser adaptado de acordo com as caracter sticas da empresa As atividades de apoio como o gerenciamento de requisitos permitem rastrear altera es de requ
32. IPTU float valor int Figura 6 18 Relacionamento de Heran a Agora relembrando o Sistema da V deo Locadora observe os relacionamentos entre as classes candidatas propostas 168 Metodologias e Projetos de Software cd Data Model Codigo int Endere o char Nome char Telefone int Data Devolu o date Data Loca o date Valor float Item Loca o 0 Filmes Ator Principal1 char Ator Principal2 char C digo int Possuem Diretor char Data Compra date Dura o int Numero int Estilo char Status int Idioma char T tulo char Figura 6 19 Diagrama de Classes Sistema V deo Locadora Unidade 6 169 Universidade do Sul de Santa Catarina 25 Voc lembra do exemplo sobre o sistema banc rio Imagine uma situa o onde voc convidado a desenvolver um projeto para um caixa eletr nico banc rio O projeto prev o atendimento dos seguintes requisitos funcionais m O sistema deve permitir ao cliente a emiss o de saldo somente da conta corrente m O sistema deve permitir ao cliente a emiss o de extrato somente da conta corrente m O sistema deve permitir a atualiza o dos dados cadastrais do cliente m O sistema deve permitir o saque em dinheiro no caixa eletr nico m O sistema deve permitir a consulta a toda a movimenta o financeira do cliente conta corrente poupan a e aplica es no caixa eletr nico m O acesso as funcionalidades do sistema deve
33. Tela de Mercadorias classes de controle Controlador de Mercadorias Pedido de Compra e classes persistentes Mercadoria e Fornecedor Todas as mensagens est o seq enciadas 1 5 indicando a ordena o temporal das mensagens N o esque a que o diagrama de sequ ncia est baseado na descri o do caso de uso ent o ele um reflexo do que foi documentado Observe o diagrama de sequ ncia para o sistema de v deo locadora para o caso de uso Gerenciar Loca es Observe que foram usadas apenas as classes de fronteira e de entidade Unidade 7 I I gt I I I I I I 195 Universidade do Sul de Santa Catarina sd Sequ ncia A NO OQ 1 Form_Locacao Cliente Locacao Item Locacao i I I 1 1 I 1 Verifica Existencia Cliente 1 Li 1 1 1 1 Li 1 1 1 l l 1 f 2 Consulta existencia 1 1 1 1 l 1 1 3 Verifica Atrasos 1 1 4 Registra Locacao i 1 Li loop Enquanto nro filmes lt 10 A 1 I 6 Registra Locacao i Figura 7 9 Diagrama de seq ncia para o sistema de v deo locadora b Diagrama de Comunica o O diagrama de comunica o um modo alternativo para representar a troca de mensagens entre um conjunto de objetos O diagrama de colabora o sempre mostra os objetos relevantes para a execu o do caso de uso Neste diagrama voc n o apresenta a ordem em que as mensagens foram enviadas pois n o existe a dimens o de tempo l
34. alugu is pendentes 000000000 Pagar Boleto no Banco e e e e e e e oe Registrar Pagamento Figura 5 16 Pacotes de Casos de Uso do Sistema Imobili rio O diagrama de casos de uso pode ser feito de forma geral ou por pacotes observe a seguir diagrama de casos de uso dos pacotes Gerenciamento e Negociar Im vel Unidade 5 135 Universidade do Sul de Santa Catarina ud Gerenciamento Verifica se j existe Usu rio Cadastrar Usu rios do Sistema s include AO ss PSA Gerente Gerar relat rio de comiss es include fromaAtores Efetuar Login Gerar Relat rio de vendas alugu is Figura 5 17 Diagrama de Casos de Uso do Pacote Gerenciamento 136 Metodologias e Projetos de Software ud Negociar Im vel Cadastrar Cliente include Validar CPF Cadastrar de Fiador Gerar Contrato de Aluguel Cadastrar Im vel N include x EA EN X N g w N Corretor Si a extend fromaAtores 5 a include Alugar Im vel include indudes fromGerenciamento Vender Im vel extend Gerar Contrato de Venda Figura 5 18 Diagrama de Casos de Uso do Pacote Negociar Im vel Unidade 5 137 138 Universidade do Sul de Santa Catarina Definidos os diagramas voc vai documentar cada caso de uso como os exemplos apresentados a seguir Tabela 5 7 Documenta o do caso de uso Cadastrar Fiador in
35. cont nuo Figura 7 4 Seqiienciamento das mensagens Fonte Booch 2000 Na figura 7 4 observe a numera o das mensagens 1 e 2 que indica a dire o e a ordem em que as mesmas acontecem b Recorr ncia s vezes o envio de uma mensagem est condicionado ao valor de uma express o l gica verdadeiro ou falso ou ao n mero de vezes que a mensagem ser enviada Se a recorr ncia for uma cl usula condi o ent o a mensagem ser enviada somente se a condi o for verdadeira Sua sintaxe sempre entre colchetes cl usula condi o 25 existe produto estoque EfetuarVenda A repeti o ordenada pelo uso de asterisco cl usula itera o enquanto Numero Itens lt 10 Inserirltem Metodologias e Projetos de Software c Vari vel identifica uma vari vel que recebe o valor de retorno da opera o executada pelo receptor E 1 2 1 Z verificarEstoque e A vari vel Z vai receber o retorno da opera o verificarEstoque Quando uma mensagem enviada voc est especificando uma comunica o entre objetos que possuem uma expectativa de realiza o de uma atividade Quando a mensagem passada o resultado uma a o na forma de uma instru o execut vel Voc pode fazer a modelagem de v rios tipos de a o tais como m Call mensagens s ncronas solicita uma opera o em um objeto Send mensagens ass ncronas envia um sinal para um objeto
36. conta e senha Fluxo Principal O fluxo principal descreve a segii ncia de a es que deve ocorrer quando o caso de uso realizado Seja breve na descri o o fluxo deve ser escrito utilizando se a terminologia do usu rio Fluxo Alternativo Descreve a segii ncia de a es quando o ator faz uma escolha alternativa O fluxo alternativo descreve um comportamento alternativo para o fluxo principal P s condi o Regras de Neg cio Voc deve descrever aqui o estado do sistema ap s a execu o do caso de uso Condi es ou restri es na execu o do caso de uso Fonte Bezerra 2000 A seguir um exemplo do diagrama de caso de uso documentado Unidade 5 127 128 Universidade do Sul de Santa Catarina Tabela 5 3 Exemplo de Documenta o do caso de uso realizar saldo 7 realizar gt lt lt include gt gt 2 validar saldo 7 Ds a cliente Nome Realizar Saldo Identificador csu001 Descri o O cliente do banco solicita a emiss o do saldo de sua conta corrente Ator Prim rio Cliente Pr condi o Conta e senha do cliente serem v lidas Fluxo Principal 1 o cliente informa a conta e agencia 2 o cliente informa a senha 3 osistema exibe a lista de servi os do caixa eletr nico 4 o cliente seleciona a op o saldo 5 osistema apresenta mensagem informando a emiss o do saldo Fluxo Alternativo 1 0 cliente cancela a opera o por tecl
37. da prototipa o o processo inicia com a obten o de requisitos segue se ent o um projeto r pido para o futuro desenvolvimento do prot tipo Finalizado o prot tipo realizada uma avalia o com o cliente ou com a pr pria equipe de projeto Os resultados da avalia o s o utilizados para refinar o prot tipo reiniciando o ciclo at a avalia o Este processo se repete at o momento em que o grau de aceita o do prot tipo seja considerado aceit vel A partir deste momento inicia se a constru o do produto Na constru o do produto pode se utilizar qualquer outro modelo cascata incremental entre outros A prototipa o pode ser conduzida segundo duas t cnicas espec ficas de constru o A prototipa o horizontal em que uma camada espec fica do sistema constru da a interface do usu rio com suas janelas e widgets ou camadas da aplica o como as fun es para transa o em bancos de dados Ou a prototipa o vertical em que uma parte da funcionalidade do sistema escolhida para ser implementada completamente A prototipa o vertical interessante quando aspectos da funcionalidade n o est o claros partir da valida o do prot tipo o modelo segue no processo tradicional de desenvolvimento para a constru o do produto Unidade 1 29 Universidade do Sul de Santa Catarina Lembre se quando se valida uma informa o verbal com o cliente em muitos casos a aten o do cliente n o
38. da vida do objeto O foco de controle indica o tempo necess rio para que o objeto realize uma a o O in cio do foco deve estar na altura da flecha de mensagem O final deve coincidir com o final da atividade realizada pelo objeto A figura 7 7 mostra o diagrama de sequ ncia de um caso de uso para registro de uma venda O ator Atendente envia uma mensagem para totalizar o objeto Venda Em seguida o ator dispara a mensagem para registrar o modo de venda para o objeto Venda A partir da se estabelece uma recorr ncia condicional se a venda for a prazo envia a mensagem Inserir sendo o par metro o pr prio objeto Venda para o objeto Contasareceber Se a venda for a vista envia a mensagem registrapagamento para o objeto Caixa Atendente I totalizar 2 registrar modo venda a prazo venda a vista Figura 7 7 Diagrama de Seq ncia Fonte P dua 2000 194 Metodologias e Projetos de Software Agora observe a figura a seguir O e Tela de Controlador de Mercadoria Fornecedor Gestor de Compras Mecadorias Mercadorias 1 Excluir 2 Excluir Mercadoria A a a a 2 Mercadoria Pedido de Compra 3 Verificar Mercadorias Pendente Se n o houver pedidos pendentes 4 Excluir 0 Para cada Fornecedor 5 ExluirVinculo Mercadoria Figura 7 8 Diagrama de Seq ncia Fonte P dua 2000 No diagrama da figura 7 8 s o utilizadas classes de fronteira
39. de Software intera o empregada para a modelagem do fluxo de controle de uma opera o uma classe um componente um caso de uso ou do sistema como um todo O uso de intera es tamb m introduz mensagens que s o enviadas de objeto a objeto Essas mensagens envolvem a chamada a uma opera o ou o envio de um sinal No decorrer do seu estudo voc j leu v rias vezes a palavra mensagem certo prov vel que voc j tenha uma id ia sobre o significado desta palavra e por isto nestas tr s ltimas unidades conceituar o substantivo parecia irrelevante Mas nesta unidade essa palavra se torna o elemento fundamental do modelo solicita o de execu o de uma opera o em outro objeto um objeto pode ainda enviar uma mensagem para si mesmo mensagem reflexiva Segundo Bezerra 2000 uma mensagem uma O uso de uma mensagem em um diagrama de intera o permite a passagem de informa es que s o repassadas para a opera o que ser executada no objeto receptor mensagem 1 1 get ltimoCheckpoint o n mero de segii ncia 1 getPosi aoNoHorario p PlanoVoo l l t ControladorTr fegoA reo v nculo objeto objeto Figura 7 2 Intera o entre objetos de opera o de v o Na figura 7 2 s o considerados objetos t ControladorIr fegoA reo e p PlanoVoo 1 getPosi aoNoHorario e 1 1 get ltimoCheckpoint s o consideradas mensagens
40. de um gravador Ao formular as quest es tenha algumas precau es como evite usar quest es que levem o entrevistado a responder de uma forma espec fica ou tendenciosa Unidade 2 49 Universidade do Sul de Santa Catarina Uma dica interessante aplicar o question rio em uma amostra de usu rios solicitando a avalia o sobre a estrutura e o conte do do mesmo 50 25 Inadequada Voc tamb m acredita que a prioridade do desenvolvimento deva ser o faturamento como seu gerente afirmou Melhor O que voc acha que deva ser implantado em primeiro plano fazer duas quest es em uma torna a pergunta confusa e a resposta pode n o ser completa Ainda poss vel que a pessoa acabe respondendo a uma das quest es apenas E Inadequada Em que situa es voc cancela uma nota fiscal Quando ocorre o cancelamento de uma nota fiscal quais os procedimentos b Question rio O question rio uma t cnica que permite o levantamento de informa es a partir da coleta de informa es de diferentes pessoas afetadas pelo sistema Segundo SOMMERVILLE 2000 nesta t cnica s o abordadas quest es relacionadas ao que as pessoas na organiza o querem ao que as pessoas consideram como verdade ao comportamento das pessoas s caracter sticas das pessoas procedimentos e equipamentos s o levantados Um question rio deve ter quest es claras e n o amb guas ter fluxo bem
41. de vida de um processo de desenvolvimento de SO WO sous career ada asia na dica ad 15 UNIDADE 2 Engenharia de requisitos c c ce 43 UNIDADE 3 An lise Estruturada ccciccccc cessa 67 UNIDADE 4 Vis o geral da UML c cc ce nene 93 UNIDADE 5 Modelagem de Casos deuso 109 UNIDADE 6 Modelagem de Classes c o ec 145 UNIDADE 7 Modelagem de Intera es 185 UNIDADE 8 Modelos de Estados cici nene 205 UNIDADE 9 RUP e CON quapspaataa sas aa A a 223 Para concluir o estudo ccccccccc iss crer ese na 243 Refer ncias camas pm bu sia sadias aaa ea aa da ad AA MR da E ad 245 Sobre a professora conteudista ssssessssurssser rererere ne 249 Respostas e coment rios das atividades de auto avalia o 251 Palavras da professora Caro aluno a disciplina de Metodologias e Projetos de Software vai inser lo no universo da modelagem de projetos de software O caminho da modelagem atrav s dos anos tem sido rduo sofrendo in meras inclus es e altera es tudo isto para se adaptar as constantes evolu es de novas linguagens de programa o bancos de dados sistemas operacionais regras de neg cio e aos novos paradigmas da programa o A comunidade de desenvolvimento percebe se cada vez mais da necessidade de documentar seus projetos o volume de linhas de c digo crescente torn
42. do Paciente SE O 4 Modelagem de Dados A modelagem de dados tamb m conhecida como Diagrama E R Entidade Relacionamento Esta t cnica foi desenvolvida originalmente para dar suporte ao projeto de bancos de dados CHEN 1990 Unidade 3 83 84 Universidade do Sul de Santa Catarina O modelo ER uma t cnica utilizada para representar os dados a serem armazenados em um sistema A simbologia utilizada em um diagrama ER composta pelos seguintes elementos Entidade Uma entidade representa um objeto concreto ou abstrato onde ser o armazenadas as informa es Uma entidade pode ser uma pessoa uma institui o elementos do dom nio da paciente aplica o Paciente Agenda Quando voc cria uma entidade a entidade composta por um conjunto de inst ncias Cada inst ncia uma nica ocorr ncia de uma determinada entidade Em um dep sito Paciente Jo o Dirceu uma inst ncia de Paciente C gt Atributo Os atributos s o utilizados para descreverem caracter sticas ou propriedades elementares de entidades e relacionamentos Os atributos representam o conte do de uma entidade Pensando no exemplo da cl nica alguns atributos s o NomePaciente TelefonePaciente SexoPaciente etc Um relacionamento uma abstra o de uma associa o entre duas ou mais entidades Pode haver mais de um relacionamento entre objetos Um exemplo de relacionamento ocorre n q
43. do t cnico das itera es estimativas de custo e o tempo de desenvolvimento do sistema e a defini o da interface do usu rio com o sistema focando nas necessidades e metas dos usu rios An lise e Projeto Analysis and Design envolve a tradu o dos requisitos numa especifica o que descreve como implementar o sistema adaptando o design para que corresponda ao ambiente de implementa o projetando o para fins de desempenho E neste momento que s o descritas as diferentes vis es do sistema Implementa o Implementation envolve o desenvolvimento de c digo classes objetos etc teste de unidades e integra o de subsistemas Unidade 9 233 234 Universidade do Sul de Santa Catarina m Teste 7257 descreve todos os casos de teste procedimentos e medidas para o acompanhamento dos erros ocorridos Entrega Deployment abrange a configura o do sistema a ser entregue empacotamento distribui o instala o treinamento de usu rios planejamento e condu o de beta testes S o descritos tr s modos de implanta o de produto a instala o personalizada o produto em uma forma compacta e o acesso ao software por meio da internet Fluxos de Atividades de Apoio a Ger ncia de Projeto Project Management Enfatiza principalmente o gerenciamento de risco o planejamento de um projeto iterativo por meio do ciclo de vida e de uma itera o particular O monitoramento
44. dos k riscos decis o de continuar ou n o decis o de um engenharia sistema conlu do avalia o do cliente Figura 1 3 Modelo Espiral Fonte Pressman 2002 Na etapa de planejamento s o determinados os objetivos alternativas e restri es Durante o sub processo de an lise de risco s o analisadas as alternativas e identificados os riscos e resolu es poss veis Na constru o ocorre o desenvolvimento do produto no n vel seguinte A avalia o do cliente fundamental pois nela ocorre a avalia o do produto e o planejamento das novas fases cliente e desenvolvedor refinam os requisitos dos softwares a serem desenvolvidos O modelo exige dos desenvolvedores experi ncia na determina o de riscos sendo portanto dependente da experi ncia pessoal da equipe Talvez voc esteja se perguntando quando poder utilizar este modelo uma boa pergunta Imagine que voc tenha que apresentar uma solu o para um cliente e que voc n o esteja certo sobre a tecnologia a ser utilizada ou a forma como deva ser Unidade 1 27 28 Universidade do Sul de Santa Catarina constru da a estrutura de dados A melhor maneira de fazer o melhor servi o ser usando o modelo espiral Utilize prototipa o simula o ou qualquer recurso poss vel para avaliar diferentes solu es at encontrar a melhor solu o Quando voc estiver certo da resposta siga em dire o da engenharia onde temos as etap
45. e desenvolvimentos de tamanho pequeno e m dio O processo ICONIX teve seu in cio muitos anos antes da concep o da UML e do processo unificado Foi elaborado por Doug Rosenberg e Kendall Scott Poe voltado se a uma abordagem orienta o a objetos Silva amp Videira 2001 apresentam o ICONIX como uma metodologia pr tica intermedi ria entre a complexidade do RUP Rational Unified Process e a simplicidade do XP Extreme Programming A UML Unified Modeling Language usada integralmente no m todo suportando e respondendo quest es impostas pela metodologia por meio de seus diagramas S o segundo Borillo 2000 tr s as caracter sticas fundamentais no ICONIX o modelo Iterativo e incremental e portanto v rias itera es acontecem da defini o do modelo de dom nio identifica o dos casos de uso a Rastreabilidade todos os passos do processo referenciam os requisitos o modelo permite ent o verificar em todas as fases se os requisitos foram atendidos Desta forma pode se determinar qual o impacto que a altera o de um requisito tem em todos os artefatos do sistema Metodologias e Projetos de Software Aerodin mica da UML a metodologia incorpora o uso da UML por meio de diagramas Os mais usados s o os diagramas de casos de uso diagramas de sequ ncia e colabora o diagramas de robustez e diagramas de classes I Dynamic Ee i gt na f m i i
46. e opera es s o partes do relacionamento como um todo e n o de cada uma das classes envolvidas neste caso ao inv s de se associar estes atributos opera es a um participante criada uma classe associativa que absorve estes atributos opera es Empresa Pessoa raz oSocial nome endere o telefone endere o empregador empregado sal rio dataContrata o Figura 6 16 Classe associativa P DUA 2000 No exemplo ilustrado na figura 6 16 voc v uma situa o onde uma pessoa trabalha em v rias empresas e uma empresa tem v rios empregados Os atributos sal rio e dataContrata ao n o pertencem a classe Empresa nem a classe Pessoa que mant m dados cadastrais do empregado Neste caso uma classe associativa Emprego foi criada para comportar estes atributos para cada par empregado empregador b Relacionamento de depend ncia A depend ncia indica a ocorr ncia de um relacionamento entre dois ou mais elementos onde uma classe cliente dependente de algum servi o da classe fornecedora M Quando voc precisar indicar que um item depende de outro utilize os relacionamento de depend ncia Unidade 6 165 166 Universidade do Sul de Santa Catarina Bezerra 2000 indica situa es que levam a um relacionamento de depend ncia como depend ncia por atributo onde a classe A possui um atributo cujo tipo B depend ncia por vari vel global a classe A utiliza uma
47. e os Dados do Paciente s o armazenados no dep sito de Dados Paciente Observe a figura n mero 1 no processo Cadastrar Paciente ou o n mero 1 no dep sito de Dados Paciente Estes n meros s o utilizados apenas para organizar o DFD para facilitar sua leitura Na verdade s o sequenciais e sua utiliza o opcional Na documenta o voc pode se referir ao processo por seu n mero n o sendo necess rio escrever todo o nome do processo Quando se elabora um DFD faz se necess ria a observa o de algumas diretrizes M Lembre se de que quando usamos Fluxos de dados estamos representando o deslocamento de O informa es e isto pode acontecer somente m entre um Processo e uma Entidade Externa m entre dois Processos m entre um Processo e um Dep sito de Dados Quando voc nomear o processo procure utilizar verbos no infinitivo As Entidades Externas Fluxos de Dados e Dep sitos devem ser identificados por substantivos Existe um fator muito importante em um DFD ele n o um fluxograma portanto ele jamais deve representar a seq ncia em que os processos s o ativados Unidade 3 75 76 Universidade do Sul de Santa Catarina O DFD que apresentado na figura 3 2 bastante gen rico e pode deixar margens a d vidas Quando isto acontece poss vel explodir o DFD em n veis de profundidade diferente A decis o do n mero de n veis necess rios depende da complexidade do projeto quanto mai
48. estudo de caso estudado na Unidade 5 Ele se encontra na midiateca Este estudo discorre sobre um sistema de vendas de CDs musicais pela internet A figura 6 21 mostra as classes persistentes encontradas para este projeto Metodologias e Projetos de Software M sica Cliente Venda Gravadora M sica CD C d m sica zint C d Cliente zint C d Venda int C d Gravadora int C d Musical CD int Nome String Nome String K Data Date Raz o Social String Nome String Tamanho mp3 float CPF String 1 Valor float Autor String Tamanho wav float Logradouro String Entregue boolean Inserir Tempo float Tempo float N m String Alterar 0 mn ii a si rd Nova Venda Excluir Excluir String Cidade String Pesquisar Pesquisar A Autor String UF String Bai Entregue q Alterar CEP String Baixar como En regue Pesquisar Cancelar Inserir Fone String 1 1 Excluir Email String A Alterar Complemento String 1 Pesquisar Calcular tamanho wav Inserir Excluir Pesquisar Alterar M Item Venda C d Item Venda int CD Personalizado pa a CD Pre os Cod_CD zint Inserir C d CD zint CD mp3 float Nome String Excluir T tulo String CD wav float Pe
49. marca o da consulta observando se o m dico em quest o possui hor rios vago para a data desejada Se existe hor rio dispon vel a atendente solicita ao paciente o tipo de conv nio ou se particular Se for conv nio verificado se um conv nio v lido se for particular informado o valor da consulta A atendente atualiza a agenda com o nome do paciente e o tipo de consulta conv nio particular O tempo para cada consulta de 20 minutos ou 15 minutos para retorno O m dico possui intervalo de 10 minutos 253 254 Universidade do Sul de Santa Catarina A consulta pode ser uma consulta de retorno neste caso a atendente verifica se a data est ainda dentro do prazo de retorno de 15 dias Em caso afirmativo a consulta marcada na agenda M dico Indispon vel Caso o m dico solicitado esteja indispon vel a atendente procura informar o nome de outro m dico dispon vel naquele hor rio ou o pr ximo hor rio dispon vel Atendimento se o paciente j possui cadastro o mesmo convidado a adentrar no consult rio do m dico A partir deste momento o m dico solicita informa es procedimentais para o futuro diagn stivo preenchendo a ficha do paciente Finalizada a consulta o paciente liberado e a ficha recolhida pela atendente sendo novamente arquivada Se o paciente for novo a atendente solicita o preenchimento da ficha cadastral com dados pessoais 7 Itens produzidos no sistema quais s o os r
50. nio utiliza o em que contexto onde e como o item de informa o utilizado descri o uma nota o que permita explicitar o conte do do item informa es complementares a respeito do item de dados como valores iniciais restri es etc Metodologias e Projetos de Softwares Observe o exemplo de um dicion rio de dados para o dep sito de dados Paciente figura 3 9 Dep sito Nome do Dep sito Paciente Especifica o Banco de dados cadastrais do paciente volume aproximado 3500 registros Descri o o dep sito de dados Paciente deve armazenar todos os dados cadastrais do paciente da cl nica tendo como chave o nome do paciente Utiliza o o dep sito ser usado no processo Cadastrar Paciente Agendar Consulta Atributos do Dep sito de Dados Paciente Nome do Atributo Nome Paciente Especifica o Campo alfanum rico tamanho 50 chave prim ria do dep sito de dados Descri o Nome do paciente Nome do Atributo Endere o Paciente Especifica o Campo alfanum rico tamanho 60 caracteres Descri o Endere o do paciente Nome do Atributo Telefone Paciente Especifica o Campo alfanum rico tamanho 12 Descri o Telefone do paciente Nome do Atributo Sexo Paciente Especifica o Campo alfanum rico tamanho 1 Assume os valores F ou M Descri o Sexo do paciente Figura 3 9 Exemplos de dicion rio de dados para o dep sito de dados
51. o mas agora gostaria que ele lesse o c digo de barras da fita E agora por isto que dizemos que o software n o se desgasta mas se deteriora em fun o de inova es tecnol gicas e novas necessidades do cliente Ele acaba n o atendendo mais suas necessidades apesar de funcionar muitas vezes sem apresentar problemas M O software desenvolvido ou projetado por engenharia n o manufaturado no sentido cl ssico Quando voc comprou sua geladeira em algum momento pensou que ela foi fabricada como uma pe a nica Claro que n o ela foi produzida em uma linha de produ o Pense em uma linha de produ o de caminh es Os componentes s o incorporados ao projeto para dezenas de unidades Mas quando se pensa em software sabido que cada produto projetado e pensado como uma pe a nica E imposs vel visualiz lo em uma esteira de produ o 18 Metodologias e Projeto de Software Agora use a imagina o imagine as seguintes situa es Na linha de produ o de caminh es saem da f brica 30 unidades di rias 600 por m s Destas 600 unidades a ind stria possui uma estat stica de problemas apresentados em 0 2 da produ o durante sua utiliza o pelo cliente nos primeiros 6 meses Isto significa uma margem de problemas em 1 caminh o sa do da linha de produ o mensal Esta informa o pode acabar com o nome da empresa O que voc acha Agora imagine uma empr
52. o caso de alguns documentos da metodologia RUP proposta pela Rational Rose ou iniciar a constru o de modelos utilizando se da nota o oferecida pela an lise estruturada ou orientada a objetos Esta decis o depende da metodologia que voc estiver utilizando ou mesmo do grau de maturidade da empresa O uso de uma especifica o textual pode ser feito na forma de relat rios PETERS 2000 sugere um conjunto de quatro quest es que devem ser abordadas a primeira delas refere se s funcionalidades que devem ser definidas e elaboradas e que o sistema deve suportar a segunda refere se s interfaces externas do sistema outros sistemas equipamentos de hardware a terceira relaciona se ao desempenho esperado pelo produto quest es como tempo de resposta durante uma consulta quarta relaciona se a atributos de qualidade a capacidade do software de ser utilizado em diferentes plataformas por exemplo e a restri es impostas pelo cliente pelo ambiente ou pelo pr prio desenvolvedor Metodologias e Projeto de Software Quest es da ERS Funcionalidade Interfaces Externas O que o software deve fazer descri o F das fun es objetos Portabilidade de ERS fun es e estados Intera o do software Velocidade rastreabilidade com seu ambiente com disponibilidade fidedignidade as pessoas com hardware tempo de resposta manutenibilidade do sistema outros tempo de recupera
53. o estudo Com este primeiro livro voc aprendeu os conceitos e particularidades da an lise estruturada e da an lise essencial Conheceu das an lises caracter sticas e particularidades de implementa o que tornam o projeto mais claro facilitando sua compreens o inclusive para o usu rio final O uso das metodologias torna o trabalho do gerente mais objetivo e sua cobran a perante a equipe mais eficiente Isto se deve pela possibilidade de gera o de diferentes tipos de artefatos que podem ser utilizados como marcos de projeto para acompanhamento da equipe A an lise estruturada foi pioneira em termos de aceita o como metodologia de documenta o de projetos Seu uso ainda hoje expressivo pela facilidade de utiliza o de sua nota o e benef cios advindos de seu uso O segundo livro da disciplina dar nfase metodologia orientada a objetos fazendo uso da linguagem de nota o Linguagem de Modelagem Unificada Al m de explorar seus diagramas mais utilizados tamb m ser feita uma breve abordagem sobre o Rational Unified Process RUP Durante todo o seu estudo nessa disciplina voc foi apresentado a tr s paradigmas diferentes a an lise estruturada a an lise essencial e a an lise orientada a objetos Voc conheceu caracter sticas e particularidades de implementa o de cada uma Foi poss vel perceber que a orienta o a objetos encaixa se muito bem no paradigma atual de implanta o ma
54. oferecendo pr ticas eficientes executadas por meio de diretrizes templates e orienta es sobre ferramentas para todas as atividades cr ticas de desenvolvimento de softwares O ICONIX no entanto um m todo menos complexo com um volume menor de documenta o que o RUP mas que apresenta grande aceita o no mercado Esta unidade vai abordar o m todo RUP oferecido como uma proposta de solu o para os principais problemas relacionados ger ncia do processo de desenvolvimento de softwares SE O 1 Onde se quer chegar Quando olhamos ao redor percebemos nossa total depend ncia dos sistemas de informa o Mas o que se faz em nossas vidas modernas que n o envolva recursos computacionais Poucas s o as atividades que nos restam onde n o temos como apoio um software Aliada depend ncia temos os riscos envolvidos neste problema complexo Antigamente se imaginava Metodologias e Projetos de Software arriscado um software existente em uma aeronave que ao falhar poderia fazer com que a mesma ca sse ou um sistema de controle de uma usina nuclear Hoje os riscos extrapolam quest es vitais Imagine os riscos financeiros provenientes das milhares de transa es banc rias os riscos em uma fraude eleitoral ou mesmo os riscos existentes em um software de defesa de um pa s como a Inglaterra O desenvolvimento de software uma atividade de alto risco Entre lucros gerados nesta atividade muitos O foram os p
55. pa A i GUI Prototype O K K OQ yr d AN i X OQO i i N a Robustness 5 i Diagram i i I Figura 9 3 Processo Iconix Rosenberg et all 2005 O ICONIX fundamenta se em dois modelos o est tico e o din mico O modelo est tico modela o funcionamento do sistema sem se preocupar com intera es e aspectos din micos do sistema S o dois os diagramas usados nesta representa o o diagrama de dom nio e o diagrama de classe O modelo din mico apresenta as intera es do sistema mostrando a intera o do usu rio com o sistema O modelo din mico representado por diagramas de seq ncia de casos de uso e o diagrama de robustez O ICONIX determina um ciclo com quatro etapas bem determinadas a an lise de requisitos a an lise e projeto preliminar o projeto e a implementa o Unidade 9 237 238 Universidade do Sul de Santa Catarina An lise de requisitos Na an lise de requisitos ocorre a identifica o das necessidades do cliente por meio dos requisitos funcionais Nesta fase o contato com o cliente estreito segundo Silva et all 2001 a tarefa de an lise de requisitos consiste em realizar as seguintes tarefas Identificar os objetos do dom nio do problema nesta identifica o utiliza se o diagrama de classes m Desenvolver prot tipos da interface di logo e navega o proporcionando para o cliente o melhor entendimento sobre a proposta a Identificar os casos de uso e os atores
56. planejamento avaliamos se o projeto vi vel e como o desenvolvimento ser conduzido Metodologias e Projeto de Software Levantamento de requisitos quando voc est nesta etapa o objetivo principal compreender o problema do cliente suas necessidades expectativas e restri es Aqui voc deve pensar com o cliente quais os problemas que existem Como eles acontecem Existe alguma caracter stica espec fica que deve ser observada de velocidade portabilidade interface An lise de requisitos nesta etapa voc vai analisar os dados da etapa anterior Na an lise de requisitos ou especifica o de requisitos vamos conceber uma estrat gia para solucionar problemas e necessidades do cliente Mas nesta etapa voc ainda n o precisa se preocupar com quest es tecnol gicas Assim pode se afirmar que voc vai dizer O QUE o sistema deve fazer para apoiar o cliente a partir de modelos b Desenvolvimento Nesta fase voc tenta definir como a estrutura de dados e arquitetura do software t m de ser projetadas Durante a segunda etapa voc ir realizar O projeto de software no projeto de software voc deve definir como o sistema vai funcionar para atender os requisitos levantados Nesta fase temos como resultado uma descri o computacional do que o software deve fazer normalmente temos aqui o projeto da arquitetura especifica o da configura o de componentes do software fun es cl
57. requisitos Valida o de requisitos Gerenciamento de requisitos Nas pr ximas se es voc vai estudar sobre as primeiras etapas do processo de engenharia de requisitos come ando pela etapa de levantamento de requisitos SE O 2 Levantamento de requisitos A etapa de levantamento de requisitos a etapa onde ocorre a compreens o do problema aplicada ao desenvolvimento de software Quando voc est nesta etapa fundamental que usu rios e desenvolvedores tenham a mesma vis o do problema a ser resolvido Isto significa que voc precisa conhecer os requisitos t o bem quanto o pr prio cliente Mas como obter estes requisitos Durante o levantamento de requisitos voc vai se deparar com um grande volume de relat rios formul rios e documentos Mas quais s o os que voc deve avaliar Por outro lado em uma empresa com 500 funcion rios ser o 500 as pessoas envolvidas no processo de levantamento voc vai entrevistar todas nessa hora que voc deve perceber a import ncia de ver a floresta em vez das rvores Detecte as pessoas chave do processo trabalhe usando amostragens da popula o Escute com aten o a ger ncia da empresa e seus objetivos Retome o exemplo da constru o de uma casa Para que o arquiteto inicie o projeto ele precisa perceber o perfil do cliente suas prefer ncias e necessidades E para esta etapa existem algumas t cnicas teis a entrevista observa e
58. se encontram encapsulados em um s elemento Metodologias e Projetos de Software AN LISE ESTRUTURADA DADOS FUN ES AN LISE ORIENTADA A OBJETOS ATRIBUTOS x M TODOS DADOS FUN ES Figura 4 1 Vis o comparativa da An lise Fonte Pacheco 1994 Pode se dizer que na vis o estruturada a perspectiva adotada a de um algoritmo em que o bloco principal de constru o do software o procedimento ou a fun o A vis o do desenvolvedor ser a de decompor algoritmos maiores em menores Assim voc pode dizer que a an lise estruturada desenvolve uma vis o de desenvolvimento baseada em um modelo entrada processamento sa da Com o passar do tempo a manuten o pode tornar se dif cil pois o sistema totalmente constru do a partir do foco do algoritmo Quando se adota a vis o orientada a objetos o bloco de constru o do software passa a ser o objeto ou a classe Mas voc sabe o que um objeto O objeto uma abstra o de conjunto de coisas do mundo real pode ser uma m quina uma organiza o um carro uma passagem de nibus A figura Objetos apresenta coisas do mundo real e portanto s o objetos sob o ponto de vista da orienta o a objetos Unidade 4 95 96 Universidade do Sul de Santa Catarina Figura 4 2 Objetos E uma classe A classe pode ser vista como a descri o de um tipo de objeto com propriedades semelhantes atr
59. sem passar formalmente pela etapa inicial de defini o e projeto indo direto para a programa o Por m o resultado muitas vezes desastroso Ao se iniciar um projeto de software inicia se uma s rie de processos marcados por entregas de artefatos pr determinados pelos modelos de desenvolvimento utilizados e suas metodologias A etapa de an lise de requisitos se encontra estrategicamente no in cio do projeto pois nessa etapa que voc vai compreender as necessidades de seu futuro cliente Peters 2000 declara com grande propriedade que o grau de compreensibilidade precis o e rigor da descri o fornecida por um documento de requisitos de software tende a ser diretamente proporcional ao grau de qualidade do produto resultante Mas o que um requisito M Requisito de software uma descri o dos principais recursos de um produto de software seu fluxo de O informa es comportamento e atributos Unidade 2 45 46 Universidade do Sul de Santa Catarina PADUA 2000 descreve que requisitos s o caracter sticas que definem os crit rios de aceita o de um produto Estas caracter sticas podem ser divididas em caracter sticas funcionais que representam o comportamento que o sistema deve apresentar diante das intera es do usu rio o cliente deseja que seu vendedor lance o pedido de vendas para emitir relat rio de comiss es mensais por vendedor caracter sticas n o funcionais r
60. tamb m que um objeto uma pessoa um lugar ou um sistema como mostra a figura a seguir Telefone P ssaro Pessoa Carta Figura 6 1 Exemplos de Objetos 2 O que s o classes O Segundo FURLAN 1998 classe a representa o de um conjunto de coisas reais ou abstratas que s o reconhecidas como sendo do mesmo tipo por compartilhar as mesmas caracter sticas de atributos opera es rela es e sem ntica BOOCH 2000 define classe como um conjunto de objetos que compartilham estrutura e comportamento comuns Luis Ana Bruno Carla Figura 6 2 Classe Clientes Conforme voc pode observar na figura 2 Luis Ana Bruno e Carla s o objetos ou inst ncias da classe Mas qual a nota o utilizada para identificar uma classe A classe representada por um ret ngulo dividido em tr s compartimentos que cont m o nome da classe os atributos e as opera es Metodologias e Projetos de Software Nome da Classe c digo nome cr ditos hor rio localiza o Atributo da classe incluir listar alunos lista de opera es Figura 6 3 Nota o da Classe D O que s o atributos O O atributo a descri o dos dados armazenados pelos objetos de uma classe O atributo de uma classe est associado a um conjunto de valores que o atributo pode assumir Est correto afirmar que os atributos n o t m comportamento Cada valor de um atributo particular para um dado objeto
61. tempo determinando os requisitos atribuindo prioridades e principalmente respondendo as d vidas Padroniza o do c digo o c digo escrito com um grande cuidado quanto a padroniza es isto facilita o entendimento assegurando a clareza e a comunica o entre programadores e projetistas Metodologias e Projeto de Software SCRUM Software Development Process Segundo relatos de Sutherland 2004 o SCRUM foi documentado e concebido na empresa Easel Corporation em 1993 A id ia inicial era voltada para empresas automotivas mais tarde a metodologia foi incorporada pelas empresas Advanced Development Methods e VMARK passando por modifica es e melhorias at chegar em um processo considerado adequado para projetos e desenvolvimento de software orientado a objetos O SCRUM possui aspectos que se assemelham ao XP assim como o XP formatado para o uso de equipes pequenas onde os requisitos n o s o claros e com intera es de curta dura o com um m ximo de visibilidade no processo de desenvolvimento O SCRUM divide o desenvolvimento em intera es com uma dura o de 30 dias que s o chamadas de sprints As equipes multidisciplinares s o formadas por projetistas programadores engenheiros e gerentes de qualidade Cada equipe trabalha em torno dos requisitos do projeto que s o definidos no in cio de um sprint A cada dia ocorre uma reuni o da equipe nela discutem se metas dificuldades e objetivos observe que is
62. temporal da troca de mensagens entre os diversos objetos Voc pode representar as mensagens por meio de diferentes nota es onde poss vel apresentar rela es s ncronas ass ncronas e de retorno entre os objetos O uso da representa o temporal da troca das mensagens pode ou n o ser representada Se a dimens o de tempo fundamental para o entendimento voc pode utilizar o diagrama de seq ncia Mas se a dimens o do contexto do sistema o mais importante utilize o diagrama de colabora o Na pr xima unidade voc vai iniciar seu estudo sobre o modelo de estados e compreender que os objetos podem modificar seus estados durante o processamento ou permanecer no mesmo estado por toda sua vida til A documenta o dos estados dos objetos fundamental pois suas altera es est o diretamente relacionadas s mudan as no sistema Metodologias e Projetos de Software cai f R aiba mais Caso voc tenha se interessado em aprofundar seus estudos sobre os assuntos tratados nessa unidade sugere se que leia BEZERRA E Princ pios de An lise e Projeto de Sistemas com UML S o Paulo Campus 2002 cap tulo 7 BOOCH G RUMBAUGH J JACOBSON I UML Guia do Usu rio S o Paulo Ed Campus 2000 cap tulos 18 e 27 Unidade 7 203 UNIDADE 8 Modelos de Estados Objetivos de aprendizagem m Reconhecer objetivos e caracter sticas existentes na modelagem da vis o din mica do projeto Co
63. tulos 18 e 19 UNIDADE 9 RUP e ICONIX Objetivos de aprendizagem m Entender o que o RUP seus elementos e conceitos a Discutir e analisar nuances do processo de desenvolvimento orientado a objetos utilizando se o RUP Entender como o RUP colabora para a estrutura o efetiva de tarefas e fluxos de trabalho de profissionais atuando em equipes de desenvolvimento de software Compreender o processo ICONIX e seus componentes Se es de estudo Se o 1 Onde se quer chegar Se o 2 Quais s o as fases do RUP Se o 3 Quais os elementos do RUP Se o 4 ICONIX 224 Universidade do Sul de Santa Catarina Para in cio de estudo Quando voc l um artigo sobre empresas de desenvolvimento de software raro encontrar discuss es sobre a dificuldade da empresa em dominar uma tecnologia como um banco de dados uma linguagem de programa o ou mesmo um sistema operacional Por outro lado voc vai encontrar dezenas de mat rias relatando os problemas relacionados a cronogramas entregas produtividade da equipe qualidade do produto uso de metodologias e padroniza o das diferentes etapas Ensinar UML a uma equipe de projeto pode n o ser uma tarefa t o rdua como propor a esta equipe todo um processo de desenvolvimento voltado para uma metodologia utilizando esta nota o O Rational Unified Process um processo de engenharia de software que pretende aumentar a produtividade da equipe
64. usado em situa es onde todos ou a maioria dos eventos representam a conclus o das a es geradas internamente ou seja os fluxos processuais de controle bem como em situa es onde acontecem eventos ass ncronos O diagrama permite escolher a ordem pela qual as coisas devem ser feitas indicando as regras essenciais de sequ ncia que devem ser seguidas O conceito de multithreading utiliza o conceito de thread que considerado um processo leve onde O o espa o de endere amento compatilhado por v rios programas No ambiente multithreading n o existe a id ia de programas associadas a processos mas a threads O processo neste ambiente tem um thread de execu o mas compartilha o espa o de endere amento com in meros outros threads MACHADO 2002 Unidade 8 213 214 Universidade do Sul de Santa Catarina Para FURLAN 1998 os diagramas de atividades podem modelar o sistema de duas maneiras Para modelar o fluxo de trabalho as atividades s o focalizadas conforme visualizadas pelo ator Por exemplo no fluxo de trabalho de processamento de um pedido incluir classes como Pedido e Cobran a As inst ncias dessas duas classes ser o produzidas por determinadas atividades processar pedido criar um objeto Pedido por exemplo outras atividades poder o alterar esses objetos por exemplo Enviar pedido modificar o estado do objeto Pedido a ser preenchido Para modelar uma opera o
65. 3 compartimentos Por m as classes podem ser apresentadas em diferentes n veis de abstra o como apresentado na figura abaixo Cliente Cliente C digo Nome Cliente Endere o CGC Limite Credito Limite Credito Calcular Limite Emitir Relat rio Figura 6 6 Abstra es das Classes SE O 2 Quais s o as responsabilidades das classes Uma responsabilidade um contrato ou obriga es de uma determinada classe ou seja representam o conhecimento e a es que possibilitam as classes cumprir seu papel nos casos de uso Por exemplo uma classe cliente respons vel pelo conhecimento sobre os dados pessoais c digo nome endere o do cliente al m de ser respons vel por incluir excluir e consultar os dados do cliente Mas definir as classes existentes em um futuro sistema e suas responsabilidades n o uma tarefa f cil O mais adequado voc procurar o apoio de m todos reconhecidos que procuram facilitar sua realiza o Para isso existem dois m todos popularizados para esta etapa que s o os cart es CRC e a an lise dos casos de uso Metodologias e Projetos de Software a Os cart es CRC Classes Responsabilidades e Colabora es O uso dos cart es CRC identifica as responsabilidades dos atributos e das opera es apoiando a identifica o de classes ou de candidatos s classes Cada ficha corresponde a uma classe cada ficha cont m o nome da classe e 2 colunas com descri
66. Charles Cesconetto Diva Mar lia Flemming Eduardo Aquino Hiibler Fabiano Ceretta Francielle Arruda auxiliar Itamar Pedro Bevilaqua Janete Elza Felisbino Jorge Cardoso Jucimara Roesler Lauro Jos Ballock Luiz Guilherme Buchmann Figueiredo Luiz Ot vio Botelho Lento Marcelo Cavalcanti Maria da Gra a Poyer Maria de F tima Martins auxiliar Mauro Faccioni Filho Michelle Denise Durieux Lopes Destri Moacir Foga a Moacir Heerdt N lio Herzmann Onei Tadeu Dutra Patr cia Alberton Rose Cl r Estivalete Beche Raulino Jac Briining Rodrigo Nunes Lunardelli Cria o e Reconhecimento de Cursos Diane Dal Mago Vanderlei Brasil Desenho Educacional Daniela Erani Monteiro Will Coordenadora Design Instrucional Ana Cl udia Ta Carmen Maria Cipriani Pandini Carolina Hoeller da Silva Boeing Cristina Klipp de Oliveira Fl via Lumi Matuzawa Karla Leonora Dahse Nunes Leandro Kingeski Pacheco L via da Cruz Luc sia Pereira Luiz Henrique Milani Queriquelli M rcia Loch Viviane Bastos Acessibilidade Vanessa de Andrade Manoel Avalia o da Aprendizagem M rcia Loch Coordenadora Karina da Silva Pedro Design Visual Cristiano Neri Gon alves Ribeiro Coordenador Adriana Ferreira dos Santos Alex Sandro Xavier Edison Rodrigo Valim Fernando Roberto D Zimmermann Higor Ghisi Luciano Pedro Paulo Alves Teixeira Rafael Pessi Vilson Martins Filho Disciplinas a Dist ncia Enzo de Oliveira Mo
67. Conceituar software passa por conhecer suas caracter sticas as quais s o relacionadas a seguir M O software apresenta caracter sticas nicas ele n o se desgasta mas se deteriora Mas o que isto Imagine que voc compre esta Ferrari Novinha Agora imagine voc circulando com esta Ferrari todos os dias 200 Km em uma estrada de ch o a MA pa cheia de buracos Como vai estar sua Ferrari em um ano Com certeza vai estar cheia de ru dos e talvez apresente problemas em alguns componentes isto acontece pelo desgaste do carro Ao final de 10 anos usando o carro nesta mesma estrada bem prov vel que voc tenha um carro cheio de problemas Unidade 1 17 Universidade do Sul de Santa Catarina E se a gente for comprar um software imagine que voc tenha uma v deolocadora e resolva comprar um software para informatizar todo o processo de atendimento Abstraindo se quest es relacionadas ao hardware este software daqui a 100 anos ir executar da mesma maneira que ele executa hoje Ou seja se tiver algum problema de programa o ir repetir este problema em todas as vezes que for executado Mas se o software n o tiver problemas ir executar perfeitamente todas as vezes em que voc solicitar sua execu o Mesmo executando perfeitamente ao final de 3 anos talvez ele n o supra mais suas necessidades imagine o seguinte no seu sistema voc digita o c digo da fita para realizar a movimenta
68. Girar torneira Fechar Girar torneira Abrir Figura 8 6 Exemplo DTE tomar banho Furlan 1998 define quatro possibilidades de eventos em um Recibo de sinal expl cito do outro objeto s o gatilhos de uma transi o recibo de mensagens O objeto recebe um sinal de outro objeto e muda de estado Neste tipo de evento o objeto que envia a mensagem fica esperando a finaliza o da mesma Passagem de per odo designado de tempo o evento vai acontecer quando um determinado tempo acontecer disparando a mudan a de estados Neste tipo de evento utiliza se a cl usula after Por exemplo se voc tiver o evento after 1 minuto significa que o evento vai ser executado um minuto depois do objeto entrar no estado atual Uma condi o tornando se verdadeira mostrada uma condi o de guarda em uma transi o de estados Nestes casos voc utiliza a cl usula when por exemplo when quantidade lt 5 Neste caso a transi o disparada se a quantidade for menor do que 5 Recibo de chamada de opera o pelo pr prio objeto ou outro objeto mostrado como uma assinatura de evento em transi o de estado Um objeto solicita um servi o a outro objeto Metodologias e Projetos de Software Fazer Iniciar curso Incluir aluno Contador lt 10 Fazer Notificar aluno Cancelar Entrar Registrar aluno Sair Incrementar Contador Contador 10 Fazer Finalize Curso
69. Os n meros 1 e 1 1 nas mensagens s o n meros de sequ ncia usados para organizar a sequencializa o das mensagens Unidade 7 187 188 Pessoa setCompensation s Salario assign d Departamento Universidade do Sul de Santa Catarina As mensagens s o representadas graficamente por linhas com uma dire o e quase sempre incluem os nomes de suas opera es os objetos e seus v nculos como ilustra a figura 7 2 onde a troca de mensagens ocorre entre os objetos Plano de V o e Controlador Tr fego A reo Os objetos de uma intera o desempenham determinados pap is como voc pode perceber na figura 7 3 Nessa figura a classe Pessoa representa o papel do Empregado e a classe Empresa o papel empregador J os v nculos constituem normalmente uma inst ncia de uma associa o Um v nculo especifica um caminho pelo qual um objeto pode enviar uma mensagem para outro objeto ou para o mesmo objeto Observe a figura a seguir classe 1 i empregado empregador associa o opera es mensagem assign development cc el objeto objeto Pessoa v nculo Figura 7 3 Intera o entre objetos Fonte Booch 2000 Metodologias e Projetos de Software a Quais s o os tipos de mensagem O A nota o UML descreve a possibilidade de tr s tipos de mensagens Mensagem simples este tipo de mensagem utilizada quando a natureza da mensagem irrelevan
70. Paulo McGraw Hill 1990 COAD Peter YOURDON Edward An lise baseada em objetos Rio de Janeiro Campus 1992 COMUNIDADE IBM RUP 2005 Dispon vel em http www 130 ibm com developerworks rational community Acesso Ago 2005 DEMARCO Tom An lise estruturada e especifica o de sistema Rio de Janeiro Campus 1989 ESMIN A A A Modelando com UML Unified Modeling Language FILGUEIRA J M COSTA W S A Import ncia de Utilizar Uml para Modelar Sistemas Estudo de Caso Dispon vel em lt http www cefetsp br edu sinergia 6p10c html gt Acesso em Ago 2005 FOWLER M UML Distilled Second Edition a brief guide to the standard object modeling language New Jersey Prentice Hall International 1997 FURLAN J D Modelagem de Objetos Atrav s da UML S o Paulo Makron Books 1998 GILLEANES T A Guedes UML uma abordagem pr tica Novatec 2004 IBM RATIONAL UNIFIED PROCESS Vers o 2003 06 12 01 2005 http www 306 ibm com software awdtools rup IBM RUP 2004 http www 130 ibm com developerworks rational products rup novembro KROLL P KRUCHTEN P The Rational Unified Process Made Easy a Practitioner s Guide to the RUP Addison Wesley 2003 LARMAN Craig Applying UML and Patterns An Introduction to Object Oriented Analysis and Design and the Unified Process Prentice Hall 2001 LIESENBERG H Diagramas de Colabora o Dispon vel em lt http www unicamp br hans mc426 Hp
71. UML e suas representa es utilizadas na modelagem orientada a objetos Este estudo inicia com os casos de uso que representam o eixo central do modelo pois descrevem a sequ ncia de intera es realizadas pelo sistema que visam prover algum valor mensur vel ao usu rio do sistema O caso de uso permite mapear o escopo do sistema facilitando a comunica o com o usu rio do sistema e facilitando a ger ncia do projeto Mas para descrever o caso de uso n o suficiente concebermos apenas o diagrama de caso de uso preciso entender todos os seus elementos e sua documenta o Nesta unidade voc vai iniciar seu processo de aprendizagem identificando e construindo os casos de uso necess rios para descrever esta vis o do projeto SE O 1 O que s o casos de uso Um sistema sempre interage com usu rios outros sistemas ou equipamentos Todos eles esperam pelos resultados desta intera o que normalmente s o previs veis ou pelo menos deveriam ser Um caso de uso procura documentar as a es necess rias comportamentos e sequ ncias para que o resultado esperado pelo usu rio ocorra Ent o voc pode dizer que modelo de casos de uso modela os requisitos funcionais do sistema Antes de iniciar a defini o dos casos de uso voc deve estar consciente dos requisitos funcionais e n o funcionais necess rios ao sistema Unidade 02 Como o caso de uso n o especifica detalhes de implementa o voc vai na verda
72. Um pacote de casos de uso cont m v rios atores casos de uso seus relacionamentos e outros pacotes Metodologias e Projetos de Software Iconix O ICONIX um Imagine que voc tenha a seguinte lista de casos de processo simplificado Uso que unifica conjuntos de m todos de orienta o m Cadastro de Clientes aeos m Pedidos em Aberto abordagem completa m Gerenciamento de Vendas com o objetivo de dar m Relat rio de Data de Validade Vencidas Fi A cido a o desenvolvimento de m Cadastro de Produtos software ROSENBERG amp m Lista de Clientes SCOTT 1999 E Lista ce Produtos RUP Rational Unified m Relat rio de Produtos Mais Vendidos Process definido m Pedidos de Cancelamento como um processo de engenharia de software que oferece uma O projetista pode agrupar casos de uso que apresentam aspectos abordagem baseada em comuns como o tipo de fun o atores que utilizam ou quest es a atribui o de tarefas organizacionais Observe na figura a seguir os casos de uso foram divididos em tr s pacotes este agrupamento facilita a visualiza o principalmente em sistemas com um grande n mero de casos de uso desenvolvimento de software Souza et all 2000 ud Formal Requirements Consultas Atualiza es Pedidos Cancelados Pedidosem Aberto Cadastro de Clientes Cadastro de Produtos Gerenciamento de Vendas Relat rios Data Validade Vencidas Li
73. Universidade do Sul de Santa Catarina Metodologias e Projetos de Software Disciplina na modalidade a dist ncia 5a edi o revista e atualizada Palho a UnisulVirtual 2008 Cr ditos Unisul Universidade do Sul de Santa Catarina UnisulVirtual Educa o Superior a Dist ncia Campus UnisulVirtual Avenida dos Lagos 41 Cidade Universit ria Pedra Branca Palho a SC 88137 100 Fone fax 48 3279 1242 e 3279 1271 E mail cursovirtualounisul br Site www virtual unisul br Reitor Unisul Gerson Luiz Joner da Silveira Vice Reitor e Pr Reitor Acad mico Sebasti o Sal sio Heerdt Chefe de Gabinete da Reitoria Fabian Martins de Castro Pr Reitor Administrativo Marcus Vin cius An toles da Silva Ferreira Campus Sul Diretor Valter Alves Schmitz Neto Diretora adjunta Alexandra Orsoni Campus Norte Diretor Ailton Nazareno Soares Diretora adjunta Cibele Schuelter Campus UnisulVirtual Diretor Jo o Vianney Diretora adjunta Jucimara Roesler Equipe UnisulVirtual Avalia o Institucional D nia Falc o de Bittencourt Biblioteca Soraya Arruda Waltrick Capacita o e Assessoria ao Docente Angelita Mar al Flores Coordenadora Caroline Batista Elaine Surian No Vicente Folster Patr cia Meneghel Simone Andr a de Castilho Coordena o dos Cursos Adriano S rgio da Cunha Alo sio Jos Rodrigues Ana Luisa M lbert Ana Paula Reusing Pacheco Bernardino Jos da Silva
74. a Figura 5 8 Diagrama de Casos de Uso da V deo Locadora Utilize a extens o somente quando um comportamento opcional de um caso de uso precisar ser descrito O que o relacionamento de generaliza o O Quando voc faz uso da generaliza o significa que um caso de uso ou um ator herda caracter sticas de um caso de uso ou um ator mais gen rico 120 Metodologias e Projetos de Software Nestes casos existem caracter sticas comuns que podem ser compartilhadas um relacionamento entre um elemento geral e um outro mais espec fico Neste caso o elemento mais espec fico possui todas as caracter sticas do elemento geral e al m destas cont m ainda mais particularidades Q Atendente QO Gerente Figura 5 9 Heran a entre atores Na generaliza o entre atores como na figura acima o ator gerente herda todos os casos de uso do ator atendente O ator atendente pode realizar os casos de uso gerenciar filmes gerenciar cliente e gerenciar loca es O ator gerente herda todos estes casos de uso pode realizar gerenciar filmes cliente e loca es mas al m destes o ator gerente pode realizar o caso de uso gerenciar relat rios que s o espec ficos para este ator Se a generaliza o for entre casos de uso ent o podemos ter uma situa o como a da figura a seguir fig 5 10 Imagine uma funcionalidade no sistema da v deo locadora onde ser controlada a cobran a de clientes que sejam dev
75. a es como paralelismos e sincroniza es que s o imposs veis de serem especificadas no diagrama de casos de uso SE O 1 Modelo de Estados Os objetos de um sistema modificam seu estado de forma an loga a objetos do mundo real Pense no cozimento do macarr o Em seu primeiro estado ele est duro pois n o est cozido Depois de cozido ele ir amolecer e assim entra em outro estado Esta modifica o chamada de transi o entre estados Voc pode dizer que um estado representa o resultado de atividades executadas por um objeto determinada pelos valores de seus atributos e pela sua liga o com outros objetos FURLAN 1998 Metodologias e Projetos de Software Os objetos do sistema passam por v rios estados e esta transi o faz com o pr prio sistema se modifique Na verdade a transi o ocorre porque um evento mensagens timer erros condi es sendo satisfeitas entre outros disparado no sistema faz com que o objeto realize determinadas a es que fazem com que o objeto modifique seu estado O diagrama de estados DTE deve ser utilizado somente para algumas classes ou seja somente para aqueles que possuem estados bem definidos e onde a mudan a de estados propicia a mudan a do comportamento das classes No diagrama a seguir poss vel mapear os poss veis estados dos objetos e as a es e condi es necess rias para que ocorra a mudan a de estados entre os objetos Subir anda
76. a es do dom nio do problema muitas vezes dificulta a identifica o Existem algumas dicas que podem ser utilizadas para descobrir as classes de um dom nio de aplica o observando os seguintes elementos informa es que devem ser armazenadas transformadas analisadas ou manipuladas de alguma forma outros sistemas e terminadores externos que se comunicam ou interagem com o sistema em quest o atentando para as informa es que est o sendo trocadas dispositivos f sicos com os quais o sistema em estudo ter de interagir sem considerar a tecnologia para implementar o sistema em si m modelos bibliotecas de classe e componentes gerados em projetos anteriores COAD 1992 tamb m sugere alguns indicadores m coisas que s o parte do dom nio de informa o do problema ocorr ncias ou eventos que precisam ser registrados e lembrados pelo sistema pap is desempenhados pelas diferentes pessoas que interagem direta ou indiretamente com o sistema locais f sicos ou geogr ficos e lugares que estabelecem o contexto do problema Metodologias e Projetos de Software unidades organizacionais departamentos divis es etc que possam ser relevantes para o sistema Voc lembra do projeto da cl nica Bem Estar visto na Unidade 2 32 atividade de auto avalia o Que tal definir as poss veis classes candidatas a Classe Paciente Classe M dico Classe Conv nio Classe Laborat rio Classe Agend
77. a Classe Ficha M dica Agora quais os atributos que voc considera pertinentes para a Classe Conv nio Voc pode listar para a Classe Conv nio atributos como m C digo Conv nio Nome Conv nio m Telefone Conv nio m Caracter sticas Conv nio a Status Conv nio Se voc listar os poss veis atributos da Classe M dico Nome M dico CRM M dico Endere o M dico Telefone M dico Celular M dico Especialidades M dico Hor rio M dico Unidade 6 157 158 Universidade do Sul de Santa Catarina SE O 3 Como ocorrem os relacionamentos entre objetos Um relacionamento representa a intera o entre as classes e objetos ele ap ia o refinamento das classes Existem diferentes tipos de relacionamentos poss veis entre as classes identificadas Os mais importantes s o as associa es as depend ncias e as generaliza es associa o gt generaliza o gt depend ncia abrir fechar mover minimizar Janela Caixa Principal Di logo Figura 6 8 Relacionamento entre objetos Fonte Adapta o Booch 2000 Conhe a ent o a partir de agora as principais caracter sticas sobre os tipos mais comuns de relacionamentos entre objetos a Relacionamento de Associa o Segundo Furlan 1992 associa o uma rela o que descreve um conjunto de v nculos entre elementos de modelo quando duas classes ou mesmo uma classe consigo p
78. a modelagem estruturada e que s o fundamentais em sua documenta o Metodologias e Projetos de Softwares SE O 1 An lise estruturada A An lise estruturada foi desenvolvida nos anos 70 por Gane Sarson e De Marco t cnica baseada na utiliza o de uma linguagem gr fica para construir modelos de um sistema incorporando tamb m conceitos relacionados s estruturas de dados YOURDAN 1992 esclarece algumas caracter sticas da an lise estruturada Quando falamos em an lise estruturada temos que ter em mente que todo o desenvolvimento do sistema voltado para as fun es que o sistema deve realizar O que s o fun es Imagine o sistema de uma v deo locadora nele voc tem cadastro de clientes cadastro de fitas relat rio de clientes da locadora entre outras fun es que o sistema deve executar As fun es utilizam informa es e produzem informa es para o ambiente na fun o cadastro de fita o atendente faz a entrada de dados no cadastro de fita digitando informa es sobre a fita como nome do filme atores tipo de filme etc Estas informa es s o repassadas s entidades externas que pode ser o cliente o atendente da locadora por meio de fluxos de dados ou armazenadas em dep sitos de dados s o os dep sitos que v o armazenar em seu HD as informa es do cliente das fitas etc Retomando o exerc cio da Cl nica Bem Estar Unidade 3 69 Universidade do Sul de Santa Cat
79. a nossas vidas dia a dia mais informatizadas Mas este benef cio cobra seu pre o o software sofre manuten es equipes s o constantemente modificadas mas mesmo assim necess rio manter este arsenal de c digos executando com efic cia e efici ncia Este um dos contextos mais relevantes da modelagem permitir o entendimento do projeto a qualquer membro da equipe em qualquer ponto do processo seja em uma etapa inicial de an lise de requisitos ou j em fase de manuten o no cliente A modelagem pode ser comparada ao projeto de uma resid ncia se por exemplo o desejo fosse a constru o de um pequeno canil e voc estivesse seguro sobre como faz lo bem prov vel que seria poss vel executar esta obra sem a necessidade de se fazer um projeto pois ele vai ser pequeno e n o teria muitos riscos Agora imagine a constru o de um edif cio de 3 andares ser que voc teria coragem de edific lo sem a ajuda de um bom projeto que indique todos os aspectos relevantes da obra Voc neste caso concorda comigo acredita que n o n o mesmo Pois ent o nesta mesma rela o imagine a concep o de um projeto de software tenha a convic o que a modelagem fiel do sistema proporcionar ganhos de qualidade e economia de recursos a longo prazo Ent o convencido da import ncia do estudo desta disciplina Voc est pronto para iniciar os estudos Bons estudos Professora Vera Schuhmacher Plano de estu
80. a o c digo do funcion rio 4 O gerente informa os dados pessoais do funcion rio 5 O gerente informa os hor rios em que o mesmo estar na cl nica CSU 6 O registro do funcion rio armazenado Fluxo principal No item 2 caso este nome j exista Neste caso 1 1 S o apresentados os dados cadastrais do Fluxo alternativo e exce es funcion rio 1 2 S o apresentadas as possibilidades de Alterar excluir ou finalizar P s condi es Dados do funcion rio armazenados RF01 O sistema deve permitir o gerenciamento de Requisito funcional a q funcion rios e seus dados cadastrais Regras de neg cio RN01 O funcion rio do tipo m dico s pode ser exclu do se n o houver nenhuma consulta agendada 259 260 Universidade do Sul de Santa Catarina Atendente Caso de uso CSU002 Agendamento de Hor rio csu 005 Gerenciar A Ficha Cadastral Paciente csu 002 Agendar hor rio lt lt extend gt gt O caso de uso permite o agendamento do horario de consulta do Breve descri o paciente Ator prim rio Atendente Ator secund rio Paciente Pr condi es 0 atendente estar devidamente logado no sistema hor rios m dicos disponibilizados Fluxo principal 1 O paciente informa o nome do m dico data e horario desejado 2 O atendente solicita a consulta para o m dico informado nas datas solicitadas 3 Oat
81. a permite que uma classe seja criada a partir de outra classe superclasse e a nova classe subclasse herda todas as suas caracter sticas Poliformismo a propriedade segundo a qual uma opera o pode se comportar de modos diversos em classes diferentes Sistemas orientados a objetos s o flex veis a mudan as possuem estruturas bem conhecidas e oferecem a oportunidade de criar e implementar componentes totalmente reutiliz veis Quer conhecer mais N Para saber um pouco mais sobre orienta o a objetos e suas caracter sticas leia o cap tulo 1 do livro Fundamentos do Desenho Orientado a Objetos de Pages Jones Editora Makron Books 2001 Metodologias e Projetos de Software SE O 2 Qual a origem das linguagens de modelagem As linguagens de modelagem orientada a objetos come aram a surgir na d cada de 70 Nessa d cada tamb m apareceram no mercado computadores mais modernos e acess veis iniciando uma grande expans o computacional No in cio da d cada de 90 surgem as primeiras metodologias orientadas a objeto Muitos foram os m todos oferecidos como solu o para especifica o de projetos orientados a objetos mas alguns se destacaram tornando se refer ncia por suas caracter sticas O m todo Booch 1993 considerado expressivo nas fases de projeto e constru o apresenta o projeto como um conjunto de vis es cada vis o pode ser descrita por modelos e diagramas simbologia do m
82. a relev ncia de dispensar tempo suficiente para as etapas iniciais do projeto como a an lise de requisitos procurando uma maturidade na compreens o das necessidades do usu rio m Oferecer ao aluno o arsenal did tico necess rio para compreender o uso de t cnicas e m todos estruturados de modelagem de sistemas a Desenvolver o a aluno de forma a capacit lo a utilizar metodologias orientadas a objeto para a modelagem de sistemas Agenda de atividades Cronograma Verifique com aten o o EVA organize se para acessar periodicamente a sala da disciplina O sucesso nos seus estudos depende da prioriza o do tempo para a leitura da realiza o de an lises e s nteses do conte do e da intera o com os seus colegas e tutor N o perca os prazos das atividades Registre no espa o a seguir as datas com base no cronograma da disciplina disponibilizado no EVA Use o quadro para agendar e programar as atividades relativas ao desenvolvimento da disciplina Atividades obrigat rias Avalia o a dist ncia AD Avalia o presencial AP Avalia o final AF Demais atividades registro pessoal Tenha por h bito usar o quadro para agendar e programar as atividades relativas ao desenvolvimento da disciplina 13 UNIDADE 1 Ciclos de vida de um processo de desenvolvimento de software Objetivos de aprendizagem m Compr
83. ado finalizando o caso de uso P s condi o Saldo do cliente impresso Regras de neg cio RN01 Tabela 5 4 Exemplo de Documenta o do caso de Uso Realizar Saque cliente include realizar saque pl 2 2222205 realizar saque Nome Realizar Saque Identificador CSUOO3 Descri o O cliente do banco solicita saque de sua conta corrente Ator Prim rio Cliente Pr condi o Conta e senha do cliente serem v lidas Haver saldo na conta superior ou igual ao valor solicitado Fluxo Principal o cliente informa a conta e ag ncia o cliente informa a senha executa caso de uso Valida o Conta o sistema exibe a lista de servi os do caixa eletr nico o cliente seleciona a op o saque o cliente digita o valor a ser sacado o cliente informa a senha verifica se o saldo suficiente executa caso de uso Valida o Conta 10 o valor do saldo da conta atualizado 11 as c dulas s o liberadas no dispenser de c dulas Fluxo Alternativo 1 1 0 cliente cancela a opera o por teclado finalizando o caso de uso Metodologias e Projetos de Software Fluxo Alternativo 2 1 O sistema informa a mensagem Conta e ou Senha inconsistente 2 Osistema finaliza a tarefa por senha ou conta inexistente Fluxo Alternativo 3 P s condi o 1 O sistema informa a mensagem Saldo Insuficiente para Saque 2 O sistema finaliza a t
84. al doen as anteriores diagn stico prescri o A prescri o pode ser a solicita o de exames ou medicamentos com posologia 4 Identifica o do principal objetivo do cliente O objetivo principal o aumento na efici ncia e tempo de resposta no processo de marca o de consultas 5 Descri o dos usu rios do sistema M dicos todos os 34 m dicos possuem especializa o todos possuem conhecimentos b sicos de inform tica e no o do funcionamento e procedimentos da cl nica A faixa et ria se encontra entre 30 e 48 anos Nenhum m dico possui qualquer defici ncia f sica Atendente as 2 atendentes possuem o segundo grau completo razo vel experi ncia em inform tica e conhecimento do processo de funcionamento da cl nica As atendentes est o na cl nica a aproximadamente 3 anos Paciente existem aproximadamente 800 fichas na cl nica a cl nica n o sabe precisar se sua clientela possui acesso a internet A cl nica possui aproximadamente 85 das consultas realizadas por conv nio 6 Descri o detalhada dos processos existentes COMO O SISTEMA ATUAL FUNCIONA Marca o da Consulta O paciente pode realizar o agendamento da consulta pessoalmente ou por telefone em qualquer dois dos m todos os procedimentos s o id nticos O paciente solicita a consulta informando o nome do m dico ou a especialidade desejada posteriormente informa a data desejada A Atendente verifica a possibilidade de
85. al e do conte do da informa o Nas primeiras etapas do processo de desenvolvimento levantamento de requisitos e an lise o engenheiro de software representa o sistema atrav s de modelos conceituais considerando caracter sticas do sistema independente do ambiente computacional hardware e software no qual o sistema ser implementado nas etapas posteriores Na etapa seguinte as caracter sticas l gicas caracter sticas dependentes de um determinado tipo de sistema computacional e f sicas caracter sticas dependentes de um sistema computacional espec fico s o representadas em novos modelos A representa o dos modelos l gicos e f sicos pode ser feita por meio da Analise Estruturada An lise Essencial ou An lise Orientada a Objetos Os diagramas utilizados nestas metodologias ap iam e facilitam o entendimento da solu o Nesta disciplina voc vai fazer uso dos modelos Orientados a Objetos Visite o EVA ferramenta Midiateca L voc encontrar modelos para a Especifica o de Requisitos sem a utiliza o de modelos de an lise totalmente textuais Leia sobre Roteiro para Especifica o de Requisitos baseado em Peters 2000 Software Requirements Specification without Use Case da metodologia RUP Rational Unified Process E importante salientar Ao finalizar a especifica o solicite a assinatura do cliente Essa assinatura faz com que sua especifica o valha como um contrato U
86. ao processo c avalia se a Especifica o de Requisitos est seguindo os padr es previamente definidos evitando requisitos confusos duplicados incoerentes ou incompletos d respons vel pela defini o de restri es funcionalidades atributos interfaces externas e desempenho Metodologias e Projeto de Software 3 No texto abaixo voce tem a solicita o para desenvolvimento de software de um cliente propriet rio de uma clinica m dica A partir do texto levantado junto ao cliente preencha o documento de an lise do problema que dar inicio a documenta o do futuro sistema Empresa Cl nica Bem Estar 1 Fun o fomos contratados para analisar seu processo atual e verificar como expandir suas opera es e melhorar seu n vel de servi o Hist rico A cl nica fundada h 5 anos atua no atendimento clinico pedi trico A cl nica possui 34 m dicos cadastrados em diferentes especialidades como cardiologia cl nica geral dermatologia etc Todos os m dicos utilizam internet e e mail A faixa et ria predominante de 30 35 40 42 44 e 48 anos Todos os m dicos s o aptos sob o ponto de vista f sico O paciente pode ser atendido de forma particular ou por conv nios Os conv nios atendidos s o o Bruxtr Vpfzm e UIOIKk Cada m dico faz 3 plant es semanais de 4 horas seguidas as consultas possuem um intervalo de 30 minutos Existe a possibilidade da consulta ser de retorno neste caso s o apena
87. ar O tempo para cada consulta de 20 minutos ou 10 minutos para retorno m A consulta pode ser uma consulta de retorno neste caso a atendente verifica se a data est ainda dentro do prazo de retorno de 15 dias Em caso a consulta marcada na agenda m Caso o m dico solicitado esteja indispon vel a atendente procura informar o nome de outro m dico dispon vel naquele hor rio ou o pr ximo hor rio dispon vel m O paciente pode telefonar desmarcando a consulta neste caso o nome do paciente riscado da agenda ficando o hor rio vago novamente m Os m dicos ao chegarem na cl nica recebem as fichas dos pacientes separadas previamente Se for paciente novo a ficha cont m somente o nome do paciente e o telefone As fichas s o classificadas por ordem de hor rio m Se o paciente j possui cadastro o mesmo convidado a adentrar no consult rio do m dico A partir deste momento o m dico solicita informa es procedimentais para o futuro diagn stivo preenchendo a ficha do paciente Finalizada a consulta o paciente liberado e a ficha recolhida pela atendente sendo novamente arquivada m Se o paciente for novo a atendente solicita o preenchimento da ficha cadastral com dados pessoais Metodologias e Projetos de Software S ntese Nesta unidade voc aprendeu a identificar os casos de uso mais significantes e seus principais elementos Durante o estudo tamb m foram identificados os poss ve
88. arefa por saldo insuficiente C dulas disponibilizadas R Neg cio RN02 a Quais s o as regras de neg cio O Quando voc especifica uma regra de neg cio voc est especificando alguma condi o uma restri o uma pol tica ou uma norma que pode de alguma maneira interferir no processo que ser realizado por seu projeto Regras de neg cio mudam de uma empresa para outra outras s o comuns a v rias empresas Veja alguns exemplos de regras de neg cio m no sistema de caixa eletr nico o cliente s poder realizar o saque se e somente se o saldo de sua conta corrente for superior ou igual ao valor a ser sacado Se o saldo for inferior ao valor a ser sacado e se o cliente possui um valor de limite de cr dito em sua conta corrente ent o o saque n o pode ser superior ao valor do saldo do valor limite da conta corrente m no sistema de estoque na baixa do estoque quando a quantidade em estoque de um produto for inferior a quantidade de estoque m nimo deve ser gravada uma solicita o de pedido para este item A quantidade solicitada ser a diferen a de quantidade sobre a quantidade m nima As regras de neg cio podem ser documentadas por meio de uma identifica o e descri o Cada regra pode estar ligada a um ou mais casos de uso neste caso o identificador deve ser anexado ao caso de uso Unidade 5 130 Universidade do Sul de Santa Catarina Tabela 5 5 Exemplo de Docum
89. arina Empresa Cl nica Bem Estar 1 Fun o fomos contratados para analisar seu processo atual e verificar como expandir suas opera es e melhorar seu n vel de servi o Hist rico A cl nica fundada h 5 anos atua no atendimento clinico pedi trico A cl nica possui 34 m dicos cadastrados em diferentes especialidades como cardiologia cl nica geral dermatologia etc Todos os m dicos utilizam internet e e mail A faixa et ria predominante de 30 35 40 42 44 e 48 anos Todos os m dicos s o aptos sob o ponto de vista f sico O paciente pode ser atendido de forma particular ou por conv nios Os conv nios atendidos s o o Bruxtr Vpfzm e UIOIKk Cada m dico faz 3 plant es semanais de 4 horas seguidas as consultas possuem um intervalo de 30 minutos Existe a possibilidade da consulta ser de retorno neste caso s o apenas 15 minutos A cl nica 24 horas Cada m dico possui uma agenda preta onde s o marcadas as consultas Na marca o da consulta colocado o nome do paciente hor rio e conv nio Trabalham 3 anos na cl nica com planilhas excel A cl nica possui 2 atendentes que s o respons veis por preencher o cadastro inicial do paciente que cont m nome endere o telefone data de nascimento conv nio O m dico ao atender o paciente preenche sua ficha manualmente informando peso altura idade motivo da consulta queixa principal doen as anteriores diagn stico prescri o A pres
90. as corretas s o b e d 2 a A 3 a E 4 O modelo utilizado ser dependente do tipo de produto a ser desenvolvido e da din mica da empresa desenvolvedora mas podemos citar 3 modelos que podem ser considerados interessantes em qualquer tipo de projeto s o eles m Modelo de dom nio que procura estabelecer o contexto do sistema m Modelo de caso de uso que estabelece os requisitos funcionais do sistema m Modelo do processo que estabelece os mecanismos de concorr ncia e de sincroniza o do sistema 267
91. as padr o do processo de desenvolvimento Imagine que voc foi contratado para desenvolver um produto que fa a v deo inspe o a dist ncia de dutos de galerias de drenagem para a prefeitura do Rio de Janeiro Voc poderia de imediato indicar uma solu o Ou voc teria d vidas sobre como faz lo da melhor maneira pela grande oferta de recursos tecnol gicos e mesmo restri es de projeto existentes c Modelo Prototipa o prototipa o envolve a produ o de vers es iniciais prot tipos de um sistema futuro com o qual podem se realizar verifica es e experimenta es para se avaliarem algumas de suas qualidades antes que o sistema venha realmente a ser constru do Este modelo popularmente usado como um mecanismo para identificar os requisitos de software Imagine voc iniciando um trabalho com um cliente que lhe solicita um software para controle de uma UTI mas voc n o faz id ia do funcionamento de uma UTI E o pior que o cliente n o parece dispor de muito tempo para explicar novamente o que voc n o conseguiu entender Metodologias e Projeto de Software In cio Fim obten o dos requisitos projeto constru o i r pido produto constru o prot tipo refinamento prot tipo avalia o prot tipo Figura 1 4 Modelo Prototipa o Fonte Pressman 2002 Na figura 1 4 voc percebe o ciclo de desenvolvimento
92. asses objetos e suas interconex es e o projeto detalhado tem por objetivo a concep o e especifica o das estruturas de dados e dos algoritmos que realizam aquilo que foi especificado para cada componente do software Implementa o na implementa o o sistema codificado Teste de software Na etapa de testes ocorre a verifica o do que foi implementado V rias s o as t cnicas desde corretivas procura de erros at de valida o com grupos de usu rios Unidade 1 23 24 Universidade do Sul de Santa Catarina c Manuten o Nesta fase ocorrer o mudan as no software em consegu ncia dos erros encontrados Al m disto esta a etapa respons vel pelas adapta es do software em fun o da evolu o do hardware e necessidades do cliente A manuten o pode ser corretiva o cliente encontrar defeitos no software adaptativa s o modifica es no software que acomodam mudan as relacionadas evolu o do hardware por exemplo o cliente decide trocar o sistema operacional por uma possibilidade open source por exemplo e funcional implementa fun es adicionais para o cliente relacionadas a expectativas que ele n o tinha durante o desenvolvimento como em uma situa o onde o gerente de recursos humanos precisa de um novo relat rio estat stico Al m das tr s etapas b sicas temos que considerar ainda as atividades complementares fundamentais para o bom andamento do processo
93. associados a estes casos de uso Esta tarefa ser realizada por meio dos diagramas de casos de uso a Finalizada a identifica o dos casos de uso os mesmos devem ser organizados por meio de grupos que permitam sua melhor compreens o e visualiza o Esta estrutura o ocorre por meio do diagrama de pacotes m Os requisitos funcionais devem ser claramente associados aos casos de uso e aos objetos do dom nio de forma a tornar vis vel qual caso e classe ir solucionar o requisito funcional An lise e Projeto Preliminar Durante a etapa de an lise e projeto s o descritos os casos de uso identificando seus cen rios Nesta etapa do processo s o constru dos os diagramas de robustez e s o refinados e finalizados os diagramas de classe Projeto A etapa de projeto permite a equipe a especifica o do comportamento esperado nos casos de uso a identifica o dos objetos atores e as mensagens trocadas entre os elementos Para esta tarefa o diagrama de sequ ncia torna se essencial Neste momento j poss vel inserir no diagrama de classes seus atributos e m todos S o assim conclu dos os diagramas do modelo est tico validando se todos os requisitos prescritos foram atendidos Metodologias e Projetos de Software Implementa o Para a etapa de implementa o a equipe apresenta seu maior esfor o na gera o do c digo na realiza o de testes de unidade integra o e aceita o do cliente Agora para pr
94. aticar os conhecimentos conquistados nesta unidade realize a seguir as atividades propostas Atividades de auto avalia o Leia com aten o os enunciados e realize as quest es propostas 1 Assinale as afirmativas corretas mais de uma caso necess rio a O RUP utiliza se do modelo iterativo para o desenvolvimento do software isto significa a defini o claras de etapas em um ciclo r gido e formal b O RUP visto como um produto de processo de engenharia customiz vel c O RUP centrado na constru o do produto baseia se fundamentalmente no uso de uma linguagem orientada a objetos d O RUP centrado na arquitetura estabelecendo de forma clara e segura todos os relacionamentos existentes entre seus componentes 2 Relacione os elementos do RUP a O analista respons vel pelo gerenciamento da qualidade do produto b Relat rio de testes A Pap is c Respons vel pelo controle da documenta o e padroniza o da equipe de implementa o B Atividades programas C Artefatos d Cronograma e Definir as classes do projeto f Entender a estrutura e a din mica da organiza o Unidade 9 239 240 Universidade do Sul de Santa Catarina 3 Relacione os fluxos de atividades do RUP a Procura manter a integridade dos artefatos do projeto A Modelo de neg cios b Procura manter uma vis o uniforme B Requisitos sobre o projeto para todo
95. c j esteve envolvido na constru o de uma casa Ou teve algu m pr ximo a voc construindo Imagine ent o que voc vai construir uma casa e deseja que seja espa osa com tr s quartos tr s banheiros de dois pavimentos etc Qual seria a primeira a o a ser tomada Pense um pouco a respeito Bom a primeira coisa que voc vai com certeza fazer contratar o pedreiro comprar o material e iniciar a obra pois voc sabe exatamente como deve ser feita N o verdade N o Por qu Metodologias e Projeto de Software Isto n o acontece porque se sabe da necessidade de ter um projeto claro em projetar os aspectos relacionados estrutura hidr ulica el trica e ter profissionais aptos a conceber a melhor solu o para as nossas necessidades Finalizados os projetos inicia se ent o a obra e neste momento o projeto documentado das plantas funciona como roteiro de gerenciamento ou seja tudo o que for constru do deve ser consistente com o que foi projetado Isto significa que se valida o que os pedreiros e mestres de obra realizam com o projeto feito por engenheiros e arquitetos E se voc constru sse sem fazer tais projetos voc acredita que sua casa seria constru da dentro de suas expectativas solucionando suas necessidades quase certo que isto n o ocorreria Este exemplo tamb m valido para a constru o do software mas infelizmente muitas empresas ainda apostam no desenvolvimento do produto
96. car Agenda Dados Agenda Realizar Agendamento Nome Paciente Hor rio M dico Figura 3 4 DFD Agendar Consulta Unidade 3 Verificar Cadastro Paciente Paciente Dados Paciente 77 Universidade do Sul de Santa Catarina A figura 3 4 um exemplo da explos o do DFD Agendar Consulta Agora j poss vel perceber que existem pelo menos 4 subprocessos envolvidos no agendamento da consulta a solicitar agendamento disparado pela Entidade Exterma EE paciente a verificar cadastro paciente onde ser verificada a exist ncia ou n o de cadastro do paciente na cl nica m dica a verificar agenda nela ser verificado o hor rio solicitado o m dico e suas disponibilidades para a consulta a realizar agendamento processo que efetiva a marca o da consulta armazenando a informa o no dep sito de dados Dicas para a constru o de DFD s Os DFD s s o constru dos a partir da lista de funcionalidades propostas para o sistema a Escolha nomes significativos para os processos fluxos dep sitos e entidades externas Os nomes devem ser facilmente identificados principalmente pelo vocabul rio do usu rio b Numere os processos Em um sistema grande a numera o pode ser muito til C Sempre tenha em mente a facilidade de entendimento do DFD Se o DFD estiver confuso refa a o at que lhe pare a suficientemente claro A figura 3 5 apresenta um DFD que representa o
97. cas da concorr ncia sincroniza o e desempenho do sistema O uso das vis es durante o projeto depende do tipo de projeto a ser constru do vis o do processo por exemplo irrelevante se o sistema for constru do sobre apenas um processo Se o sistema composto por apenas um m dulo redundante a utiliza o da vis o de implementa o Unidade 4 101 102 Universidade do Sul de Santa Catarina A empresa decide pela escolha das vis es que ser o contempladas e consequentemente os diagramas que ser o desenvolvidos no projeto a partir do tipo de dom nio do projeto modelo de desenvolvimento riscos restri es e caracter sticas do processo SE O 4 Diagramas da UML Um diagrama procura representar graficamente a proje o de um sistema Alguns elementos aparecem em mais de um diagrama alguns em todos outros em nenhum A UML possui nove diagramas FURLAN 1998 a Diagrama de Casos de Uso Os casos de uso descrevem a funcionalidade do sistema percebida por atores externos O ator um usu rio equipamento organiza o interage com o sistema b Diagrama de Classes representa a estrutura est tica do sistema as classes os relacionamentos entre suas inst ncias objetos restri es e hierarquias c Diagramas de Intera o formado por a Diagramas de Sequ ncia mostram a colabora o din mica entre um n mero de objetos O objetivo principal mostrar a sequ ncia de mensag
98. cessos s o executados em uma sequ ncia r gida Assim cada sub processo passa a ser um marco de controle Este modelo exige uma abordagem sistem tica sequencial ao desenvolvimento de software Isso acontece da seguinte forma o desenvolvedor visita a empresa e inicia a etapa de levantamento de requisitos ap s algumas sess es finaliza esta etapa de levantamento e inicia a etapa de an lise Finalizada a an lise inicia se o processo de desenho do sistema com todo seu projeto Finalizada esta etapa inicia se a implanta o do c digo Observe que n o existe retorno a etapas anteriores o modelo inflex vel as etapas s o sequ ncias e n o permitem regresso no modelo em cascata o desenvolvedor ao finalizar o desenho do projeto s poder modific lo na etapa de manuten o Esta vis o burocr tica dos sub processos geram situa es dif ceis de serem resolvidas pelos analistas Pense projetos reais raramente seguem o fluxo sequencial que o modelo prop e no in cio de um projeto dif cil estabelecer explicitamente todos os requisitos existe uma incerteza natural E o maior problema de todos a falta de visibilidade para o cliente Somente na etapa de implanta o o cliente ter contato com o software Unidade 1 25 26 Universidade do Sul de Santa Catarina Requisitos Implementa o Mi K Implanta o Figura 1 2 Modelo Cascata Fonte P dua 2000 No modelo em cascata todo o projeto de
99. ciplina mostra todas as atividades que voc deve realizar para produzir um determinado conjunto de artefatos As disciplinas s o descritas em n vel geral com um resumo de todos os pap is atividades e artefatos envolvidos Em alguns pontos do projeto voc precisa de um detalhamento maior Neste caso ocorre o detalhamento da disciplina por meio do fluxo de trabalho Metodologias e Projetos de Software M Um fluxo de trabalho uma seq ncia de atividades que s o executadas para a produ o de um resultado para o projeto Fluxos de trabalho podem ser representados por diagramas de seq ncia diagramas de colabora o e diagramas de atividades da linguagem UML e Fluxos de trabalhos O RUP desenvolvido baseando se em nove fluxos de trabalho de processo que podem ser divididos em fluxos principais e de fluxos de apoio definidos em Booch 2000 Fluxos principais a Modelagem do Neg cio Business Modeling envolve o entendimento da estrutura e din mica da organiza o cliente garantindo que clientes usu rios e desenvolvedores tenham a mesma vis o da organiza o para a qual ser feito o desenvolvimento Requisitos Requirements Esta disciplina visa estabelecer e manter concord ncia com os clientes e outros envolvidos sobre o que o sistema deve fazer utilizando se para isto dos casos de uso Tamb m definida a delimita o do sistema s o definidas as bases para planejamento do conte
100. cliente a consulta ao acervo e Defini o funcion rio da videolocadora respons vel por opera es de abertura fechamento controle de funcion rio controle de compras e pagamentos da videolocadora e Frequ ncia de uso di rio e Conhecimento em inform tica aplicativos Word Browsers Windows 2 Gerente XP e Conhecimento no processo domina todo o processo do neg cio e Grau de escolaridade gradua o e Permiss es de acesso ter acesso a todas as funcionalidades do sistema A descri o detalhada do ator ajuda na defini o de perfis que influenciam no projeto da interface SE O 3 Relacionamentos entre casos de uso e atores Para que um caso de uso seja executado necess rio a exist ncia de atores que interajam com o caso de uso Esta intera o ocorre por meio dos relacionamentos de comunica o inclus o exten o e generaliza o Metodologias e Projetos de Software D O que relacionamento de comunica o O Quando se usa um relacionamento de comunica o voc vai estar representando quais atores est o associados a um caso de uso Isto significa que o ator vai interagir trocando informa es com o caso de uso o relacionamento mais comum onde ocorre troca de informa es gerenciar filmes cliente atendente Figura 5 5 Exemplo de relacionamento de comunica o O ator cliente oferece informa es ao caso de uso como nome e t
101. clud Cadastrar de Fiador gone o Validar CPF Corretor from Atores Nome Cadastrar Fiador Identificador CSUOZ Descri o O corretor cadastra as informa es inerentes ao fiador de um cliente Ator Prim rio Corretor Pr condi o Corretor logado no sistema Fluxo Principal 1 Corretor digita dados do fiador no sistema 3 Corretor Confirma cadastro 4 Executa Validar CPF 5 Dados do Fiador s o armazenados Fluxo Alternativo 1 1 Corretor seleciona bot o Cancelar 2 Os dados da janela s o limpos Fluxo Alternativo 2 1 Corretor deseja alterar dados de algum fiador 2 Corretor seleciona um fiador cadastrado 3 Sistema mostra informa es do fiador 4 Corretor altera informa o 5 Executa Validar CPF 6 Corretor confirma a altera o 7 Dados do Fiador s o armazenados Fluxo Alternativo 3 P s condi o 1 Corretor deseja excluir fiador 2 Corretor seleciona um fiador cadastrado 3 Seleciona bot o Exclus o 4 Dados do fiador s o exclu dos do banco de dados Dados do fiador atualizados Regras de Neg cio RNO2 Metodologias e Projetos de Software Tabela 5 8 Documenta o do caso de uso Cadastrar Im vel Cadastrar Im vel Corretor from Atores Nome Cadastrar Im vel Identificador CSU04 Descri o Efetua o cadastro do im vel que ficar dispon vel na imobili ria Ator Prim rio Corretor
102. cri o pode ser a solicita o de exames ou medicamentos com posologia A cl nica possui aproximadamente de 700 800 fichas sendo que entorno de 600 s o atendidas por conv nio O gerente da cl nica est ansioso pois n o consegue controlar quest es relacionadas ao n mero de pacientes atendidos por conv nio e particular m dicos mais procurados e picos de movimento Volume de atendimentos 56 por dia Outra quest o de interesse manter um controle de laborat rios conveniados pois o m dico poderia indicar o laborat rio j no momento da prescri o Se voc fosse listar alguns dos requisitos funcionais com certeza poderia listar Metodologias e Projetos de Softwares Cadastro de m dicos que possibilite cadastrar alterar e excluir os dados cadastrais dos m dicos da cl nica m Cadastro de pacientes que permita cadastrar alterar e excluir os dados cadastrais dos pacientes da cl nica Agenda m dica onde deve ser poss vel o agendamento consulta e exclus o do agendamento de consulta de um paciente com um determinado m dico em um determinado hor rio Ficha m dica que permita o lan amento e consulta de dados sobre a consulta do paciente a Emiss o de relat rio estat stico sobre o atendimento de conv nios m Emiss o de relat rio estat stico sobre o atendimento por m dicos a Emiss o de relat rio estat stico sobre o n mero de atendimentos durante o ano a Cadastro de labo
103. da parte se do princ pio que um programador cansado produz mais erros e portanto deve ser evitado Pequenas vers es o sistema baseado em entregas frequentes a partir de vers es com tamanho pequeno que s o incrementadas em requisitos continuamente entregas de vers es mensais com feedback de aceita o do cliente por exemplo Met foras o uso de met foras procura descrever o software sem a utiliza o de termos t cnicos facilitando a comunica o com o cliente Projeto simples o sistema precisa ser projetado o mais simples poss vel satisfazendo os requisitos atuais n o havendo preocupa o com requisitos futuros Teste a equipe de desenvolvimento descreve em um primeiro momento os casos de testes ap s esta tarefa continuam o desenvolvimento Assim como os desenvolvedores os clientes tamb m escrevem testes a fim de validar o atendimento dos requisitos Refactoring sempre que poss vel o projeto deve ser aperfei oado este aperfei oamento deve propor a clareza do software Propriedade coletiva pertence a todo o grupo Isto significa que n o existe o conceito de propriedade para um algoritmo qualquer integrante da equipe pode acrescentar ou alterar desde que realize os testes necess rios para valid lo Integra o cont nua a constru o e a integra o do sistema ocorre v rias vezes por dia Tarefas s o completadas continuamente Cliente dedicado o usu rio final esta dispon vel todo o
104. da atividade Na figura a seguir apresentado o diagrama de atividade para o caso de uso Gerar Contrato de Aluguel do sistema Imobili rio adCSUOS Inicio Corretor Efetua Login Seleciona Cliente Seleciona Fiador Dados Aprovados Avisa Cliente da Negativa Seciona Im vel V Insere dados do aluguel Contrato Imprime Contrato Final Figura 8 11 Diagrama Gerar Contrato de Aluguel do Sistema Imobili rio Unidade 8 217 Universidade do Sul de Santa Catarina Workflow o workflow descreve tarefas dos processos de neg cio conjunto de uma ou mais atividades relacionadas que coletivamente atingem um objetivo em um n vel conceitual necess rio para compreender avaliar e reprojetar o processo de neg cio Bortoli 2004 218 Lembre se utilize o diagrama de atividade para O mn Explicitar comportamentos paralelos m Na modelagem de Workflow m Em caso de programa o com multithreading m Para melhor entendimento de workflow entre v rios casos de uso SE O 3 Considera es sobre o uso da orienta o a objetos Durante este estudo n o foram apresentados todos os diagramas e todas as vis es poss veis da UML Na verdade foram privilegiadas as vis es consideradas fundamentais para qualquer desenvolvimento de software A complementa o pode ser feita por meio da leitura do livro UML Guia do Usu rio escrito por Booc
105. da modelagem estruturada Se es de estudo Se o 1 An lise estruturada Se o 2 Diagrama de Fluxo de Dados DFD Se o 3 Dicion rio de Dados Se o 4 Modelagem de Dados 68 Universidade do Sul de Santa Catarina Para in cio de estudo Quando se inicia o processo de desenvolvimento de um software s o realizadas tarefas espec ficas que podem ser estruturadas dentro de um modelo de desenvolvimento como voc estudou na primeira unidade da disciplina No in cio do processo tem se a etapa de an lise de requisitos assunto estudado na segunda unidade na qual voc confrontado com as reais necessidades de seu cliente Ainda que voc esteja ansioso por come ar o processo de desenvolvimento e efetivamente iniciar a etapa de codifica o a etapa crucial do processo ainda est por vir o projeto de desenvolvimento de software Como voc estudou na primeira unidade o projeto est contido na etapa de desenvolvimento do software e nela que voc vai desenhar o modelo da solu o que deve resolver as necessidades apontadas no levantamento de requisitos Existem diferentes metodologias para cumprir esta etapa mas as mais conhecidas s o a An lise estruturada e a An lise orientada a objetos Na an lise estruturada o desenvolvimento do sistema voltado para as fun es processos que ele deve realizar Durante a unidade 3 voc vai conhecer as nota es e caracter sticas espec ficas utilizadas em um
106. dade 3 79 Universidade do Sul de Santa Catarina Manter o cadastro de clientes da floricultura a Manter o controle de pedidos da floricultura m Controlar o pagamento de pedidos realizado por clientes da floricultura Os requisitos n o funcionais da floricultura s o m S o requisitos n o funcionais a manuten o da simplicidade do c digo permitindo a facilidade na manuten o Cliente Gerente Gerenciar Floricultura Atendente Figura 3 6 DFD N vel O Sistema Floricultura Gerente Atendente Cliente Dados Produto Dados Pedido Dados Cliente Produto Gerenciar Pedidos Gerenciar Cadastros Dados Cliente Produto Dados Produto Dados Pedido Dados Cliente Dados Produto Dados Cliente Dados Pedido 2 Dados Produto 80 Figura 3 7 DFD N vel 01 Sistema Floricultura Metodologias e Projetos de Softwares Atendente Cliente MSG Produto Indispon vel Nome Cliente tipo produto quantidade Solicitar Produto nome Cliente Endere o telefone cpf etc Verificar Exist ncia Cliente MSg Cliente Inexistenter 9 Dados do Cliente Nome Endere o telefone CPF etc Cadastrar Dados Cliente Verifica exist ncia do Produto 2 Dados do Produto Cadastrar Produto c digo descri o pre o quantidade custo Saldo atual produto Preenche dados do Pedi
107. dade e as entidades existentes para as situa es propostas abaixo a Um professor leciona v rias disciplinas em sua universidade b A universidade emprega v rios funcion rios c Os funcion rios s o lotados em um departamento d Um aluno pode estar matriculado em nenhuma ou v rias disciplinas e uma disciplina pode ter v rios alunos nela matriculados Exemplo de resolu o um equipamento de audiovisual alocado a um professor Equipamento audiovisual Professor 0 1 0 1 Metodologias e Projetos de Softwares S ntese Nesta unidade voc estudou os principais conceitos adotados nesta metodologia Durante o estudo o uso das ferramentas como o DFD o dicion rio de dados a descri o do processo e o diagrama ER foram abordados evidenciando sua import ncia na concep o do modelo previsto para a solu o do problema do cliente O uso do DFD torna clara a equipe de projeto e para o usu rio a forma como as informa es ir o transitar nos futuros processos assim como a transforma o sofrida durante sua evolu o Foi poss vel tamb m abordar a import ncia da normaliza o evitando redund ncias na futura base de dados do sistema A an lise estruturada foi um movimento inicial do uso de uma metodologia de projeto que permitisse documentar o futuro projeto de forma clara e consistente A evolu o no entanto era inevit vel Na pr xima unidade abordaremos a an
108. de pensar em como o sistema ser utilizado Metodologias e Projetos de Software Agora imagine a seguinte situa o voc vai realizar o projeto usando UML para uma pequena videolocadora Neste pequeno projeto os requisitos funcionais listados s o o gerente deseja cadastrar seu acervo de fitas e dvd s com informa es gerais sobre cada filme como nome do filme dura o diretor principais atores g nero idiomas dispon veis fundamental que o atendente possa realizar o cadastro de clientes possibilitando o cadastro de endere o telefone do cliente e 3 possibilidades para digita o de nomes de pessoas autorizadas para retirar fitas DV Ds E necess rio que o sistema permita o controle de entrega e recebimento das fitas DVD O gerente deseja um relat rio estat stico de fitas DV Ds mais locados Deve ser poss vel um relat rio de consulta de fitas DV Ds em atraso Relat rio que apresente os 50 maiores clientes da locadora Agora tente identificar os casos de uso ent o quantos voc encontrou Voc pode listar os seguintes casos de uso m Gerenciar cliente este caso de uso ser respons vel pelo cadastro consulta exclus es e altera es de dados cadastrais do cliente m Gerenciar filmes este caso de uso ser respons vel pelo cadastro consulta exclus es e altera es de dados das fitas e dvd s da videolocadora m Gerenciar loca es o caso de uso deve permitir o controle
109. de entregas e recebimentos das fitas DV Ds e c lculo de multas quando necess rio Unidade 5 111 Universidade do Sul de Santa Catarina m Gerenciar relat rios este caso de uso deve possibilitar a impress o dos relat rios estat sticos de loca o maiores clientes e controles de atraso de entrega Se voc representar graficamente os casos de uso voc ter os mesmos representados por um c rculo veja a figura 5 1 Retome o exemplo da videolocadora figura 5 1 mostra tr s casos de uso poss veis para este projeto gerenciar gerenciar gerenciar cliente loca es filmes Figura 5 1 Casos de uso de uma videolocadora O modelo de casos de uso composto por casos de uso atores e relacionamentos O caso de uso descreve um conjunto de sequ ncias cada um representando a intera o entre atores com o pr prio sistema Esses comportamentos s o fun es em alto n vel que voc vai visualizar especificar construir e documentar tentando mostrar de forma clara o comportamento pretendido do sistema durante a an lise de requisitos Quando voc nomear o caso de uso este nome deve ser nico dentro do projeto diferenciando o dos demais casos de uso Voc pode usar qualquer caractere textual no nome do caso de uso mas evite o uso de dois pontos Procure utilizar express es verbais ativas O que o diagrama de casos de uso O Se um caso de uso sempre iniciado a partir do momento que um at
110. de estudo Voc estudou na unidade 5 sobre o modelo de casos de uso Este modelo identifica o que o sistema deve fazer e para quem Apesar de descrever o que e para quem deve ser feito n o s o descritos maiores detalhes relacionados ao comportamento interno do sistema na execu o das funcionalidades O modelo de classes de dom nio estudado na unidade 6 agrega ao projeto a vis o est tica e estrutural do sistema Sob esta vis o voc construiu a defini o das classes e responsabilidades Apesar de voc j ter at aqui uma id ia clara do sistema com estes dois modelos nenhum aspecto relacionado ao mecanismo de comunica o e comportamento entre objetos foi tratado at este momento Por isso nesta unidade voc vai estudar sobre o modelo de intera es que apresenta as mensagens trocadas entre os objetos na execu o de um determinado cen rio O uso do modelo de intera es procura descrever o modelo din mico do sistema propondo a descri o inclusive temporal da troca de mensagens entre objetos Se o 1 Quais s o os elementos do Modelo de Intera es Segundo BOOCH 2000 intera o como um comportamento que abrange um conjunto de mensagens trocadas entre um conjunto de objetos em um determinado contexto para a realiza o de um prop sito Casos de Uso gt Objeto H Objetob se Mensagem Figura 7 1 Intera o entre objetos Metodologias e Projetos
111. de script e outros softwares para ajudar a desenvolver e juntar diferentes componentes do seu projeto Fonte Texto dispon vel no site lt http pt wikipedia org gt Acessado em Ago 2005 d Transi o fornece o sistema aos seus usu rios finais normalmente por uma vers o beta do sistema Se necess rio no final da fase pode ser iniciado um novo ciclo de desenvolvimento para a evolu o do produto Universidade do Sul de Santa Catarina Fases Modelagem de Neg cios Requisitos An lise e Design Implementa o Teste Implanta o Geren de Configura o e Mudan a Gerenciamento de Projeto Ambiente Itera es Figura 9 2 Fases do RUP Fonte Adapta o IBM 2005 A cada fase ocorre um ciclo completo de desenvolvimento da an lise ao produto execut vel Cada fase finalizada com um marco de progresso milestone onde s o verificados se os objetivos da fase foram alcan ados A cada itera o elabora o constru o transi o s o realizadas atividades listadas esquerda do gr fico as curvas apresentadas no gr fico indicam o esfor o dedicado s atividades a cada fase do projeto As intera es s o ciclos completos de desenvolvimento Cada intera o passa por v rios fluxos de trabalho do processo com nfases diferentes Como foi comentado na primeira se o o RUP direcionado pelos casos de uso Mas como isto acontece A cada itera o s o identi
112. definido ter administra o planejada em detalhes e ainda levantar antecipadamente as d vidas das pessoas que ir o respond lo Sempre que poss vel use o vocabul rio das pessoas que ir o responder Prefira o uso de perguntas curtas e simples Certifique se de que as quest es est o tecnicamente precisas antes de inclu las no question rio Metodologias e Projeto de Software c Observa o Direta A observa o direta pode ser utilizada como valida o das entrevistas identifica o de documentos esclarecimento sobre o que est sendo realizado no ambiente atual e a forma como ocorre No mecanismo de observa o direta o analista observa sem intervir diretamente no processo importante planejar a observa o e isto significa identificar o que deve ser observado obter aprova o das ger ncias apropriadas obter as fun es e nomes das pessoas envolvidas nas a es que ser o observadas Se voc optar por esta t cnica prepare os usu rios com cuidado esclarecendo a forma como o processo vai ocorrer d Brainstorming No sentido exato da palavra brainstorming uma tempestade de id ias O uso da discuss o em grupos em que a partir dos resultados das t cnicas acima procura se compreender corretamente documentos respostas oferecidas pelos usu rios processos existentes s o a base para que se chegue a uma boa especifica o Nesta etapa inicia se a formata o de um documento que deve cont
113. deolocadora informando seu nome o cliente seleciona a fita desejada e informa a data da reserva A reserva efetiva somente pelo envio da confirma o para o e mail do cliente D Caso de uso d Devolu o de Fitas e Fornecedor de fitas f Gerenciar compra de fitas 9 O cliente pode retirar no m ximo 3 fitas com devolu o para 24 horas 4 No texto abaixo identifique a Os requisitos funcionais b Os atores c Os casos de uso d Documente 2 casos de uso Requisitos funcionais m O projeto que voc vai realizar ser para a clinica pedi trica Bem Estar e tem como objetivo principal a marca o de consultas m dicas m O paciente pode realizar o agendamento da consulta pessoalmente ou por telefone em qualquer dois dos m todos os procedimentos s o id nticos m O paciente solicita a consulta informando o nome do m dico ou a especialidade desejada posteriormente informa a data desejada A atendente verifica a possibilidade de marca o da consulta observando se o m dico em quest o possui hor rios vago para a data desejada Se existe hor rio dispon vel a atendente solicita ao paciente o tipo de convenio ou se particular Se for conv nio verificado se um conv nio v lido se for particular informado o valor da consulta A atendente atualiza a agenda com o nome do paciente e o tipo de Unidade 5 141 142 Universidade do Sul de Santa Catarina consulta conv nio particul
114. des da empresa ou mesmo do projeto 228 a O processo incremental cada intera o acrescenta incrementalmente novas caracter sticas ao produto Assim a cada ciclo a solu o delineada aperfei oada a Dirigido por casos de uso o processo guiado pelas intera es entre o sistema e usu rios Todos os casos de uso de um sistema comp e a especifica o funcional do sistema modelo de casos de uso ou seja definem os requisitos e objetivos do sistema do cliente Assim os casos de uso associam todos os workflows de forma conjunta dirigindo v rias atividades de desenvolvimento como a cria o e valida o da arquitetura do sistema a cria o de casos de teste o planejamento das itera es a cria o de documenta o do usu rio e a implanta o do sistema Os casos de uso sincronizam conte do dos modelos criados em cada workflow m Centrado na arquitetura neste caso o processo focaliza o desenvolvimento inicial e a linha de base da arquitetura de software utilizando se de relacionamentos claros entre componentes da arquitetura Voc pode ver o sistema como a soma de diversas partes menores componentes cada componente possui a funcionalidade necess ria Sob o ponto de vista da ader ncia ao neg cio ou em termos de implementa o estes componentes se comunicam atrav s de interfaces O uso de componentes torna a manuten o e a reutiliza o muito mais eficientes O RUP foi desenvolvido para se
115. digo a partir de um modelo UML em uma linguagem de alto n vel como JAVA por exemplo Metodologias e Projetos de Software SE O 3 Vis es de um sistema Na UML todas as abstra es de um sistema s o organizadas em modelos onde cada um desses modelos representa uma vis o do sistema Se voc olhar para o desenvolvimento como um todo perceber etapas bem definidas cada etapa pode ser representada por meio de diagramas e modelos de elementos de forma a proporcionar ao projetista uma vis o eficiente e completa daquela etapa Ent o voc pode assumir que as Vis es mostram diferentes aspectos do sistema que est sendo modelado A vis o vai apresentar um aspecto particular do sistema Segundo BEZERRA 2002 a UML pode ser apresentada a partir de cinco vis es Vis o de casos de uso descreve a funcionalidade do sistema desempenhada pelos usu rios A vis o use case central pois seu conte do fundamental para a composi o das demais vis es do sistema Vis o de Projeto s o enfatizadas as caracter sticas do sistema que d o suporte estrutural e comportamental Vis o de Implementa o abrange o gerenciamento de vers es do sistema constru das atrav s do agrupamento de m dulos e subsistemas Vis o de Implanta o corresponde distribui o f sica do sistema em seus subsistemas e a conex o entre essas partes a Vis o de Processo esta vis o enfatiza as caracter sti
116. do Dados do Pedido Detalhes do Pedido Imprime Pedido Dados do Pedido Figura 3 8 DFD N vel 2 Sistema Floricultura Unidade 3 Pedido produto Pedido produto 81 82 Universidade do Sul de Santa Catarina SE O 3 Dicion rio de Dados O dicion rio de dados uma descri o precisa de todas as informa es presentes no DFD para que usu rios e analistas possam compreender de forma simplificada todo o modelo Quando se constr i um DFD os componentes s o identificados por um r tulo nico Na figura 4 no exemplo da cl nica voc tem o dep sito de dados Agenda Apenas o r tulo apresentado no DFD n o define a estrutura dos dados que ir o representar a informa o Essa defini o feita no dicion rio de dados 2 Mas o que deve ser descrito no dep sito de dados O Pode se definir o significado de dep sitos a descri o dos fluxos de dados a estrutura dos arquivos e a especifica o l gica dos processos As nota es mais diversas podem ser utilizadas para definir as estruturas dos dados sendo que uma proposta de nota o poss vel de acordo com MAZZOLA 1999 inclui as seguintes informa es a nome o identificador principal do item de dados do dep sito de dados ou de uma entidade externa e eventualmente outros nomes utilizados para o mesmo item especifica o num rico alfanum rico data inteiro tamanho m ximo formata o dom
117. do O plano de estudos visa a orient lo no desenvolvimento da disciplina Ele possui elementos que o ajudar o a conhecer o contexto da disciplina e a organizar o seu tempo de estudos O processo de ensino e aprendizagem na UnisulVirtual leva em conta instrumentos que se articulam e se complementam portanto a constru o de compet ncias se d sobre a articula o de metodologias e por meio das diversas formas de a o media o S o elementos desse processo a O livro did tico O Espa o UnisulVirtual de Aprendizagem EVA a O Sistema tutorial O Sistema de avalia o complementares a dist ncia e presencial Ementa da disciplina An lise de Requisitos Introdu o ao RUP Rational Unified Process O paradigma orientado a objetos An lise arquitetural Modelagem de um sistema utilizando se a nota o UML modelagem de use cases an lise e design realiza o de use case diagrama geral de classes persistentes diagrama de interfaces e mapeamento objeto relacional Desenvolver o aluno de forma a capacit lo a utilizar metodologias orientadas a objeto para a modelagem de sistemas Cr ditos 8 12 Objetivos Propiciar ao aluno o conhecimento sobre conceitos relacionados ao ciclo de vida de desenvolvimento de um software Sensibilizar o aluno sobre a import ncia do uso de metodologias de projeto de software para o sucesso efetivo de seu projeto a Tornar presente a discuss o sobre
118. do atender as necessidades do usu rio c Em um caso de uso s o necess rios tr s elementos b sicos o caso de uso a classe de controle e o ator d O ator de um caso de uso representa apenas os usu rios do sistema 2 Classifique as quest es em Verdadeira V ou Falsa F a Um ator pode ser representado por um organiza o ou mesmo um equipamento de hardware b O uso de um nome pessoal para um determinado ator cria uma identifica o pessoal do usu rio com a especifica o do caso de uso facilitando sua valida o com o usu rio c A rela o existente entre um caso de uso e um ator pode ser uma rela o de comunica o ou uma rela o de extens o d A rela o existente entre dois atores pode ser somente uma rela o de heran a e A rela o existente entre dois casos de uso pode ser de extens o inclus o e comunica o f A rela o existente entre dois casos de uso pode ser de extens o inclus o e heran a 3 Relacione a 12 com a 2 coluna 140 Metodologias e Projetos de Software A Regras de a Fitas em atraso pagam o valor da loca o neg cio dos dias atrasados B Ator b Atendente C Cen rio c Areserva de uma fita pode ser realizada pessoalmente onde o cliente informa seu nome informa a fita desejada e a data da reserva Caso a fita n o esteja reservada o atendente realiza a reserva A fita pode ser reservada na p gina da vi
119. do progresso de um projeto iterativo e o uso de m tricas Aspectos relacionados ger ncia de pessoal contratos e or amento n o s o observados Ger ncia de Configura o e Mudan as Configuration and Change Management O fluxo controla as modifica es mantendo a integridade dos artefatos do projeto Envole a identifica o dos itens de configura o a restri o de mudan as a auditoria das mudan as feitas e a defini o e o gerenciamento das configura es desses itens Ambiente Environment envolve a infra estrutura necess ria para que o desenvolvimento ocorra A meta oferecer organiza o o ambiente de desenvolvimento de software processos e ferramentas que dar suporte equipe de desenvolvimento a Quais s o os modelos do RUP O Metodologias e Projetos de Software D Quais os Pr s e Contras do Rational Unified Process O A discuss o sobre vantagens e desvantagens do RUP bastante acirrada Uma grande vantagem a ser considerada o uso de princ pios de engenharia de software na sua abordagem de desenvolvimento iterativa incremental orientada a requisitos e baseada em arquitetura O sistema desenvolvido com o RUP tende a tolerar melhor mudan as de requisitos e altera es no produto O uso de componentes desenvolvidos ao longo de um projeto podem ser reutilizados em outros projetos diminuindo o tempo de desenvolvimento e conseq entemente os custos para o cliente
120. dologias futuras Ent o Quer iniciar esta jornada metodol gica Bom estudo SE O 1 Quais s o as caracter sticas do software Termos como internet web e software s o modernos e est o na m dia diariamente S o termos que antigamente eram exclusivos de reas extremamente t cnicas e que agora tornaram se de dom nio p blico Apesar de at mesmo parecer feio n o saber seu significado durante uma conversa entre amigos importante verificar se voc realmente conhece o verdadeiro significado Voc sabe realmente o que significa software Ser que voc sabe realmente o que significa software Metodologias e Projeto de Software Explicar este conceito n o simples depende da tica pela qual se tenta entender Voc poderia dizer que software o conjunto de instru es que ao serem executadas produzem a fun o e o desempenho desejados Poderia conceituar software como estruturas de dados que possibilitam que os programas manipulem adequadamente a informa o poss vel dizer ainda que softwares s o os documentos que descrevem a opera o e o uso dos programas desenvolvidos ou projetados por engenharia n o manufaturados no sentido cl ssico Todavia poss vel ser redundante e dizer que softwares s o ferramentas pelas quais se explora os recursos do hardware executa se determinadas tarefas se resolve problemas ao interagir com a m quina e tornar o computador operacional
121. e Essa compreens o da amplitude do problema proporcional ao sucesso do projeto junto ao seu cliente final Parece f cil mas uma das maiores dificuldades neste processo a dificuldade da comunica o entre Cliente x Desenvolvedor Veja a figura a seguir a vis o do que o cliente solicitou ao desenvolvedor sua necessidade fica totalmente comprometida por falhas no entendimento e na comunica o O resultado do que acaba sendo feito tem gerado custos elevados para empresas desenvolvedoras e para seus clientes que em muitas situa es n o conseguem usar o produto desenvolvido O o que necess rio fazer o que os usu rios querem W o que os usu rios pedem o que os desenvolvedores entendem o que acaba sendo feito Figura 2 1 Evolu o dos requisitos Fonte P dua 2002 A dificuldade de entender o cliente um desafio que deve ser encarado a partir de t cnicas m todos e paci ncia por parte do desenvolvedor Lembre se a pressa para chegar a implementa o Os processos usados durante a engenharia de requisitos variam n o ser o caminho mais dependendo do dom nio da aplica o das pessoas envolvidas eda o organiza o que est desenvolvendo os requisitos Existem algumas atividades gen ricas comuns a todos os processos que s o a Levantamento de requisitos Documenta o de requisitos Unidade 2 48 Universidade do Sul de Santa Catarina Especifica o de
122. e senhas Unidade 5 133 134 Universidade do Sul de Santa Catarina RF015 Login de Usu rio Efetuar login para identificar quem est usando o sistema e definir os acessos que ele possui Cadastro de Manuten es RF016 Cadastra dados de manuten es feitas no im vel armazenando o tipo de manuten o o valor gasto data da manuten o e uma breve descri o Requisitos N o Funcionais RNF01 gt Requisito N o Funcional numera o sequencial Tempo de resposta RNF01 O tempo de resposta para consultas ao sistema como a busca de im vel n o devem ser inferiores a 5 segundos Manutenibilidade RNFOZ O Sistema deve ser constru do obedecendo a vis o de camadas facilitando futuras manuten es Durante a an lise perceberam se as regras de neg cio relacionadas ao funcionamento do processo na imobili ria Tabela 5 6 Regras de Neg cio Sistema Imobili ria Identificador Descri o RN01 O cliente deve ter fiador para contratar aluguel RN02 CPF do Cliente e Fiador devem ser v lidos RNO3 O im vel deve ser aprovado pelo gerente antes de ser cadastrado O cr dito do cliente deve ser aprovado pelo gerente antes de efetivar o Bu contrato de aluguel O valor da taxa do boleto cobrada pelo banco adicionado no valor total RNOS do boleto do locador Metodologias e Projetos de Software RNO6 A m
123. ec Respostas e coment rios das atividades de auto avalia o A seguir s o apresentadas respostas curtas e coment rios sobre as atividades de auto avalia o apresentadas durante as unidades Para melhor aproveitamento de seus estudos realize a sua confer ncia somente depois de realizar as atividades propostas Unidade 1 1 av 2 Segu ncia correta G D C B E F A D 3 A afirmativa correta b 4 a E 5 Alternativa correta a 6 Alternativa correta c 252 Universidade do Sul de Santa Catarina O numero de funcionalidades bastante pequeno por outro lado as regras de neg cio sugerem uma certa confus o para o bom entendimento do analista o que torna apropriado o uso do modelo prototipa o para a identifica o de requisitos 7 Observe o modelo XP e o modelo SCRUM e a seguir descreva o que poss vel determinar como diferen as fundamentais em rela o aos modelos tradicionais S o citadas abaixo caracter sticas existentes em ambos os modelos Tanto o Scrum como o XP apontam como de grande import ncia a comunica o entre a equipe e seus colaboradores isto se evidencia por meio de reuni es formais e informais Outro aspecto bastante diferenciado est relacionado ao volume de documenta o dos projetos em ambos os modelos procura se racionalizar evitando o excesso Um terceiro aspecto a participa o do usu rio de forma efetiva no processo de desenvolvimento Os m
124. edores a cobran a pode ser realizada pessoalmente ou por telefone Nesta situa o o caso de uso Pessoalmente e Telefone herda o comportamento do caso de uso realizar Cobran a ou seja al m de herdar comportamentos b sicos do caso realizar Cobran a os dois casos possuem tamb m fluxos de intera es espec ficas para cada um deles Unidade 5 121 122 Universidade do Sul de Santa Catarina realizar cobran a telefone realizar cobran a cobrador realizar cobran a pessoalmente Figura 5 10 Heran a entre casos de uso O diagrama geral de casos de uso atualizado seria ent o cd locadora gerenciar filmes Atendente Inserir Prefer ncias Saa extend 5 gerenciar cliente Gerenciar Loca es ec SM Gerente Gerenciar Relat rios realizar cobran a realizar cobran a pessoalmente realizar cobran a telefone Figura 5 11 Diagrama de Casos de Uso de V deo Locadora Metodologias e Projetos de Software O que relacionamento de inclus o O caso de uso A inclui o caso de uso B quando representa uma atividade complexa e comum a v rios casos de uso PADUA 2000 Este relacionamento s poss vel entre casos de uso Em outras palavras o caso de uso pode ser inclu do quando a sequ ncia de intera es dele ocorre em mais de um caso de uso Ainda pensando no sistema da v deo locadora observa se que apenas o gerente tem acess
125. eender as caracter sticas do produto de software m Perceber as diversas etapas do processo de desenvolvimento de um software Definir estas etapas dentro de um modelo de desenvolvimento de projeto To Se es de estudo Se o 1 Quais s o as caracter sticas do software Se o 2 Quais as etapas do processo de desenvolvimento de software Se o 3 Modelo de desenvolvimento de software 16 Universidade do Sul de Santa Catarina Para in cio de estudo Desenvolver software uma tarefa rdua e complexa Lidar com esta complexidade significa compreender claramente os processos relacionados ao desenvolvimento do software Mas por que importante preciso entender claramente o que e como deve ser cobrado em cada processo o que pode ser executado em paralelo ou de forma sequencial Se voc pensou em atividade de ger ncia est correto Conduzir o processo de desenvolvimento de software um grande processo de ger ncia e para conduzi lo da melhor forma poss vel preciso saber o que se espera de cada etapa Nesta unidade voc vai perceber que todo o processo de desenvolvimento por mais complexo que pare a passa por etapas pr definidas e universais Essas etapas s o conduzidas de forma diferente dependendo da natureza do projeto ou mesmo da cultura de sua empresa Definir a forma como esses processos ser o executados fundamental para o bom andamento de todo o processo e mesmo para a escolha de meto
126. eime Sammer Bortolotti Franciele da Silva Bruchado James Marcel Silva Ribeiro Jenniffer Camargo Liana Pamplona Luana Tarsila Hellmann Marcelo Jos Soares Olavo Laj s Ros ngela Mara Siegel Silvana Henrique Silva Vanilda Liordina Heerdt Vilmar Isaurino Vidal Secret ria Executiva Viviane Schalata Martins Tecnologia Osmar de Oliveira Braz J nior Coordenador Jefferson Amorin Oliveira Marcelo Neri da Silva Pascoal Pinto Vernieri Apresenta o Parab ns voc est recebendo o livro did tico da disciplina de Metodologias e Projetos de Software Este material did tico foi constru do especialmente para este curso levando em considera o o seu perfil e as necessidades da sua forma o Como os materiais estar o a cada nova vers o recebendo melhorias pedimos que voc encaminhe suas sugest es sempre que achar oportuno via professor tutor ou monitor Recomendamos antes de voc come ar os seus estudos que verifique as datas chave e elabore o seu plano de estudo pessoal garantindo assim a boa produtividade no curso Lembre voc n o est s nos seus estudos Conte com o Sistema Tutorial da UnisulVirtual sempre que precisar de ajuda ou alguma orienta o Desejamos que voc tenha xito neste curso Equipe UnisulVirtual Vera R Niedersberg Schuhmacher Metodologias e Projetos de Software Livro did tico Design instrucional D nia Falc o de Bittencourt Viviane Bastos 5a ed
127. eitual da an lise orientada a objetos e UML tamb m foram apresentadas algumas ferramentas que suportam o m todo Na pr xima unidade voc vai iniciar o processo de modelagem por meio da concep o dos casos de uso de um sistema Um caso de uso procura especificar uma seq ncia de intera es entre um sistema e os agentes externos que fazem uso do sistema Saiba mais Para aprofundar as quest es abordadas nesta unidade voc P q poder pesquisar em GILLEANES T A Guedes UML uma abordagem pr tica Novatec 2004 Voc tamb m poder acessar site de UML http www uml org Nesse site s o apresentados padr es organiza es certifica es e estudos de caso UNIDADE 5 Modelagem de casos de uso Objetivos de aprendizagem m Compreender a import ncia do uso de casos de uso para identifica o clara dos objetivos do usu rio Entender o significado dos diferentes elementos existentes em um caso de uso m Reconhecer meios para identificar atores e casos de uso m Compreender o mecanismo de documenta o e sua import ncia na descri o dos casos de uso Se es de estudo Se o 1 Se o 2 Se o 3 Se o 4 O que s o casos de uso Como identificar os atores Relacionamentos entre casos de uso e atores Identificando casos de uso 110 Universidade do Sul de Santa Catarina Para in cio de estudo Nesta unidade voc vai iniciar o estudo sobre os diagramas oferecidos na
128. elat rios e consultas existentes ou solicitados pelos clientes Neste momento a cl nica possui os seguintes documentos Agenda s o anotados o nome do paciente 60 caracteres hor rio hora minuto e conv nio Bruxtr Vpfzm e UIOIKk ou particular Ficha do Paciente nome 60 caracteres endere o 60 caracteres telefone 12 caracteres data de nascimento date conv nio Bruxtr Vpfzm e UIOIk ou particular Ficha M dica apresenta peso do paciente num rico 03V2 altura num rico 2V2 idade num rico 3 motivo da consulta Alfanum rico 100 queixa principal Alfanum rico 100 doen as anteriores Alfanum rico 150 diagn stico Alfanum rico 150 prescri o Alfanum rico 200 A prescri o pode ser a solicita o de exames ou medicamentos com posologia Rela o de hor rios m dicos a listagem contem nome do m dico Alfanum rico 50 Data date e hor rio num rico 2V2 de atendimento do m dico na cl nica Rela o de atendimentos por tipo o relat rio emitido mensalmente apresentando o nome do conv nio listando a partir dele o nome do m dico e o total de consultas realizadas para o conv nio Ao final apresentado o total de atendimentos por conv nio Obs 3V2 significa uma varia o num rica de ate 999 99 8 Volume de informa es do sistema atual A cl nica possui aproximadamente 800 pacientes cadastrados 34 m dicos ativos e 2 atendentes Apresenta conv nio m dico com
129. eletr nico O acesso as funcionalidades do sistema deve ser poss vel somente ap s a verifica o da conta e senha do cliente ou gerente ud Use Case Model realizar saque SG realizar extrato realizar saldo gerenciar cadastro Gerente e gerenciar consultas Ed ra I 4 sextend extend extend Aplica es Poupan a Conta Corrente Figura 5 13 Diagrama de Casos de Uso do Caixa Eletr nico 126 O Ao definir um caso de uso necess ria uma descri o narrativa Metodologias e Projetos de Software Como documentar o caso de uso das intera es entre os elementos externos e o sistema E o que deve ser documentado para o caso de uso Existem alguns aspectos que s o fundamentais Tabela 5 2 Documenta o do caso de uso Ator Prim rio Campo Descri o O nome do caso de uso deve ser o mesmo nome que consta no Nome diagrama N o esque a de que o nome de um caso de uso deve ser nico Conven o num rica utilizada para identificar o caso de uso Exemplo Identificador CSU002 CSU001 Descri o Descri o sucinta do caso de uso O nome do ator que o respons vel pelo in cio do caso de uso Ator Secund rio Pr condi o Outros atores que fazem parte do caso de uso A pr condi o indica as condi es necess rios no sistema para que o caso de uso ocorra Ex Para realizar o caso de uso saldo a pr condi o pode ser a valida o positiva de
130. ema emite o ticket para o cliente O balconista registra a forma de pagamento O sistema faz a baixa no estoque das mercadorias vendidas Ao analisar o caso de uso voc deduz a poss vel lista de classes candidatas opera es e atributos Tabela 6 2 Exemplo lista de classes Cliente da mercearia Classe Candidata An lise Abertura Opera o Venda Prov vel classe Item vendido Prov vel classe melhor item de venda C digo do produto Atributo do item da venda Quantidade Atributo do item da venda Entidade fora do escopo do produto Observe que o item abertura pode ser descrito como uma opera o assim como venda passa a ser uma poss vel classe j Ticket Relat rio Forma de pagamento Atributo da venda Baixa Opera o Estoque Poss vel classe Mercadoria Poss vel classe Unidade 6 155 Universidade do Sul de Santa Catarina Mas aten o uma classe que possui uma nica inst ncia n o deve ser considerada uma classe 156 c digo do produto tem as caracter sticas de um atributo Note que j poss vel identificar inclusive a qual classe o atributo pertence como no caso da quantidade A partir da identifica o poss vel determinar no exemplo as classes candidatas do sistema de controle de mercearia Venda Item de Venda Mercadoria Figura 6 7 Classes Candidatas Apesar da possibilidade de utilizar estas t cnicas o grande universo de inform
131. ema onde o indiv duo que assume este papel coordena a obten o dos requisitos a modelagem dos casos de uso e a defini o do escopo do projeto m O projetista de testes respons vel por toda a estrutura o da etapa de testes do planejamento avalia o dos resultados dos testes Assim em um projeto voc pode ter v rios indiv duos executando um mesmo papel Unidade 9 231 232 Universidade do Sul de Santa Catarina b Atividade Uma atividade uma unidade de trabalho que um indiv duo executa quando est exercendo um determinado papel produzindo um resultado para o contexto do projeto A atividade composta de objetivos passos entradas e sa das o respons vel pela atividade e os guias e padr es que devem ser seguidos pela atividade EP Exemplo Uma atividade pode ser a defini o dos atores a defini o dos casos de uso ou mesmo conduzir uma etapa de testes c Artefato O artefato o produto de um projeto o resultado de uma etapa Apesar de aparecerem como resultado do desenvolvimento do projeto podem ser utilizados como entrada de uma atividade e ainda assim no final da atividade vai gerar outro artefato como sa da Normalmente o artefato baseado em modelos de como devem ser feitos ou mesmo por documentos que possuem j um formato padronizado 5 Exemplo Um artefato pode ser um modelo de caso de uso um caso de uso um c digo fonte etc d Disciplinas Uma dis
132. endente verifica se primeira consulta na cl nica a Se sim executa o caso de uso Gerenciar Ficha Cadastral Paciente 4 O atendente solicita o tipo de consulta 5 Oagendamento do hor rio armazenado 6 A atendente informa novamente data hora e m dico da consulta para o Paciente Fluxo alternativo e exce es No item 1 caso o paciente n o informe o nome do m dico Neste caso atendente sugere o nome de um dos m dicos segundo sua especialidade No item 2 caso n o haja hor rio dispon vel para o m dico Neste caso A atendente sugere outro hor rio ou o nome de um segundo m dicos segundo sua especialidade P s condi es Consulta marcada Requisito funcional RF04 O sistema deve possibilitar o lan amento de hor rios de consulta por meio de uma agenda m dica Regras de neg cio RNO2 se o tipo de consulta for retorno agendar somente 10 minutos na agenda Se for consulta normal agendar 20 minutos Metodologias e Projetos de Software Caso de uso CSU003 Cadastro de Conv nios CSUOO 3 Gerenciamento de pente Convenios Breve descri o Neste caso ocorre o gerenciamento dos conv nios Ator prim rio Gerente Ator secund rio Pr condi es O gerente deve estar devidamente logado no sistema 1 0 gerente solicita uma inclus o de conv nio 2 informado o nome do conv nio Fluxo principal 3 0 sistema informa o c digo inte
133. ens enviadas entre objetos a Diagramas de Comunica o t m o mesmo prop sito dos diagramas de sequ ncia S o desenhados como diagramas de objetos onde s o mostradas as mensagens trocadas entre os objetos d Diagramas de Estados mostram as sequ ncias de estados do objeto a partir dos est mulos recebidos suas respostas e a es O Diagrama de atividades uma varia o dos Diagramas de Estado em que a maioria dos estados estado de a o e a maioria das transi es ativada por conclus es das a es e Diagramas de Implementa o composto por dois diagramas Metodologias e Projetos de Software Diagrama de Componentes s o mostradas as depend ncias entre componentes de software c digo fonte c digo bin rio e componentes execut veis a Diagrama de Implanta o mostra elementos de configura o do processamento em tempo de execu o os componentes de software processos e dispositivos f sicos Os diagramas da UML podem ser situados a partir de suas cinco vis es BOOCH 2000 VIS O DE IMPLANTA O e Diagrama de estados e Diagrama de atividade e Diagrama de implanta o e Diagrama de sequ ncia e Diagrama de colabora o VIS O DE PROCESSO Utiliza os mesmos diagramas da vis o de projeto VIS O DE CASOS DE USO e Diagrama de casos de uso e Diagrama de estados e Diagrama de atividade e Diagrama de segi ncia e Diagrama de colabora o
134. ensando na descri o da natureza do relacionamento Prefira o uso de um verbo ou uma frase verbal Al m de indicar um nome voc pode ainda indicar a dire o da leitura da associa o inserindo um tri ngulo de orienta o A figura a seguir mostra a classe Paciente solicita Agenda e a indica o da dire o que voc deve ter a associa o Alocab Figura 6 11 Nomeando uma Associa o Al m destes recursos observe que a classe ao participar de uma associa o recebe um papel espec fico que utilizado em um dos lados de uma associa o com a finalidade de indicar qual o papel que a classe a seu lado apresenta para a classe do lado oposto Unidade 6 161 Universidade do Sul de Santa Catarina Para essa associa o l se Pessoa trabalha no banco 162 Um papel define o prop sito ou capacidade de uma classe utilize substantivos para indicar os pap is Na figura 6 12 voc tem a classe Pessoa desempenhando o papel de funcion rio na associa o com a classe Banco que desempenha o papel de empregador Pessoa Funcion rio Empregador Trabalha gt Figura 6 12 Pap is em uma Associa o O que significa agrega o para o relacionamento de associa o A agrega o um caso particular da associa o A agrega o indica que uma das classes do relacionamento uma parte ou est contida em outra classe Mas as duas classes est o no mesmo n vel ou seja n
135. enta o das Regras de Neg cio Identificador Descri o da Regra de Neg cio RNO1 O n mero m ximo de impress o de saldos no m s de 3 saldos mensais RN02 O cliente s poder realizar o saque se e somente se o saldo de sua conta corrente for superior ou igual ao valor a ser sacado Se o saldo for inferior ao valor a ser sacado e se o cliente possui um valor de limite de credito em sua conta corrente ent o o saque n o pode ser superior ao valor do saldo do valor limite da conta corrente Sugest o para Documenta o dos Casos de uso importante estruturar a sequ ncia em que voc vai organizar esta documenta o Existem metodologias que ap iam estas decis es como o RUP unidade 9 e o Iconix Uma sugest o de documenta o pode obedecer esta sequ ncia m Se voc n o preencheu o documento de an lise do problema e especifica o de requisitos liste os requisitos funcionais e n o funcionais a Documente o ator lembra da tabela 1 a Insira o diagrama de casos de uso gerais do projeto Uma tabela de documenta o do caso de uso tabela 3 para cada caso de uso a Documente as regras de neg cio tabela 4 D E o que s o Pacotes O O uso de pacotes permite a visualiza o mais organizada principalmente em sistemas grandes Se houver muitos casos de uso ou atores voc pode usar os pacotes de casos de uso para estruturar ainda mais o modelo de casos de uso
136. entando ao final os par nteses ao final do nome da opera o para nomear atributos utilize se de substantivos simples ou verbos substantivados Se voc for construir uma classe para um sistema de controle de estoque chamada Produtos Os atributos da classe produto podem ser c digo descri o Produto unidade para os tr s casos ao atribuir nomes utilize uma defini o concisa e clara n o dando margem a interpreta es err neas Quais seriam os atributos para a classe Filmes Voc poderia ter neste caso 150 Nome C digo Diretor Dura o Tipo a Idiomas a Incluir Filme a Excluir Filme a Consultar Filme a Listar Filme cd Data Model Bairro char Codigo int Endere o char Nome char Telefone int Filmes Ator Principal1 char Ator Principal2 char C digo int Diretor char Dura o int Estilo char Idioma char T tulo char Ator Principall Ator Principal Agora tente imaginar as poss veis opera es Data Devolu o date Data Loca o date Valor float C pias Data Compra date Numero int Status int Figura 6 5 Poss veis Classes do Sistema de V deo Locadora Unidade 6 Metodologias e Projetos de Software Observe algumas classes que fariam parte do dom nio do Sistema da V deo Locadora Item Loca o 151 152 Universidade do Sul de Santa Catarina A nota o de classes apresenta
137. epresentam aspectos comportamentais do sistema o cliente deseja que o pedido seja lan ado no momento que ele feito pelo cliente o que pode indicar a necessidade de recursos wireless Requisitos n o funcionais na maioria das vezes n o s o solicitados pelo cliente mas devem ser inerentes ao projeto s o quest es como a portabilidade do sistema sua seguran a e confiabilidade dos dados Voc ainda pode explicar requisitos a partir do conceito de que o requisito formado por requisitos expl citos s o as necessidades ou as pr prias condi es e objetivos propostos pelo cliente o cliente deseja ter os dados cadastrais de seus fornecedores requisitos impl citos incluem as diferen as entre os usu rios a evolu o no tempo as implica es ticas as quest es de seguran a e outras vis es subjetivas o cliente deseja um site de com rcio eletr nico quest es de seguran a talvez n o sejam sua preocupa o por sua falta de conhecimento em tecnologia mas s o requisitos que devem estar impl citos no seu produto requisitos normativos s o decorrentes de normas leis ou padr es a emiss o de uma nota fiscal deve seguir as regras propostas pela federa o Na etapa inicial da an lise de requisitos fundamental que o analista entenda as necessidades do cliente Isso significa compreender claramente os requisitos expl citos impl citos e normativos Metodologias e Projeto de Softwar
138. er os requisitos necess rios ao projeto dentro de um consenso entre desenvolvedores e cliente Durante o levantamento dos requisitos temb m estabelecido o escopo do projeto e tamb m as poss veis restri es que possam delinear algum tipo de risco no horizonte Imagine que durante a entrevista o cliente diga para voc que n o pretende investir em equipamentos e em novos produtos como um banco de dados Talvez esta informa o se torne uma forte restri o para as poss veis solu es e deve portanto estar presente na documenta o Mas como iniciar o levantamento Unidade 2 51 52 Universidade do Sul de Santa Catarina Quais pontos voc deve levantar PETERS 2002 sugere o levantamento das seguintes informa es Levantamento de Requisitos Ambiente Itens produzidos Modos de opera o Pessoas Pessoas afetadas e Itens processados M quinas no sistema nen ronsumidps e Fun es executadas e M quinas afetadas e Itens produzidos e M todos utilizados Servi os necess rios para fazer as a Fan por Forma de produzir o item Outros itens afetados necessidades do n Fun es necessmias Quando as sistema f opera es acontecem i s opera es do para produzir o perag software servi o ou item e Itens consumidos e Itens produzidos Figura 2 2 Componentes da An lise do Problema Fonte Peters 2000 Segundo o autor o levantamento deve ser feito de forma ordenada div
139. esa que desenvolve software ela desenvolve nosso famoso sistema de v deolocadora e vende este produto para 600 clientes Mas no final do sexto m s acontece um erro no sistema ele n o est armazenando corretamente a data de entrega da fita Sendo que esta vers o foi entregue para os 600 clientes teremos ent o 600 clientes com o mesmo problema E agora Esta informa o pode acabar com o nome da empresa O que voc acha Sintetizando o problema Em uma f brica de software o sucesso medido pela qualidade de uma nica entidade e n o pela qualidade de muitas entidades manufaturadas SE O 2 Quais as etapas do processo de desenvolvimento de software Existem alguns conceitos que s o fundamentais quando falamos de desenvolvimento o primeiro deles o termo Engenharia de Software Assim como a palavra software engenharia de software tamb m um termo que gera discuss es sobre a melhor maneira de expor todas as suas nuances a aplica o de uma abordagem sistem tica disciplinada e quantific vel para o desenvolvimento opera o e manuten o Unidade 1 IEEE Instituto de Engenharia El trica e Eletr nica formado pela fus o do Instituto de Engenheiros de R dio IRA com o Instituto Americano de Engenheiros El tricos AIEE A meta do IEEE promover conhecimento no campo da engenharia el trica e eletr nica estabelecendo padr es para formatos de computadores e dispositivos 19 20 Uni
140. ficados e especificados os casos de uso mais relevantes feita ent o a an lise e projeto dos casos de uso sempre usando a arquitetura como guia A partir deste ponto s o implementados os componentes que realizam o que foi projetado e finalmente verifica se se os componentes que satisfazem o que foi previsto como objetivos de cada caso de uso Os casos de uso s o usados durante todo o processo 230 Metodologias e Projetos de Software O caso de uso usado para especificar os requisitos Na etapa de an lise projeto e implementa o os casos de uso s o executados Na etapa de testes voc vai verificar se o sistema realiza o que est descrito no Modelo de Casos de Uso E finalmente os casos de uso s o a ferramenta fundamental no planejamento e acompanhamento de todas as itera es SE O 3 Quais os elementos do RUP Segundo BOOCH 2000 quando voc utiliza a metodologia RUP percebe se imediatamente a exist ncia de cinco elementos principais os pap is os artefatos as atividades a disciplina e os fluxos de atividade subdividido em fluxos principais e fluxos de apoio a Pap is Um papel ou perfil define o comportamento e as responsabilidades de um determinado indiv duo ou grupo de indiv duos que trabalham dentro de uma equipe E importante que voc perceba que os pap is n o s o indiv duos mas sim o papel que ele assume no processo Veja alguns pap is a O analista de sist
141. fici ncia f sica Gerenciamento de hor rio dos As 2 atendentes possuem o segundo grau completo razo vel funcion rios l Atendente experi ncia em inform tica e conhecimento do processo de Gerenciamento de agenda m dica funcionamento da cl nica As atendentes estao na cl nica a Permitir consulta de hor rios marcados aproximadamente 3 anos por m dico por data Gerenciamento de Paciente cadastro dai Pacientes com faixa et ria at 14 anos sob cust diaa e Gerenciamento de agenda m dica agendamento dos pais marcar consulta M dico especialista possui conhecimentos b sicos de inform tica e no o do funcionamento e procedimentos da Ea Gerente p Acesso a todas as funcionalidades cl nica Possui 42 anos n o apresenta nenhuma defici ncia f sica Metodologias e Projetos de Software Os diagramas de 3 casos de uso e a tabela de documenta o do caso de uso Caso de uso CSU001 Gerenciamento de Funcion rio CSU004 Gerenciamento Horarios CSUOOT Gerenciamento de Funcion rio lt lt incdlude gt gt Gerente Gerenciamento do cadastro de dados pessoais e Breve descri o hor rios de trabalho de funcion rios da cl nica Ator prim rio Gerente Ator secund rio Funcion rio Pr condi es O gerente estar devidamente logado no sistema 1 O gerente solicita uma inclus o de funcion rio 2 O gerente informa o nome do funcion rio 3 Osistema inform
142. h Rumbaugh e Jacobson em 2000 Ao finalizar esta unidade importante retomar um tema importante quais s o os benef cios do uso da orienta o a objetos Pode se afirmar que o uso deste paradigma proporciona o melhor gerenciamento das fun es do sistema o aumento da produtividade pelo uso da reutiliza o a melhor qualidade dos servi os oferecidos e a facilidade do mapeamento do mundo real versus o mundo computacional Apesar de todas estas vantagens o mercado ainda n o absorveu completamente esta metodologia Mas por que Furlan 1998 lista alguns motivos para tal quadro m Incerteza a Falta de m o de obra qualificada m Ferramentas imaturas Metodologias e Projetos de Software a O investimento da empresa j realizada em ferramentas n o orientadas a objetos A introdu o da UML suas facilidades e o grande n mero de ferramentas que suportam sua nota o v m gradativamente revertendo este quadro O grande potencial de comunica o e reaproveitamento pela reutiliza o de modelos em futuras aplica es tem aproximado empresas de desenvolvimento do modelo orientado a objetos Agora para praticar os conhecimentos conquistados nesta unidade realize a seguir as atividades propostas Atividades de auto avalia o Leia com aten o os enunciados e realize as quest es propostas 1 Complete as afirma es a seguir a Esta modifica o chamada de entre estados representa o resultado de ati
143. i o revista e atualizada Palho a UnisulVirtual 2008 Copyright O UnisulVirtual 2008 Nenhuma parte desta publica o pode ser reproduzida por qualquer meio sem a pr via autoriza o desta institui o Edi o Livro Did tico Professora Conteudista Vera R Niedersberg Schuhmacher Design Instrucional D nia Falc o de Bittencourt Viviane Bastos L via da Cruz 52 edi o revista e atualizada ISBN 978 85 7817 081 3 Projeto Gr fico e Capa Equipe UnisulVirtual Diagrama o Vilson Martins Filho Evandro Guedes Machado 3 ed Vilson Martins Filho 4 ed Fernando Roberto Dias Zimmermann 52 edi o revista e atualizada Revis o Ortogr fica B2B 005 117 S41 Schuhmacher Vera R Niedersberg Metodologia e projetos de software livro did tico Vera R Niedersberg Schuhmacher design instrucional D nia Falc o de Bittencourt Viviane Bastos L via da Cruz 5 ed rev e atual Palho a UnisulVirtual 2008 268 p il 28 cm Inclui bibliografia ISBN 978 85 7817 081 3 1 M todos orientado a objetos Computa o 2 UML Computa o 3 Software de aplica o I Bittencourt D nia Falc o de II Bastos Viviane III Cruz L via da IV T tulo Ficha catalogr fica elaborada pela Biblioteca Universit ria da Unisul Sum rio Palavras da professora sossecstoseuteenetomeu tasu tanan 09 Plano de estudo cassia saias siiaaas anni ein EEEE da e ea e 11 UNIDADE 1 Ciclos
144. ibutos o mesmo comportamento opera es os mesmos relacionamentos com outros objetos e a mesma sem ntica Por exemplo a classe aluno de uma escola com um conjunto de alunos que apresentam as mesmas informa es Todos os objetos s o inst ncias de classes classe por sua vez deve descrever as propriedades e comportamentos daquele objeto Uma classe descreve um grupo de objetos Observe que os objetos apresentados na figura 4 2 podem ser agrupados por apresentarem atributos caracter sticas ou comportamentos semelhantes Isto permite que sejam criadas as classes Animais Edifica es e Transportes Metodologias e Projetos de Software Figura 4 3 Agrupamento de Objetos em Classes Observe que poss vel perceber atributos comuns assim como caracter sticas e comportamentos e por este motivo poss vel agrupar estes objetos Veja na classe animais pode se indicar alguns atributos como esp cie data nascimento nome que s o comuns a qualquer animal assim como podemos indicar comportamentos comuns como comer correr dormir Esta proximidade o primeiro passo na identifica o de uma classe orienta o a objetos pressup e que o mundo composto por objetos sendo um objeto uma entidade que combina estrutura de dados e comportamento funcional No paradigma orientado a objetos os sistemas s o estruturados a partir dos objetos que existem no dom nio do problema isto os sistemas s o modelad
145. idade 6 183 184 Universidade do Sul de Santa Catarina cai R aiba mais Para aprofundar as quest es abordadas nesta unidade voc p q poder pesquisar BEZERRA E Princ pios de An lise e Projeto de Sistemas com UML S o Paulo Campus 2002 ler cap tulos 5 6 e 8 BOOCH G RUMBAUGH J JACOBSON I UML Guia do Usu rio S o Paulo Ed Campus 2000 ler cap tulos 8 e 9 PAULA FILHO Wilson de P dua Engenharia de software S o Paulo Campus 2001 ler cap tulo 4 a Uma boa leitura sobre modelagem de chaves voc vai encontrar no cap tulo 4 do livro UML Uma abordagem pr tica de Gilleanes T A Guedes Uma boa leitura sobre modelagem de classes voc vai encontrar no cap tulo 4 do livro UML uma abordagem pr tica de Gilleanos T A Guedes UNIDADE 7 Modelos de Intera es Objetivos de aprendizagem m Reconhecer objetivos e caracter sticas existentes na modelagem da vis o din mica do projeto m Compreender a nota o utilizada nos diagramas que especificam o modelo din mico do sistema a Entender as caracter sticas existentes entre as diferentes mensagens utilizadas na comunica o entre objetos m Perceber quando o uso do diagrama pode ser interessante em um projeto de software Se es de estudo Se o 1 Quais s o os elementos do Modelo de Intera o Se o 2 Oque Diagrama de Intera o 186 Universidade do Sul de Santa Catarina Para in cio
146. idido em 4 etapas Primeiro seriam levantados os requisitos relacionados ao ambiente depois s fun es existentes ao modo como as fun es s o executadas e finalmente aos itens que s o inseridos e suas transforma es dentro do processo Nunca esque a nesta etapa avalie os problemas na situa o atual jamais pense na solu o nesta etapa Concentre se nas necessidades do cliente e Viabilidade Antes de voc prosseguir importante considerarmos um estudo da viabilidade do sistema se vale a pena ou n o sua implementa o Para tanto necess rio que esteja claro se o sistema contribui para com os objetivos da organiza o se o sistema pode ser constru do usando a tecnologia existente ou ainda se o or amento comporta o que necess rio para sua implementa o Metodologias e Projeto de Software Um fator forte neste momento de decis es a possibilidade de integra o do sistema aos demais j existentes se este for o caso Quando voc se certifica da viabilidade est protegendo sua empresa e a empresa do cliente Este estudo baseia se nas informa es coletadas durante o levantamento de requisitos Sommerville 2000 sugere algumas quest es para as pessoas da organiza o que podem ser colocadas em um cen rio de discuss o E se o sistema n o fosse implementado Quais s o os problemas do processo atual Como o sistema proposto ir ajudar Quais ser o os problemas de integra
147. iedades de visibilidade ap ia um dos conceitos da orienta o a objetos o encapsulamento Assim voc s deixa vis vel atributos realmente necess rios aos demais objetos enquanto que outros atributos tornam se invis veis c digo int nome String data Data data Nascimento Data total float telefone String desconto float dade int fdataEntrega Data HlimiteCredito Moeda 500 00 Figura 6 25 Nomenclatura de Atributos 178 Metodologias e Projetos de Software Sobre a figura 6 25 acompanhe Nome identificador do atributo Tipo o tipo depende da linguagem de programa o Mas comum o uso de uma tipologia abstrata onde s o definidos os tipos como inteiro real caractere string float data ou outra classe Valor Inicial voc pode informar um valor inicial para um atributo quando o objeto da classe for instanciado ele vai pegar o valor automaticamente veja limiteCredito b Opera es As opera es representam o conjunto de funcionalidades da classe Para cada opera o especifica se sua assinatura m Nome identificador para o m todo Tipo quando o m todo tem um valor de retorno o tipo desse valor Lista de argumentos quando o m todo recebe par metros para sua execu o o tipo e um identificador para cada par metro in par metro de entrada ou para um par metro de sa da e inou para par metros de entrada que podem ser modificados a Vi
148. inguagens de modelagem Se o 3 Vis es de um sistema Se o 4 Diagramas da UML Se o 5 Ferramentas 94 Universidade do Sul de Santa Catarina Para in cio de estudo Na quarta unidade voc vai iniciar seu estudo acerca da an lise orientada a objetos Para compreender este conceito necess rio que voc perceba suas diferen as em rela o an lise estruturada e suas diferentes vis es relacionadas ao processo de desenvolvimento Voc pode usar a UML para modelar diferentes fases de um sistema desde a an lise do problema at a gera o do c digo linguagem pode ser aplicada em qualquer tipo de sistema de desenvolvimento de software ou mesmo em sistemas mec nicos de engenharia ou ainda na organiza o de processos de uma organiza o A UML hoje uma das abordagens mais utilizadas no mundo esse sucesso se deve em parte por sua padroniza o facilidade de reutiliza o flexibilidade e possibilidade de abstra o de dados A partir desta unidade voc vai submergir aos poucos no mundo orientado a objetos usando conceitos e ferramentas SE O 1 O paradigma da orienta o a objetos Durante a unidade 3 voc percebeu que a principal nfase sempre dada aos procedimentos Os procedimentos s o implementados em blocos e a comunica o entre eles se d pela passagem de dados Na orienta o a objetos os dados e procedimentos fazem parte de um s elemento b sico isso significa que
149. inhas da vida do diagrama de seq ncia o que obrigatoriamente tem se express es de seq ncia em todas as mensagens 1 1 1 1 2 Diagramas de comunica o apresentam nfase no sistema ou seja s o usados para obter uma vis o geral do sistema 196 Metodologias e Projetos de Software os objetos que s o criados durante uma colabora o s o especificados como new os que s o destru dos durante uma colabora o s o especificados com destroyed m Os que s o criados e destru dos na mesma colabora o s o especificados com transient A leitura do diagrama ou a sequ ncia das mensagens organizada pelas setas junto ao r tulo da mensagem NewCostumer Create 3 Show Customer y Customer new CustomerWindow transient 3 1 Update data Figura 7 10 Exemplo de um diagrama Fonte Colabora o Ambler 1998 O objeto MainWindow recebe a mensagem NewCustomer e cria um objeto Customer Um CustomerWindow criado e o objeto Customer ent o passado para o CustomerWindow o qual atualiza os dados do Customer No exemplo a seguir voc v o diagrama de colabora o de um sistema de empr stimo para uma biblioteca Unidade 7 197 Universidade do Sul de Santa Catarina emprestimo Emprestimo 1 9 adicionarTransa o emprestimo s Log 1 8 create dataCorrente item usuario li 1 1 item obteritem coditem
150. is relacionamentos existentes entre atores e casos de uso Voc percebeu que o caso de uso estabelece a estrutura principal da modelagem permitindo uma comunica o f cil e precisa com o usu rio pois esta vis o n o inclui aspectos relacionados implementa o facilitando a interpreta o por parte de desenvolvedor e usu rios identificando as a es necess rias ao sistema para que o usu rio alcance a solu o de suas necessidades A partir dos conceitos elementares voc seguiu em dire o concep o do diagrama e da documenta o necess ria para o bom entendimento do modelo Na pr xima unidade voc vai estudar a composi o dos diagramas de classes que fazem parte da vis o de projeto do sistema Voc lembra o que uma classe Uma classe representa uma cole o de objetos com propriedades comportamento e relacionamentos comuns com outros objetos Saiba mais Para aprofundar as quest es abordadas nesta unidade voc poder pesquisar BOOCH G RUMBAUGH J JACOBSON I UML Guia do Usu rio Ed Campus 2000 cap tulo 16 e 17 Unidade 5 143 UNIDADE 6 Modelagem de classes Objetivos de aprendizagem a Identificar o papel do diagrama de classes no processo de an lise m Conhecer e reconhecer termos t cnicos conceitos e relacionamentos utilizados durante a constru o do diagrama de classes m Identificar as poss veis classes de um projeto Utilizar o diagrama de classe com a no
151. isitos e comunicar estas altera es a toda equipe envolvida A an lise de requisitos um momento de conhecimento reconhecimento e de explos o de id ias O bom aproveitamento desta etapa fundamental estudos demonstram que o custo de altera es em etapas posteriores an lise de requisitos podem chegar a 100 do custo original do projeto Nesta unidade voc tamb m percebeu que a an lise de requisitos incorpora o uso de modelos o uso de modelos permite desenvolver o software de maneira previs vel em um determinado per odo com utiliza o eficiente e eficaz de recursos o modelo ajuda a visualizar o sistema como desejamos simplificando seu entendimento Na pr xima unidado voc vai dar in cio ao estudo sobre a An lise Estruturada e suas nota es permitindo que voc complemente a an lise de requisitos utilizando se da nota o na forma o dos modelos Metodologias e Projeto de Software cai R aiba mais Para aprofundar as quest es abordadas nesta unidade voc poder pesquise em SOMMERVILLE lan Engenharia de software 6 ed S o Paulo Addison Wesley 2003 Unidade 2 65 UNIDADE 3 An lise Estruturada Objetivos de aprendizagem m Reconhecer objetivos e caracter sticas inerentes ao uso da modelagem estruturada Fazer uso de conceitos e diagramas da modelagem estruturada m Compreender e reconhecer uma estrutura que se utilize da modelagem estruturada m Empreender o uso
152. l para a especifica o de processos que ocorrem em tempo real A nota o usada pela UML para representar o diagrama de sequ ncia utiliza se de atores objetos classes e mensagens conforme mostra a figura a seguir Objeto Objeto O Ator Classe mensagem 0 mensagem 1 mensagem 3 A a Figura 7 5 Elementos Gr ficos do Diagrama de Seq ncia Metodologias e Projetos de Software Atores participam do diagrama de sequ ncia opcionalmente dependendo do cen rio do caso de uso Objetos a ordem na qual os objetos aparecem n o pr definida mas normalmente utiliza se a ordem da esquerda para a direita ator objetos de fronteira objetos de controle objetos de entidade e atores secund rios a Classes aparece no diagrama quando uma mensagem for endere ada para a classe e n o para o objeto Linhas de vida cada objeto aparece no topo de uma linha vertical tracejada a linha da vida Mensagem s o as linhas horizontais com flechas que ligam uma linha de vida a outra As flechas horizontais s o rotuladas com as mensagens 1 iniciarVender 11 0 Quantidadeltem lt 10 RealizarPedido 1 2 existe produto estoque EfetuarVenda I 1 3 AtualizarQuantidade Figura 7 6 Diagrama de sequ ncia Unidade 7 193 Universidade do Sul de Santa Catarina a Focos de Controle os focos de controle s o as caixas retangulares que est o sobre a linha
153. ma ou v rias consultas agendadas Mas para cada consulta s vai haver um paciente Para cada consulta vai haver relacionado um m dico mas um m dico pode ter v rias consultas agendadas Agora para praticar os conhecimentos conquistados nesta unidade realize as atividades propostas a seguir Unidade 3 89 90 Universidade do Sul de Santa Catarina 5 Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 Relacione os conceitos abaixo observando que uma mesma op o pode se repetir ommonos gt Diagrama de Fluxo de dados Dicion rio de Dados Descri o dos Processos Entidade Externa Fluxo de Dados Dep sito de Dados Processo a Nota o utilizada para descrever o conte do e significado de fluxos entidades externas processos e dep sitos de dados b Nota o que permite representar um processo em um DFD c Utilizado para representar o cliente em um DFD d Utilizado para representar um reposit rio de dados em um DFD e Permite descrever os fluxos de informa o e as transforma es sofridas pelos dados durante a execu o do processo f Utilizado para representar os dados que ser o inseridos no processo em um DFD g Utilizado para representar em um DFD uma empresa que participa de alguma maneira no processo por exemplo uma institui o banc ria em um processo de contas a receber 2 Defina a cardinali
154. mas entrada e sa da de dados criado por uma classe de fronteira A classe de fronteira faz a interface entre um ator e o sistema uma O para cada formul rio relat rio ou interface com outro sistema Cada formul rio usado pelo programa um objeto Segundo Bezerra 2000 as classes de fronteira tem tipicamente as seguintes responsabilidades notificar as classes de controle sobre eventos gerados externamente ao sistema notificar atores do resultado da intera o entre os objetos internos Unidade 6 171 172 Universidade do Sul de Santa Catarina S o alguns exemplos de classes de fronteira Formul rio Cadastro Cliente Formul rio Cadastro Fitas e Formul rio Movimenta o Fitas b Classes de entidade Modelam informa es persistentes do sistema normalmente independentes da aplica o ou entidades do mundo real As classes de entidade criam objetos que gerenciam dados Assim voc pode v los de forma correspondente ao banco de dados Um ator n o tem acesso a uma classe entidade e a comunica o ocorre por meio de outros objetos Exemplos de classes de entidade Cliente Filmes Loca o C pias As classes de entidades armazenam as informa es mantidas pelo sistema Tamb m importante para o projeto uma defini o da performance esperada no acesso aos objetos da classe Voc lembra do estudo de caso apresentado no artigo A import ncia de utilizar UML para modelar sistemas
155. me III N mero Novembro de 2004 SOUZA Francisco Flavio de BRAGA Rosana Teresinha Vaccare Um M todo de Desenvolvimento de Sistemas de Grande Porte Baseado no Processo RUP In 1 SIMP SIO BRASILEIRO DE SISTEMAS DE INFORMA O Porto Alegre RS Anais do 1 SBSI 2004 p 31 38 SUTHERLAND Jeff Agile Development Lessons Learned from the First Scrum Cutter Agile Project Management Advisory Service Executive Update 2004 SOMMERVILLE lan Engenharia de software 6 ed S o Paulo Addison Wesley 2003 TONSIG S rgio Luiz Engenharia de software an lise e projeto de sistemas S o Paulo Futura 2003 YOURDON Edward An lise Estruturada Moderna Rio de Janeiro Campus 1992 WUESTEFELD Klaus Xisp Extreme Programming 2001 Dispon vel em lt http www xispe com br index html gt Acesso em 18 mar 2002 Sobre a professora conteudista Vera Rejane Niedersberg Schuhmacher Mestre em Engenharia de Produ o com nfase em Usabilidade de Software pela Universidade Federal de Santa Catarina UFSC Professora da Unisul desde 1998 em disciplinas oferecidas nos cursos de Ci ncia da Computa o e Sistemas de Informa o e P s gradua o Pesquisadora do N cleo de Computa o atua como Coordenadora do NPU N cleo de Pesquisas em Usabilidade prestando consultoria em Engenharia de Software e Usabilidade em empresas de tecnologias e projetos financiados por rg os de fomento como Finep CNPq e Funcit
156. modelo segundo Soares 2004 voltado a pessoas e n o a processos ou algoritmos os m todos geis As metodologias geis possuem caracter sticas que determinam um foco maior na codifica o e n o na documenta o s o claramente adaptativas pois novos fatos que s o apresentados no decorrer do projeto s o Unidade 1 31 Universidade do Sul de Santa Catarina tratados durante o desenvolvimento n o existe a preocupa o de conhecer o todo a partir de uma avalia o preditiva novidades s o adaptadas e incorporados durante o desenvolvimento A metodologia gil portanto naturalmente iterativa incremental e acrescenta uma boa participa o do usu rio no processo A seguir conhe a duas representantes desta nova corrente as metodologias Extreme Programming e a SCRUM Extreme Programming XP O m todo XP foi criado por Kent Beck na d cada de 90 no ano de 1996 tornou se mundialmente conhecido ao ser utilizado na empresa Daimler Chrysler em um projeto que durante anos n o fora conclu do e que ao fazer uso da metodologia teve sua execu o completa realizada em apenas 4 meses Mas o que o XP Segundo Beck 1999 o XP uma metodologia gil para equipes pequenas e m dias que desenvolvem software baseado em requisitos vagos e que se modificam rapidamente Neste processo a burocracia deve ser m nima as equipes pequenas sugere se at 10 pessoas que trabalham de forma incremental s o apoiados integralmente
157. mponentes ativos como usu rios O equipamentos arquivos e o interfacemento de dados que ocorre entre eles Para realizar um DFD s o necess rios alguns s mbolos que o comp em Conhe a cada um Metodologias e Projetos de Softwares Q Processo m bolha ou c rculo que representa o processo O processo um executor de tarefas fun es atividades Representa tarefas de processamento do sistema m Quando voc colocar nome em um processo procure utilizar um nome que descreva o que o processo faz m Um exemplo de processo pode ser Cadastrar paciente Cadastrar M dico Agendar Consulta Entidades externas m O ret ngulo representa entidades externas EE A entidade externa representa origens e destinos dos dados que percorrem o sistema Quando voc pensar em entidade externa pense que s o criadores e ou consumidores de dados informa o m Uma EE pode ser uma pessoa organiza o ou outros sistemas que interagem com o sistema para envio e ou recebimento de informa es Pode representar a interface entre o sistema e o mundo externo m FE pode ser ent o no caso da Clinica M dica o Paciente o Atendente o M dico Se na cl nica houver um laborat rio que de alguma maneira receba dados da cl nica por meio do sistema ent o neste caso o Laborat rio pode ser considerado uma EE Dep sito de dados m caixa aberta ou linha dupla preenchida com um r tulo
158. mpreender a nota o utilizada nos diagramas que complementam a especifica o do modelo din mico do sistema m Reconhecer as possibilidades de utiliza o e as nota es envolvidas no diagrama de estados e no diagrama de atividades Se es de estudo Se o 1 Modelo de Estados Se o 2 Modelo de Atividades Se o 3 Considera es sobre o uso da Orienta o a Objetos 206 Universidade do Sul de Santa Catarina Para in cio de estudo O modelo din mico do sistema completa se a partir de cinco diagramas o diagrama de atividades o diagrama de sequ ncia os diagramas de colabora o o diagrama de estados e o diagrama de casos de uso Cada um destes diagramas especifica e esclarece aspectos diferentes do sistema At este momento voc estudou tr s destes diagramas casos de uso comunica o e sequ ncia Nesta unidade ser o apresentados os diagramas de transi o de estado que modelam o comportamento de um objeto e o diagrama de atividade que modela a sequ ncia geral de a es para v rios objetos e casos de uso Imagine um sem foro de rua poss vel prever tr s estados para ele verde amarelo e vermelho O diagrama que permite especificar esta transi o entre os eventos o diagrama de estados A mudan a de estado dispara a es diferentes do sistema e que por sua vez modificam o estado do objeto sinal vermelho a o parar J os diagramas de atividade conseguem especificar situ
159. mpresa fornecedora bancos receita federal Unidade 5 113 Universidade do Sul de Santa Catarina outros sistemas m dulos que venham a interagir com seu sistema como contas a pagar credi rio estoque equipamentos coletor de dados leitora de c digo de barras balan as Quando voc escolhe o nome do ator lembre se de que ele representa um papel no sistema nunca utilize nomes pessoais Imagine um indiv duo pode representar o papel de funcion rio em alguns momentos e em outros pode representar o papel de gerente Neste caso nomes que representam o papel poderiam ser Gerente Professor Vendedor Fornecedor a Mas como identificar os atores do sistema Q Primeiro voc deve identificar quais as fontes de informa o que ser o processadas e quais os destinos das informa es geradas Sempre avalie quais os departamentos da empresa que ser o afetados e que potencialmente podem ter atores que interagem com o sistema Bezerra 2002 oferece algumas dicas na forma de perguntas que ap iam a descoberta dos atores do sistema m Que rg os empresas ou pessoas utilizar o o sistema m Que outros sistemas ir o se comunicar com o sistema a ser constru do Algu m deve ser informado de alguma ocorr ncia no sistema m Quem est interessado em um certo requisito funcional do sistema 114 Metodologias e Projetos de Software O e Q cliente gerente leitora c digo bar
160. n http Avww gentleware com products descriptions ce php4 Baseada no mesmo engine do ArgoUML mas com melhorias possui uma Comunity Edition gratuita N o permite funcionalidades de impress o de diagramas mas possibilita a exporta o das imagens dos diagramas A partir da pr xima unidade voc vai iniciar a confec o de diagramas sendo necess rio o uso de uma ferramenta Todas as ferramentas apresentam nas respectivas p ginas de download tutoriais e manuais de instala o e utiliza o Na midiateca voc tamb m vai encontrar Quer conhecer mais documenta o sobre algumas das ferramentas N sevoc quer aprofundar seu conhecimento sobre as diferentes vis es da UML leia o Cap tulo II Introdu o a UML do livro UML Guia do Usu rio escrito pelos autores BOOCH RUMBAUGH JACOBSON I Ed Campus 2000 Agora para praticar os conhecimentos conquistados nesta unidade realize as atividades propostas a seguir Unidades OO Universidade do Sul de Santa Catarina 5 Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 correto afirmar que pode haver mais de uma afirmativa correta a A an lise estruturada possui como fundamento a vis o da funcionalidade Assim a vis o que se imp e ao modelo o processamento dos dados b Na an lise orientada a objetos dados e m todos s o vistos como uma entidade nica preocupand
161. nidade 2 57 58 Universidade do Sul de Santa Catarina SE O 4 Atividades de apoio As atividades de documenta o verifica o valida o e gerenciamento n o s o exclusivas da etapa de an lise de requisitos s atividades de apoio mas estar o presentes em todo o processo de desenvolvimento do software Dentro do processo de an lise de requisitos estas atividades n o ocorrem de forma obrigatoriamente sequencial mas sim de forma paralela a Documenta o de requisitos E a atividade de representar os resultados da Engenharia de Requisitos em um documento contendo os requisitos do software b Verifica o e valida o de requisitos Verificar e validar os requisitos uma etapa do processo que n o pode ser menosprezada Na verifica o de requisitos voc avalia se a Especifica o de Requisitos est sendo constru da de forma correta seguindo os padr es previamente definidos evitando requisitos confusos duplicados incoerentes ou incompletos A valida o verifica se os requisitos e modelos documentados s o o reflexo das reais necessidades e requisitos do cliente Se voc passar por esta etapa em seu projeto vai evitar a descoberta de interpreta es err neas ou mesmo defici ncias do projeto em etapas futuras Isto significa uma economia de tempo e dinheiro significativa 2 Mas o que voc deve observar na valida o O SOMMERVILLE 2000 sugere um checklist observe O sistema f
162. ntidade tamb m estabelece relacionamento com uma ou mais inst ncias da primeira entidade No exemplo a seguir o funcion rio Jo o Augusto pode estar relacionado a diversos projetos O projeto Folha de pagamento tem alocados v rios funcion rios Classe N N Funcion rios N Aloca E Folha de Contas a Pagar Figura 3 15 Cardinalidade N para N N N Observe algumas dicas importantes Metodologias e Projetos de Softwares Identifique primeiro quais s o as entidades do sistema m Identifique ent o os atributos para cada entidade m Determine as chaves das entidades n o esque a que a chave deve ser um atributo que distinga a inst ncia de forma nica em rela o as outras inst ncias da entidade Um exemplo disso o registro do CPF Cada cidad o possui o seu nico n o existe nenhum outro brasileiro que possua o mesmo n mero Portanto o CPF uma excelente chave Identifique os relacionamentos entre as entidades m Por fim determine a cardinalidade Agora pense no caso da Cl nica Bem Estar visto na unidade 2 exerc cio das atividades de auto avalia o Vamos identificar pelos menos 3 entidades m Paciente M dico Agenda Consultas Neste caso o relacionamento seria Paciente 1 0 n M dico Figura 3 16 Exemplo de Cardinalidade Cl nica Bem Estar Agenda Consulta 0 n Onde um paciente pode ter nenhuma u
163. nto voc est Metodologias e Projetos de Softwares determinando a classe desse relacionamento A cardinalidade indica o n mero m ximo e m nimo de associa es poss veis em um relacionamento Voc pode ter classes de a Cardinalidade 1 para 1 1 1 Quando a cardinalidade de 1 para 1 significa que cada inst ncia da primeira entidade pode ser relacionada com exatamente uma inst ncia da segunda entidade ou seja cada cliente tem um cart o como no exemplo a seguir em que Ana Lopes tem um e apenas um cart o cujo n mero 23456 7 e o cart o tem somente 1 cliente a Ana Lopes Classe 1 1 Cliente Tem Cart o Can onde 237987 9 ii Figura 3 13 Cardinalidade 1 para 1 1 1 b Cardinalidade 1 para N 1 N Se a cardinalidade for 1 N tem se ent o uma situa o como a ilustra o a seguir na qual um cliente pode ter de O nenhuma SD a n fitas alocadas inst ncia Jo o tem alocadas 3 fitas inst ncias Unidade 3 87 88 Universidade do Sul de Santa Catarina Classe 1 N Aloca Fita Tubar o II Cliente 0 n Figura 3 14 Cardinalidade 1 para N 1 N c Cardinalidade N para N N N A situa o N para N representa uma situa o de relacionamento de muitos para muitos Nesse caso uma inst ncia da primeira entidade se relaciona com uma ou mais inst ncias da segunda entidade inst ncia da segunda e
164. o por apenas um motorista Motorista Caminh o m No terceiro exemplo um funcion rio deve estar locado a um ou mais projetos E cada projeto tem pelo menos 1 funcion rio alocado 1 ar La E Imagine um projeto para uma mercearia onde se pretende controlar os fornecedores seus produtos e os pedidos de compra de produtos Imediatamente voc identifica pelo menos 3 classes candidatas a Classe Fornecedor que vai armazenar dados como endere o nome telefone a Classe Produtos que deve armazenar dados como c digo descricao unidade a Classe Item de Compra que deve armazenar pre o quantidade comprada Voc tem a classe fornecedor que pode ter de O a n produtos ou seja o fornecedor oferece mercearia v rios produtos para compra veja o exemplo de uma revenda de bebidas que possui diferentes tipos de refrigerante e cerveja os produtos por sua vez podem ter de 0 a n fornecedores posso ter mais de um fornecedor para o mesmo refrigerante 160 Metodologias e Projetos de Software Mas cada item de compra pode ter apenas um fornecedor mas cada fornecedor pode ter de O a n itens de compra no momento da compra vou ter um fornecedor apenas para aquele determinado item para aquela determinada nota fiscal Figura 6 10 Multiplicidade Adapta o P dua 2000 a Como nomear uma associa o O H v rias maneiras de nomear associa es No entanto voc deve escolher o nome p
165. o a cobran a e aos relat rios do futuro sistema Para obter o acesso seguro o sistema deve apresentar uma funcionalidade que permita o controle do acesso por meio da autentica o do usu rio no sistema Esta autentica o ser realizada para todos os casos de uso verificando se o acesso est sendo realizado por um usu rio credenciado a usar a fun o no sistema Nesta situa o todos os casos de uso far o uso do caso de uso Autentica o sendo um caso t pico de inclus o pois o mesmo caso de uso est relacionado a v rios casos de uso Unidade 5 123 Universidade do Sul de Santa Catarina cd locadora gerenciar filmes Atendente Inserir Prefer ncias i extend gt 7 gerenciar cliente include L 2 cd F a Cliente ZM ad z i include Zee Autentica o Tn EEEE Gerenciar include Loca es Re Ra a Ts e x o Me x Gerenciar Relat rios realizar cobran a essoalmente mm Figura 5 12 Diagrama de Casos de Uso da V deo Locadora Um exemplo comum de inclus o a autentica o por meio de contas e senhas Quando voc est em um caixa eletr nico com as possibilidades de saque extrato pagamento apesar de cada uma delas possuir sequ ncias de intera es e comportamento espec fico t m em comum a autentica o de conta e senha Logo este caso pode ser inclu do pois em todos os processos ele vai acontecer c
166. o cheio estado inicial Pequeno c rculo eclipsado estado final No diagrama voc percebe que existem dois fluxos paralelos atividade 3 e 4 e que n o existe limita o para o n mero de processos paralelos pois a sincroniza o destes fluxos acontece pelo uso de uma barra paralela A barra pode ser utilizada para bifurca o ou jun o Se for uma barra de jun o join no diagrama aparece como sincroniza o dois ou mais fluxos de transi o ser o unidos em um nico fluxo Se for uma barra de bifurca o a partir de uma transi o de entrada s o criados dois ou mais fluxos paralelos no diagrama aparece a bifurca o na condi o de guarda se Na figura a seguir voc v o diagrama de atividade para o caso de uso realizar saque do sistema de caixa eletr nico Unidade 8 215 Universidade do Sul de Santa Catarina ad Activity Diagram Inicio Verificar existencia da conta e validade da senha Seleciona a opcao Saque Informa o valor do saque Cliente digita a senha Senha Valida N o Informa erro Saldo Suficiente Informa Saldo Insuficiente Realiza contagem das c dulas Disponibiliza c dulas Atualiza Saldo e Final Figura 8 10 Diagrama de Atividades Realizar Saque do Sistema de Caixa Eletr nico 216 Metodologias e Projetos de Software E poss vel observar pelo diagrama a sequ ncia de atividades que devem ser realizadas e a preced ncia de ca
167. o existe uma classe mais importante do que a outra na associa o As palavras chave usadas para identificar uma agrega o s o consiste em cont m ou parte de O Outra dica importante que as partes n o morrem obrigatoriamente com o todo e uma mesma parte pode estar em mais de um todo Graficamente voc vai representar a associa o de agrega o por uma linha e um diamante aberto na extremidade Observe o exemplo de uma transportadora onde pode se dizer que a empresa tem departamento a transportadora cont m caminh es Metodologias e Projetos de Software Todo Transportadora KD Cont m Parte Departamento Figura 6 13 Agrega o BOOCH 2000 A composi o um tipo especial de agrega o onde a multiplicidade do lado todo sempre 1 As partes vivem e morrem obrigatoriamente com o todo uma mesma parte n o pode estar em mais de um todo Os objetos da classe parte n o existem de forma independente da classe todo A composi o segundo RUMBAUGH 1994 um tipo forte de associa o onde um objeto agregado composto de v rios objetos componentes codigo Integer dataRecebido total Currency Ve culo confirmar cancelar calcularTotal Currency confirmar cancelar Bateria calcularTotal Currency Item de Pedido quantidade Integer pre o Currency Figura 6 14 Composi o Unidade 6 163 Uni
168. o qualidade componentes de das fun es do estabilidade hardware e de software software seguran a Figura 2 3 Quest es b sicas ao se escrever uma ERS Fonte Peters 2000 A especifica o dos requisitos faz parte da documenta o do sistema e pode se dizer que um de seus principais artefatos Sabendo disso necess rio decidir o que deve ser documentado sobre esta etapa PETERS 2000 sugere uma estrutura composta de 4 pontos principais Introdu o onde s o descritas caracter sticas do documento descri o global onde s o referenciados perspectivas do produtos riscos associados e funcionalidades requeridas requisitos espec ficos apresenta um esqueleto de interfaces e necessidades que devem ser suportadas pelo produto em termos de atributos e performance e a rastreabilidade dos requisitos que incluem casos de teste para a valida o do futuro projeto Unidade 2 Padr es de qualidade linguagem de codifica o limites de recursos or amento ambiente 55 Universidade do Sul de Santa Catarina Tabela 2 1 Estrutura para documenta o do sistema 1 Introdu o 1 1 Objetivo 1 2 Escopo 1 3 Defini es acr nimos e abrevia es 1 4 Refer ncias 1 5 Vis o Geral 2 Descri o Global 2 1 Perspectiva do produto 2 2 Fun es do produto 2 3 Caracter sticas do Usu rio 2 4 Restri es 2 5 Hip teses e depend ncias 2 6 Distribui o de requisitos
169. o se com propriedades e comportamentos do objeto c A an lise estruturada possui como fundamento a vis o do comportamento do processo Assim a vis o que se imp e ao modelo o processamento dos dados d A an lise orientada a objetos constru da a partir de objetos As classes s o inst ncias do objeto 2 Identifique os elementos a seguir C lasse O bjetos a Caixa b Imposto Pago c Jo o da Silva d Valor Venda e Cliente 3 Observe os conceitos abaixo e realize as devidas inser es Encapsulamento Heran a Poliformismo Mensagens a pode explicar situa es nas quais pode haver v rias formas de fazer uma determinada coisa b permite que detalhes internos sejam escondidos c especifica informa es a serem passadas para a opera o que deve ser executada por um objeto receptor 106 Metodologias e Projetos de Software d Voc define uma classe chamada Conta para um sistema banc rio com caracter sticas e comportamento gen rico Posteriormente voc define duas classes chamadas Poupan a e Conta Corrente cada uma delas possui propriedades espec ficas que a outra n o possui mas agregam a elas o comportamento gen rico da classe Conta Isso chamado de 4 As vis es da UML permitem o uso de diferentes diagramas adaptando o uso do diagrama s necessidades do projeto Relacione conceitos e diagramas utilizados ao tipo de vis o associado A Vi
170. odelo bastante complexa O m todo OOSE Object Oriented Software Engineering 1993 de Jacobson excelente no controle da captura de requisitos an lise e projeto de alto n vel Utiliza se de use cases para definir os requisitos iniciais do sistema vistos por um ator externo O m todo OMT Object Modeling Technique 1995 de Rumbaugh bastante usado para an lise e sistemas de informa es com uso intensivo de dados Possui um forte foco para o teste de modelos baseado nas especifica es da an lise de requisitos do sistema Al m dos m todos citados existiam muitos outros cada m todo utilizava se de nota es diferentes Com o passar do tempo a percep o de que os m todos poderiam ser complementares a partir de suas melhores caracter sticas fez com que os tr s autores se unissem na especifica o de um novo m todo proporcionando estabilidade e uma linguagem clara e madura que auxiliasse com problemas que provavelmente nenhum dos tr s m todos poderia resolver Unidade 4 100 Universidade do Sul de Santa Catarina Qual a origem da Linguagem de Modelagem Unificada UML No ano de 1994 nas depend ncias da Rational Software iniciou se a jun o do m todo Booch e OMT Em 1995 Jacobson se juntou equipe e decidiram a incorpora o do m todo OOSE A primeira vers o 0 9 da UML foi lan ada ao mercado em 1996 A partir desse lan amento profissionais da rea contribu ram
171. odelos s o apontados como ideais para equipes pequenas e com intera es r pidas Unidade 2 1 Alternativa correta b 2 Sequ ncia correta d a c b 3 Relat rio de An lise do Problema Observe que foram acrescentadas informa es com int ito de mostrar os tens de forma mais completa 1 Nome da Empresa Cl nica Bem Estar 2 Contato Sr Julibio Ritz gerente fone 3339090 Cel 9987878 3 Descri o do problema A cl nica possui 34 m dicos cadastrados em diferentes especialidades e presta atendimento a pacientes conveniados aos planos Bruxtr Vpfzm e UIOIk ou particular A cl nica funciona com um pequeno n mero de atendentes respons veis pela marca o de consultas preenchimento inicial de dados cadastrais Cada m dico faz 3 plant es semanais de 4 horas seguidas as consultas possuem um intervalo de 30 minutos Existe a possibilidade da consulta ser de retorno neste caso s o apenas 15 minutos Metodologias e Projetos de Software A cl nica 24 horas Cada m dico possui uma agenda preta onde sao marcadas as consultas Na marca o da consulta colocado o nome do paciente hor rio e conv nio A cl nica possui 2 atendentes que s o respons veis por preencher o cadastro inicial do paciente que contem nome endere o telefone data de nascimento conv nio O m dico ao atender o paciente preenche sua ficha manualmente informando peso altura idade motivo da consulta queixa princip
172. om a mesma sequ ncia de intera es 124 Metodologias e Projetos de Software Utilize o relacionamento de inclus o em situa es onde o comportamento se repete em mais de um caso de uso SE O 4 Identificando casos de uso 2 Mas como identificar os casos de uso do sistema Identifique os objetivos do usu rio e n o fun es no sistema Para identificar estes casos de uso P DUA 2000 sugere m Verifique quais as tarefas de cada ator m Que informa o cada ator cria armazena consulta altera ou remove Que informa o cada caso de uso cria armazena consulta altera ou remove Que mudan as externas s bitas devem ser informadas ao produto pelos atores m Que ocorr ncias no produto devem ser informadas a algum ator Imagine uma situa o onde voc convidado a desenvolver um projeto para um caixa eletr nico banc rio O projeto prev o atendimento dos seguintes requisitos funcionais O sistema deve permitir ao cliente a emiss o de saldo somente da conta corrente O sistema deve permitir ao cliente a emiss o de extrato somente da conta corrente Unidade 5 125 Universidade do Sul de Santa Catarina O sistema deve permitir a atualiza o dos dados cadastrais do cliente O sistema deve permitir o saque em dinheiro no caixa eletr nico O sistema deve permitir a consulta a toda a movimenta o financeira do cliente conta corrente poupan a e aplica es no caixa
173. omo data de loca o data de t rmino de contrato valor do aluguel 132 Metodologias e Projetos de Software Vender Im vel RF006 Cadastro das vendas realizadas pelos corretores permitindo incluir alterar e excluir registros de venda Gerar Contrato RF007 Gera o contrato para ser impresso no ato da venda ou aluguel do im vel A gera o do contrato e dados deve ser autom tica Emitir boleto banc rio RF008 Emite o boleto de cobran a para clientes que alugam im veis com dados como valor do aluguel iptu descontos e multas Controle das comiss es RF009 Emite um extrato com os im veis alugados ou vendidos indicando o valor da comiss o do corretor Busca de im vel RF010 Propiciar a realiza o da busca de im vel por par metros informados como bairro n mero de quartos valor aproximado de aluguel Gerar Relat rio de Cobran a RF011 Permitir a gera o de um relat rio com os im veis alugados que est o com mensalidade atrasada Cadastra Pagamento RF012 Deve ser permitido o registro do pagamento de aluguel de um im vel Gerar Relat rio RF013 Gerar um relat rio com quantidade de vendas e alugueis realizados e desfeitos Classificado por m s e ano Cadastrar Usu rio do Sistema RF014 Permitir o cadastro de usu rios do sistema para que se possam definir n veis de acesso por meio de contas
174. or envia sua mensagem est mulo o diagrama de casos 112 Metodologias e Projetos de Software de uso criado para visualizar os relacionamentos entre atores e casos de uso O diagrama de casos de uso pode ser utilizado para representar um caso de uso e seus relacionamentos todos os casos de uso para um ator ou ainda todos os casos de uso a serem implementados em um ciclo de desenvolvimento A nota o do diagrama faz uso de um boneco para identificar o ator abaixo do boneco inserido o nome do ator cliente A elipse identifica o caso de uso o nome do caso de uso pode ser escrito no interior ou externo a elipse caso de uso gerenciar cliente A linha reta indica o relacionamento de comunica o entre o ator e o caso de uso E cliente gerenciar cliente Figura 5 2 Caso de uso Gerenciar Cliente SE O 2 Como identificar os atores Um ator representa um conjunto coerente de pap is que os usu rios de casos de uso desempenham quando interagem com esses casos de uso Um ator pode representar um papel que um ser humano um dispositivo de hardware ou at outro sistema que desempenha alguma intera o com o sistema BOOCH 2000 O ator troca informa es com o sistema ele n o faz parte do sistema apenas interage com ele Um ator pode participar de v rios casos de uso Voc pode ter em seu sistema diferentes tipos de atores m pessoas professor aluno secret ria coordenador Organiza es e
175. or o n mero de n veis melhor a descri o do comportamento do sistema D Mas como ocorre essa explos o em n veis Os n veis podem ser descritos como a N vel 0 Topo tamb m chamado de Diagrama de Contexto E formado por um nico processo que representa o sistema inteiro Paciente ESR Gerenciar Cl nica Figura 3 2 DFD N vel 0 Gerente b N vel n Folhas neste caso os processos s o primitivos sua descri o fica em um n vel alto pois as fun es s o simples com poucas E S c N vel 1 a n 1 Intermedi rios neste caso os processos s o decompostos em n veis O n i a decomposi o particionamento de processos fluxos e dep sitos do n vel i Em outras palavras voc pode decompor o DFD de forma granular chegando a um detalhamento minucioso Veja o exemplo do DFD Agendar Consulta Ele pode ser apresentado em um n vel apenas Metodologias e Projetos de Softwares nome m dico hor rio nome dados cadastrais paciente Paciente DEDE Agendar consulta hor rio m dico Atendente nome paciente hor rio paciente m dico hor rio m dico Figura 3 3 Agenda Consulta N vel 1 Mas se voc quiser detalhar estes processos o DFD oferece mais informa es para o desenvolvedor Atendente Agendamento Hor rio Solicitar Agendamento Dados Paciente Dados Paciente Dados Agenda Verifi
176. ornece as fun es que melhor ap iam as necessidades do usu rio H algum conflito nos requisitos Todas as fun es exigidas pelo cliente foram inclu das Os requisitos podem ser implementados com o or amento e a tecnologia dispon veis Metodologias e Projeto de Software O requisito foi apropriadamente compreendido origem do requisito foi claramente estabelecida O requisito pode ser alterado sem um grande impacto em outros requisitos Existem algumas t cnicas que ap iam a valida o de requisitos s revis es de requisitos pela an lise sistem tica e regular dos requisitos O uso da prototipa o para validar entradas e sa das por exemplo por meio de prot tipos n o funcionais de telas e relat rios procure envolver equipe e cliente nessas revis es gera o de casos de teste para os requisitos verificando se poss vel construir os casos de teste e mesmo testar aquele requisito c Gerenciamento de requisitos A tarefa de gerenciar requisitos se preocupa com as mudan as nos requisitos que j haviam sido acertadas entre cliente e desenvolvedor Em outras palavras preciso documentar estas mudan as gerenciar os relacionamentos entre os requisitos e suas depend ncias que podem afetar outros requisitos e outros artefatos produzidos no processo de software verificar a credibilidade da solicita o de mudan a com a empresa O gerenciamento deve manter as alte
177. os acertos devidos Outro ponto importante que voc deve considerar logo no in cio os requisitos mais arriscados Fazendo isto qualquer inconsist ncia aparece logo no in cio permite que voc tenha tempo de reagir solucionando o problema Fundamental neste modelo a vis o global do sistema o gerente deve ter em mente a soma de todos os m dulos evitando redund ncias na constru o do produto O modelo incremental um dos mais utilizados na atualidade em sua estrutura comum percebermos a inser o da prototipa o 2 E as Metodologias geis O At pouco tempo tudo o que se pensava sobre metodologias de desenvolvimento de software parecia extremamente ligado a farta documenta o e processos claramente delineados Para muitos desenvolvedores no entanto passos firmemente delineados e documentados para cada etapa do desenvolvimento eram considerados como uma burocracia desnecess ria e que por vezes produzia altos custos ao projeto A diverg ncia sobre a efici ncia do uso de modelos que consideravam modelos tradicionais como limitadores para equipes de desenvolvimento e n o raro eram apontados como causa de atrasos e dificuldades no desenvolvimento Por outro lado pequenas empresas a margem de grandes or amentos ficavam a margem dos modelos tradicionais por sua incapacidade de comportar a estrutura necess ria para sua execu o A demanda criada a partir desta situa o deu origem a um novo
178. os como um n mero de objetos que interagem Mas o que voc entende pela express o orientado a objetos Se voc teve dificuldade em conceituar n o se preocupe mesmo experts nessa rea passaram anos engalfinhando se tentando Unidade 4 97 98 Universidade do Sul de Santa Catarina esclarecer seu significado PAGE JONES 2001 tentando explicar lista seus principais conceitos que juntos explicam o m todo a Encapsulamento o agrupamento de id ias afins em uma unidade Permite ao programador esconder os detalhes da representa o dos dados por tr s de um conjunto de opera es como a interface Reflita sobre o seguinte voc sabe como funciona internamente o seu microondas Mas voc sabe como lig lo program lo e deslig lo Voc interage com o microondas por meio de sua interface sem se preocupar com os detalhes da implementa o este um exemplo de encapsulamento Oculta o de informa es e implementa es exatamente o uso do encapsulamento que restringe a visibilidade de detalhes e informa es que ficam internas estrutura do encapsulamento Mensagens solicita o de um objeto para que outro objeto efetue uma de suas opera es Os objetos mandam mensagens entre si As mensagens resultam na chamada de m todos que executam as a es necess rias Classes as classes s o conjuntos de objetos com caracter sticas semelhantes Heran a o mecanismo de heran
179. os do produto e Telas de consulta de produtos f Dados do cliente 180 Metodologias e Projetos de Software 3 Relacione a primeira coluna com a segunda indicando as caracter sticas dos diferentes relacionamentos A m B C D E Associa o Associa o Tern ria Agrega o Heran a Depend ncia Associa o Recursiva Classes Associativas As classes est o ligadas associa es e n o a outras classes Neste relacionamento ocorre a associa o de tr s classes ao mesmo tempo Uma das classes do relacionamento uma parte da classe ou est contida em outra classe Este relacionamento poss vel entre dois ou mais elementos onde uma classe cliente dependente de algum servi o da classe fornecedora Neste caso os objetos da pr pria classe est o se relacionando Quando ocorre este tipo de relacionamento a subclasse herda as propriedades da superclasse principalmente atributos e opera es Ocorre quando duas classes ou mesmo uma classe consigo pr pria apresenta interdepend ncia Unidade 6 181 Universidade do Sul de Santa Catarina 4 Na unidade 5 atividade 4 voc identificou os casos de uso da cl nica Bem Estar a Identifique as classes persistentes nome e descri o da classe b A partir desta identifica o construa o diagrama de classes persistentes apontando os relacionamentos existentes entre as classes
180. para apresentar prazos que muitas vezes podem n o agradar o seu usu rio final mas que s o necess rios para n o comprometer a qualidade do projeto Os valores do XP s o fundamentados em alguns princ pios como o feedback r pido a simplicidade que deve ser assumida em todas as etapas do projeto a consci ncia de mudan as que devem acontecer de forma incremental a compreens o e aceita o das mudan as e a necessidade da qualidade do trabalho Valores e princ pios se entrela am na defini o de pr ticas b sicas que s o adotadas pelo XP Bona 2002 As doze pr ticas b sicas que s o adotadas pelo XP segundo SOARES 2004 s o Jogo de Planejamento nesta pr tica decide se o que deve ser feito requisitos e as prioridades Nesta pr tica tamb m determinado o escopo da pr xima vers o Dividido em duas reas o jogo do planejamento que decide sobre o escopo a composi o das vers es e as datas de entrega realizado pela rea de neg cios J as estimativas de prazo o processo de desenvolvimento e o cronograma s o determinados pelos programadores Programa o em pares produzido em duplas dois programadores trabalham sempre juntos na mesma m quina Enquanto um dos programadores escreve o segundo confere a padroniza o e o racioc nio l gico Unidade 1 33 34 Universidade do Sul de Santa Catarina Semana de 40 horas no modelo a semana de 40 quarenta horas Hora extra aboli
181. pelo futuro usu rio do sistema A an lise dos requisitos ocorre a medida que os mesmos s o descritos e solicitados pelo usu rio isto quer dizer que o conhecimento sobre o problema evolui durante o desenvolvimento O XP norteado por valores princ pios e regras Beck 1999 define 4 valores que descrevem o XP a comunica o a simplicidade o feedback e uma boa dose de coragem A seguir acompanhe uma breve descri o destes valores segundo WUESTEFELD 2001 Simplicidade est ligada a simplicidade do software do processo usado no desenvolvimento na comunica o e em tudo o que norteia o trabalho de desenvolvimento ou seja descomplicar a regra do XP simplificar Comunica o ela deve ocorrer em todos os sentidos desde o uso dos escritos a partir da conven o de padr es de codifica o para facilitar o entendimento at Metodologias e Projeto de Software a prefer ncia por reuni es presenciais para discuss o de requisitos e d vidas o trabalho em salas comuns evitando o isolamento da equipe a execu o de revis es do projeto em conjunto com toda a equipe Feedback os poss veis problemas devem ser identificados o mais cedo poss vel para que possam ser corrigidos rapidamente Da mesma forma oportunidades descobertas devem ser aproveitadas rapidamente Coragem ela fundamental para apontar problemas solicitar ajuda para alterar e simplificar um que j est funcionando
182. por suas caracter sticas espec ficas formam outra classe Neste caso a classe motorista herda as caracter sticas da classe funcion rio A generaliza o tamb m conhecida como heran a pode ser simples ou m ltipla Heran a simples a subclasse herda estrutura e ou comportamento de uma nica superclasse Heran a m ltipla a subclasse herda a estrutura e o comportamento de mais de uma superclasse Mas talvez voc esteja se questionando o que uma subclasse pode herdar de uma superclasse A subclasse pode herdar atributos opera es e relacionamentos Al m das caracter sticas herdadas O asubclasse possui atributos opera es ou relacionamentos adicionais Unidade 6 167 Universidade do Sul de Santa Catarina Na figura 6 18 a classe Im vel possui atributos e opera es comuns como rea endere o IPTU Mas Apartamento possui caracter sticas espec ficas como valor do condom nio fundo de reserva O mesmo acontece com a classe Casa Assim as sub classes possuem todas as caracter sticas da super classe e al m disto ainda possuem caracter sticas especificas de cada sub classe As sub classe s o especializa es da super classe Im vel cd Data Model Apartamento num andares int fundo reserva float Tipo Constru o char num apto char valor condominio double area double Bairro char cod proprietario int codigo int descricao char dormitorios int Endereco char
183. possui as seguintes funcionalidades constru o de diagrama de classes e de diagramas de sequ ncia na nota o UML gera o e leitura de c digo C gera o de documenta o web em HTML ou HTM a EclipsecUML http Avww eclipse org Eclipse uma plataforma aberta para integra o de ferramentas criada por uma comunidade aberta de provedores de ferramentas A IDE Eclipse foi criada sobre o paradigma Open Source baseada na Common Public License a Omondo EclipseUML http www omondo com Omondo EclipseUML um plugin para o Eclipse que auxilia na constru o de diagramas UML Com este plugin voc pode criar diagramas de classe sequ ncia estados use cases atividades etc Altera es no diagrama automaticamente se refletem no c digo fonte e vice versa Metodologias e Projetos de Software b Vers es Demo Rational Rose http www 306 ibm com software rational Ferramenta de modelagem que suporta todos os diagramas previstos na linguagem de modelos UML Seu custo extremamente alto sua grande vantagem que ela pertence Rational originalmente criadora da linguagem UML a EA Enterprise Architect http Awww sparxsystems com au ea downloads htm Ferramenta da Sparxsystems da Austr lia suporta todos os diagramas previstos pela UML e toda nota o da OMG Gera c digos e engenharia reversa para manuten o dos modelos Apresenta uma interface mais amig vel e simples de se usar Poseido
184. produtos deliverables que devem ser entregues os controles que ajudam a assegurar a qualidade e coordenar as altera es e os marcos de refer ncia que possibilitam administrar o progresso do software Metodologias e Projeto de Software Quando se fala em produ o de software muito dif cil estabelecer o pre o prazo e n mero de pessoas necess rias para o desenvolvimento Para isso existe uma metodologia chamada ponto por fun o que nos ensina mediante seu m todo a encontrar resultados para as d vidas relacionadas a essas estimativas Mas como fazer isso manualmente dif cil foram ent o desenvolvidas ferramentas baseadas nesse m todo que o automatizam como o Gem trics por exemplo que foi desenvolvido por alunos de gradua o Mas o ponto por fun o uma metodologia que estabelece entrada de informa es e resultados na forma de c lculos e relat rios Os procedimentos ser o utilizados para dizer quando as entradas de informa es ser o feitas quais relat rios ser o emitidos e em que momento Segundo P dua 2000 a EGS preocupa se com o software como produto E como todo produto industrial o software tem um ciclo de vida que deve ser concebido a partir da percep o de uma necessidade desenvolvido transformando se em um conjunto de itens entregue ao cliente entra em opera o sendo usado dentro de um processo de neg cio e sujeito manuten o quando necess rio
185. que diferentes modelos servem para o desenvolvimento de sistemas com caracter sticas espec ficas O uso dos modelos tamb m pode ser feito de forma combinada para um mesmo projeto O projeto pode respeitar o modelo incremental fragmentando suas funcionalidades para alguns m dulos em que n o est o claros requisitos utiliza se ent o a prototipa o para um m dulo onde existe a necessidade de avaliar algum risco utiliza se o modelo espiral Misturando se os modelos tem se o melhor de todos eles Na pr xima unidade voc vai estudar a etapa de defini o do processo de desenvolvimento de software Esta etapa o marco fundamental de seu projeto pois nela que voc percebe o escopo as necessidades e restri es que ser o trabalhadas conciliadas e solucionadas durante todo o ciclo de desenvolvimento do software cai s R aiba mais Para aprofundar as quest es abordadas nesta unidade voc poder pesquisar os seguintes livros PRESSMAN Roger Engenharia de Software S o Paulo McGraw Hill 2002 SOMMERVILLE lan Engenharia de software 6 ed S o Paulo Addison Wesley 2003 Unidade 1 41 UNIDADE 2 Engenharia de requisitos Objetivos de aprendizagem m Reconhecer a import ncia da an lise de requisitos no processo de desenvolvimento Perceber as diferentes etapas que fazem parte da an lise de requisitos Realizar de forma consistente a atividade de an lise de requisitos Se es de es
186. r Descer andar GER Chegar no andar Subir andar M Chegar no andar In cio Tempo de espera Indo para o T rreo Figura 8 1 Diagrama de estados Elevador O DTE desta figura mostra m os estados de um objeto m os eventos ou mensagens que causam transi o m as a es que resultam de uma mudan a de estado Unidade 8 207 208 Universidade do Sul de Santa Catarina Quais s o os componentes de um diagrama de estados A exist ncia de estado em um objeto indica que a ordem na qual as opera es s o executadas No DTE importante a descri o da ordem das opera es no tempo pois esta ordem pode formalizar a caracteriza o do comportamento de um objeto O DTE utiliza se de alguns componentes s o eles a Estado uma situa o na vida de um objeto durante a qual ele satisfaz alguma condi o ou realiza alguma atividade em resposta a um evento ou espera a ocorr ncia de algum evento No diagrama DTE o estado representado por um ret ngulo arredondado Emitindo nota O macarr o est cozido O menino est nadando Objetos nota macarr o menino Estado emitindo nadando cozido Emitindo Nota Analisando Produto Figura 8 2 Exemplos de Estados b Estado Inicial o estado inicial de um objeto ocorre quando ele criado representado por um pequeno c rculo fechado O estado inicial indica a partir de onde o DTE deve ser lido Para cada
187. r pria apresenta interdepend ncia ou quando uma determinada inst ncia de uma das classes origina ou se associa a uma ou mais inst ncias da outra classe voc pode dizer que se tem um relacionamento de associa o Metodologias e Projetos de Software Funcionamento Projeto Paciente Ficha M dica Figura 6 9 Relacionamento de Associa o entre as Classes O que multiplicidade dentro desse tipo de relacionamento Quando voc fala em associa es poss vel representar a quantidade de objetos aos quais o outro objeto est associado Um exemplo pr tico um projeto existe sem que seja alocado um funcion rio para este projeto Quantos projetos podem ser alocados para cada funcion rio Quantos funcion rios podem ser alocados para cada projeto Na nota o UML isto chamado de multiplicidade Alguns autores tamb m utilizam o termo cardinalidade j estudada na Unidade 3 Mas como represent lo em um diagrama Observe ent o a tabela a seguir que apresenta esta simbologia Tabela 6 3 Simbologia UML Nome Simbologia Apenas um 1 Zero ou muitos 0 Um ou muitos k Zero ou um 0 1 Intervalo espec fico 14 Unidade 6 159 Universidade do Sul de Santa Catarina Veja alguns exemplos de multiplicidade Um paciente possui nenhumou v rios agendamentos 1 0 a Em uma empresa de transporte um motorista dirige apenas um caminh o e cada caminh o pode ser dirigid
188. r aplic vel a qualquer tipo de projeto Na literatura assumido como um framework gen rico para processos de desenvolvimento SE O 2 Quais s o as fases do RUP As fases de um projeto podem ser definidas como o per odo de tempo necess rio entre dois marcos de progresso de um processo em que um objetivo alcan ado artefatos s o conclu dos e decis es sobre a etapa seguinte s o tomadas Metodologias e Projetos de Software Segundo o site www rational com acessado em 2005 o RUP composto por quatro fases a Concep o ou Inicial estabelece o caso de neg cio para o projeto E estabelecido o escopo e a viabilidade econ mica do projeto b Elabora o nesta fase s o estabelecidos o plano de projeto e uma arquitetura s lida Os principais riscos s o eliminados Ao final da etapa estabelecida a arquitetura a partir da qual o sistema vai evoluir c Constru o nesta etapa o sistema desenvolvido O produto completo desenvolvido iterativamente Para saber Workflow a automa o de processos de neg cio em que as atividades s o passadas de um participante para o outro de acordo com um conjunto de regras definidadas Framework No desenvolvimento do software um Framework uma estrutura de suporte definida em que um outro projeto do software pode ser organizado e desenvolvido Tipicamente um Framework pode incluir programas de apoio bibliotecas de c digo linguagens
189. ra es de requisitos de forma controlada tornando as altera es O sustent veis durante o desenvolvimento Fazer mudan as nos requisitos n o deve ser uma cat strofe comum a dificuldade de reconhecer todos eles em uma etapa inicial O importante documentar relacionar controlar estas mudan as repassando as a todo o processo e envolvidos no processo de desenvolvimento Agora para praticar os conhecimentos conquistados nesta unidade realize as atividades propostas Unidade 2 59 60 Universidade do Sul de Santa Catarina Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 Quanto ao requisito correto afirmar a Um requisito expresso por suas caracter sticas funcionais b O requisito de software pode ser expresso por caracter sticas impl citas expl citas e normativas c As caracter sticas normativas de um requisito est o relacionadas as suas caracter sticas comportamentais d O requisito mais importante em uma an lise o requisito expl cito 2 Na an lise de requisitos temos as seguintes etapas a levantamento b especifica o c valida o d ger ncia Relacione as descri es abaixo com a etapa correspondente a respons vel pelo controle de altera es de requisitos b utiliza se de t cnicas como observa o direta entrevistas e question rios para apurar informa es pertinentes
190. ra sua empresa para solicitar o desenvolvimento de um software para controle de vendas de im veis A empresa respons vel pela constru o de pr dios realiza a venda de seus im veis na forma a vista ou por financiamento direto com a construtora O sistema deve possibilitar o controle das vendas assim como o controle do financiamento que aceita ouro carros im veis cons rcios d lares ou reais como parte do pagamento O cliente n o deixou muito claro o c lculo do saldo devedor do comprador nem a forma como ocorre o ac mulo de d bito do cliente O sistema apresenta em sua an lise inicial 30 funcionalidades entre cadastros e relat rios de consulta Qual o modelo de desenvolvimento que voc adotaria a Modelo cascata b Modelo incremental c Modelo prototipa o d Modelo espiral Unidade 1 39 40 Universidade do Sul de Santa Catarina 7 Observe o modelo XP e o modelo SCRUM e a seguir descreva o que poss vel determinar como diferen as fundamentais em rela o aos modelos tradicionais Metodologias e Projeto de Software S ntese Nesta primeira unidade voc teve contato com conceitos e modelos relacionados ao processo de desenvolvimento de software Tamb m estudou sobre a import ncia de se estabelecer claramente nas empresas de software os sub processos existentes no processo de desenvolvimento Foi poss vel perceber
191. rante o projeto A finaliza o post game phase apresenta o produto ao cliente e procura avaliar com a equipe a evolu o do projeto Nesta etapa quest es como testes integra es e documenta o s o tratadas Quer conhecer mais sobre esses modelos N Acesse os links Modelo XP Programming apresenta uma abordagem de programa o em pares com a defini o da etapa de testes no in cio do projeto e intensa participa o do usu rio final http www extremeprogramming org Qual o melhor modelo qual o pior Estas defini es dependem da natureza do projeto da empresa e sua organiza o das ferramentas e recursos existentes na empresa de desenvolvimento Uma id ia que ganha cada vez mais adeptos a combina o de diferentes modelos aproveitando o melhor de cada um Agora para praticar os conhecimentos conquistados nesta unidade realize as atividades propostas Metodologias e Projeto de Software Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 Classifique as quest es a seguir em Verdadeira V ou Falsa F a Osoftware pode ser definido como um conjunto de instru es se visto sob o ponto de vista do programador b Uma das caracter sticas mais interessantes do software est relacionada ao fato de ser um produto personaliz vel isto se deve por ser um produto de engenharia e n o manufaturado no sentido cl ssico c O sof
192. ras sistema financeiro Figura 5 3 Exemplos de Atores Voc consegue listar os atores da videolocadora Pense um pouco sobre o assunto Os poss veis atores s o a O atendente O gerente a O cliente ud Use Case Model Atendente Gerente Cliente Figura 5 4 Diagrama de Atores da V deo Locadora S definir os atores n o o suficiente voc deve descrever caracter sticas e responsabilidades destes atores Caracter sticas importantes podem ser cargos fun es grau de escolaridade permiss es de acesso frequ ncia de uso conhecimento em inform tica conhecimento no processo do neg cio Unidade 5 115 116 Universidade do Sul de Santa Catarina Os atores podem ser divididos em prim rios e secund rios o ator prim rio inicia a sequ ncia de a es de um caso de uso J os atores secund rios supervisionam operam mant m ou auxiliam na utiliza o do sistema Tabela 5 1 Exemplo de descri o de atores Nro Ator Descri o e Defini o indiv duo que realiza loca es de fita na videolocadora e Frequ ncia de uso di rio semanal e Conhecimento em inform tica relativo alguns clientes possuem outros n o 1 Cliente Conhecimento no processo sim grande maioria possui uma no o clara do funcionamento do processo de loca o de fitas e Grau de escolaridade desde fundamental a p s gradua o e Permiss es de acesso deve ser disponibilizado ao
193. rat rios conveniados cl nica Se fossemos listar os requisitos n o funcionais O sistema deve operar de forma confi vel no lan amento de todos os dados de pacientes e consultas e sua grava o O sistema deve proteger o acesso s informa es hist ricas da ficha do paciente sendo que seu acesso deve ser exclusivo para a equipe m dica O sistema deve ser desenvolvido sobre uma plataforma open source permitindo portabilidade m O sistema deve seguir requisitos de usabilidade para as interfaces sendo de f cil aprendizado pois a rotatividade das atendentes grande A partir da lista de requisitos voc pode iniciar o processo de modelagem Para tanto necess rio entender alguns conceitos b sicos Unidade 3 n 72 Universidade do Sul de Santa Catarina A nota o da an lise estruturada composta pelos seguintes elementos Diagrama de Fluxo de Dados DFD a Dicion rio de dados Especifica o dos processos e a Modelagem de dados ER Nas pr ximas se es voc vai conhecer detalhadamente cada um desses elementos SE O 2 Diagrama de Fluxo de Dados DFD Segundo FORTES 1999 um Diagrama de Fluxo de Dados DFD uma t cnica gr fica de representa o que permite explicitar os fluxos de informa o e as transforma es que s o aplicadas medida que os dados se deslocam da entrada em dire o sa da O DFD permite particionar o sistema demonstrando seus co
194. reira Coordenador Marcelo Garcia Serpa Ger ncia Acad mica M rcia Luz de Oliveira Bubalo Ger ncia Administrativa Renato Andr Luz Gerente Valmir Ven cio In cio Ger ncia de Ensino Pesquisa e Extens o Ana Paula Reusing Pacheco Ger ncia de Produ o e Log stica Arthur Emmanuel F Silveira Gerente Francisco Asp Gest o Documental Janaina Stuart da Costa Lamuni Souza Log stica de Encontros Presenciais Graciele Marin s Lindenmayr Coordenadora Aracelli Araldi C cero Alencar Branco Daiana Cristina Bortolotti Douglas Fabiani da Cruz Fernando Steimbach Let cia Cristina Barbosa Priscila Santos Alves Formatura e Eventos Jackson Schuelter Wiggers Log stica de Materiais Jeferson Cassiano Almeida da Costa Coordenador Jos Carlos Teixeira Monitoria e Suporte Rafael da Cunha Lara Coordenador Adriana Silveira Andr ia Drewes Caroline Mendon a Cl udia Noemi Nascimento Cristiano Dalazen Dyego Helbert Rachadel Gabriela Malinverni Barbieri Jonatas Colla o de Souza Josiane Concei o Leal Maria Eug nia Ferreira Celeghin Maria Isabel Aragon Priscilla Geovana Pagani Rachel Lopes C Pinto Tatiane Silva Vin cius Maykot Serafim Relacionamento com o Mercado Walter F lix Cardoso J nior Secretaria de Ensino a Dist ncia Karine Augusta Zanoni Albuquerque Secret ria de ensino Ana Paula Pereira Andr a Luci Mandira Andrei Rodrigues Carla Cristina Sbardella Dj
195. reju zos Na maioria das vezes pelo mau planejamento m ger ncia e baixa qualidade do produto final Mas como gerenciar o processo de desenvolvimento de software aumentando sua qualidade se a empresa de desenvolvimento de software n o conhece seu pr prio processo de desenvolvimento Segundo Booch 2000 um processo um conjunto de passos 0 processo define quem parcialmente ordenados com a inten o de atingir metas A meta est fazendo o que neste caso a entrega eficiente e previs vel de um produto de quando e como est sendo feito e as a es para atingir uma determinada meta software que atenda de forma completa todas as necessidades do usu rio Mas como inserir qualidade no processo A qualidade passa pelo uso de metodologias e reconhecimento formal do processo Apenas modelar o sistema n o o suficiente O uso de uma nota o voltada orienta o a objetos como a UML Unified Modeling Language pode colocar sua empresa na vanguarda em termos de nota o por m pouco garante quanto a qualidade de todo o processo A UML uma linguagem de especifica o o seu uso garante a confec o de diagramas precisos Mas se estes diagramas n o forem usados de forma sistem tica documentados e servirem como pontos de controle e avalia o do processo de pouco servir o para a adequa o de qualidade do produto Em resumo s descrever os diagramas n o o suficiente para garantir um processo de de
196. representa o dep sito de dados Na verdade s o os locais onde ocorre o armazenamento de dados um reposit rio de dados tempor rios ou permanentes m Todas as informa es do paciente como nome endere o telefone ser o armazenados no seu HD em um deposito de dados neste exemplo um nome adequado para o dep sito seria Paciente E id Fluxo de dados m O fluxo de dados expresso por setas rotuladas que interligam os processos e que permitem indicar o caminho seguido pelos dados O fluxo de dados realiza a comunica o entre os processos dep sitos e entidades externas m O fluxo de dados n o significa segii ncia de um m dulo de programa para outro Mas a seta indica o caminho pelo qual uma ou mais estruturas de dados dever o passar m Quando estamos realizando o processo cadastrar paciente deve existir um fluxo de dados em que s o repassadas do paciente ao processo cadastrar paciente as suas informa es cadastrais nome endere o Acompanhe na figura 3 1 a seguir o processo Cadastrar Paciente Unidade 3 73 74 Universidade do Sul de Santa Catarina C digo Nome Endere o Telefone Nome Endere o Telefone Cadastrar Paciente C digo Nome Endere o Telefone Atendente Figura 3 1 DFD processo Cadastrar Paciente S o poss veis perguntas que voc pode realizar Por que Cadastrar Paciente c rculo est representado como um processo
197. rno o conv nio 4 S o informados dados cadastrais do conv nio 5 Os dados s o armazenados No item 2 caso este nome j exista Neste caso Fluxo alternativo e S o apresentados os dados cadastrais do funcion rio exce es S o apresentadas as possibilidades de Alterar excluir ou finalizar P s condi es Consulta marcada Pe RF07 Deve ser poss vel incluir novos conv nios ou Requisito funcional p mesmo excluir conv nios com os quais a cl nica opera Regras de neg cio UNIDADE 6 1 As alternativas corretas s o b e d 2 A seq ncia 261 262 Universidade do Sul de Santa Catarina 3 A sequ ncia 4 a As classes persistentes poss vel identificar a A classe Paciente que armazena os dados cadastrais do paciente a A classe Agendamentos que armazena o hor rio das consultas nome do paciente e m dico m A classe Funcion rio armazena os dados dos funcion rios inclusive do funcion rio M dico m A classe Hor rio que armazena o hor rio de atendimentos da equipe m dica m A classe Ficha M dica armazena a ficha de atendimento do paciente b 0 Agendamentos Paciente 1 Convenios Ficha_M dica_Paciente 1 Hor rio w Funcion rio Metodologias e Projetos de Software UNIDADE 7 1 A segu ncia correta 263 Universidade do Sul de San
198. rocesso de engenharia de software bem definido e bem estruturado O RUP define claramente quem respons vel pelo que como as coisas devem ser feitas e quando faz las Al m disso tamb m prov uma estrutura bem definida para o ciclo de vida de um projeto RUP articulando claramente os marcos essenciais e pontos de decis o Unified Process O RUP tamb m um produto de processo que oferece uma estrutura de processo customiz vel para a engenharia de software O produto IBM RUP suporta a customiza o e autoria de processos e uma vasta variedade de processos ou configura o de processos Essas configura es do RUP podem ser criadas para suportar equipes grandes e pequenas e t cnicas de desenvolvimento disciplinadas ou menos formais O Quais s o as diretrizes do RUP O O RUP apresenta caracter sticas pr prias no processo de desenvolvimento O uso de um processo iterativo o problema e a solu o s o organizados em pequenas partes para cada pequena parte do sistema feita uma itera o itera o segue o modelo sequencial tradicional com identifica o de necessidades an lise projeto implementa o o desenvolvimento Unidade 9 227 Universidade do Sul de Santa Catarina Voc pode encontrar esse padr o no site do Rational Software Corporation lt http www rational com gt Para que voc o utilize da forma mais adequada ele dever ser configurado de acordo com as necessida
199. rogram gt Acesso em Ago 2005 NIEDERAUER Mastelari Contribui o ao Processo de Integra o de Informa es da Manufatura para Empresas de Pequeno e M dio Porte Disserta o P s Gradua o em Engenharia Mec nica Universidade Estadual de Campinas Faculdade Engenharia Mec nica 2004 PACHECO R MONTENEGRO F Orienta o a Objetos em C S o Paulo Ed Ci ncia Moderna 1994 PADUA W P Engenharia de Software LTC Livros T cnicos e Cient ficos 2001 PAGES JONES M Fundamentos do Desenho Orientado a Objetos Makron Books 2001 PAULA FILHO Wilson de P dua Engenharia de software S o Paulo Campus 2001 BEZERRA E Princ pios de An lise e Projeto de Sistemas com UML S o Paulo Campus 2002 PAULA FILHO Wilson de P dua Engenharia de software fundamentos m todos e padr es Rio de Janeiro LTC 2001 PAULA W P Engenharia de Software S o Paulo LTC 2001 PETERS J F PEDRYCZ W Engenharia de software teoria e pr tica Rio de Janeiro Campus 2001 PRESSMAN Roger Engenharia de software S o Paulo McGraw Hill 2002 SCHWABER K e BEEDLE M Agile Software Development with SCRUM Prentice Hall 2002 SILVA A M R VIDEIRAM C A E UML Metodologias e Ferramentas Case Lisboa Centro Atl ntico 2001 SOARES M S Metodologias geis Extreme Programming e Scrum para o Desenvolvimento de Software RESI Revista Eletr nica de Sistemas de Informa o Edi o 4 Ano III Volu
200. s o de casos de uso B Vis o de Projeto C Vis o de Implementa o D Vis o de Implanta o E Vis o de Processo Descreve a funcionalidade do sistema desempenhada pelos usu rios A vis o representada por meio dos diagramas de classe b deobjetos de estados de atividade de sequ ncia e de colabora o Corresponde distribui o f sica do sistema em seus subsistemas e a conex o entre essas partes Abrange o gerenciamento de vers es do sistema constru das por meio do agrupamento de m dulos e subsistemas A vis o representada por meio dos diagramas de casos de uso de estados de atividade de sequ ncia e de colabora o Enfatiza as caracter sticas da concorr ncia sincroniza o e desempenho do sistema S o enfatizadas as caracter sticas do sistema que d o suporte estrutural e comportamental Unidade 4 107 108 Universidade do Sul de Santa Catarina S ntese Na unidade quatro voc estudou as diferen as existentes entre a an lise estruturada e a an lise orientada a objetos Voc percebeu que a UML surgiu a partir da evolu o de outros m todos orientados a objetos e que de certa maneira se complementaram dentro de uma linguagem de modelagem padronizada Ao estudar a unidade apresentaram se as diferentes vis es que de diferentes formas ap iam os projetistas na melhor visualiza o de todas as etapas do ciclo de desenvolvimento do software Al m da introdu o conc
201. s 15 minutos A cl nica 24 horas Cada m dico possui uma agenda preta onde s o marcadas as consultas Na marca o da consulta colocado o nome do paciente hor rio e conv nio Trabalham 3 anos na cl nica com planilhas excel A cl nica possui 2 atendentes que s o respons veis por preencher o cadastro inicial do paciente que cont m nome endere o telefone data de nascimento conv nio O m dico ao atender o paciente preenche sua ficha manualmente informando peso altura idade motivo da consulta queixa principal doen as anteriores diagn stico prescri o A prescri o pode ser a solicita o de exames ou medicamentos com posologia A cl nica possui aproximadamente de 700 800 fichas sendo que entorno de 600 s o atendidas por conv nio O gerente da cl nica est ansioso pois n o consegue controlar quest es relacionadas ao n mero de pacientes atendidos por conv nio e particular m dicos mais procurados e picos de movimento Volume de atendimentos 56 por dia Outra quest o de interesse manter um controle de laborat rios conveniados pois o m dico poderia indicar o laborat rio j no momento da prescri o Unidade 2 61 Universidade do Sul de Santa Catarina TEMPLATE PARA REALIZA O DA AN LISE DO PROBLEMA CLINICA BEM ESTAR 1 Nome da empresa 2 Contato 3 Descri o do problema 4 Identifica o do principal objetivo do cliente 5
202. s e a investiga o Metodologias e Projeto de Software a Entrevista O uso da entrevista feito pelo uso do formato pergunta resposta Usando esta t cnica voc pode obter opini es do usu rio descobrir o que o cliente pensa sobre o sistema atual obter metas organizacionais pessoais e levantar procedimentos informais Quando voc realizar uma entrevista lembre se de tentar estabelecer com o cliente um clima de confian a e entendimento manter se sempre no controle da entrevista tentar mostrar ao cliente sua import ncia dentro do sistema se preparar antecipadamente para a entrevista gt Mas o que significa preparar se para a entrevista O Estude o material previamente verifique o linguajar utilizado imagine que se o software for da rea jur dica voc precisa falar e entender as nuances e significados dos termos utilizados durante sua entrevista perceba aspectos relacionados organiza o e mesmo sobre o futuro entrevistado Estabele a claramente os objetivos saiba o que perguntar n o fa a rodeios Lembrezse meuajem sua lista de entrevistados pessoas chave dentro do Quando voc realizar uma entrevista marque a data e a hora uturo sistema com anteced ncia com dura o de no m nimo 45 minutos e no m ximo de duas horas Elabore as quest es e a estrutura da entrevista e durante a entrevista registre tudo o que for poss vel fazendo uso de anota es ou
203. s os C An lise e Projeto envolvidos c Descreve as diferentes vis es do sistema d Enfatiza o gerenciamento de riscos e Neste fluxo definida a delimita o do sistema D Ger ncia de Projeto E Ger ncia de Configura o e Mudan as 4 Dos nove modelos oferecidos pelo RUP defina 3 que voc considera fundamentais para que o projeto seja bem aceito pelo cliente final Metodologias e Projetos de Software S ntese Na d cima unidade voc teve contato com o RUP e o ICONIX seus conceitos e principais modelos Foi poss vel perceber a import ncia do processo incremental iterativo oferecido pelo modelo e a preocupa o de tornar a ger ncia e a manuten o do produto mais eficiente em todas as etapas do desenvolvimento Voc percebeu que dentro do m todo fundamental a defini o clara dos pap is e responsabilidades Um dos pontos fortes do modelo a padroniza o e a defini o de artefatos para cada etapa do projeto A utiliza o de uma arquitetura baseada nos casos de uso aproxima o usu rio final do desenvolvimento melhorando a qualidade do processo refinando em etapas bastante iniciais o processo de valida o do sistema Apesar das controv rsias relacionadas a seu uso o RUP tem se mostrado uma metodologia eficiente no mercado sendo que sua utiliza o vem crescendo gradativamente Um dos fatores mais fortes para isto a pos
204. s por meio da nota o gr fica O atributo Nome sublinhado porque considera se que ele uma chave nesta entidade Cada um dos c rculos representa um atributo Paciente Figura 3 11 Nota o gr fica entidade Paciente Unidade 3 85 86 Universidade do Sul de Santa Catarina D Mas o que Cardinalidade O Observe os exemplos a seguir S o exemplos de relacionamento por m sem a indica o do n mero de relacionamentos existentes entre eles Cliente Mot Filmes M dico Atende Pacientes Pedidos conien Produtos Cliente em Cart o Figura 3 12 Exemplos de relacionamento Observe na figura 3 12 que voc est lendo as entidades e o relacionamento entre elas Cliente entidade que armazena os dados de um cliente de v deo locadora Aloca Filme entidade que armazena os dados de filmes na locadora M dico entidade que armazena os dados dos m dicos na cl nica Atende Paciente entidade que armazena os dados de pacientes na cl nica Pedidos entidade que armazena os dados de um pedido de compras Cont m Produtos entidade que armazena os dados dos produtos Cliente entidade que armazena os dados de um cliente de um banco Tem Cart o entidade que armazena os dados da conta e do cart o que o cliente possui do banco Quando voc identifica quantas vezes cada inst ncia de uma entidade pode participar do relacioname
205. s processos a serem realizados para o controle e faturamento de um sistema de pedidos Metodologias e Projetos de Softwares Observe que neste caso temos 3 processos envolvidos para a realiza o do pedido Dois dep sitos de dados Faturas e Pedidos e apenas uma entidade externa Clientes A comunica o entre processos evolui pela passagem de dados por meio dos fluxos de dados Clientes Clientes pedidos inv lidos livros detalhes de pedidos detalhes da remessa pedidos 1 Receber pedidos 2 Remeter livros nome do cliente endere o do cliente informa es sobre cobran a nome do cliente endere o do cliente livros 3 fatura extrato de conta Recolher pagamentos nome do cliente detalhe da fatura Clientes pagamentos consultas Figura 3 5 DFD Controle de Pedidos Yourdon 1992 2 Que tal acompanhar mais um exerc cio O Observe a seguinte situa o voc recebe a miss o de desenvolver a modelagem estruturada de um sistema onde se pretende o desenvolvimento de um controle de pedidos para uma floricultura atacadista A empresa em quest o faz a revenda de flores e folhagens para floriculturas da cidade n o tendo venda a varejo Os requisitos funcionais da floricultura s o Manter o cadastro de produtos a venda na floricultura a venda exclusivamente de flores e folhagens Uni
206. s que todas elas sem exce o colaboram para que o projeto torne se claro para toda a equipe de projeto 244 Universidade do Sul de Santa Catarina O uso das metodologias torna o trabalho do gerente mais objetivo e sua cobran a perante a equipe se torna mais objetiva Isto se deve pela possibilidade de gera o de diferentes tipos de artefatos que podem ser utilizados como marcos de projeto para acompanhamento da equipe Finalizando o estudo esperamos que o estudo da disciplina tenha lhe proporcionado a oportunidade de reconhecer qual a metodologia mais adequada para seus projetos assim como o entendimento sobre seus conceitos e diagramas Prof Vera Schuhmacher Refer ncias AMBLER S W An lise e Projeto Orientados a Objetos Rio de Janeiro Editora Infobook 1998 ARAG O S Modelagem Visual de Objetos UML S o Paulo s e 2005 BECK K Programa o Extrema Explicada Bookman 1999 BONA Cristina Avalia o de Processos de Software Um Estudo de Caso Em XP e Iconix Disserta o de Mestrado Programa de P s Gradua o em Engenharia de Produ o da Universidade Federal de Santa Catarina 2002 BOOCH G RUMBAUGH J JACOBSON UML Guia do Usu rio S o Paulo Ed Campus 2000 BORTOLI A O uso do workflow para apoiar a elicita o de requisitos Workshop em Engenharia de Requisitos 2004 CHEN Peter Gerenciando Banco de Dados a abordagem entidade relacionamento para projeto l gico S o
207. senvolvimento com qualidade E Unidade 9 225 226 Universidade do Sul de Santa Catarina necess rio o uso de uma metodologia que unifique o esfor o da equipe dentro de um processo formal e mensur vel Team Based Development 7 l Modeling Unified E TET 5 Process Figura 9 1 M todos IBM 2005 Como est estruturado o RUP Rational Unified Process O RUP usa a abordagem da orienta o a objetos em sua concep o Sua proje o e documenta o utiliza a nota o UML para especificar modelar e documentar artefatos com os quais procura se ilustrar os processos em a o O RUP foi desenvolvido pela Rational Software Corporation sendo ent o um m todo propriet rio de O desenvolvimento de software Segundo IBM 2005 o RUP se apresenta como um processo de engenharia de software que oferece uma abordagem baseada em disciplinas para atribuir tarefas e responsabilidades dentro de uma organiza o de desenvolvimento permitindo o gerenciamento eficiente do processo Metodologias e Projetos de Software Sua meta garantir a produ o de software de alta qualidade que atenda s necessidades dos usu rios dentro de um cronograma e um or amento previs veis IBM 2005 Kroll 2003 apresenta tr s defini es para o Rational Unified Process O RUP uma maneira de desenvolvimento de software que iterativa centrada arquitetura e guiada por casos de uso O RUP um p
208. ser poss vel somente ap s a verifica o da conta e senha do cliente ou gerente Observe o poss vel diagrama de classes para este exemplo cd Data Model banco Pessoa Conta Movimento endereco char Agencia int estado_civil int Data_Abertura date registra data_mov date nome char Numero int historico int rendimento double Saldo double telefone char tippes boolean nro_conta int Senha int valor double Tipo int PA CID char limite doubl CPE long CNPJ long Nro sorteio int NE a FAR Rendimento double Nola B TxJuro float Figura 6 20 Diagrama de Classes Sistema Caixa Eletr nico 170 Metodologias e Projetos de Software SE O 4 Como ocorre a divis o das classes do Modelo de An lise A divis o ou categoriza o das classes est fortemente relacionada com as futuras mudan as no sistema Com a divis o das classes a partir de suas responsabilidades no momento em que forem necess rias altera es no sistema estas passam a ser pontuais As classes do modelo de an lise podem ser divididas em tr s camadas a Classes de fronteira b Classes de Entidade c Classes de Controle Conhe a a partir de agora as caracter sticas de cada uma dessas camadas de classes a Classes de fronteira As classes de fronteira tratam da comunica o com o ambiente do produto modelando as interfaces do produto com usu rios e outros siste
209. sibilidade utiliza se dos mesmos recursos usados para os atributos definindo o qu o vis vel uma opera o a partir de objetos de outras classes obterProduto String obterLimite Moeda obterMediasComprar float Figura 6 26 Exemplo de opera o Agora que voc j estudou as modelagem de classes aproveite para praticar os conhecimentos conquistados nesta unidade e realize as atividades propostas a seguir Unidade 6 179 Universidade do Sul de Santa Catarina Atividades de auto avalia o Leia com aten o os enunciados e ap s realize as quest es propostas 1 Assinale a afirmativa correta a Uma classe um conjunto de objetos os objetos por sua vez s o identificados por comportamento e estado e nem sempre s o nicos b Uma classe um conjunto de objetos que compartilham caracter sticas de atributos opera es rela es e sem ntica c poss vel dizer que s o exemplos de classes em um sistema Universit rio Professor Aluno Nome Aluno d poss vel dizer que s o exemplos de inst ncias de uma classe Professor Jo o da Silva Ana Luiza 2 Relacione a primeira coluna com a segunda indicando a camada mais adequada para cada ocorr ncia A Classe de Controle a Mensagens de erro para o usu rio B Classe Persistente b C lculo da folha de pagamento C Classe de Fronteira c Criar ou destruir um objeto excluir produto d Dad
210. sibilidade de adapta o do modelo s necessidades e exig ncias da empresa Um ponto forte do ICONIX a identifica o e representa o do modelo de dom nio e dos casos de uso A partir deste ponto o processo de desenvolvimento passa a ser iterativo e incremental Os casos de uso s o documentados e a ele anexado o respectivo diagrama de robustez Na sequ ncia identificam se novos objetos e detalhes que s o incorporados ao diagrama de dom nio Na etapa seguinte os diagramas de sequ ncia s o feitos procurando a identifica o de objetos Na ltima etapa opera es s o adicionadas assim como os atributos ao diagrama de classe O ICONIX uma sugest o de processo de desenvolvimento de software e tem tido uma grande aceita o no mercado parte deste sucesso se deve a forma sucinta com que trata a documenta o Outro aspecto relevante a import ncia do modelo na etapa de entendimento dos requisitos do cliente Esta preocupa o tem transformado o modelo em um modelo de sucesso Unidade 9 241 242 Universidade do Sul de Santa Catarina cai R aiba mais Para aprofundar as quest es abordadas nesta unidade acesse a midiateca Ta Uma outra metodologia bastante aplicada em q empresas de software atualmente o Iconix link ICONIX guj pdf No artigo escrito por Jos An zio Maia voc vai perceber que uma metodologia simples e menos burocr tica do que o RUP Vale a pena conferir Para concluir
211. squisar Estilo String Frete float Inserir i g Pre o float Excluir o Inserir Inserir 1 Pesquisar 1 Alterar pe Excluir Excluir Alterar Pesquisar Pesquisar Figura 6 21 Diagrama de Classes Persistente Fonte Figueira 2005 c Classes de controle Objetos de controle s o pontes de comunica o entre objetos de fronteira e objetos de entidade Essas classes s o respons veis por controlar a l gica de execu o correspondente ao caso de uso Voc pode dizer que elas As classes de controle representam a l gica do caso de uso requisitam e consultam atuam entre as classes de z z interface e as de neg cio informa es das classes de entidade e de interface bem como n o r a es isto uma para cada caso gerenciam dados nem t m sa da vis vel a Bezerra 2000 define algumas responsabilidades para as classes de controle realizar monitora es respondendo eventos gerados pelas classes de fronteira coordenar a realiza o do caso de uso por meio de mensagens das classes de entidade e de fronteira Unidade 6 173 Universidade do Sul de Santa Catarina m assegurar que as regras de neg cio do caso de uso est o sendo seguidas coordenar a cria o de associa es entre classes de entidade S o exemplos de classes de controle Controlador Cliente Controlador Entrada Fitas Controlador Sa da Fitas Controlador a
212. sta de Clientes Lista de Produtos Produtos Mais Vendidos Figura 5 14 Diagrama de Pacotes Unidade 5 disciplinas possibilitando e responsabilidades no 131 Universidade do Sul de Santa Catarina Quer conhecer mais N Para melhorar seus conhecimentos sobre esta unidade voc pode ler m O cap tulo 4 Princ pios de An lise e Projeto de Sistemas com UML BEZERRA E CAMPUS 2002 m Na midiateca voc vai achar dois artigos interessantes abordando o assunto sob os links UML Linguagem de Modelagem Unificada Diagrama de caso de uso Que tal acompanhar mais um exemplo Voc foi contratado para modelar um sistema de imobili ria Ap s a an lise os requisitos funcionais foram assim definidos RF01 gt Requisito Funcional numera o sequencial Cadastro de clientes RF001 Permitir a inclus o altera o e exclus o de clientes para compra venda ou aluguel de im veis Cadastro de corretores RF002 Permitir o cadastro de corretores que vendem im veis para a imobili ria Cadastro de Fiador RF003 Cadastro dos fiadores usados pelos clientes permitindo Incluir Alterar Excluir seus dados Cadastro de im veis RF004 Cadastra todos dados dos im veis que s o negociados na imobiliaria Im veis podem ser para loca o ou venda casa ap kit net comercial Alugar im vel RF005 Cadastra os dados de aluguel de um im vel para um cliente c
213. ta o UML na constru o de um modelo de projeto Se es de estudo Se o 1 Oque s o objetos e classes de objetos Se o 2 Quais s o as responsabilidades das classes Se o 3 Como ocorrem os relacionamentos entre objetos Se o 4 Como ocorre a divis o das classes do Se o 5 Modelo de An lise O que diagrama de objetos 146 Universidade do Sul de Santa Catarina Para in cio de estudo Na unidade anterior voc estudou um dos aspectos mais fortes do projeto que s o os casos de uso Os casos de uso permitem aos atores a visualiza o de resultados esperados relat rios e processamentos De qualquer maneira a possibilidade da exist ncia desta colabora o depende de aspectos est ticos e din micos do sistema Entre objetos do sistema o aspecto din mico est fortemente ligado troca de mensagens enquanto que o aspecto est tico mostra como o sistema est estruturado internamente e passa por tr s n veis de abstra o o primeiro deles o modelo de classe de dom nio representa a classe de dom nio sem se preocupar com detalhes sobre a tecnologia o segundo n vel o modelo da classe de especifica o que acrescenta detalhes relacionados solu o do software escolhida pelo modelo do dom nio a o terceiro n vel o modelo de classe de implementa o uma extens o do modelo de especifica o ocorre neste n vel a implementa o em alguma linguagem de programa
214. ta Catarina 2 No diagrama a seguir s o descritos dois diagramas o Listar Agenda e o Agendamento do Hor rio CSU002 Agendamento de Hor rio O e 0 eo From Lista_Agenda Ctrl Agendamentos Funcion rio Agendamento i Atendente 9 g g Paciente Clica Cmb M dicos Seleciona M dicos Select Clica Hor rios Seleciona Hor rio Print hor rio indispon vel 1 i Select paciente I El I l i Hor rio Indispon vel DO ata E de l l H I j I I I I I I I I Possui cadastro I E Hor rio dispon vel 3 Alternativa correta b 264 Metodologias e Projetos de Software UNIDADE 8 1 a Esta modifica o chamada de transi o entre estados b Os estados representa o resultado de atividades executadas por um objeto c O estado final indica o final do ciclo de vida de um objeto d Os objetos de um sistema modificam seu estado de forma an loga a objetos do mundo real 2 a DTE b DA c DTE d DA 4 Diagrama de atividades do caso de uso Marcar Consulta da cl nica Bem Estar a partir da vis o do ator Atendente 265 266 Universidade do Sul de Santa Catarina Modo matcar consulta Tipo de Consulta Tem nome m dico S Solicitar especialidade Verifica M dicos dispon veis Bollonta hor rio de cajado dados de marcar consulta verifica possibilidades Metodologias e Projetos de Software UNIDADE 9 1 As afirmativ
215. te m Mensagem s ncrona indica que o objeto remetente espera que o objeto receptor processe a mensagem antes de recome ar o seu processamento Neste caso o objeto receptor ficar bloqueado at que a requisi o seja atendida m Mensagem ass ncrona o objeto remetente n o espera resposta para prosseguir com seu processamento Mensagem Simples _ S Mensagem S ncrona Retorno de Mensagem gt Mensagem Ass ncrona A mensagem representada por uma seta onde o sentido do objeto remetente para o objeto receptor As mensagens possuem um r tulo que procura especificar as informa es que a mensagem deve transmitir Voc pode usar a seguinte sintaxe Express o seq ncia recorr ncia v mensagem Unidade 7 189 190 Universidade do Sul de Santa Catarina Assim tem se a Express o seqii ncia as mensagens s o passadas de um objeto para outro Este fluxo de mensagens forma uma sequ ncia As sequ ncias devem ter um ponto de partida indicando o in cio do processo A express o de sequ ncia elimina ambigi idades acerca de quando a mensagem foi enviada em rela o s demais 25 1 AtenderChamado Sequ ncia o n mero 1 a express o AtenderChamado N mero da sequ ncia e a 1 liftHandset 2 assertCall DN Telephone c Caller Fluxo de controle
216. tem de venda Editar item de venda Estoque Totalizar venda Mercadoria Calcular impostos Mercadoria Voc pode documentar as responsabilidades no pr prio diagrama de classes Neste caso insira a descri o na forma de texto no final da caixa da classe ou seja na nota o gr fica voc tem mais um compartimento logo abaixo das opera es b An lise dos casos de uso Se voc optar por utilizar a an lise de casos de uso para identificar as classes candidatas e suas responsabilidades importante analisar os casos de uso e todos os seus fluxos principais e alternativos Mas como funciona este m todo Bom a partir da an lise s o identificados os substantivos existentes nos casos de uso e os sin nimos s o eliminados Muitas vezes um substantivo pode ser um ator o qual deve ser eliminado Assim os nomes que permaneceram s o as classes candidatas Observe o exemplo a seguir Metodologias e Projetos de Software E P dua 2000 mostra a an lise de um estudo de caso para um sistema de vendas de uma pequena mercearia Ao analisar o estudo de caso procurando as classes candidatas s o selecionados em it lico os atores o sistema aparece em negrito e em sublinhado os substantivos O balconista faz a abertura da venda O balconista registra os itens vendidos informando c digo do produto e quantidade do item O sistema totaliza a venda para o cliente O balconista encerra a venda O sist
217. to acontece todos os dias a Quais s o as caracter sticas da metodologia SCRUM O Schwaber 1997 define algumas caracter sticas da metodologia SCRUM que caracterizam etapas do seu processo de desenvolvimento Existem duas fases bem definidas a primeira planejamento pr game phase e a segunda fechamento post game phase onde os processos s o definidos claramente Durante o planejamento definem se requisitos s o estabelecidas prioridades e estimativas s o feitas an lises de necessidades como treinamento da equipe e ferramentas Na fase de sprint game phase todo o processo baseia se na experi ncia da equipe As fases do sprint s o gerenciadas por meio de controles que abrangem riscos e a otimiza o de quest es de flexibilidade Unidade 1 35 36 Universidade do Sul de Santa Catarina Os sprints n o apresentam uma estrutura linear muitas vezes o uso da tentativa e do erro utilizado para determinar e reconhecer ou conhecer o processo Ainda assim importante entender que o sprint acontece de forma tradicional ou seja seguindo etapas de an lise projeto implementa o e testes A caracter stica forte do SCRUM o processo r pido os ciclos duram de 7 a 30 dias Todo o desenvolvimento cresce de forma incremental podendo ser alterado durante todo o processo de desenvolvimento O fechamento do projeto baseia se no ambiente e pode se dizer que o produto que ser entregue ser determinado du
218. trasos Lembre se que os casos de uso O uso da classe de controle opcional em um sistema complexo devem ser escritos em Voc deve avaliar claramente o objetivo da classe de controle classes de controle comportar a l gica e as regras de neg cio complexas Isto significa que a es como inclus o altera o consultas de cadastros podem tranquilamente ser implementadas em uma classe de fronteira Voc lembra do software de declara o do imposto de renda disponibilizado pelo Governo Federal As interfaces do sistema com o usu rio podem ser descritas pelas classes de fronteira tela de cadastro de registro de bens entre outras os dados existentes sobre o trabalhador rendas despesas e bens s o descritos pelas classes de entidade e o c lculo do imposto de renda ser descrito na classe de controle A representa o das Classes na UML se d pela seguinte nota o 174 Metodologias e Projetos de Software CLASSES DE ENTIDADE lt lt Entity gt gt Fornecedor Fornecedor CLASSES DE CONTROLE CS lt lt Control gt gt Compra Compra CLASSES DE FRONTEIRA lt lt Boundary gt gt Tela de Compras Tela de Compras Figura 6 22 Estere tipos da classe Voc deve estar se perguntando porque uma classe de entidade n o deve cuidar de aspectos relacionados as entradas e sa das Porque sugerido o uso de uma classe de fronteira Imagine no sistema de v deo locadora a aplica o foi desen
219. tudo Se o 1 Oque an lise de requisitos Se o 2 Levantamento de Requisitos Se o 3 Especifica o de Requisitos Se o 4 Atividades de Apoio Universidade do Sul de Santa Catarina Para in cio de estudo Quando voc inicia um projeto de software existe sempre uma preocupa o fazer o melhor projeto Mas qual o melhor projeto Na verdade aquele que atende o cliente da melhor maneira A etapa de an lise de requisitos o momento onde as necessidades s o exploradas por parte do desenvolvedor em companhia do cliente e sua empresa Para que esta etapa finalize com uma proposta de solu o adequada necess rio que tarefas como o estudo de viabilidade elicita o e an lise de requisitos a especifica o e o gerenciamento de requisitos sejam realizadas de forma cuidadosa e consistente Nesta unidade voc vai perceber que a an lise de requisitos um processo interativo que envolve a compreens o do dom nio a coleta de requisitos a estrutura o e o estabelecimento de prioridades para a execu o do projeto Voc acredita que os requisitos s o persistentes ao tempo Ser que um projeto iniciado em janeiro ter os mesmos requisitos ao final de 12 meses A compreens o do projetista sobre o problema dispensa a participa o do cliente em etapas de verifica o Com esta unidade voc vai encontrar apoio para responder a algumas destas quest es SE O 1 O que an lise de requisitos Vo
220. tware e a empresa que o produz s o muitas vezes avaliados por apenas uma unidade pois a mesma pode ser vendida para dezenas de clientes com ou sem customiza o d O desgaste do software refere se apenas adapta o de produtos a novas tecnologias e Uma defini o completa de software pode ser sugerida a partir da soma de instru es documenta o e estrutura de dados Unidade 1 37 38 Universidade do Sul de Santa Catarina 2 Relacione a primeira coluna com a segunda A Defini o Composto por atividades que ocorrem no decorrer de todo o B Levantamento de processo de desenvolvimento requisitos como revis es controle de C Desenvolvimento mudan as e documenta o D Projeto de software Define o que deve ser feito para apoiar o cliente em seus E Manuten o problemas F Revis es Nesta etapa s o executados o no projeto codifica o e testes do G Atividades de apoio software H An lise de requisitos Etapa que identifica as necessidades do cliente a etapa respons vel por altera es de cunho corretivo e adaptativo do software Atividades efetuadas para garantir que a qualidade seja mantida Fazem parte desta etapa o planejamento do projeto levantamento e an lise de requisitos Define como o software ir implementar a solu o do cliente 3 Assinale as afirmativas corretas a Os m todos proporcionam detalhes relacionados
221. uando pensamos que o paciente Almir uma inst ncia da entidade Paciente possui n Relacionamento agendamentos na entidade Agenda Imagine o sistema da Cl nica Quais entidades voc consegue identificar Com certeza necess rio armazenar os dados do Paciente os dados e informa es do M dico os dados para o agendamento da consulta o Agenda_Consultas e os dados da Consulta informa es do m dico durante a consulta Observe voc identificou assim grandes grupos de informa o que necessariamente precisam ser armazenados para uso futuro na forma de consultas e relat rios que s o processos que ir o atuar sobre os dados A entidade Paciente teria os seguintes atributos Metodologias e Projetos de Softwares Nome da entidade Paciente Chave identificadora Nome Paciente Atributos da entidade Cpf Telefone Endere o Conv nio data de nascimento E Exemplos de inst ncias do objeto Paciente seriam nome Paulo Lopes nome Joana da Silva telefone 88890899 telefone 8887777 cpf 483 432 546 65 cpf 488 444 449 35 endere o Rua do P ntano 120 endere o Rua do Rio 26 Na figura a seguir voc pode ver um recorte de um diagrama ER Observe que a rela o entre a entidade paciente que realiza um agendamento na cl nica Figura 3 10 Recorte de um diagrama ER Se voc pensar na entidade Paciente existente na cl nica pode representar seus atributo
222. ulta por atraso no pagamento do aluguel de 0 1 do valor do aluguel por dia de atraso RNO7 O pagamento do boleto ap s o vencimento s pode ser efetivado em estabelecimento banc rio conveniado a imobili ria As manuten es ou reformas feitas pelo locat rio no im vel s o por RNO8 a PARIS conta pr pria ou seja n o ser o abatidas no valor da mensalidade No sistema imobili rio foram identificados 4 atores KA AA Secret ria Corretor Gerente Cliente Figura 5 15 Atores do Sistema Imobili rio A partir dos requisitos funcionais foram definidos os casos de uso Os casos de uso foram subdivididos em 3 pacotes Negociar Im vel Gerenciamento e Administra o Os casos de uso relacionados a cada pacote encontram se inseridos no mesmo ud Use Case Model Negociar Im vel Gerenciamento Administra o Alugar Im vel 9 Cadastrar Corretor Buscar im vel Cadastrar Cliente 2 a Cadastrar Usu rios do Sistema Cadastro de manuten o Cadastrar de Fiador 7 A A Efetuar Login Efetua Pagamento na imobili ria Cadastrar Im vel RE Fra Gerar relat rio de comiss es Efetuar Pagamento Gerar Contrato Gerar Relat rio de vendas alugu is Envia confirma o de pagamento 000000 Gerar Contrato de Aluguel Verifica se j existe Usu rio Gerar Boleto Banc rio Gerar Contrato de Venda Validar CPF Vender Im vel Gerar Recibo Gerar relat rio de
223. vari vel global cujo tipo B depend ncia por vari vel local A possui alguma opera o cuja implementa o utiliza uma vari vel local do tipo B depend ncia por par metro A possui pelo menos uma opera o que possui pelo menos um par metro cujo tipo B Figura 6 17 Depend ncia Para que as opera es da classe Filme sejam executadas a exist ncia da classe Canal fundamental pois existe uma depend ncia de par metros entre as classes c Relacionamento de generaliza o A generaliza o um relacionamento entre itens gerais super classes e tipos mais espec ficos desses itens as subclasses A subclasse herda as propriedades da super classe principalmente atributos e opera es Um relacionamento de especializa o generaliza o indica que objetos do elemento especializado subclasse podem substituir os objetos do elemento generalizado superclasse A subclasse tem todos os atributos e opera es da superclasse por m pode ter outros atributos e opera es Metodologias e Projetos de Software 25 Imagine a seguinte situa o voc tem uma classe em seu sistema chamada Funcion rios Esta classe possui atributos como nome endere o entre outras informa es Existe no entanto um tipo de funcion rio chamado motorista Este funcion rio possui atributos espec ficos como itiner rio hor rio das rotas Os motoristas fazem parte da classe funcion rios mas
224. ve ser entendido em suas fases iniciais seguindo at o final com pouqu ssima intera o com o cliente 25 Imagine a situa o voc contratado para desenvolver um projeto em uma f brica de cal ados todo o processo de produ o ser automatizado Em seu planejamento voc percebe que o processo todo estar finalizado em um prazo de 2 anos Se voc optar por este modelo somente no final de 2 anos o cliente ser apresentado ao sistema Ser que ele ter paci ncia para esperar por este prazo Outro ponto importante o levantamento de requisitos feito no in cio e o processo segue para a etapa seguinte sem retornar anterior mas ser que em 2 anos nada vai mudar no processo da empresa Ser ent o que este modelo invi vel para os tempos atuais Saiba que este foi um dos modelos mais utilizados no mundo Tamb m um modelo de baixo custo por sua estrutura sequencial Nos tempos atuais podemos sugeri lo em situa es onde voc tem dom nio do problema e ou o projeto considerado pequeno Metodologias e Projeto de Software b Modelo Espiral O modelo em espiral totalmente diferente do modelo anterior Neste modelo a palavra de ordem a experimenta o e a avalia o O modelo desenvolvido em uma s rie de intera es cada intera o corresponde a uma volta na espiral Cada volta fundamentada na an lise de riscos da solu o que est sendo proposta planejamento an lise
225. versidade do Sul de Santa Catarina Na representa o das classes de acordo com a figura 6 14 a associa o de composi o exprime que o item de pedido n o existe sem o Pedido ou seja o item de pedido n o existe de forma independente no sistema A classe motor e bateria neste exemplo n o existem de forma independente da classe ve culo Elas fazem parte do todo Ve culo Na figura 6 15 voc v um pequeno exemplo de classes para um sistema de controle de turmas em uma universidade Neste exemplo a universidade oferece cursos aos alunos os cursos por sua vez oferecem disciplinas ministradas por professores aos alunos matriculados Bi Est lotado 1 Leciona Figura 6 15 Relacionamentos entre classes As classes Universidade e Cursos possuem um relacionamento de composi o ou seja a Classe Curso n o existe sem a exist ncia da Classe Universidade se a Classe Universidade for extinta automaticamente a classe Cursos deixa de existir J as classes Aluno e Professor apresentam um relacionamento de agrega o pois fazem parte de outra classe A classe Aluno est contida na classe Universidade e a classe Cursos cont m a classe Professor D O que s o classes associativas O 164 Metodologias e Projetos de Software As classes associativas est o ligadas a associa es e n o a outras classes Simplificando existem situa es na an lise onde atributos
226. versidade do Sul de Santa Catarina do software o estudo de abordagens e princ pios a fim de se obterem economicamente softwares confi veis e que executem de forma eficiente nas m quinas reais Outro conceito bem aceito pela comunidade computacional o de Krakowak 1985 exposto em um congresso em 1985 Para ele Engenharia de Software EGS o conjunto de m todos t cnicas e ferramentas necess rias produ o de software de qualidade para todas as etapas do ciclo de vida do produto Mas a partir desse conceito importante que voc entenda o significado de m todo procedimento e ferramenta que s o fontes de muita confus o segundo PRESSMAN 2002 M todos proporcionam os detalhes de como fazer para construir o software Os m todos envolvem um amplo conjunto de tarefas como o planejamento e estimativa do projeto a an lise de requisitos de software o projeto da estrutura de dados o algoritmo de processamento a codifica o o teste e a manuten o Ferramentas fornecem suporte automatizado aos m todos Atualmente existem ferramentas para sustentar cada um dos m todos Quando as ferramentas s o integradas estabelecido um sistema de suporte ao desenvolvimento de software chamado CASE Computer Aided Software Engineering Procedimentos constituem o elo de liga o entre os m todos e ferramentas eles estabelecem a sequ ncia em que os m todos ser o aplicados estabelecem os
227. vidades executadas indica o final do ciclo de vida de um objeto d Os de um sistema modificam seu estado de forma an loga a objetos do mundo real 2 Indique se os conceitos abaixo fazem parte do DTE diagrama de estados ou do DA diagrama de atividade a O diagrama mostra os estados de um objeto b O diagrama explicita comportamentos paralelos c O diagrama mostra os eventos ou mensagens que causam uma transi o d O diagrama ap ia o entendimento de workflow entre v rios casos de uso Unidade 8 219 220 Universidade do Sul de Santa Catarina 3 Relacione os conceitos abaixo observe que uma mesma op o pode se repetir A After B Estado Inicial C When D Transient E Join a utilizado em um DA para indicar uma bifurca o b Ocorre quando o objeto criado c Utilizado para designar a passagem de um per odo pr determinado de tempo d utilizado para representar uma condi o de guarda e utilizado em um DA para indicar uma sincroniza o 4 Construa o diagrama de atividades do caso de uso Agendar Hor rio da cl nica Bem Estar a partir da vis o do ator Atendente veja na unidade 5 atividade 4 de auto avalia o Metodologias e Projetos de Software S ntese Com esta unidade voc complementou seu conhecimento sobre a representa o din mica do sistema por meio de seus diagramas de atividade e estado Os flu
228. volvida para Desktop mas agora o cliente deseja que o software rode na Internet o que significa uma interface bastante diferente Bem se o projeto foi constitu do considerando as tr s classes de dom nio A equipe de desenvolvimento deve apenas reconstruir as classes de fronteira onde temos as telas do sistema isto contribui para a efici ncia da manuten o do produto Para o sistema de v deo locadora voc pode ter algumas classes candidatas m Classes de entidade Filme Cliente Loca o C pias a Classes de fronteira A interface para o cadastro do Cliente Form Cliente interface para o cadastro do Filme Form Filme interface para o o movimento da loca o Form Loca o s o alguns exemplos Unidade 6 175 Universidade do Sul de Santa Catarina m Classes de controle O cadastro do cliente pode ter uma classe de controle para implementa o de m todos Ctrl Cliente assim como o movimento da loca o Ctrl Loca o O que fazer ent o depois de realizada a etapa de identifica o das classes Finalizada a etapa de identifica o das classes de controle fronteira e entidades voc pode organizar estas classes em pacotes l gicos Pacotes l gicos s o agrupamentos de elementos de um modelo O uso de pacotes agrupa classes que possuem um crit rio comum facilitando a comunica o Quando uma cole o de classes colaboram entre si para realizar um conjunto coeso de responsabilidades
229. xos de estado s o excelentes na descri o de fluxos complexos permitindo a visualiza o da execu o do caso de uso O diagrama de estado descreve muito bem o comportamento de um nico objeto mas quando o comportamento envolve diversos objetos mais adequado o uso do diagrama de atividades O diagrama de atividades suporta a descri o de comportamentos paralelos modelando o fluxo de trabalho principalmente quando diferentes casos de uso interagem entre si ou utilizam multiprocessamento Outra situa o de uso comum para o diagrama de atividade seu uso para entender o comportamento depend ncias das a es e as pr prias a es necess rias na realiza o do caso de uso Na pr xima unidade voc vai conhecer de forma mais profunda a metodologia Rational Unified Process RUP e suas propostas para a melhoria do processo de desenvolvimento de software Unidade 8 221 222 Universidade do Sul de Santa Catarina cai RS aiba mais Para aprofundar as quest es abordadas nesta unidade voc poder pesquisar em BEZERRA E Princ pios de An lise e Projeto de Sistemas com UML S o Paulo Campus 2002 cap tulos 10 e 11 BORTOLI A O uso do workflow para Apoiar a Elicita o de Requisitos Workshop em Engenharia de Requisitos 2004 FURLAN Jos Modelagem de Objetos S o Paulo Makron Books 1998 cap tulo 6 BOOCH RUMBAUGH JACOBSON UML Guia do Usu rio S o Paulo 2000 cap
Download Pdf Manuals
Related Search
Related Contents
MANUAL DE USUARIO LICUADORA BL-767 Rev.1 MedsysIII-Service-Bulletin-404D Dicota Switch Grandview Smart Screen User Manual iconBIT FTB5200U view printable version of more hints and advice! Dicota Off.Road Copyright © All rights reserved.
Failed to retrieve file