TCC - Software para Saúde Pública

Bom dia a todos.

Estou levantando requisitos para o desenvolvimento de um software para o sistema de Saúde Publica, mais especificamente Postos de Saúde, mas estou em duvida em que tecnologia utilizar.
Meu professor orientador, está querendo que desenvolva algo pra web, jsp ou jsf, mas minha ideia inicial era desenvolver para desktop, onde já tenho um pouco de conhecimento.
O sistema será utilizado por várias maquinas, e a ideia é centralizar as informações, pois os postos de saúde atendem a bairros, ou seja, uma pessoa que reside no centro, não pode se consultar em um outro posto de saúde diferente de seu bairro.
O software até o momento terá um cadastro de pacientes e funcionários da unidade de saúde, um agendamento de consultas e um cadastro de prontuários, além dos relatórios.
Gostaria de algumas opniões, que tecnologias seria mais indicada para este projeto, e as dificuldades desse projeto tanto para o web como para desktop?

Bom, MUITO OBRIGADO desde já!

[]

Recomendo fazer web pois vc n precisa instalar e atualizar os aplicativos em cada máquina que for usar o sistema.

Procure sobre SEAM, Spring, VRaptor, etc. São frameworks bem completos que podem te ajudar. Mas já aviso: se vc n manja nada de EJB, tem que estudar um bocado (estou passando por isso no momento).

[[]]'s

[quote=vinicius8891]Bom dia a todos.

Estou levantando requisitos para o desenvolvimento de um software para o sistema de Saúde Publica, mais especificamente Postos de Saúde, mas estou em duvida em que tecnologia utilizar.
Meu professor orientador, está querendo que desenvolva algo pra web, jsp ou jsf, mas minha ideia inicial era desenvolver para desktop, onde já tenho um pouco de conhecimento.
O sistema será utilizado por várias maquinas, e a ideia é centralizar as informações, pois os postos de saúde atendem a bairros, ou seja, uma pessoa que reside no centro, não pode se consultar em um outro posto de saúde diferente de seu bairro.
O software até o momento terá um cadastro de pacientes e funcionários da unidade de saúde, um agendamento de consultas e um cadastro de prontuários, além dos relatórios.
Gostaria de algumas opniões, que tecnologias seria mais indicada para este projeto, e as dificuldades desse projeto tanto para o web como para desktop?
[/quote]

Não é o professor nem vc que tem que decidir isso. Vc precisa comunicar com alguem que tenha responsabilidade sobre a manutenção desses sistemas uma vez no ar. Desktop é mais intuitivo para o usuário , mais rico, com mais facilidade de validação e controlo do que o usuário está fazendo e ideal para sistemas de cadastro e relatorio como o seu. A distribuição da aplicação pode ser feita via JavaWeb Start. Contudo vc precisa que toda a máquina cliente tenha um JRE instalado. O desktop tem um problema se vc integrar muitos dados e não fazer um boa comunicação com o servidor
Na web é aparentemente mais facil de dar manutenção, mas na realidade vc tem o problema da compatibilidade cross-browser e versões de browser. é troca 6 por meia duzia. Na web tem ainda o problema da sessão cair que pode ser muito chato e formar o usuário a se logar a todo o momento… contudo poder util que a sessão cai , por razões de segurança.

Se fosse eu , eu usaria o melhor dos dois mundos. Faça uma aplicação web REST que permita fazer todo o ciclo de cadastro. Depois faça uma aplicação desktop que seja rica em validações e simples de usar, usando JWS para distribuição. Se no futuro alguem quiser usar web - vc simplesmente faz uma aplicação web que comunique com o mesmo sistema RESt. De quebra vc ganha uma forma muito simples de integração com outros sistemas.

Mas procure pela pessoa que faria a manutenção. se não existir, tente averiguar se alguem seria contratado para isso, ou a quem caberia esse papel. Averigue questões de acesso, quem , quando e porque acessaria o sistema. Converse com essas pessoas e entenda como elas substituiram o modo que usam hoje pelo software, o que ele poderia fazer por eles para agilizar o atendimento , etc…

depois de levantar os requisitos - como deve ser - ai vc decide a tecnologia, eu ficaria longe de jsf e EJB se fosse vc.

[quote=sergiotaborda][quote=vinicius8891]Bom dia a todos.

Estou levantando requisitos para o desenvolvimento de um software para o sistema de Saúde Publica, mais especificamente Postos de Saúde, mas estou em duvida em que tecnologia utilizar.
Meu professor orientador, está querendo que desenvolva algo pra web, jsp ou jsf, mas minha ideia inicial era desenvolver para desktop, onde já tenho um pouco de conhecimento.
O sistema será utilizado por várias maquinas, e a ideia é centralizar as informações, pois os postos de saúde atendem a bairros, ou seja, uma pessoa que reside no centro, não pode se consultar em um outro posto de saúde diferente de seu bairro.
O software até o momento terá um cadastro de pacientes e funcionários da unidade de saúde, um agendamento de consultas e um cadastro de prontuários, além dos relatórios.
Gostaria de algumas opniões, que tecnologias seria mais indicada para este projeto, e as dificuldades desse projeto tanto para o web como para desktop?
[/quote]

Não é o professor nem vc que tem que decidir isso. Vc precisa comunicar com alguem que tenha responsabilidade sobre a manutenção desses sistemas uma vez no ar. Desktop é mais intuitivo para o usuário , mais rico, com mais facilidade de validação e controlo do que o usuário está fazendo e ideal para sistemas de cadastro e relatorio como o seu. A distribuição da aplicação pode ser feita via JavaWeb Start. Contudo vc precisa que toda a máquina cliente tenha um JRE instalado. O desktop tem um problema se vc integrar muitos dados e não fazer um boa comunicação com o servidor
Na web é aparentemente mais facil de dar manutenção, mas na realidade vc tem o problema da compatibilidade cross-browser e versões de browser. é troca 6 por meia duzia. Na web tem ainda o problema da sessão cair que pode ser muito chato e formar o usuário a se logar a todo o momento… contudo poder util que a sessão cai , por razões de segurança.

Se fosse eu , eu usaria o melhor dos dois mundos. Faça uma aplicação web REST que permita fazer todo o ciclo de cadastro. Depois faça uma aplicação desktop que seja rica em validações e simples de usar, usando JWS para distribuição. Se no futuro alguem quiser usar web - vc simplesmente faz uma aplicação web que comunique com o mesmo sistema RESt. De quebra vc ganha uma forma muito simples de integração com outros sistemas.

Mas procure pela pessoa que faria a manutenção. se não existir, tente averiguar se alguem seria contratado para isso, ou a quem caberia esse papel. Averigue questões de acesso, quem , quando e porque acessaria o sistema. Converse com essas pessoas e entenda como elas substituiram o modo que usam hoje pelo software, o que ele poderia fazer por eles para agilizar o atendimento , etc…

depois de levantar os requisitos - como deve ser - ai vc decide a tecnologia, eu ficaria longe de jsf e EJB se fosse vc.

[/quote]

Eu assino embaixo… principalmente a parte do JSF e do EJB… evite…

Bom muito obrigado pelas dicas galera, mto obrigado mesmo!!!

Então para desktop já tenho um conhecimento um básico, mas web não sei nada, soh um pouco de HTML, e CSS, mas final do ano já tenho que qualificar meu projeto, então não vou ter muito tempo para estudar, na verdade acho que vou fazer para desktop mesmo, mas gostaria de saber se é possivel, pois terá varias maquinas conectadas em rede, acessando os mesmos dados, e que tecnologias, frameworks, poderia estar utilizando, swing, hibernate, jasperreports, etc…
Como eu disse o software até o momento terá um cadastro de pacientes e funcionários da unidade de saúde, um agendamento de consultas e um cadastro de prontuários, além dos relatórios.

Obrigado.

[quote=vinicius8891]Bom muito obrigado pelas dicas galera, mto obrigado mesmo!!!

Então para desktop já tenho um conhecimento um básico, mas web não sei nada, soh um pouco de HTML, e CSS, mas final do ano já tenho que qualificar meu projeto, então não vou ter muito tempo para estudar, na verdade acho que vou fazer para desktop mesmo, mas gostaria de saber se é possivel, pois terá varias maquinas conectadas em rede, acessando os mesmos dados, e que tecnologias, frameworks, poderia estar utilizando, swing, hibernate, jasperreports, etc…
Como eu disse o software até o momento terá um cadastro de pacientes e funcionários da unidade de saúde, um agendamento de consultas e um cadastro de prontuários, além dos relatórios.

Obrigado.[/quote]

Vinícius é como disseram, veja quem vai estar lidando com a manutenção do sistema e até mesmo quem vai dar suporte aos usuários. A realidade das Unidades de saúde, principalmente as Unidades de Saúda da Família (PSF) é muito complicada. Levando em consideração os princípios do SUS (universalidade, equidade, integralidade e gratuidade), as Unidades são OBRIGADAS a atender qualquer pessoa.
Por lei, não podem recusar atendimento à quem more em bairro, cidade, estado ou pais diferente de sua localidade, como você levantou inicialmente. Mesmo se o cabra for argentino ou boliviano, tem o direito de se consultar, é fogo! Tenha certeza de que a Sec. de saúde daí vai mesmo querer continuar atuando de forma infralegal.
Acredito que um sistema web seria mais viável, já que o processo de implantação e manutenção é bem mais simplificado. Imagine ter que ficar atualizando sistema em dezenas de computadores. É muito mais fácil atualizar no servidor e abrir com o browser depois.
Mas como vc disse que tem conhecimentos limitados de desenvolvimento web é o jeito partir pra desktop. No entanto, te digo que a curva de aprendizado é bem tranquila. Hibernate é quase que obrigatório e se não der tempo de estudar JSF, tente pelo menos um JSTL que já quebra o galho.