Preciso de algumas dicas de modelagem

Olá,

Estou estudando java e gostaria de fazer um programa controlar agendamento de consulta ao médico (uso particular).
A idéia é manter um histórico de consultas médicas, e notificar quando haverá a próxima consulta.

Pensei a principio em três objetos Medico, Paciente e Consulta (em anexo)

Gostaria de alguma dicas práticas de modelagem… a classe Consulta seria candidata a uma coleção? a ligação entre Medico -> Consulta e Paciente -> Consulta seriam agregações?


kra bem nao sei se te ajudarei…

para armazenar uso um banco de dados logico…
coloca a funçao date e os campos necessarios…
para mostrar as proximas cria uma funçao tipo que busque no banco de dados com uma determinada data usando as propriedade de consulta do proprio banco de dados
se for mysql http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html

nao sei se te ajuda qualquer coisa da um toque…

[quote=ricardospinoza]Olá,

Estou estudando java e gostaria de fazer um programa controlar agendamento de consulta ao médico (uso particular).
A idéia é manter um histórico de consultas médicas, e notificar quando haverá a próxima consulta.

Pensei a principio em três objetos Medico, Paciente e Consulta (em anexo)

Gostaria de alguma dicas práticas de modelagem… a classe Consulta seria candidata a uma coleção? a ligação entre Medico -> Consulta e Paciente -> Consulta seriam agregações?[/quote]

:idea: [size=18]Agregação[/size]

:wink: Agregação é um tipo especial de associação onde tenta-se demonstrar que as informações de um objeto(chamado objeto-todo) precisam ser completadas pelas informações contidas em um ou mais objetos de outra classe(chamados objetos-parte).Este tipo de associação tenta demonstrar uma relação Todo/Parte entre os objetos associados.Objetos-parte não podem ser destribuídos por um objeto diferente do objeto-todo.O simbolo de agregação difere do de associação por conter um losângulo na extremidade da classe que contém o objetos-todo.

Isso já resolve ao menos 70% do problema…

abraçoss

[quote=Marcio Duran][quote=ricardospinoza]Olá,

Estou estudando java e gostaria de fazer um programa controlar agendamento de consulta ao médico (uso particular).
A idéia é manter um histórico de consultas médicas, e notificar quando haverá a próxima consulta.

Pensei a principio em três objetos Medico, Paciente e Consulta (em anexo)

Gostaria de alguma dicas práticas de modelagem… a classe Consulta seria candidata a uma coleção? a ligação entre Medico -> Consulta e Paciente -> Consulta seriam agregações?[/quote]

:idea: [size=18]Agregação[/size]

:wink: Agregação é um tipo especial de associação onde tenta-se demonstrar que as informações de um objeto(chamado objeto-todo) precisam ser completadas pelas informações contidas em um ou mais objetos de outra classe(chamados objetos-parte).Este tipo de associação tenta demonstrar uma relação Todo/Parte entre os objetos associados.Objetos-parte não podem ser destribuídos por um objeto diferente do objeto-todo.O simbolo de agregação difere do de associação por conter um losângulo na extremidade da classe que contém o objetos-todo.

Isso já resolve ao menos 70% do problema…

abraçoss

[/quote]

Quando se cópia um texto na integra é sempre uma boa prática colocar a referência!

http://professor.ucg.br/siteDocente/admin/arquivosUpload/12214/material/Classe.doc

[]'s

[quote=ricardospinoza]Olá,

Estou estudando java e gostaria de fazer um programa controlar agendamento de consulta ao médico (uso particular).
A idéia é manter um histórico de consultas médicas, e notificar quando haverá a próxima consulta.

Pensei a principio em três objetos Medico, Paciente e Consulta (em anexo)

Gostaria de alguma dicas práticas de modelagem… a classe Consulta seria candidata a uma coleção? a ligação entre Medico -> Consulta e Paciente -> Consulta seriam agregações?

[/quote]

Modelar significa pensar e exercitar abstractamente o sistema.
A consulta é a relação entre o médico e o paciente ? O paciente tem consultas ou o médico tem consultas , ou nenhum dos dois tem? Um médico pode ter consultas com mais do que um paciente ? E um paciente com mais do que um médico ? Cadê o agendamento ? A consulta é o agendamento ? Consulta é uma coleção de quê ?
Se a consulta não estiver relacionada a um médico e/ou paciente ela existe ?

Respodendo a estas questões vc identifica a resposta às suas perguntas.

A consulta não é uma coleção de coisa nenhuma. A consulta é um evento. É uam reunição entre o medico e o paciente num certo horario e local para falar/identificar certo problema.
O historico do paciente sim é uma coleção, com todas as consultas que aconteceram para ele.
O médico (a secretária do médico) faz o agendamento da consulta, mas a consulta pode não acontecer. O agendamento pode ser cancelado, adiado, adiantado , etc… O agendamento consome um numero de horas do médico de forma que não existam demasiadas consultas por dia. O agendamento é em nome de alguem, mas o consultado pode ser outrem ( a mae marca consulta para o filho)

Vc tem que realmente exercitar os cenarios. Se vc não conhece os cenários passe um tempo num consultório observando como funciona. Fale com médicos. etc… em 3 palavras : levantamento de requisitos.

:smiley: [size=18]Concordo !!![/size]

[quote=lavh]
Quando se cópia um texto na integra é sempre uma boa prática colocar a referência!
http://professor.ucg.br/siteDocente/admin/arquivosUpload/12214/material/Classe.doc

[]'s[/quote]

:oops: Bom você mandou para um link ???

:wink: Então Melhores Informações !!![size=18] [/size]

:idea: [size=18]Sobre o Autor:[/size]
Gilleanes Thorwald Araujo Guedes é mestre em Ciência da Computação pela Universidade Federal do Rio Grande do Sul (UFRGS) e bacharel em Informática pela Universidade da Região da Campanha (URCAMP). É professor de Engenharia de Software no curso de Licenciatura Plena em Informática na Universidade Federal de Mato Grosso (UFMT). Já ministrou diversas palestras e cursos sobre UML em eventos científicos e em cursos de pós-graduação lato sensu. É autor dos livros UML [size=18] Uma Abordagem Prática, UML 2[/size] Guia de Consulta Rápida e UML 2 Guia Prático, publicados pela Novatec Editora. Pode ser contatado pelo e-mail gtag@novatec.com.br.

[quote=ricardospinoza]Olá,

Estou estudando java e gostaria de fazer um programa controlar agendamento de consulta ao médico (uso particular).
A idéia é manter um histórico de consultas médicas, e notificar quando haverá a próxima consulta.

Pensei a principio em três objetos Medico, Paciente e Consulta (em anexo)

Gostaria de alguma dicas práticas de modelagem… a classe Consulta seria candidata a uma coleção? a ligação entre Medico -> Consulta e Paciente -> Consulta seriam agregações?
[/quote]
Por que vc precisa da modelagem?

Pessoal,

Agradeço pelas dicas, de fato preciso levantar os requisitos.

A modelagem que desejo fazer é na ótica do paciênte agendando uma consulta médica, para não se perder,
em datas, horários, etc… Isto para uso pessoal, como estou interessante de aprender, achei a idéia válida.

vou refazer minha modelagem e retorno para mais opiniões!

Obrigado