79 research outputs found

    An analysis of inheritance hierarchy evolution

    Get PDF
    This research investigates the evolution of object-oriented inheritance hierarchies in open source, Java systems. The paper contributes an understanding of how hierarchies, particularly large complex hierarchies, evolve in ‘real world’ systems. It informs object-oriented design practices that aim to control or avoid these complicated design structures. The study is based on a detailed analysis of 665 inheritance hierarchies drawn from a total of 262 versions of 10 open source systems. The research contributions include that: i) the majority of inheritance hierarchies are ‘simple’ in structure and remain that way throughout their lifetimes ii) the majority of hierarchies are stable in terms of size and shape throughout their lifetimes iii) there is a minority of large, complex, branching ‘Subtree’ hierarchies that continue to grow ever more complicated as the systems evolve iv) a detailed analysis of some of these larger hierarchies finds evidence of ‘good’ object-oriented design practices being used but also highlights the significant challenges involved in understanding and refactoring these complex structures. There is clear evidence that some of the complex hierarchies are emphasising reuse while others appear focused on type inheritance

    Gardner-Webb Students Participate in Hunger & Homelessness Awareness Week

    Get PDF
    Gardner-Webb University students are participating in Hunger and Homelessness Awareness Week, sponsored by the Office of Community Engagement, Nov. 14-17. Activities include a documentary screening, panel discussions involving homeless experts, food collection, and activities that will give students personal experiences with homelessness. The week is being held in conjunction with the National Coalition for the Homeless and the National Student Campaign Against Hunger and Homelessness.https://digitalcommons.gardner-webb.edu/gardner-webb-newscenter-archive/2731/thumbnail.jp

    Computer Programming Resources 2018

    Get PDF
    The document is a compilation of Computer Programming resources. It is geared toward front-end and back-end web development. It specializes on an ongoing project to create a website for the Safety and Mission Assurance Directorate. The Quality Assurance System (QAS) is intended to improve the overall quality and efficiency of communication among NASA Quality Assurance Engineers and Contractors. The use of QAS software will be limited to NASA Kennedy Space Center and Contractors. It is accessible through the KSC network

    A Project Component in a Web Engineering Course

    Get PDF
    Web applications are an extremely important and ubiquitous part of today\u27s world. Students must not only know how to develop them from a technical perspective, but in doing so need to understand how to follow the proper principles of software engineering - delivering the project on time, on budget, and in a high quality manner. At the Department of Software Engineering at the Rochester Institute of Technology, we offer a Web Engineering course which not only introduces students to a variety of web technologies, but more importantly it shows them how to use them in a collaborative environment while properly utilizing web engineering methodologies.The course includes a significant project component requiring students to use a variety of contemporary technologies and resources to create a robust web application. The main premise of the project is for each group to create a web portal using both custom-built and already existing components. The project takes place over the entire 15 week course term, includes multiple releases, and has students work in teams of 4-5. This innovative project component has received significant praise from both students and faculty members while fulfilling an emerging area of our curriculum. Students enjoy the real-world nature of the project and the ability to work with contemporary technologies in a format which closely mimics what they will see in industry. This paper outlines the educational objectives, project details, some sample project results of our class offering, as well as student feedback about the project. The goal of this work is to share the project, its importance, and lessons learned for use at other institutions with similar educational goals

    What is Mathematics?: An Answer to our Liberal Arts Dilemma

    Get PDF

    A version control interface for graphical discrete-event models

    Get PDF
    Möbius is a discrete event modeling tool used for the creation and analysis of complex system models. Such models are typically graphical in nature and are built and maintained using editors provided with the tool. Typical project environments strongly resemble those of conventional software development, as they both exhibit similar problems such as project complexity and size scale-up. Specific problems include difficulty sharing work between team members, confusing and error-prone workflows during resolution of conflicting changesets, and the need for additional processes to manage multiple versions of the project or project components. Those problems are handled in the software world via version control systems (VCS): sets of tools and procedures designed to automate the more tedious parts of the problem where possible and to ease the burden on human developers when their input is needed. However, such solutions are designed for text, making them difficult to use with a Möbius project. In a normal workflow, model developers use an internal Möbius editor to view and modify the models that make up a project. The models are saved to disk as formatted text files not intended for direct human use. While they encode all the features needed to reconstruct the model, a model developer directly viewing the text would have great difficulty parsing the higher-level meaning of the model. A common task when maintaining a large software project is that of comparing two versions of a file, often to resolve conflicts between more changesets or to triage a newly discovered bug. When performed on the raw textual form of a model, that task is difficult and very prone to error, since the high-level graphical concepts do not map cleanly to independent text snippets. This thesis presents a structure with which a VCS could be integrated into Möbius projects. The proposed system includes direct integration of core VCS features directly into the Möbius user interface as well as a set of changes to Möbius graphical editors to allow visual comparison and merging of models. Furthermore, the proposed system is implemented using the Git VCS and the ADVISE model formalism as a proof of concept

    MaRMI-III: a methodology for component-based development

    Get PDF
    This study, supported by the Korea Ministry of Information and Communication, contributed to advancing the paradigm of software component-based development by developing a detailed process, techniques, and guidelines for making the most of component technologies. The outcome was a new CBD methodology named Magic and Robust Methodology Integrated III (MaRMI-III). MaRMI-III is now considered as a standard development methodology for using component technologies in Korea. To date, more than 100 Korean software development companies have adopted the methodology developed in this study
    • …
    corecore