135,178 research outputs found
Supporting collaboration within the eScience community
Collaboration is a core activity at the heart of large-scale co-
operative scientific experimentation. In order to support the
emergence of Grid-based scientific collaboration, new models of
e-Science working methods are needed.
Scientific collaboration involves production and manipulation of
various artefacts. Based on work done in the software
engineering field, this paper proposes models and tools which
will support the representation and production of such artefacts.
It is necessary to provide facilities to classify, organise, acquire,
process, share, and reuse artefacts generated during collaborative
working. The concept of a "design space" will be used to
organise scientific design and the composition of experiments,
and methods such as self-organising maps will be used to support
the reuse of existing artefacts.
It is proposed that this work can be carried out and evaluated in
the UK e-Science community, using an "industry as laboratory"
approach to the research, building on the knowledge, expertise,
and experience of those directly involved in e-Science
Supporting collaborative grid application development within the escience community
The systemic representation and organisation of software artefacts, e.g. specifications, designs, interfaces, and implementations, resulting from the development of large distributed systems from software components have been addressed by our research within the Practitioner and AMES projects [1,2,3,4]. Without appropriate representations and organisations, large collections of existing software are not amenable to the activities of software reuse and software maintenance, as these activities are likely to be severely hindered by the difficulties of understanding the software applications and their associated components. In both of these projects, static analysis of source code and other development artefacts, where available, and subsequent application of reverse engineering techniques were successfully used to develop a more comprehensive understanding of the software applications under study [5,6]. Later research addressed the maintenance of a component library in the context of component-based software product line development and maintenance [7]. The classic software decompositions, horizontal and vertical, proposed by Goguen [8] influenced all of this research. While they are adequate for static composition, they fail to address the dynamic aspects of composing large distributed software applications from components especially where these include software services. The separation of component co-ordination concerns from component functionality proposed in [9] offers a partial solution
Software Engineering for Millennials, by Millennials
Software engineers need to manage both technical and professional skills in
order to be successful. Our university offers a 5.5 year program that mixes
computer science, software and computer engineering, where the first two years
are mostly math and physics courses. As such, our students' first real teamwork
experience is during the introductory SE course, where they modify open source
projects in groups of 6-8. However, students have problems working in such
large teams, and feel that the course material and project are "disconnected".
We decided to redesign this course in 2017, trying to achieve a balance between
theory and practice, and technical and professional skills, with a maximum
course workload of 150 hrs per semester. We share our experience in this paper,
discussing the strategies we used to improve teamwork and help students learn
new technologies in a more autonomous manner. We also discuss what we learned
from the two times we taught the new course.Comment: 8 pages, 9 tables, 4 figures, Second International Workshop on
Software Engineering Education for Millennial
Recommended from our members
Next generation software environments : principles, problems, and research directions
The past decade has seen a burgeoning of research and development in software environments. Conferences have been devoted to the topic of practical environments, journal papers produced, and commercial systems sold. Given all the activity, one might expect a great deal of consensus on issues, approaches, and techniques. This is not the case, however. Indeed, the term "environment" is still used in a variety of conflicting ways. Nevertheless substantial progress has been made and we are at least nearing consensus on many critical issues.The purpose of this paper is to characterize environments, describe several important principles that have emerged in the last decade or so, note current open problems, and describe some approaches to these problems, with particular emphasis on the activities of one large-scale research program, the Arcadia project. Consideration is also given to two related topics: empirical evaluation and technology transition. That is, how can environments and their constituents be evaluated, and how can new developments be moved effectively into the production sector
Selection of third party software in Off-The-Shelf-based software development: an interview study with industrial practitioners
The success of software development using third party components highly depends on the ability to select a suitable component for the intended application. The evidence shows that there is limited knowledge about current industrial OTS selection practices. As a result, there is often a gap between theory and practice, and the proposed methods for supporting selection are rarely adopted in the industrial practice. This paper's goal is to investigate the actual industrial practice of component selection in order to provide an initial empirical basis that allows the reconciliation of research and industrial endeavors. The study consisted of semi-structured interviews with 23 employees from 20 different software-intensive companies that mostly develop web information system applications. It provides qualitative information that help to further understand these practices, and emphasize some aspects that have been overlooked by researchers. For instance, although the literature claims that component repositories are important for locating reusable components; these are hardly used in industrial practice. Instead, other resources that have not received considerable attention are used with this aim. Practices and potential market niches for software-intensive companies have been also identified. The results are valuable from both the research and the industrial perspectives as they provide a basis for formulating well-substantiated hypotheses and more effective improvement strategies.Peer ReviewedPostprint (author's final draft
Involving External Stakeholders in Project Courses
Problem: The involvement of external stakeholders in capstone projects and
project courses is desirable due to its potential positive effects on the
students. Capstone projects particularly profit from the inclusion of an
industrial partner to make the project relevant and help students acquire
professional skills. In addition, an increasing push towards education that is
aligned with industry and incorporates industrial partners can be observed.
However, the involvement of external stakeholders in teaching moments can
create friction and could, in the worst case, lead to frustration of all
involved parties. Contribution: We developed a model that allows analysing the
involvement of external stakeholders in university courses both in a
retrospective fashion, to gain insights from past course instances, and in a
constructive fashion, to plan the involvement of external stakeholders. Key
Concepts: The conceptual model and the accompanying guideline guide the
teachers in their analysis of stakeholder involvement. The model is comprised
of several activities (define, execute, and evaluate the collaboration). The
guideline provides questions that the teachers should answer for each of these
activities. In the constructive use, the model allows teachers to define an
action plan based on an analysis of potential stakeholders and the pedagogical
objectives. In the retrospective use, the model allows teachers to identify
issues that appeared during the project and their underlying causes. Drawing
from ideas of the reflective practitioner, the model contains an emphasis on
reflection and interpretation of the observations made by the teacher and other
groups involved in the courses. Key Lessons: Applying the model retrospectively
to a total of eight courses shows that it is possible to reveal hitherto
implicit risks and assumptions and to gain a better insight into the
interaction...Comment: Abstract shortened since arxiv.org limits length of abstracts. See
paper/pdf for full abstract. Paper is forthcoming, accepted August 2017.
Arxiv version 2 corrects misspelled author nam
- …