基于微服务Spring Boot的公众投诉系统后台应用的设计与开发外文翻译资料

 2022-08-10 16:15:22

Available online at www.sciencedirect.com

ScienceDirect

Procedia Computer Science 124 (2017) 736–743

4th Information Systems International Conference 2017, ISICO 2017, 6-8 November 2017, Bali, Indonesia

Design and Development of Backend Application for Public Complaint Systems Using Microservice Spring Boot

Hatma Suryotrisongko*, Dedy Puji Jayanto, Aris Tjahyanto

Institut Teknologi Sepuluh Nopember, Kampus ITS Sukolilo-Surabaya 60111, Indonesia

Abstract

E-government is an implementation of ICT (information and communication technologies) in the field of governance in improving services to the public by a government or public sector. For example, Smart City, online licensing services, community complaint services, etc. The purpose of this research is to develop public complaint service application based on web application which uses springboot microservice architecture. Microservice architecture was used to divide the application functionality into many parts, or many micro-services based on business process and the services are interconnected, becoming a single application with a complete business process. One of the advantages of this architecture is that more microservice can be added without affecting others. The application was deployed in a cloud environment that can be accessed through a browser.

copy; 2018 The Authors. Published by Elsevier B.V.

Peer-review under responsibility of the scientific committee of the 4th Information Systems International Conference 2017.

Keywords: e-Government; Microservices; Complaint Services; Spring Boot

1. Introduction

E-government consists of the use of electronic communication technologies such as internet, for improving citizens access to public services [1]. Implementation of E-Government provides the efficiency and speed of management on the reporting administration system, as well as the transparency of processes that occur in government administration. Through it, an aspect emerged which is called good governance. However, the implementation of E-government in Indonesia faces many issues such as expense issues for developing and

  • Corresponding author. Tel.: 62-31-5999-944; fax: 62-31-5964-965.

E-mail address: hatma@is.its.ac.id

1877-0509 copy; 2018 The Authors. Published by Elsevier B.V.

Peer-review under responsibility of the scientific committee of the 4th Information Systems International Conference 2017

10.1016/j.procs.2017.12.212

Hatma Suryotrisongko et al. / Procedia Computer Science 124 (2017) 736–743

737

operating e-government applications, technical issues such as security issues, privacy, and system update and human resource issues in which there is lack of capability to manage it. Cloud technology becomes one of the alternative answers to tackle those issues. This model allows consumers to use applications that exist in the cloud online through providers that can be accessed in various kinds of devices without worrying about those issues.

The use of microservice technology can give some advantages to the e-government system in the cloud. The concept of modularity in microservice allows the management of services that exist separately in an application. The impact to a development of a particular service is that it will not interfere with other services. Capacity building of a service can be distinguished among other services so that the resource is used appropriately. Also, the development of services can be developed with different programming languages [2].

2. Related works

Sam Newman [3] developing a microservice application, first to conduct is determining the boundaries of the environment or bounded context. Simply, to specify the bounded context of the application that can be seen from the application business process which can then be grouped according to functional groups from the user, e.g., the finance department is in charge of the payment, and the warehouse department is engaged in customer orders. Then each function will be put together into one module. The module then becomes the bounded context to create microservices that match the purpose of the module made. The microservices that have been made will apply the concept of loose coupling between other modules and high cohesion microservice that are interconnected with the module made. Finally, the part which will do data writing to the database and read data from the database can be determined.

Purnama amp; Yatini [4] developed a thesis management application using Node.js which aims to avoid any similarity of topic or thesis title which is often the case of plagiarism. Node.js was built using microservice architecture purposing the ease of development of the application. When there is a case of new functional addition, re-creating the application is unnecessary, and the function can be added independently. It takes less time for further development.

Janssen amp; Joha [5] explained that the use of the Software as a Service (SaaS) model in the public sector is still infrequent. Although SaaS in the public/e-government sector promises many advantages, such as cost-saving and effectiveness, the challenges are severe, e.g., quality, security, privacy, and also the need to customize different systems in the region One with other areas.

3. Methodology

3.1. Functional requirement analysis

Table 1. Functional requirements.

ID

Actor

Functional Requirements

FR1

Administrator

Customer registration

FR

剩余内容已隐藏,支付完成后下载完整资料

基于微服务Spring Boot的公众投诉系统后台应用的设计与开发

Procedia计算机科学124(2017)736–743

2017年第四届信息系统国际会议,ISICO 2017,2017年11月6-8日,印度尼西亚巴厘岛

Hatma Suryotrisongko*、Dedy Puji Jayanto、Aris Tjahyanto

印度尼西亚,泗水,Kampus ITS Sukolilo 60111,Teknologi Sepuluh Nopenber研究所

摘要

电子政务是政府或公共部门在改善对公众的服务方面,在治理领域实施信息和通信技术(ICT)。以智能城市、网上授权服务、社区投诉服务等为例,本研究的目的是利用springboot微服务架构开发基于web应用的公共投诉服务应用。微服务体系结构用来将应用功能划分为多个部分,或者基于业务流程的多个微服务与服务相互连接,成为具有完整业务流程的单个应用。这种架构的优点之一是可以添加更多的微服务,而不会影响其他服务。应用程序部署在可通过浏览器访问的云环境中。

版权所有copy;2018作者。爱思唯尔公司出版。

2017年第四届信息系统国际会议科学委员会负责的同行评审。

关键词:电子政务;微服务;投诉服务;Spring Boot

1.简介

电子政务包括利用互联网等电子通信技术,改善公民获得公共服务的机会[1]。电子政务的实施,提高了报告管理系统管理的效率和速度,也提高了政府管理过程的透明度。通过它,出现了一个被称为善政的方面。然而,印尼电子政务的实施面临着许多问题,如发展电子政务所需的费用问题,以及操作电子政务应用程序、安全问题、隐私、系统更新等技术问题以及缺乏管理能力的人力资源问题。云技术成为解决这些问题的备选方案之一。该模型允许消费者通过可以在各种设备中访问的提供者使用云在线中存在的应用程序,而不必担心这些问题。

微服务技术的使用可以给云环境下的电子政务系统带来一些优势。微服务中的模块化概念允许对应用中单独存在的服务进行管理。对特定服务的开发的影响是它不会干扰其他服务。服务的能力建设可以与其他服务区分开来,以便资源得到适当利用。此外,服务的开发可以用不同的编程语言来开发[2]。

2.相关工作

Sam Newman[3]开发一个微服务应用程序,首先要做的是确定环境或有界上下文的边界。简单地说,指定从应用程序业务流程中可以看到的应用程序的有界上下文,然后可以根据用户的功能组对其进行分组,例如财务部门负责付款,仓库部门负责处理客户订单。然后将每个功能组合成一个模块。然后,该模块成为有界上下文,以创建与所生成模块的用途相匹配的微服务。已创建的微服务将应用其他模块之间的松耦合概念和与所创建的模块互连的高内聚性微服务。最后,确定将数据写入数据库和从数据库读取数据的部分。

Purnamaamp;Yatini[4]使用Node.js开发了一个论文管理应用程序,旨在避免主题或论文标题的任何相似性,这通常是抄袭的情况。js是使用微服务架构构建的,以便于应用程序的开发。当有新功能添加的情况时,不需要重新创建应用程序,可以独立添加该功能。进一步发展所需时间较少。

Janssenamp;Joha[5]解释说,在公共部门使用软件即服务(SaaS)模式的情况仍然很少。尽管SaaS在公共/电子政务领域具有许多优势,如节省成本和有效性,但挑战是严峻的,例如质量、安全、隐私,以及需要在该地区与其他地区一道定制不同的系统。

3.方法论

3.1 功能需求分析

表1.功能要求

ID

角色

功能要求

1

管理员

客户登记

2

管理员

公民身份管理

3

管理员

类别管理

4

公民

身份验证

5

公民

发出投诉

6

公民

检查投诉

7

政府工作单位

显示投诉摘要

8

政府工作单位

回答投诉

9

政府工作单位

删除投诉

10

小贩

查看所有客户

通过查看一些类似的应用程序进行了功能需求分析。例如,Kediri市的公共投诉web应用程序[6]。通过查看应用程序的设计文档,得到分析结果。同时,通过文献分析,找出与电子政务公共报告应用功能需求相关的信息。

功能需求由参与者需求和功能需求构成。参与者是将使用应用程序的用户。使用应用程序的参与者很少,包括管理员、供应商、公民和政府工作单位。功能需求本身就是应用程序的功能。表1列出了应用程序的一些功能需求。

3.2 为微服务建模

在提出功能需求之后,下一步是对微服务进行建模。此步骤将功能需求(也称为有界上下文)拆分为一些与有界上下文的用途匹配的微服务。换句话说,微服务是由一个或多个微服务组成的组,它们相互连接以执行业务流程或功能。此应用程序中的微服务在表2中。

表2.微服务要求

ID

微服务要求

1

创建新客户数据

2

创建公民ID数据

2

显示公民身份数据列表

2

删除公民身份数据

3

创建类别

3

删除类别

3

显示类别列表

4

获取公民身份数据

5

创建新投诉

5

得到一个票号

6

按票证显示投诉状态

7

显示具有特定状态的所有投诉

8

更新投诉数据中的答案

9

删除投诉

10

显示所有注册客户

3.3.设计用例

设计用例是在功能需求分析的基础上生成的。用例显示了参与者与应用程序之间的交互,如图1所示。

图1.应用程序用例

3.4.应用程序开发

这个阶段是基于功能需求、微服务需求和用例对应用程序进行编码的过程。本文的研究重点是利用java编程语言和springboot框架开发后端应用程序。Springboot框架有几个优点,因此备受青睐。

Spring支持MVC并提供了RESTful Web服务特性。spring包中还提供了数据库连接。Spring框架还支持依赖注入。依赖注入是应用程序中配置依赖关系的简化,因此在应用程序开发过程中

方便。每个spring框架还支持方面对象编程(AOP)[7]。使用spring boot的另一个优点是,tomcat服务器可以很容易地被包括进来,并且可以直接运行[8]。

开发前端应用程序还需要与后端进行通信,以便制定业务流程。前端开发采用typescript编程语言和Angular2框架。

3.5.微服务黑盒测试

黑盒测试是在不知道应用程序中发生的进程的情况下检查功能性应用程序是否正确运行的测试[9]。黑盒测试是通过创建一个测试用例来完成的,测试用例的形式是从功能应用程序获得的测试输入和输出。测试可以在不使用算法或低粒度级别的应用程序上完成[10],因此不需要花费太多时间[11]。虽然测试微服务需要白盒测试和黑盒测试两种测试方法,但由于应用程序不使用任何复杂的算法,且具有较低的粒度细节,所以本研究只进行黑盒测试,因此黑盒测试就足够了。

4.应用程序业务流程

公众投诉申请由特定单位或团队负责操作和管理。在某些情况下,在万隆市[12]这样的地区,这种应用程序是在指挥中心操作和管理的,因此它的工作是最佳的。

此公共投诉应用程序是基于云的应用程序。地方政府可以通过向供应商支付一些钱来租用应用程序服务。政府可以指派一名管理员来操作应用程序。管理员可以上传公民身份数据。

市民通过网络申请投诉。首先,公民必须根据管理员上传的数据ID验证其ID。之后,他们的投诉将存入数据库,准备由政府工作单位管理。首先,系统有一个筛选阶段来过滤投诉内容。选拔过程由指挥中心的政府工作单位负责管理。有效的投诉内容将按照管理员创建的类别进行分类,然后发送到指挥中心外的正确政府单位,以便在现场用正确的答案和正确的后续行动来回答投诉。如果投诉人的报告是在外地处理或处理的,则发出投诉的公民可以将投诉状态更改为完成状态,以通知政府投诉已得到充分处理。

5.应用程序体系结构

使用云技术的公共投诉应用程序具有如图2所示的云架构。前端应用程序将与后端应用程序以及应用程序数据库一起存储在同一个云服务中,以节省资源使用。该应用程序可通过浏览器在web上供公众访问。通过网络申请提交的投诉将被发送到数据库,由政府进一步管理,在这种情况下,政府是指挥中心和其他政府工作单位。供应商访问应用程序的后端或前端以对应用程序执行维护。

图2.应用程序架构

6.微服务架构

有一个工具可以让开发人员更容易地看到应用程序上所有可用的微服务。这个工具叫做招摇过市。Swagger是一个标准框架,它允许开发人员快速查找和理解应用程序上的所有服务,而无需访问程序代码、应用程序开发文档,也无需检查应用程序服务网络[13]。Swagger基于使用springboot框架创建的controller类映射微服务。类控制器(或者可以称为控制器)是springboot中的一个类文件,它由根据业务需要执行输入输出过程的方法组成。在controller类中,这些方法可以生成REST API。Swagger显示在应用程序中创建的所有控制器。在每个swagger控制器中,可以通过对所用方法的描述来访问REST API(所使用的restapi通常是GET、POST、DELETE、PUT),然后就有了restapi URL,以及控制器类中的方法名。REST API将被前端应用程序用作对microservice的访问,它使用了预先定义好的通信方法。

6.1 Class controller

表3显示了应用程序中与关联的微服务一起存在的类控制器。

表3.控制器类

Controller Class

微服务要求

Customer

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[238361],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。