478,581 research outputs found
CARDS: A blueprint and environment for domain-specific software reuse
CARDS (Central Archive for Reusable Defense Software) exploits advances in domain analysis and domain modeling to identify, specify, develop, archive, retrieve, understand, and reuse domain-specific software components. An important element of CARDS is to provide visibility into the domain model artifacts produced by, and services provided by, commercial computer-aided software engineering (CASE) technology. The use of commercial CASE technology is important to provide rich, robust support for the varied roles involved in a reuse process. We refer to this kind of use of knowledge representation systems as supporting 'knowledge-based integration.
Guidelines for using empirical studies in software engineering education
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
Recommended from our members
Language engineering - a champion for European culture
Language is key to culture. It is a direct cultural medium as well as a means of recording and providing access to non-lingual elements of culture. Language is also fundamental to a sense of cultural identity. For this reason, it is vital, in a changing Europe, that we preserve the multi-lingual character of our society in order to move successfully towards closer co-operation at a political, economic, and social level.
Language engineering is the application of knowledge of language to the development of computer software which can recognise, understand, interpret, and generate human language in all its forms.
The paper provides a high level view of the ‘state of the art’ in language engineering and indicates ways in which it will have a profound impact on our culture in the future. It shows how advances in language engineering are an important aid in maintaining cultural diversity in a multi-lingual European society, while enabling the development of social cohesion across cultural and national divides. It addresses issues raised by the prospect of the Multi-lingual Information Society, including education, human communication with technology and information management, as well as aspects of digital cities such as tele-presence in digital libraries, virtual art galleries and electronic museums. The paper raises the issue of language as a factor in cultural domination, showing the contribution that language engineering can make towards countering it.
The paper also raises a number of controversial issues concerning the likely benefits arising from the ways in which language is likely to influence the culture of Europe
Effective integration of computational tools into Chemical Engineering studies at an international level
Current Higher Education students have grown up in a society characterized by the massive use of information technologies, which affects the way they expect to acquire new knowledge. In Chemical Engineering studies, in particular, traditional problem solving methods tend to bore students and, as a result, do not yield efficient learning. Fortunately, there exists a large list of software packages with specific Engineering application which, if properly used, may help create a better learning environment. Under the above premise, a project is being conducted, between 4 Higher Education institutions from 3 different countries (Spain, Portugal and Romania), on the effect that the integration of computational tools may exert on the students’ knowledge acquisition and predisposition to learn. We also aim to establish a comparative evaluation of the advantages and drawbacks of different computer software when facing typical Chemical Engineering problems. From our survey results and students’ comments we conclude that, in general, the new methodological approach engaged their interest more than the traditional one, and helped them gain knowledge on the working principles of simulations. Moreover, the use of computer software in the classroom is acknowledged by the great majority of the students as a key skill which may improve their employability prospects. M. García-Morales, coordinator of the project “La enseñanza de la Ingeniería Química en el Tercer Milenio: integración efectiva de herramientas computacionales” belonging to XXI Convocatoria de Proyectos de Innovación Docente, acknowledges Vicerrectorado de Innovación y Empleabilidad de la Universidad de Huelva for its financial support.Roman, C.; Delgado, MA.; Lemos, F.; Lemos, MA.; Ramirez, J.; Danila, A.; Garcia-Morales, M. (2020). Effective integration of computational tools into Chemical Engineering studies at an international level. En 6th International Conference on Higher Education Advances (HEAd'20). Editorial Universitat Politècnica de València. (30-05-2020):265-273. https://doi.org/10.4995/HEAd20.2020.11031OCS26527330-05-202
Software Engineering for Big Data Systems
Software engineering is the application of a systematic approach to designing, operating and maintaining software systems and the study of all the activities involved in achieving the same. The software engineering discipline and research into software systems flourished with the advent of computers and the technological revolution ushered in by the World Wide Web and the Internet. Software systems have grown dramatically to the point of becoming ubiquitous. They have a significant impact on the global economy and on how we interact and communicate with each other and with computers using software in our daily lives.
However, there have been major changes in the type of software systems developed over the years. In the past decade owing to breakthrough advancements in cloud and mobile computing technologies, unprecedented volumes of hitherto inaccessible data, referred to as big data, has become available to technology companies and business organizations farsighted and discerning enough to use it to create new products, and services generating astounding profits. The advent of big data and software systems utilizing big data has presented a new sphere of growth for the software engineering discipline. Researchers, entrepreneurs and major corporations are all looking into big data systems to extract the maximum value from data available to them. Software engineering for big data systems is an emergent field that is starting to witness a lot of important research activity.
This thesis investigates the application of software engineering knowledge areas and standard practices, established over the years by the software engineering research community, into developing big data systems by:
- surveying the existing software engineering literature on applying software engineering principles into developing and supporting big data systems;
- identifying the fields of application for big data systems;
- investigating the software engineering knowledge areas that have seen research related
to big data systems;
- revealing the gaps in the knowledge areas that require more focus for big data systems
development; and
- determining the open research challenges in each software engineering knowledge area
that need to be met.
The analysis and results obtained from this thesis reveal that recent advances made in
distributed computing, non-relational databases, and machine learning applications have
lured the software engineering research and business communities primarily into focusing
on system design and architecture of big data systems. Despite the instrumental role
played by big data systems in the success of several businesses organizations and technology
companies by transforming them into market leaders, developing and maintaining stable,
robust, and scalable big data systems is still a distant milestone. This can be attributed
to the paucity of much deserved research attention into more fundamental and equally important
software engineering activities like requirements engineering, testing, and creating
good quality assurance practices for big data systems
An Integration of PC Hardware & Software in Teaching Engineering Technology Courses
As technology advances, the price of a PC drops dramatically. This trend has resulted in PCs that are complex, powerful, and very affordable. Today\u27s PC is a popular and essential tool in teaching software programming course(s) in C, C++, Visual Basic, or Java, running commercial software supporting courses in circuit simulation/design or circuit board layout, and acting as a workstation to gain access to the Internet or LAN networks. In most Engineering Technology curricula there is a limited amount of linkage between those PC applications. The actual effort to merge the hard-gained knowledge of hardware & software concepts together through a useful project implementation is also rare. This article is aimed at using the PC in ET upper-level courses as a focal point to help to reinforce knowledge between different fields of interest, such as communication, automation control, microprocessor, software programming, and system integration
Data Mining
Data mining is a branch of computer science that is used to automatically extract meaningful, useful knowledge and previously unknown, hidden, interesting patterns from a large amount of data to support the decision-making process. This book presents recent theoretical and practical advances in the field of data mining. It discusses a number of data mining methods, including classification, clustering, and association rule mining. This book brings together many different successful data mining studies in various areas such as health, banking, education, software engineering, animal science, and the environment
A Parallel Implementation of the Network Identification by Multiple Regression (NIR) Algorithm to Reverse-Engineer Regulatory Gene Networks
The reverse engineering of gene regulatory networks using gene expression profile data has become crucial to gain novel biological knowledge. Large amounts of data that need to be analyzed are currently being produced due to advances in microarray technologies. Using current reverse engineering algorithms to analyze large data sets can be very computational-intensive. These emerging computational requirements can be met using parallel computing techniques. It has been shown that the Network Identification by multiple Regression (NIR) algorithm performs better than the other ready-to-use reverse engineering software. However it cannot be used with large networks with thousands of nodes - as is the case in biological networks - due to the high time and space complexity. In this work we overcome this limitation by designing and developing a parallel version of the NIR algorithm. The new implementation of the algorithm reaches a very good accuracy even for large gene networks, improving our understanding of the gene regulatory networks that is crucial for a wide range of biomedical applications
- …