372,700 research outputs found

    Large-scale Complex IT Systems

    Get PDF
    This paper explores the issues around the construction of large-scale complex systems which are built as 'systems of systems' and suggests that there are fundamental reasons, derived from the inherent complexity in these systems, why our current software engineering methods and techniques cannot be scaled up to cope with the engineering challenges of constructing such systems. It then goes on to propose a research and education agenda for software engineering that identifies the major challenges and issues in the development of large-scale complex, software-intensive systems. Central to this is the notion that we cannot separate software from the socio-technical environment in which it is used.Comment: 12 pages, 2 figure

    Sustainable Software Engineering:A Perspective of Individual Sustainability

    Get PDF
    Sustainable software engineering is a mean of developing sustainable software with sustainable software engineering process activities while balancing its various dimensions for instance economic, environmental, social, technical and individual. It is conveyed that the economic, technical, environmental and social dimensions are explored to satisfactory degree however the individual dimension of sustainable software engineering which is concerned with wellbeing of software engineers is not explored to satisfactory degree with respect to its understanding and challenges. Therefore, the aim of the study is to highlight and prioritize the challenges regarding individual sustainability dimension. The study also provides the mitigation strategies for the top five individual sustainability challenges. The systematic literature review has been performed to report the challenges and mitigation strategies. The study finding shows that lack of domain knowledge, lack of methodologies and tool support, lack of education, varying and unidentified situations and lack of sustainable software engineering practices are top most challenges regarding individual sustainability. These challenges need an urgent attention to achieve the goal of sustainable software engineering. The study also reports various mitigation strategies to overcome the risk of identified top most individual sustainability challenges such as to introduce sustainable software engineering education and knowledge in software engineering curricula, development of knowledge sharing frameworks and awareness regarding unclear and varying situations for each software engineering activity etc.  The study will be beneficial for sustainable software engineering body of knowledge, sustainable software engineering practitioners and researchers by providing classified list of individual sustainability challenges and their mitigation strategies

    The challenges of software engineering education

    Full text link
    We discuss the technical skills that a software engineer should possess. We take the viewpoint of a school of engineering and put the software engineer's education in the wider context of engineering education. We stress both the common aspects that crosscut all engineering fields and the specific issues that pertain to software engineering. We believe that even in a continuously evolving field like software, education should provide strong and stable foundations based on mathematics and science, emphasize the engineering principles, and recognize the stable and long-lasting design concepts. Even though the more mundane technological solutions cannot be ignored, the students should be equipped with skills that allow them to understand and dominate the evolution of technology

    Benchmark Portfolio for SOFT 261: Software Engineering IV

    Get PDF
    This benchmark portfolio documents the course objectives, teaching strategies, and assessments for the inaugural offering of SOFT 261: Software Engineering IV at the University of Nebraska-Lincoln (UNL). This is the final course in the core sequence of software engineering courses taken by students in the new undergraduate program in software engineering at UNL. These courses teach fundamental computer science concepts in the broader context of engineering software. As an ACE (Achievement-Centered Education) 2 course, the instructional material in SOFT 261 is focused on teaching visual communications skills in the context of applying software engineering processes to a real-world software project. This portfolio describes the course objectives and how this course fits into the broader context of software engineering education at UNL. It also describes the instructional strategies used to teach visual communications embedded in a software engineering course and the assessments used to evaluate student learning. This portfolio also analyzes student learning to assess the effectiveness of the teaching strategies and course materials. Finally, this portfolio reflects on the intellectual challenges of designing and teaching a visual communications course specifically for software engineering majors that incorporates team-based, hands-on learning working with and communicating with software developers on a large open-source project

    AM-OER: An Agile Method for the Development of Open Educational Resources

    Get PDF
    Open Educational Resources have emerged as important elements of education in the contemporary society, promoting life-long and personalized learning that transcends social, eco- nomic and geographical barriers. To achieve the potential of OERs and bring impact on education, it is necessary to increase their development and supply. However, one of the current challenges is how to produce quality and relevant OERs to be reused and adapted to different contexts and learning situations. In this paper we proposed an agile method for the development of OERs – AM-OER, grounded on agile practices from Software Engineering. Learning Design practices from the OULDI project (UK Open University) are also embedded into the AM-OER aiming at improving quality and facilitating reuse and adaptation of OERs. In order to validate AM-OER, an experiment was conducted by applying it in the development of an OER on software testing. The results showed preliminary evidences on the applicability, effectiveness and ef ciency of the method in the development of OERs

    Remote laboratories in teaching and learning – issues impinging on widespread adoption in science and engineering education

    Get PDF
    This paper discusses the major issues that impinge on the widespread adoption of remote controlled laboratories in science and engineering education. This discussion largely emerges from the work of the PEARL project and is illustrated with examples and evaluation data from the project. Firstly the rationale for wanting to offer students remote experiments is outlined. The paper deliberately avoids discussion of technical implementation issues of remote experiments but instead focuses on issues that impinge on the specification and design of such facilities. This includes pedagogic, usability and accessibility issues. It compares remote experiments to software simulations. It also considers remote experiments in the wider context for educational institutions and outlines issues that will affect their decisions as to whether to adopt this approach. In conclusion it argues that there are significant challenges to be met if remote laboratories are to achieve a widespread presence in education but expresses the hope that this delineation of the issues is a contribution towards meeting these challenges

    Guidelines for using empirical studies in software engineering education

    Get PDF
    Software engineering education is under constant pressure to provide students with industry-relevant knowledge and skills. Educators must address issues beyond exercises and theories that can be directly rehearsed in small settings. Industry training has similar requirements of relevance as companies seek to keep their workforce up to date with technological advances. Real-life software development often deals with large, software-intensive systems and is influenced by the complex effects of teamwork and distributed software development, which are hard to demonstrate in an educational environment. A way to experience such effects and to increase the relevance of software engineering education is to apply empirical studies in teaching. In this paper, we show how different types of empirical studies can be used for educational purposes in software engineering. We give examples illustrating how to utilize empirical studies, discuss challenges, and derive an initial guideline that supports teachers to include empirical studies in software engineering courses. Furthermore, we give examples that show how empirical studies contribute to high-quality learning outcomes, to student motivation, and to the awareness of the advantages of applying software engineering principles. Having awareness, experience, and understanding of the actions required, students are more likely to apply such principles under real-life constraints in their working life.Peer reviewe

    Challenges in Education in Global Software Engineering: What are the problems in communication mismatches, and how to ensure information consistency

    Get PDF
    This talk presents needs, challenges and experience of education of Global Software engineering. In Global Software Development the developers and other stakeholders are acting in a distributed environment, with different contexts and with different assumptions. This usually causes different understanding of the same information and different reactions of the stakeholders which may lead to different problems during the development process. What can be done to avoid these problems? This talk addresses these questions through an analysis of education for distributed development, performed in a distributed environment. In particular, experiences from a course Distributed Software Development” (DSD) will be discussed. DSD course was organized and performed between the School for Innovation, Design and Engineering at MĂ€lardalen University (MDH), Sweden, the University of Zagreb, Faculty of Electrical Engineering and Computing (FER), Croatia, and partially joined by the Politecnico di Milano, Italy. The talk will discuss the challenges in creating and performing a joint DSD course due to misunderstanding of information and the solutions implemented at DSD, lessons learned, and success stories

    Generative AI Assistants in Software Development Education: A vision for integrating Generative AI into educational practice, not instinctively defending against it

    Full text link
    The software development industry is amid another disruptive paradigm change - adopting the use of generative AI (GAI) assistants for programming. Whilst AI is already used in various areas of software engineering, GAI technologies, such as GitHub Copilot and ChatGPT, have ignited peoples' imaginations (and fears). It is unclear how the industry will adapt, but the move to integrate these technologies by large software companies, such as Microsoft (GitHub, Bing) and Google (Bard), is a clear indication of intent and direction. We performed exploratory interviews with industry professionals to understand current practice and challenges, which we incorporate into our vision of a future of software development education and make some pedagogical recommendations.Comment: 8 pages, accepted for publication in IEEE Software (upcoming Special Issue, March/April 2024, focusing on AI and Software Engineering Education & Training
    • 

    corecore