Scientia Sinica Informationis · 2020 · 12 citations · 14 references
ComputingCloud ComputingComputer ScienceClimate Change AdaptationEnvironmental ChangeSoftware EngineeringSoftware ConstructionSoftware DesignSoftware EvolutionSoftware MaintenanceSoftware MetricsSoftware Quality AssuranceEnvironmental Context SensingRequirements AssuranceSelf-adaptationSoftware AgingSoftware Co-evolutionSoftware Evolution AnalysisSoftware Maintainability
With advances in cloud computing and big data technologies, “human-cyber-physical” applications are providing increasingly rich information and robust functionality. This imposes new technical changes on software systems, which are required to make self-adaptation and continuous evolution to meet our increasingly higher expectations. This article explores theories and techniques for growing software to meet the challenges caused by constantly changing environments and external resources. It studies the source of the software growability problem, seeks to define software growability, and develops a paradigm for growing software. It further analyzes the challenges of supporting environmental sensing and self-adaptation, realizing seamless evolution and process optimization, and developing quality evaluation and assurance mechanisms for growing software. It also reports recent technical advances in these areas from the perspective of long-living and continuously-growing software.
14
No Silver Bullet Essence and Accidents of Software Engineering
Refactoring improving the design of existing code
Mauricio A. Saca · 2017 · 2.1K citations
Structural Coverage Criteria for Neural Networks Could Be Misleading
Zenan Li, Xiaoxing Ma, Chang Xu et al. · 2019 · 119 citations
Internetware: A Software Paradigm for Internet Computing
Hong Mei, Gang Huang, Tao Xie · Computer · 2012 · 89 citations