期刊文献+

Code Smell视角下分层Web应用失血及充血现象的量化分析 被引量:2

Quantifying Anemia and Bloodshot of Layers in Web Applications from the Perspective of Code Smell
下载PDF
导出
摘要 分层Web应用的领域层由领域模型构成.仅存储数据且不实现行为的领域模型被称作失血领域模型,其状态和数据由非领域层中的类维护,造成后者的充血现象.失血和充血现象损害了Web应用的可维护性,然而,由于缺乏量化分析和研究,其论据多基于主观经验得出.本文度量三种Code Smell(Feature Envy、Blob和Data Class)的强度,将它们作为衡量失血和充血现象的标准,对现象进行量化分析,进而得出它们之间的相关性.本文对一个公开数据集的91个Java Web项目及10个不同领域的开源Java Web应用的多个版本进行了实验,实验发现至少有75%的项目受领域层失血和服务层充血现象的影响,这些现象极少被解决或减弱,两者的强度在不同类间存在相关性,且两者强度的增量在同一软件项目的不同版本间亦存在相关性. Domain Models shape the Domain Layer of Web Applications.Anemic Domain Models(ADMs)are Domain Models holding only data.States of ADMs are maintained by classes in other layers,causing the latter bloodshot.However,there lacks research revealing the significance of impact that anemia and bloodshot of layers pose on maintainability.To quantify the significance,this paper assesses intensity of 3 Code Smells(Feature Envy,Blob and Data Class)as evaluation standards.Through an experiment conducted on 91 Java projects and multiple releases of 10 Java Web applications,this paper concludes that over 75%of the projects are affected.As the impact persists,correlations of the intensities exist among different classes of a project as well as same classes in different releases of a project.
作者 黄子杰 陈军华 高建华 HUANG Zi-jie;CHEN Jun-hua;GAO Jian-hua(Department of Computer Science and Technology,Shanghai Normal University,Shanghai 200234,China)
出处 《电子学报》 EI CAS CSCD 北大核心 2020年第4期772-780,共9页 Acta Electronica Sinica
基金 国家自然科学基金(No.61672355)。
关键词 软件可维护性 WEB应用 分层结构 CODE smell 领域建模 software maintainability web application layered architecture code smell domain modeling
  • 相关文献

参考文献3

二级参考文献23

  • 1谭佳,孙艳春,梅宏.ABC方法中体系结构风格建模的研究[J].电子学报,2006,34(5):969-976. 被引量:1
  • 2M Fowler.Patterns of Enterprise Application Architecture[M].Addison-Wesley,2002.
  • 3S R Kaegi,D Deugo.Modular java Web applications[A].Proceedings of the 2008 ACM symposium on Applied computing[C].New York:ACM,2008.688-693.
  • 4Oracle Inc Enterprise JavaBeans Technology[S/OL].http://www.oracle.com/technetwork/java/javaee/ejb/index.html,2013-01-09.
  • 5W3C.Web Services Description Language (WSDL) 1.1[S/OL].http://www.w3.org/TR/wsdl,2013-01-09.
  • 6B Sengupta,S Chandra,V.Sinha.A research agenda for distributed software development[A].Proceedings of the 28th International Conference on Software Engineering[C].New York:ACM,2006.731-740.
  • 7Oracle Inc.Web Application Archive[OL].http://docs.oracle.com/javaee/5/tutorial/doc/bnadx.html,2013-01-09.
  • 8Garlan D.What is style?[A].Proceeding of the Dagshtul Workshop on Software Architecture[C].http://www.cs.cmu.edu/afs/cs/projec/able/ftp/style iwass95/style-iwass95.Pdf,1995.
  • 9Buschmann F,Meunier R,Rohnert H,Sommerlad P,Stal M.Pattern-Oriented Software Architecture.Vo1.1:A System of Patterns[M].West Sussex:John Wiley&Sons,1996.
  • 10Min Luo,M Endrei,P Comte,P Krogdahl,J Ang,T Newling.Patterns:Service-Oriented Architecture and Web Services[M/OL].http://www.redbooks.ibm.com/redbooks/pdfs/sg246303.pdf,IBM Redbooks publication,2004.

共引文献20

同被引文献6

引证文献2

二级引证文献6

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部