In the context of large language model(LLM)reshaping software engineering education,this paper presents OSSerCopilot,a LLM-based tutoring system designed to address the critical challenge faced by newcomers(especially...In the context of large language model(LLM)reshaping software engineering education,this paper presents OSSerCopilot,a LLM-based tutoring system designed to address the critical challenge faced by newcomers(especially student contributors)in open source software(OSS)communities.Leveraging natural language processing,code semantic understanding,and learner profiling,the system functions as an intelligent tutor to scaffold three core competency domains:contribution guideline interpretation,project architecture comprehension,and personalized task matching.By transforming traditional onboarding barriers-such as complex contribution documentation and opaque project structures-into interactive learning journeys,OSSerCopilot enables newcomers to complete their first OSS contribution more easily and confidently.This paper highlights how LLM technologies can redefine software engineering education by bridging the gap between theoretical knowledge and practical OSS participation,offering implications for curriculum design,competency assessment,and sustainable OSS ecosystem cultivation.A demonstration video of the system is available at https://figshare.com/articles/media/OSSerCopilot_Introduction_mp4/29510276.展开更多
In recent years,it is the general trend to adopt the standards of international engineering education certification to construct curriculum.“Software Process and Tools”is one of the core courses of Harbin Institute ...In recent years,it is the general trend to adopt the standards of international engineering education certification to construct curriculum.“Software Process and Tools”is one of the core courses of Harbin Institute of Technology’s software engineering undergraduate training program.Focusing on the construction work and practical exploration of the course in the process of reforming the software engineering professional curriculum system,and how to achieve the standards of engineering education certification,This paper makes a review and summary.This paper focuses on the status and the role of the course in the whole curriculum system,as well as project-driven teaching content design and practical teaching methods.And summarizes the experience and results of 3 rounds of teaching practice.展开更多
The work of software engineers is inherently cognitive. Integral to their duties is understanding and developing several artifacts. Each one is based on a specific model and a given level of abstraction. What distingu...The work of software engineers is inherently cognitive. Integral to their duties is understanding and developing several artifacts. Each one is based on a specific model and a given level of abstraction. What distinguishes Software Engineering is the logical complexity of some artifacts (especially programs), the high dependency among them, and the fact that the success of the software project also depends on the human and social factors, which characterize the engineers as individuals and as a group. The complexity of the daily tasks within a software development team motivates the investigation on the relevance of automating the software professionals’ cognitive processes in order to make their work easier and more efficient. The success of this endeavor is expected to emerge as Cognitive Software Engineering. For this aim, the present article suggests a research framework and roadmap, which build on the current state of the art. Some future directions in the Cognitive Software Engineering are presented.展开更多
In the paper the basic elements of CAD systems from software point of view are dis- cussed.The creation and next the modification of CAD systems needs specialized software tools.In the paper the idea computer Aided So...In the paper the basic elements of CAD systems from software point of view are dis- cussed.The creation and next the modification of CAD systems needs specialized software tools.In the paper the idea computer Aided Software Engineering(CASE)for CAD systems production and practi- cal software realization of such a software tool is considered.The main element of this tool is special program provided for convenient storage and modification of CAD source program.In the paper the simple examples are presented and discussed.展开更多
This paper gives an introduction to the essential challenges of software engineering and requirements that software has to fulfill in the domain of automation. Besides, the functional characteristics, specific constra...This paper gives an introduction to the essential challenges of software engineering and requirements that software has to fulfill in the domain of automation. Besides, the functional characteristics, specific constraints and circumstances are considered for deriving requirements concerning usability, the technical process, the automation functions, used platform and the well-established models, which are described in detail. On the other hand, challenges result from the circumstances at different points in the single phases of the life cycle of the automated system. The requirements for life-cycle-management, tools and the changeability during runtime are described in detail.展开更多
China-made 5-axis simultaneous contouring CNC machine tool and domestically developed industrial computer-aided manufacture (CAM) technology were used for full crown fabrication and measurement of crown accuracy, wi...China-made 5-axis simultaneous contouring CNC machine tool and domestically developed industrial computer-aided manufacture (CAM) technology were used for full crown fabrication and measurement of crown accuracy, with an attempt to establish an open CAM system for dental processing and to promote the introduction of domestic dental computer-aided design (CAD)/CAM system. Commercially available scanning equipment was used to make a basic digital tooth model after preparation of crown, and CAD software that comes with the scanning device was employed to design the crown by using domestic industrial CAM software to process the crown data in order to generate a solid model for machining purpose, and then China-made 5-axis simultaneous contouring CNC machine tool was used to complete machining of the whole crown and the internal accuracy of the crown internal was measured by using 3D-MicroCT. The results showed that China-made 5-axis simultaneous contouring CNC machine tool in combination with domestic industrial CAM technology can be used for crown making and the crown was well positioned in die. The internal accuracy was successfully measured by using 3D-MicroCT. It is concluded that an open CAM system for den-tistry on the basis of China-made 5-axis simultaneous contouring CNC machine tool and domestic industrial CAM software has been established, and development of the system will promote the introduction of domestically-produced dental CAD/CAM system.展开更多
The fact that most engineering applications are developed by engineers themselves rather than computer professionals calls for the data modeling methods to be powerful enough to represent complex engineering phenomena...The fact that most engineering applications are developed by engineers themselves rather than computer professionals calls for the data modeling methods to be powerful enough to represent complex engineering phenomena, but simple enough to use. A data modeling method which can help engineers to write C++ code with high quality is introduced.展开更多
Requirements of a system keep on changing based on the need of stakeholders or the system developers, making requirement engineering an important aspect in software development. This develops a need for appropriate re...Requirements of a system keep on changing based on the need of stakeholders or the system developers, making requirement engineering an important aspect in software development. This develops a need for appropriate requirement change management. The importance of requirements traceability is defining relationships between the requirements and artefacts extracted by the stakeholder during the software development life-cycle and gives vital information to encourage software understanding. In this paper, we have concentrated on developing a tool for requirement traceability that can be used to extend the requirement elicitation and identification of system-wide qualities using the notion of quality attribute scenarios to capture the non-functional requirements. It allows us to link the functional and non-functional requirements of the system based on the quality attribute scenarios template proposed by the Carnegie Mellon Software Engineering Institute (SEI). Apart from this, the paper focuses on tracing the functional and non-functional requirements of the system using the concept of requirement traceability matrix.展开更多
In this paper, we identify a set of factors that may be used to forecast software productivity and software development time. Software productivity was measured in function points per person hours, and software develo...In this paper, we identify a set of factors that may be used to forecast software productivity and software development time. Software productivity was measured in function points per person hours, and software development time was measured in number of elapsed days. Using field data on over 130 field software projects from various industries, we empirically test the impact of team size, integrated computer aided software engineering (ICASE) tools, software development type, software development platform, and programming language type on the software development productivity and development time. Our results indicate that team size, software development type, software development platform, and programming language type significantly impact software development productivity. However, only team size significantly impacts software development time. Our results indicate that effective management of software development teams, and using different management strategies for different software development type environments may improve software development productivity.展开更多
基金supported by the National Natural Science Foundation of China (62202022, 92582204, and 62572030)the Fundamental Research Funds for the Central Universitiesthe exploratory elective projects of the State Key Laboratory of Complex and Critical Software Environments
文摘In the context of large language model(LLM)reshaping software engineering education,this paper presents OSSerCopilot,a LLM-based tutoring system designed to address the critical challenge faced by newcomers(especially student contributors)in open source software(OSS)communities.Leveraging natural language processing,code semantic understanding,and learner profiling,the system functions as an intelligent tutor to scaffold three core competency domains:contribution guideline interpretation,project architecture comprehension,and personalized task matching.By transforming traditional onboarding barriers-such as complex contribution documentation and opaque project structures-into interactive learning journeys,OSSerCopilot enables newcomers to complete their first OSS contribution more easily and confidently.This paper highlights how LLM technologies can redefine software engineering education by bridging the gap between theoretical knowledge and practical OSS participation,offering implications for curriculum design,competency assessment,and sustainable OSS ecosystem cultivation.A demonstration video of the system is available at https://figshare.com/articles/media/OSSerCopilot_Introduction_mp4/29510276.
文摘In recent years,it is the general trend to adopt the standards of international engineering education certification to construct curriculum.“Software Process and Tools”is one of the core courses of Harbin Institute of Technology’s software engineering undergraduate training program.Focusing on the construction work and practical exploration of the course in the process of reforming the software engineering professional curriculum system,and how to achieve the standards of engineering education certification,This paper makes a review and summary.This paper focuses on the status and the role of the course in the whole curriculum system,as well as project-driven teaching content design and practical teaching methods.And summarizes the experience and results of 3 rounds of teaching practice.
文摘The work of software engineers is inherently cognitive. Integral to their duties is understanding and developing several artifacts. Each one is based on a specific model and a given level of abstraction. What distinguishes Software Engineering is the logical complexity of some artifacts (especially programs), the high dependency among them, and the fact that the success of the software project also depends on the human and social factors, which characterize the engineers as individuals and as a group. The complexity of the daily tasks within a software development team motivates the investigation on the relevance of automating the software professionals’ cognitive processes in order to make their work easier and more efficient. The success of this endeavor is expected to emerge as Cognitive Software Engineering. For this aim, the present article suggests a research framework and roadmap, which build on the current state of the art. Some future directions in the Cognitive Software Engineering are presented.
文摘In the paper the basic elements of CAD systems from software point of view are dis- cussed.The creation and next the modification of CAD systems needs specialized software tools.In the paper the idea computer Aided Software Engineering(CASE)for CAD systems production and practi- cal software realization of such a software tool is considered.The main element of this tool is special program provided for convenient storage and modification of CAD source program.In the paper the simple examples are presented and discussed.
文摘This paper gives an introduction to the essential challenges of software engineering and requirements that software has to fulfill in the domain of automation. Besides, the functional characteristics, specific constraints and circumstances are considered for deriving requirements concerning usability, the technical process, the automation functions, used platform and the well-established models, which are described in detail. On the other hand, challenges result from the circumstances at different points in the single phases of the life cycle of the automated system. The requirements for life-cycle-management, tools and the changeability during runtime are described in detail.
基金supported by a grant from the PLA Program for Clinical High-tech Projects for Military Hospitals (No. 2010GXJS053)
文摘China-made 5-axis simultaneous contouring CNC machine tool and domestically developed industrial computer-aided manufacture (CAM) technology were used for full crown fabrication and measurement of crown accuracy, with an attempt to establish an open CAM system for dental processing and to promote the introduction of domestic dental computer-aided design (CAD)/CAM system. Commercially available scanning equipment was used to make a basic digital tooth model after preparation of crown, and CAD software that comes with the scanning device was employed to design the crown by using domestic industrial CAM software to process the crown data in order to generate a solid model for machining purpose, and then China-made 5-axis simultaneous contouring CNC machine tool was used to complete machining of the whole crown and the internal accuracy of the crown internal was measured by using 3D-MicroCT. The results showed that China-made 5-axis simultaneous contouring CNC machine tool in combination with domestic industrial CAM technology can be used for crown making and the crown was well positioned in die. The internal accuracy was successfully measured by using 3D-MicroCT. It is concluded that an open CAM system for den-tistry on the basis of China-made 5-axis simultaneous contouring CNC machine tool and domestic industrial CAM software has been established, and development of the system will promote the introduction of domestically-produced dental CAD/CAM system.
文摘The fact that most engineering applications are developed by engineers themselves rather than computer professionals calls for the data modeling methods to be powerful enough to represent complex engineering phenomena, but simple enough to use. A data modeling method which can help engineers to write C++ code with high quality is introduced.
文摘Requirements of a system keep on changing based on the need of stakeholders or the system developers, making requirement engineering an important aspect in software development. This develops a need for appropriate requirement change management. The importance of requirements traceability is defining relationships between the requirements and artefacts extracted by the stakeholder during the software development life-cycle and gives vital information to encourage software understanding. In this paper, we have concentrated on developing a tool for requirement traceability that can be used to extend the requirement elicitation and identification of system-wide qualities using the notion of quality attribute scenarios to capture the non-functional requirements. It allows us to link the functional and non-functional requirements of the system based on the quality attribute scenarios template proposed by the Carnegie Mellon Software Engineering Institute (SEI). Apart from this, the paper focuses on tracing the functional and non-functional requirements of the system using the concept of requirement traceability matrix.
文摘In this paper, we identify a set of factors that may be used to forecast software productivity and software development time. Software productivity was measured in function points per person hours, and software development time was measured in number of elapsed days. Using field data on over 130 field software projects from various industries, we empirically test the impact of team size, integrated computer aided software engineering (ICASE) tools, software development type, software development platform, and programming language type on the software development productivity and development time. Our results indicate that team size, software development type, software development platform, and programming language type significantly impact software development productivity. However, only team size significantly impacts software development time. Our results indicate that effective management of software development teams, and using different management strategies for different software development type environments may improve software development productivity.