scholarly journals CAPSTONE SOFTWARE ENGINEERING STUDENTS CAN DEVELOP A HIGH-QUALITY COMPLEX SYSTEM: A CASE STUDY WITH UMPLE

Author(s):  
Timothy C. Lethbridge

Umple is an open-source programming technology developed almost entirely by students, the majority of whom were working on it as their capstone project through a program called UCOSP. We describe our development process for Umple that has provided a rich educational experience for the students, while at the same time continually improving Umple’s quality. We also describe features of Umple that have been designed to facilitate its use in teaching software engineering.  

Author(s):  
Michael Hahsler

Several successful projects (Linux, Free-BSD, BIND, Apache, etc.) showed that the collaborative and self-organizing process of developing open source software produces reliable, high quality software. Without doubt, the open source software development process differs in many ways from the traditional development process in a commercial environment. An interesting research question is how these differences influence the adoption of traditional software engineering practices. In this chapter we investigate how design patterns, a widely accepted software engineering practice, are adopted by open source developers for documenting changes. We analyze the development process of almost 1,000 open source software projects using version control information and explore differences in pattern adoption using characteristics of projects and developers. By analyzing these differences, we provide evidence that design patterns are an important practice in open source projects and that there exist significant differences between developers who use design patterns and who do not.


Author(s):  
Michael Hahsler

Several successful projects (Linux, Free-BSD, BIND, Apache, etc.) showed that the collaborative and self-organizing process of developing open source software produces reliable, high quality software. Without doubt, the open source software development process differs in many ways from the traditional development process in a commercial environment. An interesting research question is how these differences influence the adoption of traditional software engineering practices. In this chapter we investigate how design patterns, a widely accepted software engineering practice, are adopted by open source developers for documenting changes. We analyze the development process of almost 1,000 open source software projects using version control information and explore differences in pattern adoption using characteristics of projects and developers. By analyzing these differences, we provide evidence that design patterns are an important practice in open source projects and that there exist significant differences between developers who use design patterns and who do not.


2021 ◽  
Vol 13 (11) ◽  
pp. 5768
Author(s):  
Hugo A López ◽  
Pedro Ponce ◽  
Arturo Molina ◽  
María Soledad Ramírez-Montoya ◽  
Edgar Lopez-Caudana

Nowadays, engineering students have to improve specific competencies to tackle the challenges of 21st-century-industry, referred to as Industry 4.0. Hence, this article describes the integration and implementation of Education 4.0 strategies with the new educational model of our university to respond to the needs of Industry 4.0 and society. The TEC21 Educational Model implemented at Tecnologico de Monterrey in Mexico aims to develop disciplinary and transversal competencies for creative and strategic problem-solving of present and future challenges. Education 4.0, as opposed to traditional education, seeks to provide solutions to these challenges through innovative pedagogies supported by emerging technologies. This article presents a case study of a Capstone project developed with undergraduate engineering students. The proposed structure integrates the TEC21 model and Education 4.0 through new strategies and laboratories, all linked to industry. The results of a multidisciplinary project focused on an electric vehicle racing team are presented, composed of Education 4.0 elements and competencies development in leadership, innovation, and entrepreneurship. The project was a collaboration between academia and the productive sector. The results verified the students’ success in acquiring the necessary competencies and skills to become technological leaders in today’s modern industry. One of the main contributions shown is a suitable education framework for bringing together the characteristics established by Education 4.0 and achieved by our educational experience based on Education 4.0.


2021 ◽  
Author(s):  
Jason Hunter ◽  
Mark Thyer ◽  
Dmitri Kavetski ◽  
David McInerney

<p>Probabilistic predictions provide crucial information regarding the uncertainty of hydrological predictions, which are a key input for risk-based decision-making. However, they are often excluded from hydrological modelling applications because suitable probabilistic error models can be both challenging to construct and interpret, and the quality of results are often reliant on the objective function used to calibrate the hydrological model.</p><p>We present an open-source R-package and an online web application that achieves the following two aims. Firstly, these resources are easy-to-use and accessible, so that users need not have specialised knowledge in probabilistic modelling to apply them. Secondly, the probabilistic error model that we describe provides high-quality probabilistic predictions for a wide range of commonly-used hydrological objective functions, which it is only able to do by including a new innovation that resolves a long-standing issue relating to model assumptions that previously prevented this broad application.  </p><p>We demonstrate our methods by comparing our new probabilistic error model with an existing reference error model in an empirical case study that uses 54 perennial Australian catchments, the hydrological model GR4J, 8 common objective functions and 4 performance metrics (reliability, precision, volumetric bias and errors in the flow duration curve). The existing reference error model introduces additional flow dependencies into the residual error structure when it is used with most of the study objective functions, which in turn leads to poor-quality probabilistic predictions. In contrast, the new probabilistic error model achieves high-quality probabilistic predictions for all objective functions used in this case study.</p><p>The new probabilistic error model and the open-source software and web application aims to facilitate the adoption of probabilistic predictions in the hydrological modelling community, and to improve the quality of predictions and decisions that are made using those predictions. In particular, our methods can be used to achieve high-quality probabilistic predictions from hydrological models that are calibrated with a wide range of common objective functions.</p>


2015 ◽  
Vol 3 ◽  
pp. 348-355
Author(s):  
Jaroslava Kniežová

In modern times, competitiveness in the market depends on having a good information system. The companies developing and supplying information systems are in competition too, and having an effective system of delivery is critical for obtaining lucrative offers. Therefore, the software development companies continuously try to improve their development process to supply the product in a short time and with high quality. The agile approach potentially shortens this time and is very often used. This approach has almost replaced the traditional process. More and more companies implement agile approach in these times to be competitive in the software development market and hasten product delivering.The traditional and agile approaches differ in certain perspectives. Hence, the question arises as to whether the agile approach is the best for the software development company in every case. This article contains a comparison of these two approaches, as well as a case study relating to the agile approach in a real software development company, which had previously used the traditional approach. The article also describes situation where replacing the traditional approach with agile would improve results.


2012 ◽  
Vol 4 (1) ◽  
pp. 37-59 ◽  
Author(s):  
Megan Squire

Artifacts of the software development process, such as source code or emails between developers, are a frequent object of study in empirical software engineering literature. One of the hallmarks of free, libre, and open source software (FLOSS) projects is that the artifacts of the development process are publicly-accessible and therefore easily collected and studied. Thus, there is a long history in the FLOSS research community of using these artifacts to gain understanding about the phenomenon of open source software, which could then be compared to studies of software engineering more generally. This paper looks specifically at how the FLOSS research community has used email artifacts from free and open source projects. It provides a classification of the relevant literature using a publicly-available online repository of papers about FLOSS development using email. The outcome of this paper is to provide a broad overview for the software engineering and FLOSS research communities of how other researchers have used FLOSS email message artifacts in their work.


Author(s):  
Kevin Gary ◽  
Harry Koehnemann

The software engineering community touts component-based software engineering as a solution for many of its woes including reducing cycle time, reducing costs, increasing productivity, allowing easier integration to name just a few. Indeed, many Web-based systems are now built with open-source and vendor provided component technologies. While these advances have led to improvements in the development process, they have also led to a great deal of pressure on downstream processes as these systems must be deployed, tuned, and supported. The complexities in deploying and supporting component- based software for distributed and Web-based applications are not understood in the academic or professional communities. This chapter stresses the need for addressing this problem by presenting component-based software for Web applications from a deployment perspective, characterizing the issues through real-world experiences with highly component-based applications, and presents strategies and directions for the community to pursue.


Sign in / Sign up

Export Citation Format

Share Document