没有合适的资源?快使用搜索试试~ 我知道了~
沙特国王大学学报一种基于Web抽取技术Sehrish Munawar Cheemaa,Saman Tariqa,Sami,Ivan Miguel Piresb,Samia巴基斯坦锡亚尔科特管理和技术大学计算机科学系b葡萄牙科维良贝拉内政大学公共交通学院阿提奇莱因福奥文章历史记录:收到2022年2023年1月5日修订2023年1月5日接受2023年1月11日在线提供保留字:数据流业务逻辑分解数据流可视化系统自然语言接口(NLI)Web抓取爬虫图理论邻接矩阵A B S T R A C T为了对各种计算机科学应用中的数据和函数进行建模,研究人员使用了数据流图(DFD)。DFD是使用[开源软件工具]构建的,这些工具为用户提供了不同的形状和环境。然而,现有的方法需要大量的人力,所生成的输出的有效性仍然是一个漏洞,并且它们从未在实践中获得牵引力我们的研究目标是开发一个半自动化的工具,在最短的时间内绘制复杂的数据流我们开发了一个自然语言接口(NLI),允许用户组成一个查询,并确定系统的功能和DFD的组成约束。自然语言处理(NLP)技术应用于废弃数据,以提取关键字并开发数据存储库。此外,我们开发了基于规则的算法,将用户查询映射到相应的令牌形状,以将所需的功能绘制到适当的DFD级别。为了验证,使用邻接和置换矩阵将输出DFD转换为概念有向图以评估同构。实验结果表明,该系统生成的DFD是正确的,完整的,和显着的。版权所有2023作者。由爱思唯尔公司出版代表沙特国王大学这是一个开放的访问CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍表示现实的模型被用于计算机科学的许多领域。它们通过图解和图标 形 式 来 表 示 , 以 增 加 它 们 的 表 现 力 ( Javed 和 Elmqvist ,2013;Jaffari和Yoo,2019)。数据流是将数据、字符串、数字或数组从一个存储空间或部门分别传输到另一个存储空间或部门的方案。 在这个过程中,数据、数字、字符串或数组被评估以确保清晰度和准确性,或者被修改。用图表表示和定义这些数据结构使得易于促进它们的操纵和实现,以用于设计和编码程序和软件系统(Alshareef等人,2021年)。*通讯作者。电 子 邮 件 地 址 : samantariq786@gmail.com ( S.Tariq ) , impires@it.ubi.pt(I.M.Pires)。沙特国王大学负责同行审查数据流可视化系统允许用户在可视化模块中对系统规范进行查询,并构建数据流图(Al Ashry,2017)。使用传统技术生成数据流图是耗时的,并且增加了开销,使用户感到沮丧。用于数据可视化的自然语言接口(NLI)通过引入自然NL查询支持来提高可视化解决方案的可用性(Yu和Silva,2019; Gao等人, 2015年)。在软件演化过程中,许多相关的工件被创建或修改。在大多数软件项目中,非结构化数据超过结构化数据一个数量级。用自然语言处理编写的软件工件可以是用户手册、需求、设计文档、用例场景、错误报告和开发人员交流。当与代码注释和标识符相结合时,可以对与应用程序域、开发人员的知识、决策和整体软件进步相关的重要信息进行编码(Nazir等人,2017; Cheema等人,2020年)。这种文本信息对于程序压缩和软件演化任务是很重要的研究人员专注于从基于互联网的资源(如堆栈溢出,Git中心,应用程序市场等)中提取和分析这些文本信息。他们使用这些数据来获得新的见解,自动化工具来绘制UML图,构建推荐系统或挖掘知识。https://doi.org/10.1016/j.jksuci.2023.01.0061319-1578/©2023作者。由爱思唯尔公司出版代表沙特国王大学这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。制作和主办:Elsevier可在ScienceDirect上获得目录列表沙特国王大学学报杂志首页:www.sciencedirect.comS.M. Cheema,S.塔里克和我皮雷沙特国王大学学报627检 索 到 的 数 据 支 持 过 程 和 开 发 活 动 ( Arnaoudova 等 人 , 2015;Dreisbach等人, 2019年)。在我们的研究中,我们设计了一个自然语言接口的数据流可视化系统,利用国家的最先进的自然语言处理技术,以协助数据流图建设。我们的研究对知识体系有以下贡献我们从多个真实的网站和门户网站上收集了软件描述和文档,这些网站和门户网站属于三个潜在的领域:订单管理系统,图书馆系统和教育系统。对于这个过程,我们利用执行Web提取技术的“rvest”库在R中开发了一个程序为了删除重复内容并过滤废弃内容,我们通过应用自然语言处理(NLP)来识别数据流图元素的关键术语。标记化的术语分为几组:输入、输出、流程、子流程和数据存储。从提取的关键术语创建定义良好的数据存储库。我们开发了一个自然语言接口(NLI),允许用户输入系统的功能和约束条件的数据流图的生产。制定基于规则的算法,将用户约束映射到相应的形状,并在它们之间路由方向。将系统功能划分为0级、1级和2级DFD。为了检查通过我们的方法获得的DFD的有效性,我们将它们与最先进的DFD进行比较。为此,我们通过应用预定义的规则将DFD转换为纯化的DFD。然后,我们应用图论将纯化的DFD压缩成概念有向图。使用概念图表示数据流图并不新鲜(Peraro,2019)。然而,在我们的知识范围内,这项研究首次说明了概念图和矩阵的应用,以比较两个DFD。图可以由V× V邻接矩阵表示,使得M=[fi,j],其中矩阵的每个元素表示边(i,j)的属性。如果边没有属性,则它将由布尔矩阵表示(Busato和Buberi,2017; Kubota等人,2021年)。此外,我们的目标是帮助人类决策,减少人类的努力。这样,系统就构建好了,分析人员可以查看数据流图,以便进一步修改。我们的论文组织如下:背景和相关工作在第2节中进行了总结。我们的研究方法在第3节中进行了全面讨论。它还包括一个讨论制定规则的数据流图的发展。最后,在第四章中对结果进行了评价和讨论,并提出了结论和未来的发展方向在第5节。2. 背景本 节 描 述 了 多 学 科 术 语 的 背 景 ; Web scraping ( Diouf 等 人 ,2019),NLP,DFD,UML,基于NLI的可视化系统和图论。许多作者已经研究了自然语言处理(NLP)和Web抓取的组合,以从非正式的自然语言需求中提取UML图。这是对Karthikeyan等人(2019),Tavakoli等人(2018),Samuel等人(2019),Zdravevski等人(2019)中这些术语的理论调查。(2019a)中所描述的。在这里,我们只讨论了与我们的研究工作有关的术语。2.1. 数据流程图数据流图是一种结构化分析方法,表示通过软件系统的数据流(Khedker等人,2017; Chong和Diamantopoulos,2020)。在DFD上,外部数据项通过处理功能或进程从内部数据流流出。数据流图将功能分解到不同的层次,以说明流程和处理功能的细节。数据流图的基本组件包括:流程、实体、数据流和数据存储(Ibrahim和Yen,2010;Wulandari和Widiantoro,2017)。数据流图在提供过程的时间方面是有限的。该过程以顺序或并行方式运行,以及有关操作顺序的信息(Ganesh和Prabu,2020)。2.2. 网页搜罗网页搜罗是一个接近时代的技术,最近获得牵引力。数据是基于Web的应用程序和活动的货币Web抓取指的是从网站中提取非结构化数据,这些数据可以构建成大规模的结构化数据集(Jassuriya,2015)。很长一段时间以来,网页一直是待分析数据的死水已经设计了各种web抓取方法、工具和类别以用于不同的应用(Diouf等人,2019; Uzun,2020)。数据矿工可以抓取网站并抓取或提取数据,如软件描述,软件需求,用例,搜索结果,图表,符号,产品详细信息,联系信息,电子邮件等,从网页上。许多标记技术是可用的,并且像协作标记和基于内容的标记这样的web抓取器以更好的结果改进了关键字提取过程(Karthikeyan等人,2019年)。网络爬虫,也称为蜘蛛,是数据提取过程的第一部分爬虫是一种机器人,也被称为网络机器人,它系统地扫描网站的蜘蛛。搜索引擎和网站也使用网络爬虫来更新其内容。抓取从URL列表开始,也称为种子URL。爬虫通过访问种子URL来识别网页上的所有链接,并将它们存储到访问列表中(Parvez等人,2018年)。爬行是一个非常普遍的概念,即使Google使用它作为识别网站内容的工具,以通过用一组概括的关键字标记网站来提高其搜索引擎的效率,这些关键字将识别网页内容,还通过分类网页是恶意的或不适当的来帮助它(Mehta等人, 2019年)。RCrawler是一个付费的R工具包,用于基于域的抓取和Web抓取。RCrawler可以抓取,解析,存储网页,提取内容并直接产生用于内容挖掘应用程序的丰富数据(Khalil和Fakir,2017)。随着数据集大小的增长,大数据体系结构变得必要为了有效和及时地处理它,Zdravevski等人(2020年)。反过来,它需要使用有效的算法来进行集群大小和成本优化(Grzegorowski等人,2021; Zdravevski等人,2019 b),以及可扩展的特征选择和降维(Zdravevski等人, 2015年)。2.3. 自然语言处理自然语言处理(NLP)是人工智能(AI)的一个新兴领域,它弥合了人类和机器之间的差距,并使用机器来解释,处理和操纵自然语言(Teller,2000; Alhawiti,2014)。自然语言处理可以从网站上抓取的文本数据中可靠地获得显著信息,并补充定性分析。多种编程语言可以 实 现 NLP 任 务 , 例 如 R , Python , Java , C++/C , Prolog 或MATLAB(Kao 和Poteet,2007; Bird ,2006; Silge 和Robinson,2017; Lunn等人, 2020年)。●●●●●S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报628ð Þ ð Þ考虑到研究人员,工程师,教师和教育工作者,NLP可以用于自动化任务,否则需要大量的人工工作(Litman,2016)。因此,自然语言处理和软件工程可以被认为是跨学科的研究领域。根据一项调查(Yalla和Sharma,2015; Pressman,2005),软件开发生命周期(SDLC)的几乎每个阶段都采用自然语言处理技术,包括软件设计规范、UML图、软件需求和测试用例生成阶段。2.4. 图论在数据科学和机器学习中,图结构比较在神经科学、社交网络分析、网络安全和生物信息学等各种应用中无处不在。模块化社区,枢纽,树和丰富俱乐部的结构比较可以深入了解图的功能特性和机制(Wills和Meyer,2020)。在研究界,针对同构问题提出了许多算法和技术图(Tinhofer,1986; Chen等人,2019年)。图同构的概念是数学研究的一个广泛领域,包括结构和代数图论与参数化复杂性,优化和逻辑相结合。图形表示的一个重要特征是能够可视化矩阵幂(Sajjad等人,2020年)。根据研究(Mancinska等人,2017年,Okoe等人,2018年,Litvak等人, 2017)两个图,假设'G'和'L'是同构的G <$L,如果有一个双射u:V <$G <$! 以这样一种方式,ug与u g0相邻当且仅当g与g0相 邻 (Rotich例如,rotich 2019邻接)。2.5. 统一建模语言客户指定的要求是非正式的和非结构化的,通常用自然语言表述(Tariq等人,2020年)。因此,在实际的开发过程之前,开发人员分析需求并使用其抽象级别来创建需求模型。解决这个问题的一种方法是使用统一建模语言(UML)模型,因为自然语言包含二义性,不一致性和不确定性。因此,很难理解和消除歧义。现有研究建议不同的技术和工具来处理分析和设计模型的自然语言。UML图包括几个松散相关的图.本研究强调了生成数据流图(DFD)的关键挑战。在现有的文献中提出了不同的工具和技术来生成UML图,详细的讨论在2.5.1节中提供。2.5.1. 相关工作在结构建模中,数据流图(DFD)起着主图的作用它处理信息如何进入、离开和遍历系统。DFD由激活器和流组成。数据流由箭头表示,以突出显示进入系统的数据流激活器可以是外部实体(系统边界之外的参与者、源或目的地)、数据存储(数据存储库)和过程(将传入数据流传输到传出数据流)(Fernandes 等人, 2006年)。过程可以呈现抽象级别的功能或可以被划分为子过程的详细的低级操作JFD表示用于数字信号处理、编译器、多媒体系统、安全信息 或 电 信 以 及 形 式 验 证 等 的 价 值 系 统 的 基 于 活 动 的 行 为 视 图(Alshareef等人,2021; Jilani等人, 2008年)。Libya和Gaizauskas提出了CM-builder来分析自然语言,并在语义网络中建立话语模型(Harmain and Gaizauskas,2000),以支持自然语言的不一致性。Ambriola和Gervasi开发了一个健壮的CIRCE框架来提取用自然语言表达的需求。然而,在UML图中有效地度量建模活动方面,它是有限的(Ambriola和Gervasi,2006)。为了消除UML图中的语法错误,Bez- erra解决了UML元素的排列及其可能的关系(Yu,2019)。在我们的比较分析中(如表1所示),我们重点关注Bezerra标准和测量参数集,如下所述。UML图的生成。XMI格式的转换图。检查生成的模型、上下文关系图和DFD级别0之间的一致性。表1比较现有的UML图开源工具技术/工具工具的特点创建UML图导出XMI格式一致性工程检查往返要求跟踪精度完整性DFD(Ibrahim和Yen,2010年)没有没有是否没有是的没有UMLet(Freire等人, 2018; Ambler,2005;是的没有没有直接没有没有没有Bezerra,2007年)ArgoUML(Freire等人,2018; Ambler,2005; Bezerra,2007)StarUML(Freire等人,2018; Ambler,2005;Bezerra,2007)Violet(Freire等人,2018; Ambler,2005;Bezerra,2007)UML设计器(Freire等人,2018; Ambler,2005; Bezerra,2007)建模(Freire等人,2018;AssignmentHelp,2021)Nclass(Freire等人,2018; Ambler,2005;Bezerra,2007)Day(Freire等人,2018; Ambler,2005;Bezerra,2007)BoUML(Freire等人,2018; Ambler,2005;Bezerra,2007)纸草(Freire等人,2018; Ambler,2005;Bezerra,2007)是直接/反向否是是直接/反向否否没有否是没有没有直接没有没有否是是的没有直接/反向没有没有否是否是直接/反向否RAUE(Joshi和Deshpande,2012)是否否是否●●●S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报629工程往返是指图表的生成(直接:从图表生成源代码,反之亦然(反向:从源代码生成图表)● 参数集包括准确性和完整性。基于上述标准,对现有最先进的工具进行了比较,表2突出显示了它们的局限性。随后,研究转向NLP(自然语言处理)和领域本体技术的需求分析。利用自然语言处理技术和领域本体技术,提出了需求分析和UML图抽取通过将文档中的文本信息作为输入来分析需求。2 RAUE可以根据名词短语、动词分析和关系来识别概念。该框架生成了包含组合、聚集、关联、泛化等内部关系概念的类图,并用于发现关系的多样性和依赖 性 。 然 而 , 它 仅 限 于 处 理 简 单 的 状 态 ( Joshi 和 Deshpande ,2012)。可视化数据探索需要一个灵活和自适应的可视化系统,允许用户控制如何查询和显示数据。术语“数据可视化”用于研究如何系统地表示数据,包括信息单元的变量和属性。此外,在解决问题的过程中使用可视化系 统使我 们能够 构建问题 表示并 深入了 解问题 结构(Joshi 和Deshpande,2012)。在这项工作中,我们已经研究了各种可视化系统,以开发一个基于Web的可视化接口,方便用户灵活的数据探索,设计查询预期系统2.5.2. NLI可视化系统最新的研究进展与面向可视化的NLI(自然语言接口)(Pruskiet al.,2015; Lin等人,2017年;Yan等人, 2020年)。现有的NL接口处理对话系统的可视化、网络数据的探索、基于知识的问答和基于数据库的Explains和VisFlow还在其流程中使用了可视化系统,以关注交互信息(Yu 和 Silva , 2016; Javed 和 Elmqvist ,2013 )。Flowsense是一种基于NLI的可视化系统,能够并允许用户构建DFD。 该技术利用NLP并应用语义解析将NL输入映射到VisFlow函数。该系统使用预定义的语法来获得NL输入模式。语义解析器递归地扩展语法中的变量以匹配输入查询并基于所应用的规则来推断输入。Flow- Sense支持自动完成功能,比其他可视化系统更可用和更易访问,用户可以完全控制系统从错误中恢复(Yu,2019)。详细讨论见表2。现有NLI的局限性:大多数可视化系统允许用户以拖放的方式使用单视图可视化来编辑他们的图。然而,实际数据需要多视图链接的可视化。这些是:1. 用户往往难以将其意图转化为系统操作;2. 识别建模工件和需求之间的依赖关系;3. 不提供支持来验证生成的UML图。Abdelnabi等人对UML类图使用NLP的技术和方法进行了详细的调查。(2021年)。然而,对于UML的图,没有这样的分析或调查表2比较现有技术及其局限性。研究(Alshareef等人, 2021年)PA-DFD工具(Sanyal和Ghoshal,2021)流量-目标UML图DFDS技术显式算法系统有效性用这种技术创建的大尺寸图表很难可视化。输入已构建的数据流图系统输出1) 使用非功能性特征自动构建DFD。2) 隐私感知DFD使用从中间模板生成的规则手动构建类图。提取的规则、NLP、用例中间模板基于自然语言(NL)的查询:函数类型、函数选项、源节点、目标节点和端口规范人构建纯化DFD类图拟议系统的准确性、完整性没有信息损失(Chen等人,2017)数据-流-Dri-文冠果(Tamassia例如,1988)GIOTTO工具(Truscan等人,2004年)自顶向下分析和数据流驱动的分解算法通过合并相同类型的操作和输出,将纯化的DFD转换DFD的生成未验证分解机制布局算法,抽象图,网格图DFD对系统进行了测试,实现只考虑有向图系统的结果未经验证美学、图形和约束1) 抽象图2) DFD的网格骨架基于模型的方法要件列表用例图(UCS)、初始对象图(IOD)、数据流图(DFD)和类图初始对象图(IOD)●S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报630通过利用一致性检查来构建和验证DFD 0级,对DFD图的研究效果良好(Ibrahim和Yen,2010)。然而,一致性检查既不涵盖DFD的详细分解级别,也不保持一致性。此外,进行了研究,提供了两种算法来自动化可分解的DFD的建设。然而,该研究仅限于衡量生成的图的验证和方向(Chen等人, 2017年)。3. 研究方法本研究的目的是提出一个半自动化的工具来绘制DFD图。第一部分的研究贡献引领了整个研究。研究方法分为四个关键步骤,详见图1。这些是:1. 数据收集;2. 术语的提取3. 数据储存库;4. 使用基于规则的算法映射数据3.1. 数据收集3.1.1. 爬行和刮擦RCrawler是一个补贴R包,用于基于域的Web抓取和内容抓取。在R环境中,RCrawler可以作为一个并行的Web爬虫来执行抓取、解析、存储页面、提取内容,并生成可直接用于Web内容挖掘应用程序的数据。大约有200多个网站被抓取以获得所需的内容。首先,通过使用规范化来过滤同义相同的URL。接下来,我们使用有针对性的网络爬虫,有选择地搜索与我们的主题和关键字最相关的三个潜在系统的网页:订单管理,教育和图书馆管理。这样,代表与我们搜索词最相关的网页就被丢弃了。为了排除不相关的内容,我们使用预测片段和链接的锚文本来优先考虑网站。最后,通过下载的Web文档应用“鱼搜索”和“鲨鱼搜索”来删除一些不相关的内容。在这种方式下,我们认为113是最相关的,如图所示。 二、3.1.2. 过滤和重复删除我们知道网页可能是分类页面、元素列表或详细信息页面。我们希望在我们的工作中只收集带有项目和DFD描述的页面由于抓取的页面包含大量垃圾和混合形式的有价值的数据并提取信息数据,将数据转换为出口所需的格式。我们使用正则表达式过滤要收集/抓取的URL,以从混合物中分离出有价值的数据在过滤过程中,约有49个垃圾和重复物被去除,如图所示。 二、3.2. 术语提取3.2.1. 令牌化众所周知,网站包含不同格式和结构的信息为了从Web文档中提取所需的信息,我们需要识别每个句子的结构在第一步中,将类似的Web文档作为此过程的输入,如图2所示。在Web文档的标记化中,每个单词和标签都被认为是一个标记。在第二步中,每个文档都被视为一个字符串,所有文档都被单独标记。字符串使用空格(空格)被分解为标记(术语)。例如,回车符、水平制表符、空格符、换行符、垂直制表符和换页符将被视为构成每个句子的空格字符。3.2.2. 词性标注词性标注是一种为句子中的单词分配适当的词性标签的技术,例如名词、动词、形容词和副词。词性标记也被称为词汇标记,它根据语言特征为句子中的每个单词选择最佳的语法标记。我们对每个过滤后的Web文档应用了POS标记,以便将Web文档的HTML代码视为英文文本,并为文档中的每个单词分配POS标记3.2.3. 标签逐字标记完成后,我们为每个捕获组提供标签。例如,关联的标签将是专有名词和动词,如图2所示。通过搜索带有适当名词标签的单词,可以从Html文档本身提取与每个数据相3.2.4. 识别共享模式共享模式是在两个或多个Web文档中提供给系统的重复术语序列。我们提出的系统通过比较生成共享模式首先,创建一个共享模式,并将一个文档的术语或标记与另一个文档中的每个术语在比较期间,如果一个术语匹配,则该术语将被认为是共享模式的起始标记。接下来,生成共享模式,直到找到不匹配的因此,所有术语的顺序将被考虑。Fig. 1. 方法步骤、输入和输出。S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报631图二. 数据采集、过滤、选择、数据存储机制。从起始位置到找到最后一个匹配的位置创建一个共享模式为了识别多个文档中的相关模式,我们输入由元字符和通配符组成的模式考虑一个例子,其中我们在表3中有以下术语列表。我们只想从这个列表中选择那些符合特定模式(标准)的术语。例如,如果我们输入一个模式让术语“报告”、“记录”、“结果”和“读者”符合这一标准,因为它们在开头有“R”和“e”,后面还有四个字母。同时,其余的项不遵循输入模式。通过这种方式,所有共享模式都在Web文档中被识别。生成共享模式的另一种方法是通过逐个字符的比较。3.2.5. 从共享模式生成正则表达式找到所有共享模式后,然后从它们生成正则标识的共享模式按照它们被发现的顺序存储和组合。发现的共享模式放在括号中,并在末尾添加闭包。通过这种方式,正则表达式是从共享模式中生成的。构造正则表达式,以便可以从类似的文档中提取数据,而无需标记化。3.3. 数据储存库根据目标网站,过滤后的软件描述利用名词和动词词来表示过程、子过程、输入、输出、数据存储和关联结果,通过对在数据提取期间获得的一袋单词进行分组来生成数据储存库或库。这些关系显示了特定的过程(P)和实体(E)如何通信。它们的关系要么是双向的,要么是单向的。我们将这些关键术语分为多个组,分别代表流程、子流程、输入、输出、数据存储及其相关关系。这些关键字可用于指定和匹配用户查询和约束,以开发数据流图。3.4. 规则制定流程表示法:是指对系统数据进行处理的所有操作。一个进程被表示为一个具有唯一名字操作的名称应该是动词或动词短语,例如,数据存储表示法:它表示由进程操纵的数据存储库。在DFD中,数据存储由一个命名的矩形表示.数据存储的名称应该是名词或名词短语。它可以是一个数据库或一个文件,例如,和“帐户文件”,如图所示。3.第三章。数据流表示法(Data Flow Notation):它由一条有向线表示,指示来自或流向流程的数据流相关文字写在横线上。数据流线的一个点与操作的圆相链接。外部实体表示法:表示系统外部的数据源或目的地的对象,例如,‘‘travel agency” in 外部实体的表示法类似于数据存储表示法。但是,它也可以在DFD中表示为闭合矩形。规则一:以下术语表示数据流图中涉及的人员、组织或组;“参与者”、“支持参与者”、“主要参与者”、“次要参与者”、"名词“、"名词短语”和“用户”。这些术语可以组合成关键字“Enti”ty规则二:数据流图中的“数据存储”或“输出”可以用“报表”、“工作表”、“结果”、“数据库”等术语来描述。这些术语通常用于数据的存储,the system.规则III:过程应该是一个规范动词或短语,代表一个有意义的数据处理活动。规则IV:将系统描述为0级的单个气泡。例如,“标题”、“系统名称”、“产品名称”、“项目名称”和“软件名称”等术语因此,我们可以将系统名称表示为规则V:当组成0级时,DFD输入指向进程(单个气泡)。同时,需要将流程定向到外部以获得所有系统输出。规则VI:在将0级DFD分解为1级DFD时,每个操作(过程)被调整为只有一个输出数据。规则VII:每个输入都需要从0级DFD调整到1级DFD,这样它最多可以有一种先例过程。规则八:保持各级指定文件之间的信息一致性。规则IX:在第1级和第2级,流程必须充分分解,以便每个处理活动都可以映射到每个实际的业务逻辑上。同时,每个数据S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报632进程和子进程应该是语义和区分件算法2.0级DFD设计输入和输出数据不能进一步分离规则X:在第2级,抽象流程必须分解为可以映射到每个实际业务逻辑的详细子流程。每个抽象过程都有它的子过程来表示活动流。同时,每个过程和子过程的数据表示应该是语义的,并且区分输入和输出数据不能进一步分割3.5. 数据流图的生成本节介绍了与第3.2节中产生的关键术语的规则映射。算法-1被命名为每当用户想要创建一个新的DFD时,我们的系统都会从用户那里获取一些输入,例如新系统中需要的类别(系统的域),实体(E),过程(P)和结果(O)第2、3、4和5行表示从报废模块报废的域和有效算法1. 检查验证如果用户提供的输入存在于我们存储的列表中,则映射并选择它们,该列表在算法1的第6、7和8行中进行检查。用户只能选择我们的网页抓取模块提取的特定域的E,P和O选择这些条目后,我们动态生成所需的令牌图片并相应地分配标签。第13、14和15行显示了有效标记如何映射到它们各自的标记形状。这些图片存储在第16行,作为提出下面:Diagram Row = Get pictureBox [UE,UP,UO];这里UO表示用户结果的特定形状。这些形状存储在“关系图”行中,以便在DFD生成的后续阶段中使用算法3. DFD Level 1表3相关文档中共享模式的示例。1报告2读3记录4原因5结果6读者如前所述,我们已经利用web抓取方法从不同的web收集有效令牌的列表S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报633[网站.在过程(P)、实体(E)和结果(O)的有效列表的该收集过程期间,这些P和E之间的相应关系也被存储以在DFD生成的稍后阶段中使用。这些关系显示了特定的P和E如何相互通信。它们具有单向或双向关系。关系的具体类型取决于系统的类型和我们正在构建DFD的系统层次结构。存储的关系包含过程、子过程、实体、数据存储和结果之间关系的所有可能性。特定关系的利用取决于用户提供的用于创建DFD的输入。算法2用于创建DFD级别0。在DFD级别0,我们需要显示系统输入和输出之间的项目在创建DFD级别0时,系统被描述为单个气泡(流程),并按照DFD的一般指导原则说明了主要输入和输出。算法2包含不同的条件语句,分别在第2、5、8和11行检查实体、过程和输出之间的关系。基于数据存储库中指定的关系和关系图行中的元素,DFD级别0的构造如图所示四、由于这些关系可以是双向的,我们有不同的条件块来检查上述约束。这些块用于检查和绘制从E到P,P到O的箭头,反之亦然。算法3:为了生成DFD level1,按照DFD的指导方针,我们已经展示了该级别的所有流程及其关联关系。因此,在算法3中,我们拥有过程、子过程、实体、数据存储和结果之间关系的所有可能性。从存储库中提取指定的关系,并利用针对指定项目的所有过程的信息,如图5所示。映射后,图表可以导出为. jpg或. png格式的指定DFD级别。算法4. DFD Level 2算法4:DFD级别2包括所有可以进一步分解的高级过程,同时保持级别之间的一致性。上面的示例有一个名为“确认注册”的过程,其中两个子系统被标识为“通过SMS”或“通过电子邮件”,这涉及将注册的学生分配到一个班级,同时为他们维护单独的记录。另一个数组列表已被生成,以处理所有的子过程中突出显示的算法:4从1-6行分解一个单一的过程在这一级。子过程的可能性分别在第8、11、14和20行突出显示,导致如图1所示的关系。 六、4. 结果评价和讨论DFD向设计人员展示了系统为了降低绘制DFD的复杂性,我们提出并开发了一个半自动化工具(原型类型)来将业务逻辑分解为DFD。为了验证所提出的系统例如,我们提供了订单管理系统案例研究的证据。订单管理使企业能够协调整个流程的履行,是扩展业务的重要步骤 我们采用两个订单管理系统的数据流图(DFD),一个是使 用 图 7 -b 所 示 的 拟 议 技 术 构 建 的 , 另 一 个 是 从 建 模 工 具(AssignmentHelp,2021)中选取的,如图7-b所示。 7-a.最后,我们开发了一种机制来验证和比较所提出的系统的输出与上述最先进的DFD,通过下面给出的步骤。4.1. 从传统的DFD到纯化的DFD纯化的DFD是传统的比较数据集中的版本,典型的DFD。在纯化的DFD中,数据将由矩形表示角和有向线表示数据传输。流程由圆圈表示,并且应该是细粒度和规则的(Li等人, 2019年)。定义:纯化的DFD可以表示为一个有向图G(V,E),V表示一组节点,E表示一组有向边,用于表示数据流方向。特别地,V =PD,其中P表示过程,并且已知D是数据节点。上述订单管理系统,如图所示. 8,表示V = 13和E = 12的有向图。通过逐步转换数据和过程活动,可以从传统DFD中提炼纯化DFD特别地,我们采用上述传统的和系统产生的DFD并将它们转化为图1B中所示的纯化的DFD。 8-a和图。 8-b遵守以下基本规则1和规则2:规则1:流程需要足够详细,以便能够代表所有单独的处理活动.每个过程表示都应该在输入和输出数据方面是语义的,这样它就不能被进一步分解。规则2:表示相应数据处理活动的流程应该使用语义上有意义的动词或动词短语来命名。数据应该是一个有意义的规范性名词或名词短语。对于我们生成的纯化DFD,可以清楚地说它们符合这些规则。从传统的DFD浓缩到纯化的DFD,外部实体和数据存储被排除作为辅助信息。每个数据处理活动及其数据语义粒度保持原样。S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报634图3.第三章。一个简单的DFD机票预订系统的例子见图4。 0级的结果图五. 1级的结果4.2. 将纯化的DFD映射到概念图概念图(CG)是用于基于图的知识表示的形式体系(Li等人,2019年)。简化为了表示纯化的DFD,我们将它们映射到如图9所示的概念图中。 (a)和图9。 (b). 为了验证概念图的正则性,我们保证每个过程节点只属于一个输出节点,并且每个过程节点都是一个输出节点。S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报635见图6。 2级的结果见图7。 (a)最先进的DFD-级别数据节点对应于单一类型的在先过程或子过程。规则3:每个流程或子流程节点需要调整为只有一个输出数据。规则4:每个数据节点都应该以这样一种方式进行调整,即它最多有一种先例过程。例如,规则3和4的图形表示如图所示。 10和图 十一岁可以描述图G1和G2符合这些规则。4.3. 度量两个图本节详细介绍了检查纯化数据流图对之间相似性的方法。我们通过以下三个顺序阶段开发了该机制,即,图的预处理,图之间相似性的度量,以及使用图论的验证。图论是将数据流图(DFD)表示为有向图的另一种方法(LiS.M. Cheema,S.塔里克和我皮雷沙特国王大学学报636≈ð Þ ðÞ 2ð)2不图8.第八条。(a)纯化的最新DFD(b)纯化的建议系统见图9。(a)纯化的DFD(1)的概念图G1(b)纯化的DFD(2)的概念图G2。例如,2019; Schulze,2011),并可用于测量两个图之间的相似性(Grohe等人,2018年,Schuld等人,2020年,Rai和Punjabi,2017年,Kokhov,2012年,Quesada,2019年,Valiente,2002年,Brádler等人,2018,Shrivastava和Li,2014)。我们在更大的,不同的系统的DFD上使用这种方法,发现它是可靠的。我们将纯化的DFD转化为有向图或有向图,这些图具有带方向的边。一个有向图或有向图是一个有序的三元组G/V;E;/]。为了检验两个有向图(G1和G2)之间的相似性两个图是同构的(Kobler等人, 2012年)(G1G2)当且仅当它们的邻接矩阵同构使得:auavE G2uvE G1然而,找到这样的映射也等价于找到置换矩阵P,使得:A1½磅PA2磅P1磅这里A1和A2是为图G1和G2绘制的相应邻接矩阵。 在我们的例子中,为了验证(G1<$G2),我们需要满足标记为“1”的方程图G1和G2之间的同构关系表示在表4中。S.M. Cheema,S.塔里克和我皮雷沙特国王大学学报63766¼02007701/4A:1300见图10。 规则3的概念介绍。见图11。 规则4的概念介绍。我们计算了方程“1”的右侧,矩阵P;A2和PT的乘法满足左手边,因此G1和G2是同构的,给出如下:通过比较两个图G1和G2的每条路,可以得到两个图G1和G2的有向序列. G1 中的路径与G2中相应的路径相 同 如下: G1)D1!P1!P5;P2P表401611616006064000007017070070750G2)D1!N1!N6。G1)D1!P1!P6;G2)D1!N1!N5。G1)D1!P2!P7;G2)D1! N2!N8。G1)D1!P2!P8;G2)D1!N2!N7。G1)D1!P3!P9;G2)D1!N4!N12。G1)D1!P3!P10;G2)D1!N4!N11。G1)D1!P4!P11;G2)D1!N3!N9。G1)D1!P4!P12;G2)D1!N3!N10.4.4. 讨论正如第2节中强调的那样,我们建立了一些衡量工具和技术性能所需的关键参数。在生成UML图时,这些参数被用作一个基线,以密切理解
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功