使用微服务Spring Boot 的公众投诉系统后端应用程序的设计和开发外文翻译资料
2021-12-31 23:25:38
英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料
网址:www.sciencedirect.com
ScienceDirect
Procedia Computer Science 124 (2017) 736–743
2017年第四届信息系统国际会议,2017年11月6日至8日,印度尼西亚巴厘岛ISICO
使用微服务Spring Boot 的公众投诉系统后端应用程序的设计和开发
Hatma Suryotrisongko*, Dedy Puji Jayanto, Aris Tjahyanto
Institut Teknologi Sepuluh Nopember, Kampus ITS Sukolilo-Surabaya 60111, Indonesia
摘要
电子政务是在治理领域实施的ICT(信息和通信技术),用来改善政府或公共部门对公众的服务。例如,智能城市、在线许可服务、社区投诉服务等。此次研究的目的是用于开发基于使用Spring Boot微服务架构的Web应用程序的公共投诉服务应用程序。 微服务架构用于将应用程序功能划分为许多部分,或者基于业务流程和服务的许多微服务相互关联,成为具有完整业务流程的单个应用程序。这种架构的一个优点是可以添加更多的微服务而不会影响其他微服务。这个应用程序部署在可以通过浏览器访问的云环境中。
copy;2018作者。 由Elsevier B.V.发布。
2017年第四届信息系统国际会议科学委员会负责同行评审。
关键字:e-Government; Microservices; Complaint Services; Spring Boot
- 简介
电子政务包括使用互联网等电子通信技术,以改善公民获得公共服务的机会[1]。电子政务的实施提供了报告管理系统的管理效率和速度,以及政府管
*通讯作者。电话: 62-31-5999-944;传真: 62-31-5964-965。
电子邮件地址:hatma@is.its.ac.id。
1877-0509copy;2018作者。 由Elsevier B.V.发布
2017年第四届信息系统国际会议科学委员会负责同行评审
10.1016 / j.procs.2017.12.212
理过程中透明度。通过它,出现了一个称为良好治理的方面。然而,印度尼西亚电子政务的实施面临许多问题,例如开发和运营电子政务应用的费用问题,安全问题,隐私和系统更新等技术问题以及缺乏能力的人力资源问题。管理它,云技术成为解决这些问题的替代解决方案之一。这种方式允许消费者通过可在各种设备中访问提供商在线使用云中存在的应用程序,而无需担心这些问题。
微服务技术的使用可以为云中的电子政务系统带来一些优势。微服务中的模块化概念允许管理在应用程序中单独存在的服务。对特定服务的开发中的影响是它不会干扰其他服务,服务的功能建设可以区别于其他服务,以便适当地使用资源。此外,可以使用不同的编程语言开发服务[2]。
- 相关工作
Sam Newman [3]开发微服务应用程序,首先要进行的是确定环境边界或有界环境。简单地说,指定应用程序的有界上下文,可以从应用程序业务流程中看到,然后可以根据用户的功能组进行分组,例如,财务部门负责支付,仓库部门参与客户订单,然后将每个函数放在一个模块中。然后,模块成为有界上下文,以创建与模块的目的相匹配的微服务。已经创建的微服务将应用其他模块之间的松耦合概念,以及与所创建模块互连的高内聚性微服务。最后,可以确定将数据写入数据库和从数据库中读取数据的部分。
Purnama和Yatini [4]使用Node.js开发了一个论文管理应用程序,旨在避免主题或论文题目的任何相似性,这通常是剽窃的情况。Node.js是使用微服务架构构建的,旨在简化应用程序的开发。当存在新功能添加的情况时,不需要重新创建应用程序,并且可以独立地添加功能。进一步开发需要的时间更少。
Janssen和Joha [5]解释说,在公共部门使用软件即服务(SaaS)模式的情况仍然很少。虽然公共/电子政务领域的软件即服务(SaaS)承诺许多优势,例如节省成本和有效性,但挑战是严峻的,例如质量,安全性,隐私,以及需要在该地区定制不同的系统。
3.方法论
3.1 功能需求分析
表 1.功能需求。
ID |
参与者 |
功能需求 |
|
FR1 |
管理员 |
客户登记 |
|
FR2 |
管理员 |
公民身份管理 |
|
FR3 |
管理员 |
类别管理 |
|
FR4 |
公民 |
ID 验证 |
|
FR5 |
公民 |
发出投诉 |
|
FR6 |
公民 |
检查投诉 |
|
FR7 |
政府工作单位 |
显示投诉摘要 |
|
FR8 |
政府工作单位 |
回答投诉 |
|
FR9 |
政府工作单位 |
删除投诉 |
|
FR10 |
供应商 |
查看所有客户 |
|
通过查看一些类似的应用程序进行功能需求分析。 例如,Kediri city(谏义里市)的公共投诉网络应用程序[6]。通过查看应用程序的设计文档来获得分析。此外,分析来自文献研究,以找到与电子政务公共报告应用的功能要求相关的一些信息。
功能需求包括参与者需求和功能需求。参与者是将使用应用程序的用户。一些使用该应用程序的参与者包括管理员,供应商,公民和政府工作单位。功能需求本身就是应用程序的功能。表1列出了应用程序的一些功能需求。
3.2 模拟微服务
在完成功能要求之后,下一步是对微服务进行建模。 此步骤将功能需求(也称为有界上下文)拆分为一些与有界上下文的目的相匹配的微服务。 换句话说,微服务是由一个或多个微服务组成的组,并且它们互连以执行业务过程或功能。 本申请中的微服务见表2。
表 2.微服务需求。
ID |
微服务要求 |
|
FR1 |
创建新客户数据 |
|
FR2 |
创建公民 ID 数据 |
|
FR2 |
显示公民 ID 数据列表 |
|
FR2 |
删除公民 ID 数据 |
|
FR3 |
创建一个类别 |
|
FR3 |
删除类别 |
|
FR3 |
显示类别列表 |
|
FR4 |
获取公民 ID 数据 |
|
FR5 |
创建新投诉 |
|
FR5 |
获得机票号码 |
|
FR6 |
按票证显示投诉状态 |
|
FR7 |
显示所有具有特定状态的投诉 |
|
FR8 |
在投诉数据中更新答案 |
|
FR9 |
删除投诉 |
|
FR10 |
显示所有注册客户 |
|
3.3 设计用例
设计用例是从功能需求分析中产生的。 用例显示了参与者与应用程序之间的交互,如图1所示。
3.4 应用开发
此阶段是基于功能需求,微服务需求和用例对应用程序进行编码的过程。本研究的重点是使用java编程语言和Spring Boot框架开发后端应用程序。 Spring Boot框架受到青睐,因为它有几个优点。
Spring支持MVC模式并提供RESTful Web服务功能。Spring包中还提供了数据库连接。Spring框架还支持依赖注入。依赖注入是应用程序中配置依赖的简易性,因此在应用程序开发过程中变得更加方便。每个Spring框架还支持Aspect Object Programming(AOP/面向切面编程)[7]。使用Spring Boot的另一个好处是可以轻松地包含tomcat服务器并且可以直接运行[8]。
还需要开发前端应用程序,以便与后端进行通信以进行业务流程。 前端开发使用typescript编程语言和Angular2框架。
图 1.应用用例。
3.5 微服务黑盒测试
黑盒测试是一项测试,用于检查功能应用程序是否正确运行,而不知道应用程序中发生的进程[9]。黑盒测试是通过以功能应用程序预期的测试输入和输出的形式创建测试用例来完成的。可以对不使用算法或低粒度级别的应用程序进行测试[10],因此不需要花费太多时间[11]。虽然对于测试微服务需要两个测试,即白盒和黑盒测试,但这项研究只是执行黑盒测试,因为应用程序不使用任何复杂的算法,并且具有低粒度细节,然后黑盒测试就足够了。
4.申请业务流程
公共投诉应用程序由特定单位或团队运营和管理。在某些情况下,在万隆(Bandung)市等地区[12],这种应用程序在指挥中心运行和管理,以使其工作最佳。
此公共投诉应用程序是基于云的应用程序。地方政府可以通过向供应商支付一些钱来租用应用程序服务。政府可以指派管理员来操作应用程序。管理员可以上传公民身份数据。
公民通过网络应用程序创建投诉。首先,公民必须根据管理员上传的数据ID验证其ID,之后,他们的投诉将保存在数据库中,并准备由政府工作单位进行管理。第一,系统有一个选择阶段来过滤投诉的内容。选择过程由指挥中心的政府工作单位管理。有效的投诉内容将按照管理员创建的类别进行分类,然后发送到指挥中心以外的权利政府部门,以便在正确的答案和正确的后续跟踪中回答该投诉。如果在现场处理或处理投诉人报告,则发送投诉的公民可以将投诉状态更改为完成,以通知政府投诉已得到充分解决。
5.应用程序体系结构
图 2. 应用程序体系结构。
使用云技术的公共投诉应用程序具有如图2所示的云架构。前端应用程序将存储在云端以及后端应用程序中,同时存储在同一云服务中的应用程序数据库以节省资源使用。公众可以通过浏览器访
全文共9361字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[2633]