Automated Feedback Generation (AFG) was proposed to automatically generate personalized feedback on students' programming assignments. Existing AFG techniques have been developed mainly for novice programmers, so ...
详细信息
ISBN:
(纸本)9781665437844
Automated Feedback Generation (AFG) was proposed to automatically generate personalized feedback on students' programming assignments. Existing AFG techniques have been developed mainly for novice programmers, so feedback on complex programs cannot be generated. Therefore, we propose MUNCK, which automatically generates feedback for multiple function programs, one of the complex programs. Our experiment shows that MUNCK can generate feedback for 90% of multiple function programs.
Organizations are adopting multiple best practices models to improve overall performance. Their objective is to capture the cumulative added value of each model into one single environment. These multimodel environmen...
详细信息
ISBN:
(纸本)9780769542669
Organizations are adopting multiple best practices models to improve overall performance. Their objective is to capture the cumulative added value of each model into one single environment. These multimodel environments raise several challenges;selection and composition of models are not straightforward tasks. This paper proposes an approach to help address these challenges by comparing models at a quantitative level. We propose a characterization of size of a model as a measure of scope coverage and detail of descriptions when compared to a reference model and model complexity in terms of architectural structural connectedness. An example of applying the proposed approach is described in an Industrial context where a multimodel process solution was evolved from CMMI-Dev level 3 to level 5.
Refactoring, the process of improving the design of existing code by changing its internal structure without affecting its external behavior, tends to improve soft-ware quality by improving design, improving readabili...
详细信息
ISBN:
(纸本)9780769539096
Refactoring, the process of improving the design of existing code by changing its internal structure without affecting its external behavior, tends to improve soft-ware quality by improving design, improving readability, and reducing bugs. There are many different refactoring methods, each having a particular purpose and effect. Consequently, the effect of refactorings on software quality attribute may vary. software testing is an external software quality attributes that takes lots of time and effort to make sure that the software performs as intended. In this paper, we propose a classification of refactoring methods based on their measurable effect on software testing effort. This, in turn, helps the software developers decide which refactoring methods to apply in order to optimize a software system with regard to the testing effort.
The monitoring and control software is one of the most important parts of substation automation system. With the rapid development of substation automation system, a main tendency of the monitoring and control softwar...
详细信息
ISBN:
(纸本)9781424448135
The monitoring and control software is one of the most important parts of substation automation system. With the rapid development of substation automation system, a main tendency of the monitoring and control software is to be supportive of the network architecture and to have powerful functions of configuration and real-time performance. The gross structure of SCADA system in substation is introduced in this paper, the entirety design of the configuration monitor software is also discussed, and the key technologies of the configuration software for substation monitoring and control is described. The reliability of this software is very good, and this software can also offer the human-computer interaction interface, So this software has better monitoring effect.
Open Source software is widely used from endusers, software engineers and researchers. The license that accompanies such software is very important for its further use and distribution. However, engineers and research...
详细信息
ISBN:
(纸本)9781509055753
Open Source software is widely used from endusers, software engineers and researchers. The license that accompanies such software is very important for its further use and distribution. However, engineers and researchers are many times not able to choose the appropriate license based on the purpose of the product under development due to the lack of sufficient information on the specifics of each license. In this work, we are addressing the above issue by introducing findOSSLicense that recommends appropriate licenses to users. We are employing a hybrid recommendation using constraintbased, content-based and collaborative approaches. Licenses are recommended based on user needs, on the licenses found in similar open source projects and on the licenses used by similar users. A three-phase process that considers different sources of information is used. We have evaluated findOSSLicense using its initial set of users. The results demonstrate the usefulness of findOSSLicense in the license guiding process.
Background: The influence of each developer's performance on a project's results (e.g., total software development effort) cannot be ignored. To enhance the performance of each developer, there are various app...
详细信息
ISBN:
(纸本)9781728119700
Background: The influence of each developer's performance on a project's results (e.g., total software development effort) cannot be ignored. To enhance the performance of each developer, there are various approaches such as improving softwareengineering education and creating development support tools. In this study, we selected gamification and posing (power posing) and evaluated the effects of these approaches on coding. They are expected to improve the mental state and the motivation of developers. Aim: Select which method (gamification or posing) should be used to enhance developers' work efficiency. Method: Subjects created programs based on given specifications. Group A (Gamification was applied to a task) and group B (Posing was applied to a task) were made. We evaluated the coding time of each group. Results: Gamification was more effective than posing for reducing coding time.
We develop a new method to map (i.e. allocate and schedule) real-time applications into certain multiprocessor systems. Its objectives are 1) the minimization of the number of processors used and 2) the minimization o...
详细信息
ISBN:
(纸本)0769509169
We develop a new method to map (i.e. allocate and schedule) real-time applications into certain multiprocessor systems. Its objectives are 1) the minimization of the number of processors used and 2) the minimization of the deadline missing time. Given a parallel program with real time constraints and a multiprocessor system, our method finds schedules of the program in the system which satisfy all the real time constraints with minimum number of processors. The minimization is carried out through a Pareto-based Generic Algorithm which independently considers the both goals, because they are non-commensurable criteria. Experimental results show that our scheduling algorithm achieved better performance than previous ones. The advantage of our method is that the algorithm producer not a single solution but a family of solutions known as the Pareto-optimal set, out of which designers can select optimal solutions appropriate for their environmental conditions.
In favor of smaller chip areas and associated fabrication costs, designers of embedded multi-core systems on occasion decide not to include cache coherence logic in the hardware design. However, handling all cache coh...
详细信息
ISBN:
(纸本)9780769549224
In favor of smaller chip areas and associated fabrication costs, designers of embedded multi-core systems on occasion decide not to include cache coherence logic in the hardware design. However, handling all cache coherence exclusively in software is error-prone, and there are presently no tools supporting developers in this task. Thus, we propose a new software testing method, based on online inspection of the cache contents, to pinpoint programming mistakes related to cache handling. This concept helps localizing the causing data symbol even for complicated cache handling errors, e. g. where the causing and manifesting code-location of an error differ. Our solution is a pure software solution and does not require any specialized hardware. We evaluate our approach by using it in a large application, and show that we can detect typical cache-related errors.
We propose vectors of finite-state machines whose transitions are labeled by formulas of a common-sense logic as the modelling tool for embedded systems software. We have previously shown that this methodology is very...
详细信息
ISBN:
(纸本)9780769549224
We propose vectors of finite-state machines whose transitions are labeled by formulas of a common-sense logic as the modelling tool for embedded systems software. We have previously shown that this methodology is very efficient in producing succinct and clear models (e. g., in contrast to plain finite-state machines, Petri nets, or Behavior Trees). We show that we can capture requirements precisely and that we can simulate and validate the models. We can, therefore, directly apply Model-Driven engineering and deploy the models into software for diverse platforms with full traceability of requirements. Moreover, the sequential semantics of our vector of finite-state machines enables model-checking, formally establishing the correctness of the model. Finally, our approach facilitates systematic Failure Modes and Effects Analysis (FMEA) for diverse target platforms. We demonstrate the effectiveness of our methodology with several examples widely discussed in the softwareengineering literature and compare this with other approaches, showing that we can prove more properties, and that some claims about verification in such approaches have been exaggerated or are incomplete.
Design patterns are an invaluable resource for developers. Yet, for some of them the implementation of an application concern and the code needed to enforce the design pattern solution can be tangled within the same c...
详细信息
ISBN:
(纸本)9780769546094
Design patterns are an invaluable resource for developers. Yet, for some of them the implementation of an application concern and the code needed to enforce the design pattern solution can be tangled within the same class. This potentially makes classes more complex, more prone to changes and less reusable. In order to keep the complexity of classes under manageable levels, this paper proposes a solution based on aspectorientation. Our solution makes aspects and application classes independent of each other, while connecting code is used to concisely express the role played by classes within design patterns. Developers needing to modify the role of an application class should only update such connecting code, thus keeping changes to application code to a minimum. The performance overhead of such an approach is evaluated and compared with the standard implementation.
暂无评论