Accurate software cost estimation in Global Software Development(GSD)remains challenging due to reliance on historical data and expert judgments.Traditional models,such as the Constructive Cost Model(COCOMO II),rely h...Accurate software cost estimation in Global Software Development(GSD)remains challenging due to reliance on historical data and expert judgments.Traditional models,such as the Constructive Cost Model(COCOMO II),rely heavily on historical and accurate data.In addition,expert judgment is required to set many input parameters,which can introduce subjectivity and variability in the estimation process.Consequently,there is a need to improve the current GSD models to mitigate reliance on historical data,subjectivity in expert judgment,inadequate consideration of GSD-based cost drivers and limited integration of modern technologies with cost overruns.This study introduces a novel hybrid model that synergizes the COCOMO II with Artificial Neural Networks(ANN)to address these challenges.The proposed hybrid model integrates additional GSD-based cost drivers identified through a systematic literature review and further vetted by industry experts.This article compares the effectiveness of the proposedmodelwith state-of-the-artmachine learning-basedmodels for software cost estimation.Evaluating the NASA 93 dataset by adopting twenty-six GSD-based cost drivers reveals that our hybrid model achieves superior accuracy,outperforming existing state-of-the-artmodels.The findings indicate the potential of combining COCOMO II,ANN,and additional GSD-based cost drivers to transform cost estimation in GSD.展开更多
Software engineering is a highly practical major,and students need a lot of hands-on practice to transform the theoretical contents learned in class into the practical ability to solve practical problems,so practical ...Software engineering is a highly practical major,and students need a lot of hands-on practice to transform the theoretical contents learned in class into the practical ability to solve practical problems,so practical courses are an essential and important part in the process of training talents in software engineering.From the point of view of cultivating talents in software engineering,this paper expounds the important position of practical courses in software engineering in the process of cultivating talents,analyzes the problems in the existing practical courses,and puts forward the construction ideas and characteristics of practical courses in software engineering which strengthen the foundation,advance steadily,and face the output.Taking the practical course for software system development as an example,this paper introduces in detail the concrete implementation process,achievements,existing problems and countermeasures of the course.展开更多
This white paper explores three popular development methodologies for network softwarization: DevOps, NetOps, and Verification. The paper compares and contrasts the strengths and weaknesses of each approach and provid...This white paper explores three popular development methodologies for network softwarization: DevOps, NetOps, and Verification. The paper compares and contrasts the strengths and weaknesses of each approach and provides recommendations for organizations looking to adopt network softwarization.展开更多
Structural development defects essentially refer to code structure that violates object-oriented design principles. They make program maintenance challenging and deteriorate software quality over time. Various detecti...Structural development defects essentially refer to code structure that violates object-oriented design principles. They make program maintenance challenging and deteriorate software quality over time. Various detection approaches, ranging from traditional heuristic algorithms to machine learning methods, are used to identify these defects. Ensemble learning methods have strengthened the detection of these defects. However, existing approaches do not simultaneously exploit the capabilities of extracting relevant features from pre-trained models and the performance of neural networks for the classification task. Therefore, our goal has been to design a model that combines a pre-trained model to extract relevant features from code excerpts through transfer learning and a bagging method with a base estimator, a dense neural network, for defect classification. To achieve this, we composed multiple samples of the same size with replacements from the imbalanced dataset MLCQ1. For all the samples, we used the CodeT5-small variant to extract features and trained a bagging method with the neural network Roberta Classification Head to classify defects based on these features. We then compared this model to RandomForest, one of the ensemble methods that yields good results. Our experiments showed that the number of base estimators to use for bagging depends on the defect to be detected. Next, we observed that it was not necessary to use a data balancing technique with our model when the imbalance rate was 23%. Finally, for blob detection, RandomForest had a median MCC value of 0.36 compared to 0.12 for our method. However, our method was predominant in Long Method detection with a median MCC value of 0.53 compared to 0.42 for RandomForest. These results suggest that the performance of ensemble methods in detecting structural development defects is dependent on specific defects.展开更多
To meet society’s needs for undergraduate students to have engineering skills and to develop students’ability to operate Linux and engage in network software development,this paper proposes the construction of a new...To meet society’s needs for undergraduate students to have engineering skills and to develop students’ability to operate Linux and engage in network software development,this paper proposes the construction of a new specialized course for network engineering major--Linux system and network programming.This paper analyzes the course’s advantages,presents the contents of this course,designs a series of teaching methods aimed at improving students’engineering ability,proposes a course assessment method that will encourage students to practice,lists the development requirements for an examination software designed for this course,and finally,presents the results of our practice in teaching this course.展开更多
Combined with practical case, the paper elaborates the development and applications of mechanical drawing, mechanical design and manufacturing based on Solidworks software. By combining professional courses between ea...Combined with practical case, the paper elaborates the development and applications of mechanical drawing, mechanical design and manufacturing based on Solidworks software. By combining professional courses between each other, the knowledge continuously through different courses can enhance students' enthusiasm for the course and make more reasonable arrangement for the courses.展开更多
Visualizing lightning location data is necessary in analyzing and researching lightning activity patterns.This article uses C#and the cross-platform.NET framework to develop a lightning location data analysis class li...Visualizing lightning location data is necessary in analyzing and researching lightning activity patterns.This article uses C#and the cross-platform.NET framework to develop a lightning location data analysis class library and the data-driven client to help lightning researchers improve work efficiency by avoiding repeated wheel invention.Lightning Location System Data Analyzer(LLSDA)is a suite of software tools that includes a.NET class library for software developers and a desktop application for end users.It supports a wide range of lightning location data formats,such as the University of Washington Global Lightning Location System(WWLLN)and Beijing Huayun Dongfang ADTD Lightning Location System data format,and maintains scalability.The class library can easily read,parse,and analyze lightning location data,and combined with third-party frameworks can realize grid analysis.The desktop application can be combined with MeteoInfo(a GIS open-source project)for secondary development.展开更多
搜索并重用相关代码可以有效提高软件开发效率。基于深度学习的代码搜索模型通常将代码片段和查询语句嵌入同一向量空间,通过计算余弦相似度匹配并输出相应代码片段;然而大多数模型忽略了代码片段与查询语句间的协同信息。为了更全面地...搜索并重用相关代码可以有效提高软件开发效率。基于深度学习的代码搜索模型通常将代码片段和查询语句嵌入同一向量空间,通过计算余弦相似度匹配并输出相应代码片段;然而大多数模型忽略了代码片段与查询语句间的协同信息。为了更全面地表征语义信息,提出一种基于协同融合的代码搜索模型BofeCS。首先,采用BERT(Bidirectional Encoder Representations from Transformers)模型提取输入序列的语义信息并将它表征为向量;其次,构建协同融合网络提取代码片段和查询语句间分词级的协同信息;最后,构建残差网络缓解表征过程中的语义信息丢失。为验证BofeCS的有效性,在多语言数据集CodeSearchNet上进行实验。实验结果表明,相较于基线模型UNIF(embedding UNIFication)、TabCS(Two-stage attention-based model for Code Search)和MRCS(Multimodal Representation for neural Code Search),BofeCS的平均倒数排名(MRR)、归一化折损累计增益(NDCG)和前k位成功命中率(SR@k)均有显著提高,其中MRR值分别提升了95.94%、52.32%和16.95%。展开更多
文摘Accurate software cost estimation in Global Software Development(GSD)remains challenging due to reliance on historical data and expert judgments.Traditional models,such as the Constructive Cost Model(COCOMO II),rely heavily on historical and accurate data.In addition,expert judgment is required to set many input parameters,which can introduce subjectivity and variability in the estimation process.Consequently,there is a need to improve the current GSD models to mitigate reliance on historical data,subjectivity in expert judgment,inadequate consideration of GSD-based cost drivers and limited integration of modern technologies with cost overruns.This study introduces a novel hybrid model that synergizes the COCOMO II with Artificial Neural Networks(ANN)to address these challenges.The proposed hybrid model integrates additional GSD-based cost drivers identified through a systematic literature review and further vetted by industry experts.This article compares the effectiveness of the proposedmodelwith state-of-the-artmachine learning-basedmodels for software cost estimation.Evaluating the NASA 93 dataset by adopting twenty-six GSD-based cost drivers reveals that our hybrid model achieves superior accuracy,outperforming existing state-of-the-artmodels.The findings indicate the potential of combining COCOMO II,ANN,and additional GSD-based cost drivers to transform cost estimation in GSD.
文摘Software engineering is a highly practical major,and students need a lot of hands-on practice to transform the theoretical contents learned in class into the practical ability to solve practical problems,so practical courses are an essential and important part in the process of training talents in software engineering.From the point of view of cultivating talents in software engineering,this paper expounds the important position of practical courses in software engineering in the process of cultivating talents,analyzes the problems in the existing practical courses,and puts forward the construction ideas and characteristics of practical courses in software engineering which strengthen the foundation,advance steadily,and face the output.Taking the practical course for software system development as an example,this paper introduces in detail the concrete implementation process,achievements,existing problems and countermeasures of the course.
文摘This white paper explores three popular development methodologies for network softwarization: DevOps, NetOps, and Verification. The paper compares and contrasts the strengths and weaknesses of each approach and provides recommendations for organizations looking to adopt network softwarization.
文摘Structural development defects essentially refer to code structure that violates object-oriented design principles. They make program maintenance challenging and deteriorate software quality over time. Various detection approaches, ranging from traditional heuristic algorithms to machine learning methods, are used to identify these defects. Ensemble learning methods have strengthened the detection of these defects. However, existing approaches do not simultaneously exploit the capabilities of extracting relevant features from pre-trained models and the performance of neural networks for the classification task. Therefore, our goal has been to design a model that combines a pre-trained model to extract relevant features from code excerpts through transfer learning and a bagging method with a base estimator, a dense neural network, for defect classification. To achieve this, we composed multiple samples of the same size with replacements from the imbalanced dataset MLCQ1. For all the samples, we used the CodeT5-small variant to extract features and trained a bagging method with the neural network Roberta Classification Head to classify defects based on these features. We then compared this model to RandomForest, one of the ensemble methods that yields good results. Our experiments showed that the number of base estimators to use for bagging depends on the defect to be detected. Next, we observed that it was not necessary to use a data balancing technique with our model when the imbalance rate was 23%. Finally, for blob detection, RandomForest had a median MCC value of 0.36 compared to 0.12 for our method. However, our method was predominant in Long Method detection with a median MCC value of 0.53 compared to 0.42 for RandomForest. These results suggest that the performance of ensemble methods in detecting structural development defects is dependent on specific defects.
基金supported by the Teaching Research and Reform Project of Qingdao University of Technology under Grant 2024-10335040。
文摘To meet society’s needs for undergraduate students to have engineering skills and to develop students’ability to operate Linux and engage in network software development,this paper proposes the construction of a new specialized course for network engineering major--Linux system and network programming.This paper analyzes the course’s advantages,presents the contents of this course,designs a series of teaching methods aimed at improving students’engineering ability,proposes a course assessment method that will encourage students to practice,lists the development requirements for an examination software designed for this course,and finally,presents the results of our practice in teaching this course.
文摘Combined with practical case, the paper elaborates the development and applications of mechanical drawing, mechanical design and manufacturing based on Solidworks software. By combining professional courses between each other, the knowledge continuously through different courses can enhance students' enthusiasm for the course and make more reasonable arrangement for the courses.
文摘Visualizing lightning location data is necessary in analyzing and researching lightning activity patterns.This article uses C#and the cross-platform.NET framework to develop a lightning location data analysis class library and the data-driven client to help lightning researchers improve work efficiency by avoiding repeated wheel invention.Lightning Location System Data Analyzer(LLSDA)is a suite of software tools that includes a.NET class library for software developers and a desktop application for end users.It supports a wide range of lightning location data formats,such as the University of Washington Global Lightning Location System(WWLLN)and Beijing Huayun Dongfang ADTD Lightning Location System data format,and maintains scalability.The class library can easily read,parse,and analyze lightning location data,and combined with third-party frameworks can realize grid analysis.The desktop application can be combined with MeteoInfo(a GIS open-source project)for secondary development.
文摘搜索并重用相关代码可以有效提高软件开发效率。基于深度学习的代码搜索模型通常将代码片段和查询语句嵌入同一向量空间,通过计算余弦相似度匹配并输出相应代码片段;然而大多数模型忽略了代码片段与查询语句间的协同信息。为了更全面地表征语义信息,提出一种基于协同融合的代码搜索模型BofeCS。首先,采用BERT(Bidirectional Encoder Representations from Transformers)模型提取输入序列的语义信息并将它表征为向量;其次,构建协同融合网络提取代码片段和查询语句间分词级的协同信息;最后,构建残差网络缓解表征过程中的语义信息丢失。为验证BofeCS的有效性,在多语言数据集CodeSearchNet上进行实验。实验结果表明,相较于基线模型UNIF(embedding UNIFication)、TabCS(Two-stage attention-based model for Code Search)和MRCS(Multimodal Representation for neural Code Search),BofeCS的平均倒数排名(MRR)、归一化折损累计增益(NDCG)和前k位成功命中率(SR@k)均有显著提高,其中MRR值分别提升了95.94%、52.32%和16.95%。