Capítulo 6 Conclusão e Trabalho Futuro
6.2 Trabalho Futuro
Tal como já foi referido na secção 5.8, aquando da elaboração deste relatório os testes ao SIPA-MCDT ainda não tinham sido efectuados e, deste modo, estes serão realizados num futuro próximo de modo a efectuar as correcções necessárias. No futuro, antes da comercialização da aplicação, a aplicação será também testada e avaliada por um utilizador final (neste caso um médico que será contratado pela Maxdata, encontrando-
84
se neste momento em processo de recrutamento) de modo a efectuar testes de aceitação [5]. De referir que este é um problema que foi várias vezes referido em diferentes disciplinas durante o meu percurso académico e que foi possível observar “no terreno”: o de encontrar utilizadores finais para testar a aplicação [28] [29] [30] e até mesmo para colaborar na recolha de requisitos. A área da saúde não é excepção a este problema e, apesar da solução para análise de requisitos colaborativa apresentada por Scandurra et
al. [30] ter obtido bons resultados, colocá-la em prática revela-se bastante difícil devido
à quantidade de tempo necessária para obter resultados.
Uma vez que o SIPA-MCDT, bem como toda a aplicação onde este se insere, vai substituir as aplicações mais antigas da Maxdata (ver secção 1.1), não podemos simplesmente descartar os dados produzidos por estas aplicações ao longo dos anos. Assim sendo, todos estes dados têm de ser migrados para a base de dados da nova aplicação. Esta migração de dados pode ser considerada como um processo ETL60 pois
os dados são extraídos das bases de dados utilizadas pelas aplicações antigas, sendo depois transformados de modo a efectuar o mapeamento para o esquema da base de dados de destino e, por fim, são carregados para esta última. Nesta parte uma ferramenta essencial será o Mirth61, que é uma ETL tool muito utilizada na área da saúde [31].
Por fim, há que integrar o SIPA-MCDT com outros módulos da aplicação, nomeadamente com o módulo responsável pelo agendamento de consultas e de colheitas e também com o módulo da facturação que será desenvolvido de maneira a isolar esta área o mais possível, uma vez que apresenta um elevado nível de complexidade e é muito susceptível a mudanças.
60 ETL, Extraction Transformation Load. 61 Mirth, http://www.mirthcorp.com/.
86
Abreviaturas
AJAX Asynchronous Javascript and XML CSS Cascading Style Sheet CVS Concurrent Versions System DAO Data Access Object
ETL Extraction, Transformation, Load GUI Graphical User Interface GWT Google Web Toolkit
HQL Hibernate Query Language HTML HyperText Markup Language
JRE Java Runtime Environment JVM Java Virtual Machine
MCDT Meios Complementares de Diagnóstico e Terapêutica MVC Model-View-Controller
MVP Model-View-Presenter
NID Número de Identificação
ORM Object Relational Mapping PEI Projecto em Engenharia Informática POJO Plain Old Java Object
RIA Rich Internet Applications RPC Remote Procedure Call SaaS Software-as-a-Service
SGBD Sistema de Gestão de Bases de dados
SIPA-MCDT Sistema de Informação para Prescrição e Agendamento de Meios
Complementares de Diagnóstico e Terapêutica
SNS Serviço Nacional de Saúde
87
SQL Structured Query Language TCO Total Cost of Ownership UML Unified Modeling Language XML Extensible Markup Language
88
Glossário
Atendimento Uma inscrição, ou atendimento, corresponde a uma visita de um utente
ao laboratório. Um atendimento é constituído por um ou mais pedidos.
Inscrição Pedido
Pedidos, ou requisições, são prescrições de exames.
Requisição
90
Bibliografia
[1] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, “A view of cloud computing,”
Commun. ACM, vol. 53, no. 4, pp. 50–58, 2010.
[2] D. Lewis, “What is web 2.0?,” Crossroads, vol. 13, no. 1, p. 3, 2006.
[3] T. Tamai and Y. Torimitsu, “Software lifetime and its evolution process over generations,” Proceedings Conference on Software Maintenance 1992, pp. 63– 69.
[4] D. Engelberg and A. Seffa, “A Framework for Rapid Mid-Fidelity Prototyping of Web Sites,” in Proceedings of the IFIP 17th World Computer Congress - TC13
Stream on Usability: Gaining a Competitive Edge, 2002, pp. 203–215.
[5] Roger S. Pressman, Software engineering: a practitioner’s approach, 5th ed. 2001.
[6] A. Bjork, “Agile Development and the Daily Standup Meeting,” Visual Studio
Magazine, 2011.
[7] J. Atwood, “Code Reviews: Just Do It,” 2006. [Online]. Available: http://www.codinghorror.com/blog/2006/01/code-reviews-just-do-it.html. [8] “Code Reviews, what are the advantages?” [Online]. Available:
http://programmers.stackexchange.com/questions/71654/code-reviews-what-are- the-advantages.
[9] L. Clevesy and G. Sporar, “What Makes Peer Code Review an Agile Process?,” 2010. [Online]. Available: http://agile.dzone.com/articles/what-makes-peer-code- review-agile.
[10] D. Galvoeira, “Meios complementares de diagnóstico e terapêutica,” Plataforma
Barómetro Social, 2011. [Online]. Available:
http://barometro.com.pt/archives/447.
[11] M. Creeger, “Cloud Computing: An Overview,” Queue, vol. 7, no. 5, pp. 2:3– 2:4, 2009.
[12] J. Varia, “The Total Cost of ( Non ) Ownership of Web Applications in the Cloud,” vol. 2012, no. August, pp. 1–30, Aug-2012.
91
[13] D. Singleton, “What is SaaS? 10 Frequently Asked Questions About Software as a Service,” Software Advice, 2011. [Online]. Available:
http://blog.softwareadvice.com/articles/enterprise/saas-faqs-1072811/. [14] J. A. Jacko and A. Sears, Eds., The human-computer interaction handbook:
fundamentals, evolving technologies and emerging applications. Hillsdale, NJ,
USA: L. Erlbaum Associates Inc., 2003.
[15] R. Ramakrishnan and J. Gehrke, Database Management Systems, 2nd ed. New York, NY, USA: McGraw-Hill, Inc., 1999.
[16] P. Avgeriou and U. Zdun, “Architectural Patterns Revisited–A Pattern
Language,” in 10th European Conference on Pattern Languages of Programs
(EuroPlop 2005), 2005, pp. 1–39.
[17] C. Ramsdale, “Large scale application development and MVP.” [Online]. Available: https://developers.google.com/web-toolkit/articles/mvp-architecture. [18] S. Chandel, “Testing Methodologies Using Google Web Toolkit,” 2009.
[Online]. Available: https://developers.google.com/web- toolkit/articles/testing_methodologies_using_gwt.
[19] K. Fakhroutdinov, “UML 2.2 Diagrams Overview.” [Online]. Available: http://www.uml-diagrams.org/uml-22-diagrams.html.
[20] B. Lieberman, “UML Activity Diagrams : Detailing User Interface Navigation,”
The Rational Edge, 2004. [Online]. Available:
http://www.ibm.com/developerworks/rational/library/4697.html. [21] M. Petre, “UML in practice,” in Proceedings of the 2013 International
Conference on Software Engineering, 2013, pp. 722–731.
[22] J. Shannon, B. Adida, and D. Baccus, “Oracle to Postgres Conversion.” [Online]. Available:
http://wiki.postgresql.org/wiki/Oracle_to_Postgres_Conversion#Grammar_Differ ences.
[23] J. Berkis, “PostgreSQL publishes first real benchmark,” 2007. [Online]. Available: http://it.toolbox.com/blogs/database-soup/postgresql-publishes-first- real-benchmark-17470.
[24] C. Bauer and G. King, Java Persistence with Hibernate. Greenwich, CT, USA: Manning Publications Co., 2006.
[25] M. Fowler, Patterns of Enterprise Application Architecture. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 2002.
[26] M. Fowler, “Inversion of Control Containers and the Dependency Injection pattern,” 2004. [Online]. Available:
92
[27] M. Fowler, “Mocks Aren’t Stubs,” 2007. [Online]. Available: http://martinfowler.com/articles/mocksArentStubs.html.
[28] D. Travis, “Dealing with difficult usability test participants,” 2012. [Online]. Available:
http://www.userfocus.co.uk/articles/dealing_with_difficult_usability_test_partici pants.html.
[29] D. Hinderer, “Challenges in participant recruiting for usability testing,” in
Professional Communication Conference, 1998. IPCC 98. Proceedings. 1998 IEEE International, 1998, vol. 2, pp. 417–426 vol.2.
[30] I. Scandurra, M. Hägglund, and S. Koch, “From user needs to system
specifications: multi-disciplinary thematic seminars as a collaborative design method for development of health information systems.,” Journal of biomedical
informatics, vol. 41, no. 4, pp. 557–69, Aug. 2008.
[31] J. Brauer, “Mirth: Standards-Based Open Source Healthcare Interface Engine,” 2008. [Online]. Available: http://timreview.ca/article/205.
[32] C. W. Johnson, “Why did that happen? Exploring the proliferation of barely usable software in healthcare systems.,” Quality & safety in health care, vol. 15 Suppl 1, pp. i76–81, Dec. 2006.