A Framework to Build Information Systems Using a Public Cloud

A Framework to Build Information Systems Using a Public Cloud

A Framework to build Information Systems using a Public Cloud Diogo André Cardoso Serafim Thesis to obtain the Master of Science Degree in Telecommunications and Informatics Engineering Supervisor: Prof. José Luís Brinquete Borbinha Examination Committee Chairperson: Prof. Fernando Manuel Bernardo Pereira Supervisor: Prof. José Luís Brinquete Borbinha Member of the Committee: Prof. António Manuel Ferreira Rito da Silva October 2017 2 Acknowledgments First of all, I would like to thank to my professor and thesis advisor, Jose´ Borbinha, for all the support and for always being available to help me clear my thoughts, motivate me and also help me review my work. To Instituto Superior Tecnico´ including all the staff and professors, my gratitude for all the knowledge they have passed on to me. To my dear friends Pedro Frade, Filipa Carvalho, Pedro Baptista, Sonia´ Garrido Gil, Fabio´ Domin- gos, Giovanna Franchi, Joka Barbosa and Ricardo Wagenmaker, a deeply thank you for being such an inspiring force through my life, for always being present and giving support. I also want to show my appreciation to all the people that appeared during this journey, that through their presence and encouragement have contributed to the success of this work, these are: Sofia Ribeiro, Rui Lourenc¸o, Laura Barroso, Valdo Lopes, Ivo Pires, Diogo Costa, Jorge Almeida, Rita Curado, and Maria Quaresma. I also want to show my gratitude for all the support given from my family, specially to my father and mother, who have worked hard their entire life to enable me and my sister to go through university. Finally I want to dedicate this dissertation to my grandparents, who made me the man I am today and taught me that honesty and humility trumps every challenge. i Abstract In the last years cloud computing has revolutionized the way organizations use computers and the internet. Most of the services offered by popular cloud providers, allow organizations to migrate their information systems to the cloud based on subscription-plans regarding the resources they need. However, a few number of small organizations are still unable to support the costs associated. On the other hand, most of systems still in use reside exclusively in Microsoft Excel, with the information spread over multiple documents without any automatization leading to long and exhaustive operations. The purpose of this thesis was the development of a framework that can be adapted to different small organizations by offering a set of tools to migrate the existing systems, as also to easily create a physical database using public cloud services. Finally, considering all the research made about the capabilities and features provided by some cloud providers, extend the framework to new web applications fully integrated with the system implemented in the cloud and, most important, with no costs associated. The proposed framework was evaluated by users to obtain feedback about the framework’s usability and user experience. After a positive evaluation, some improvements were made which generated the second version of the new DB4G framework. Keywords: Cloud computing, Software as a Service, Framework, Google Docs, Extend. ii Resumo Nos ultimos´ anos, a computac¸ao˜ em nuvem tem revolucionado a forma como as organizac¸oes˜ usam os computadores e a internet. A maioria dos servic¸os providenciados pelos provedores de cloud mais conhecidos, permitem as` organizac¸oes˜ migrar os seus sistemas de informac¸ao˜ para a cloud com base em planos de subscric¸ao˜ alinhados as` suas necessidades. Contudo, as pequenas organizac¸oes˜ ainda nao˜ conseguem suportar os custos associados. Por outro lado a maioria dos sistemas ainda em uso reside exclusivamente no Microsoft Excel, com a informac¸ao˜ dispersa por varios´ documentos, sem qualquer automatizac¸ao,˜ levando a operac¸oes˜ longas e exaustivas. O objetivo desta tese consistiu no desenvolvimento de uma framework que possa ser adaptada a pequenas organizac¸oes˜ ao fornecer um conjunto de ferramentas para migrar os sistemas existentes, bem como criar uma base de dados utilizando os servic¸os da cloud publica.´ Finalmente, considerando toda a pesquisa realizada acerca dos recursos providenciados por alguns provedores de cloud, estender a framework a novas aplicac¸oes˜ web totalmente integradas com o sistema implementado na cloud, e mais importante, sem quaisquer custos associados. A framework foi posteriormente avaliada por potenciais utilizadores para obter feedback sobre a sua usabilidade e experienciaˆ de utilizador. Apos´ uma avaliac¸ao˜ positiva, foram realizadas melhorias que geraram a segunda versao˜ da framework. Palavras-chave: Computac¸ao˜ em Nuvem, Software como um servic¸o, Framework, Google Docs, Extenc¸ao˜ iii Contents Acknowledgments i Abstract ii Resumo iii List of Figures vii List of Tables viii Acronyms ix 1 Introduction 1 1.1 Problem Description.......................................2 1.1.1 Animalife.........................................2 1.1.2 APOGEP.........................................3 1.2 Motivation and Objectives....................................3 1.3 Contributions...........................................4 1.4 Document Structure.......................................4 2 Related Work 5 2.1 Cloud Computing Overview...................................5 2.1.1 Cloud Computing Core Concepts............................5 2.1.2 Web Authentication & Authorization Open Technology................7 2.2 Cloud Computing Solutions...................................8 2.2.1 Software as a Service Solutions............................8 2.2.2 Application Programming Interfaces.......................... 12 2.3 Software Development Models................................. 13 2.3.1 Main Methods for Software Engineering........................ 13 2.3.2 Software Prototyping Models.............................. 14 2.4 Summary............................................. 15 iv 3 Problem Analysis and Solution Design 16 3.1 Requirements........................................... 16 3.1.1 Front-end Users..................................... 18 3.1.2 Back-end Users..................................... 19 3.2 Framework Architecture and Technology............................ 20 3.3 Summary............................................. 22 4 Implementation 23 4.1 Home Page Section....................................... 23 4.1.1 Login........................................... 24 4.1.2 User Consent....................................... 24 4.2 Project Management Section.................................. 25 4.2.1 Create Project...................................... 25 4.2.2 Project Area....................................... 26 4.3 System Management...................................... 27 4.3.1 Users Management................................... 27 4.3.2 Configuration File.................................... 28 4.3.3 Recycle Bin........................................ 28 4.4 Database Management..................................... 29 4.4.1 Create File........................................ 29 4.4.2 Preview, Edit and Delete File.............................. 30 4.4.3 Import and Export Files................................. 31 4.4.4 Table Management.................................... 32 4.4.5 User Permissions.................................... 33 4.5 Framework vs Google APIs Limitations............................. 33 4.5.1 File Ownership...................................... 33 4.5.2 Quota Limits....................................... 34 4.5.3 Performance....................................... 35 4.5.4 Work Offline....................................... 36 4.5.5 Backup project...................................... 36 4.6 Summary............................................. 36 5 Framework Extension 37 5.1 Planning and Requirements................................... 37 5.2 Implementation.......................................... 38 5.2.1 Adding a new Google API................................ 38 5.2.2 Adding new controllers and views........................... 39 5.2.3 Working with data.................................... 39 5.3 Summary............................................. 39 v 6 Evaluation 40 6.1 Application Scenarios...................................... 40 6.2 Planning.............................................. 41 6.2.1 Setup........................................... 41 6.2.2 Task Definition...................................... 42 6.2.3 Participants........................................ 42 6.2.4 Evaluation Methods................................... 43 6.2.5 Survey........................................... 44 6.3 Results and Discussion..................................... 45 6.3.1 Usability.......................................... 45 6.3.2 Usability Issues...................................... 46 6.3.3 User Experience..................................... 46 6.3.4 Participants Opinions and Observations........................ 47 6.4 Summary............................................. 47 7 Conclusions and Future Work 48 7.1 Contributions........................................... 48 7.2 Future Work............................................ 49 Bibliography 51 A User Manual 52 B Administrative Manual 65 C User Evaluation - Guidelines 80 D User Evaluation - Survey 84 E User Evaluation - Results 87 F Domain Model - Attributes Description 89 vi List of Figures 2.1 Cloud Computing Architecture.................................6 2.2 Google Docs Revision Tool................................... 10 2.3 AppSheet Interface Management...............................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    100 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us