299,832 research outputs found
Environments to support collaborative software engineering
With increasing globalisation of software production, widespread use of
software components, and the need to maintain software systems over long
periods of time, there has been a recognition that better support
for collaborative working is needed by software engineers.
In this paper, two approaches to developing
improved system support for collaborative software engineering are
described: GENESIS and OPHELIA.
As both projects are moving towards industrial trials and eventual publicreleases of their systems, this exercise of comparing and
contrasting our approaches has provided the basis for future
collaboration between our projects particularly in carrying out
comparative studies of our approaches in practical use
Support for collaborative component-based software engineering
Collaborative system composition during design has been poorly supported by traditional CASE tools (which have usually concentrated on supporting individual projects) and almost exclusively focused on static composition. Little support for maintaining large distributed collections of heterogeneous software components across a number of projects has been developed. The CoDEEDS project addresses the collaborative determination, elaboration, and evolution of design spaces that describe both static and dynamic compositions of software components from sources such as component libraries, software service directories, and reuse repositories. The GENESIS project has focussed, in the development of OSCAR, on the creation and maintenance of large software artefact repositories. The most recent extensions are explicitly addressing the provision of cross-project global views of large software collections and historical views of individual artefacts within a collection. The long-term benefits of such support can only be realised if OSCAR and CoDEEDS are widely adopted and steps to facilitate this are described.
This book continues to provide a forum, which a recent book, Software Evolution with UML and XML, started, where expert insights are presented on the subject.
In that book, initial efforts were made to link together three current phenomena: software evolution, UML, and XML. In this book, focus will be on the practical side of linking them, that is, how UML and XML and their related methods/tools can assist software evolution in practice.
Considering that nowadays software starts evolving before it is delivered, an apparent feature for software evolution is that it happens over all stages and over all aspects.
Therefore, all possible techniques should be explored. This book explores techniques based on UML/XML and a combination of them with other techniques (i.e., over all techniques from theory to tools).
Software evolution happens at all stages. Chapters in this book describe that software evolution issues present at stages of software architecturing, modeling/specifying,
assessing, coding, validating, design recovering, program understanding, and reusing.
Software evolution happens in all aspects. Chapters in this book illustrate that software evolution issues are involved in Web application, embedded system, software repository, component-based development, object model, development environment, software metrics, UML use case diagram, system model, Legacy system, safety critical system, user interface, software reuse, evolution management, and variability modeling. Software evolution needs to be facilitated with all possible techniques. Chapters in this book demonstrate techniques, such as formal methods, program transformation,
empirical study, tool development, standardisation, visualisation, to control system changes to meet organisational and business objectives in a cost-effective way. On the journey of the grand challenge posed by software evolution, the journey that we have to make, the contributory authors of this book have already made further
advances
Cloud-Based Collaborative 3D Modeling to Train Engineers for the Industry 4.0
In the present study, Autodesk Fusion 360 software (which includes the A360 environment) is used to train engineering students for the demands of the industry 4.0. Fusion 360 is a tool that unifies product lifecycle management (PLM) applications and 3D-modeling software (PDLM—product design and life management). The main objective of the research is to deepen the students’ perception of the use of a PDLM application and its dependence on three categorical variables: PLM previous knowledge, individual practices and collaborative engineering perception. Therefore, a collaborative graphic simulation of an engineering project is proposed in the engineering graphics subject at the University of La Laguna with 65 engineering undergraduate students. A scale to measure the perception of the use of PDLM is designed, applied and validated. Subsequently, descriptive analyses, contingency graphical analyses and non-parametric analysis of variance are performed. The results indicate a high overall reception of this type of experience and that it helps them understand how professionals work in collaborative environments. It is concluded that it is possible to respond to the demand of the industry needs in future engineers through training programs of collaborative 3D modeling environments
OntoMaven: Maven-based Ontology Development and Management of Distributed Ontology Repositories
In collaborative agile ontology development projects support for modular
reuse of ontologies from large existing remote repositories, ontology project
life cycle management, and transitive dependency management are important
needs. The Apache Maven approach has proven its success in distributed
collaborative Software Engineering by its widespread adoption. The contribution
of this paper is a new design artifact called OntoMaven. OntoMaven adopts the
Maven-based development methodology and adapts its concepts to knowledge
engineering for Maven-based ontology development and management of ontology
artifacts in distributed ontology repositories.Comment: Pre-print submission to 9th International Workshop on Semantic Web
Enabled Software Engineering (SWESE2013). Berlin, Germany, December 2-5, 201
Taxing Collaborative Software Engineering
The engineering of complex software systems is often the result of a highly
collaborative effort. However, collaboration within a multinational enterprise
has an overlooked legal implication when developers collaborate across national
borders: It is taxable. In this short article, we discuss the unsolved problem
of taxing collaborative software engineering across borders. We (1) introduce
the reader to the basic principle of international taxation, (2) identify three
main challenges for taxing collaborative software engineering, and (3) estimate
the industrial significance of cross-border collaboration in modern software
engineering by measuring cross-border code reviews at a multinational software
company.Comment: 7 pages, 3 figure
Enablers and Impediments for Collaborative Research in Software Testing: An Empirical Exploration
When it comes to industrial organizations, current collaboration efforts in
software engineering research are very often kept in-house, depriving these
organizations off the skills necessary to build independent collaborative
research. The current trend, towards empirical software engineering research,
requires certain standards to be established which would guide these
collaborative efforts in creating a strong partnership that promotes
independent, evidence-based, software engineering research. This paper examines
key enabling factors for an efficient and effective industry-academia
collaboration in the software testing domain. A major finding of the research
was that while technology is a strong enabler to better collaboration, it must
be complemented with industrial openness to disclose research results and the
use of a dedicated tooling platform. We use as an example an automated test
generation approach that has been developed in the last two years
collaboratively with Bombardier Transportation AB in Sweden
Pibok-pb: A collaborative framework to improve software development productivity through projects and process assets reuse and measurement with six sigma techniques
The Software Engineering Lab (SEL-UC3M) is aimed to develop solutions to software projects processes related problems having an accessible, collaborative, practiced and manageable focus. We are interested to collaborate with research centers and universities worldwide that share our philosophy as well as with enterprises and public administrations interested in our novel methods
Historical awareness support and its evaluation in collaborative software engineering
The types of awareness relevant to collaborative soft-
ware engineering are identified and an additional type,
"historical awareness" is proposed. This new type of
awareness is the knowledge of how software artefacts re-
sulting from collaboration have evolved in the course of
their development.
The types of awareness that different software engineer-
ing environment architectures can support are discussed. A
way to add awareness support to our existing OSCAR sys-
tem, a component of the GENESIS software engineering
platform, is proposed. Finally ways of instrumenting and
evaluating the awareness support offered by the modified
system are outlined
Teaching Software Engineering from a Collaborative Perspective: Some Latin-American Experiences
Teaching software engineering has been recognized as an important challenge for computer science undergraduate programs. Instruction in such area requires not only to deliver theoretical knowledge, but also to perform practical experiences that allow students to assimilate and apply such knowledge. This paper presents some results of two Computer-Supported Collaborative Learning (CSCL) experiences that involved students of software engineering courses from four Latin American Universities. The obtained results were satisfactory and indicate the reported collaborative activity could be appropriate to address teaching software engineering.Teaching software engineering has been recognized as an important challenge for computer science undergraduate programs. Instruction in such area requires not only to deliver theoretical knowledge, but also to perform practical experiences that allow students to assimilate and apply such knowledge. This paper presents some results of two Computer-Supported Collaborative Learning (CSCL) experiences that involved students of software engineering courses from four Latin American Universities. The obtained results were satisfactory and indicate the reported collaborative activity could be appropriate to address teaching software engineering
- …