70 research outputs found

    I’m stuck! How to efficiently debug computational solid mechanics models so you can enjoy the beauty of simulations

    Get PDF
    A substantial fraction of the time that computational modellers dedicate to developing their models is actually spent trouble-shooting and debugging their code. However, how this process unfolds is seldom spoken about, maybe because it is hard to articulate as it relies mostly on the mental catalogues we have built with the experience of past failures. To help newcomers to the field of material modelling, here we attempt to fill this gap and provide a perspective on how to identify and fix mistakes in computational solid mechanics models. To this aim, we describe the components that make up such a model and then identify possible sources of errors. In practice, finding mistakes is often better done by considering the symptoms of what is going wrong. As a consequence, we provide strategies to narrow down where in the model the problem may be, based on observation and a catalogue of frequent causes of observed errors. In a final section, we also discuss how one-time bug-free models can be kept bug-free in view of the fact that computational models are typically under continual development. We hope that this collection of approaches and suggestions serves as a “road map” to find and fix mistakes in computational models, and more importantly, keep the problems solved so that modellers can enjoy the beauty of material modelling and simulation.EC and JPP wish to thank their former supervisor Paul Steinmann for the inspiration to write this paper, which can be traced back to the talk we prepared for the ECCM-ECFD conference held in Glasgow in 2018. EC’s work was partially supported by the European Union’s Horizon 2020 research and innovation program under the Marie SkƂodowska-Curie grant agreement No 841047. WB’s work was partially supported by the National Science Foundation under award OAC-1835673; by award DMS-1821210; by award EAR-1925595; and by the Computational Infrastructure in Geodynamics initiative (CIG), through the National Science Foundation under Award EAR-1550901 and The University of California – Davis .Peer ReviewedPostprint (published version

    OntologyBeanGenerator 5.0: Extending ontology concepts with methods and exceptions

    Get PDF
    When modeling and implementing complex systems based on agents and artifacts, achieving semantic interoperability is not only useful, but often necessary. A commonly adopted solution to manage complex and real MASs is adopting a Model Driven methodology, which uses an ontology as the formal representation of the domain, and then exploiting some existing tool to automatically generate code for agents in the MAS, to let them interact according to the model. While this approach is satisfactorily supported when the target MAS environment is Jason, less support is provided to Jade MASs, despite Jade's large adoption for real MASs development. So, considering the great support given by the automatic code generation starting from a formal model, and the large community working on Jade MASs, in this work we present an extension of the OntologyBeanGenerator plugin for Prot\ue9g\ue9, used to generate a Java representation of an OWL ontology for Jade. We improved the OntologyBeanGenerator tool to support the modeling of exceptions, formalized at the ontology level, and of methods associated with ontology elements, to set the interface of concrete objects (artifacts) at design stage. This extension allows us to integrate in a Model Driven approach a support for the formal definition of artifacts and provide an automatic generation of Jade code/interfaces to interact with them respecting the model

    Ernst Denert Award for Software Engineering 2020

    Get PDF
    This open access book provides an overview of the dissertations of the eleven nominees for the Ernst Denert Award for Software Engineering in 2020. The prize, kindly sponsored by the Gerlind & Ernst Denert Stiftung, is awarded for excellent work within the discipline of Software Engineering, which includes methods, tools and procedures for better and efficient development of high quality software. An essential requirement for the nominated work is its applicability and usability in industrial practice. The book contains eleven papers that describe the works by Jonathan BrachthĂ€user (EPFL Lausanne) entitled What You See Is What You Get: Practical Effect Handlers in Capability-Passing Style, Mojdeh Golagha’s (Fortiss, Munich) thesis How to Effectively Reduce Failure Analysis Time?, Nikolay Harutyunyan’s (FAU Erlangen-NĂŒrnberg) work on Open Source Software Governance, Dominic Henze’s (TU Munich) research about Dynamically Scalable Fog Architectures, Anne Hess’s (Fraunhofer IESE, Kaiserslautern) work on Crossing Disciplinary Borders to Improve Requirements Communication, Istvan Koren’s (RWTH Aachen U) thesis DevOpsUse: A Community-Oriented Methodology for Societal Software Engineering, Yannic Noller’s (NU Singapore) work on Hybrid Differential Software Testing, Dominic Steinhofel’s (TU Darmstadt) thesis entitled Ever Change a Running System: Structured Software Reengineering Using Automatically Proven-Correct Transformation Rules, Peter WĂ€gemann’s (FAU Erlangen-NĂŒrnberg) work Static Worst-Case Analyses and Their Validation Techniques for Safety-Critical Systems, Michael von Wenckstern’s (RWTH Aachen U) research on Improving the Model-Based Systems Engineering Process, and Franz Zieris’s (FU Berlin) thesis on Understanding How Pair Programming Actually Works in Industry: Mechanisms, Patterns, and Dynamics – which actually won the award. The chapters describe key findings of the respective works, show their relevance and applicability to practice and industrial software engineering projects, and provide additional information and findings that have only been discovered afterwards, e.g. when applying the results in industry. This way, the book is not only interesting to other researchers, but also to industrial software professionals who would like to learn about the application of state-of-the-art methods in their daily work

    Managing Distributed Teams Using Agile Methods: An Implementation Strategy for Regulated Healthcare Software

    Get PDF
    Omega is a small medical software company focusing mainly on highly customized software solutions around patient communities, telemedicine and workflow optimization. The company has been in operation for nearly 10 years, with many successful project implementations, but has had little growth in this period. A set of recommendations are established for setting up an offshore team for software development, as well as moving infrastructure to the cloud to decrease costs. An analysis of strategy and process revision is required to ensure that this risky transition is effective. This paper will analyze risks and objectives in regards to moving to offshore development for a portion of software development. It will dentify necessary corporate structure, roles and processes to ensure efficient development with virtual teams. It will outline the use of ‘agile’ methodologies for software development in regards to offshore teams, as opposed to traditional project management methodologies. In addition, it will establish an analysis of costs and return on investment for moving to cloud for server hosting and corporate IT infrastructure

    A productive response to legacy system petrification

    Get PDF
    Requirements change. The requirements of a legacy information system change, often in unanticipated ways, and at a more rapid pace than the rate at which the information system itself can be evolved to support them. The capabilities of a legacy system progressively fall further and further behind their evolving requirements, in a degrading process termed petrification. As systems petrify, they deliver diminishing business value, hamper business effectiveness, and drain organisational resources. To address legacy systems, the first challenge is to understand how to shed their resistance to tracking requirements change. The second challenge is to ensure that a newly adaptable system never again petrifies into a change resistant legacy system. This thesis addresses both challenges. The approach outlined herein is underpinned by an agile migration process - termed Productive Migration - that homes in upon the specific causes of petrification within each particular legacy system and provides guidance upon how to address them. That guidance comes in part from a personalised catalogue of petrifying patterns, which capture recurring themes underlying petrification. These steer us to the problems actually present in a given legacy system, and lead us to suitable antidote productive patterns via which we can deal with those problems one by one. To prevent newly adaptable systems from again degrading into legacy systems, we appeal to a follow-on process, termed Productive Evolution, which embraces and keeps pace with change rather than resisting and falling behind it. Productive Evolution teaches us to be vigilant against signs of system petrification and helps us to nip them in the bud. The aim is to nurture systems that remain supportive of the business, that are adaptable in step with ongoing requirements change, and that continue to retain their value as significant business assets

    Mobile computing algorithms and systems for user-aware optimization of enterprise applications

    Get PDF
    The adoption of mobile devices, particularly smartphones, has grown steadily over the last decade, also permeating the enterprise sector. Enterprises are investing heavily in mobilization to improve employee productivity and perform business workflows, including smartphones and tablets. Enterprise mobility is expected to be more than a $250 billion market in 2019. Strategies to achieve mobilization range from building native apps, using mobile enterprise application platforms (MEAPS), developing with a mobile backend as a service (mBaaS), relying on application virtualization, and employing application refactoring. Enterprises are not yet experiencing the many benefits of mobilization, even though there is great promise. Email and browsing are used heavily, but the practical adoption of enterprise mobility to deliver value beyond these applications is in its infancy and faces barriers. Enterprises deploy few business workflows (<5 percent). Barriers include the heavy task burden in executing workflows on mobile devices, the irrelevance of available mobile features, non-availability of necessary business functions, the high cost of network access, increased security risks associated with smartphones, and increased complexity of mobile application development. This dissertation identifies key barriers to user productivity on smartphones and investigates user-aware solutions that leverage redundancies in user behavior to reduce burden, focusing on the following mobility aspects: (1) Workflow Mobilization: For an employee to successfully perform workflows on a smartphone, a mobile app must be available, and the specific workflow must survive the defeaturization process necessary for mobilization. While typical mobilization strategies offer mobile access to a few heavily-used features, there is a long-tail problem for enterprise application mobilization, in that many application features are left unsupported or are too difficult to access. We propose a do-it-yourself (DIY) platform, Taskr, that allows users at all skill levels to mobilize workflows. Taskr uses remote computing with application refactoring to achieve code-less mobilization of enterprise web applications. It allows for flexible mobile delivery so that users can execute spot tasks through Twitter, email, or a native mobile app. Taskr prototypes from 15 enterprise applications reduce the number of user actions performing workflows by 40 percent compared to the desktop; (2) Content sharing (enterprise email): An enterprise employee spends an inordinate amount of time on email responding to queries and sharing information with co-workers. This problem is further aggravated on smartphones due to smaller screen real estate. We consider automated information suggestions to ease the burden of reply construction on smartphones. The premise is that a significant portion of the information content in a reply is likely present in prior emails. We first motivate this premise by analyzing both public and private email datasets. We then present Dejavu, a system that relies on inverse document frequency (IDF) and keyword matching to provide relevant suggestions for responses. Evaluation of Dejavu over email datasets shows a 22 percent reduction in the user’s typing burden; (3) Collaboration: Even though many business processes within enterprises require employees to work as a team and collaborate, few mobile apps allow two employees to work on an object from two separate devices simultaneously. We present Peek, a mobile-to-mobile remote computing protocol for collaboration that lets users remotely interact with an application in a responsive manner. Unlike traditional desktop remote computing protocols, Peek provides multi-touch support for ease of operation and a flexible frame compression scheme that accounts for the resource constraints of a smartphone. An Android prototype of Peek shows a 62 percent reduction in time to perform touchscreen actions.Ph.D

    Foundational Practices of Online Writing Instruction

    Get PDF
    This is an Open Textbook available through the Open Textbook Library: https://open.umn.edu/opentextbooks/textbooks/foundational-practices-of-online-writing-instruction. Reviews are available there. Foundational Practices in Online Writing Instruction (OWI) addresses the questions and decisions that administrators and instructors most need to consider when developing online writing programs and courses. Written by experts in the field (members of the Conference on College Composition and Communication Committee for Effective Practices in OWI and other experts and stakeholders).... The editors believe that the field of writing studies is on a trajectory in which most courses will be mediated online to various degrees; therefore the principles detailed in this collection may become the basis for future writing instruction practices. ... [Amazon.com]https://digitalcommons.odu.edu/english_books/1017/thumbnail.jp

    Ernst Denert Award for Software Engineering 2020

    Get PDF
    This open access book provides an overview of the dissertations of the eleven nominees for the Ernst Denert Award for Software Engineering in 2020. The prize, kindly sponsored by the Gerlind & Ernst Denert Stiftung, is awarded for excellent work within the discipline of Software Engineering, which includes methods, tools and procedures for better and efficient development of high quality software. An essential requirement for the nominated work is its applicability and usability in industrial practice. The book contains eleven papers that describe the works by Jonathan BrachthĂ€user (EPFL Lausanne) entitled What You See Is What You Get: Practical Effect Handlers in Capability-Passing Style, Mojdeh Golagha’s (Fortiss, Munich) thesis How to Effectively Reduce Failure Analysis Time?, Nikolay Harutyunyan’s (FAU Erlangen-NĂŒrnberg) work on Open Source Software Governance, Dominic Henze’s (TU Munich) research about Dynamically Scalable Fog Architectures, Anne Hess’s (Fraunhofer IESE, Kaiserslautern) work on Crossing Disciplinary Borders to Improve Requirements Communication, Istvan Koren’s (RWTH Aachen U) thesis DevOpsUse: A Community-Oriented Methodology for Societal Software Engineering, Yannic Noller’s (NU Singapore) work on Hybrid Differential Software Testing, Dominic Steinhofel’s (TU Darmstadt) thesis entitled Ever Change a Running System: Structured Software Reengineering Using Automatically Proven-Correct Transformation Rules, Peter WĂ€gemann’s (FAU Erlangen-NĂŒrnberg) work Static Worst-Case Analyses and Their Validation Techniques for Safety-Critical Systems, Michael von Wenckstern’s (RWTH Aachen U) research on Improving the Model-Based Systems Engineering Process, and Franz Zieris’s (FU Berlin) thesis on Understanding How Pair Programming Actually Works in Industry: Mechanisms, Patterns, and Dynamics – which actually won the award. The chapters describe key findings of the respective works, show their relevance and applicability to practice and industrial software engineering projects, and provide additional information and findings that have only been discovered afterwards, e.g. when applying the results in industry. This way, the book is not only interesting to other researchers, but also to industrial software professionals who would like to learn about the application of state-of-the-art methods in their daily work

    Into Complexity. A Pattern-oriented Approach to Stakeholder Communities

    Get PDF
    The NWO-programme ”the societal aspects of genomics”, has called for stronger means of collaboration and deliberative involvement between the various stakeholders of genomics research. Within the project group assembled at the University for Humanistics, this call was translated to the ‘lingua democratica’, in which the prerequisites of such deliberative efforts were put to scrutiny. The contribution of this thesis has taken a more or less abstract angle to this task, and sought to develop a vocabulary that can be shared amongst various stakeholders with different backgrounds, interests and stakes for any complex theme, although genomics has more or less been in focus throughout the research. As ‘complexity thinking’ is currently a theme in both the ‘hard’ sciences as the social sciences and the humanities, and has always been an issue for professionals, this concept was pivotal in achieving such an inclusive angle. However, in order to prevent that complexity would become fragmented due to disciplinary boundaries, it is essential that those aspects of complexity that seem to return in many discussions would be made clear, and stand out with respect to the complexities of specialisation. The thesis has argued that the concept of ‘patterns’ applies for these aspects, and they form the backbone of the vocabulary that has been developed. Especially patterns of feedback have been given much attention, as this concept is pivotal for many complex themes. However, although patterns are implicitly or explicitly used in many areas, there is little methodological (and philosophical) underpinning of what they are and why they are able to do what they do. As a result, quite some attention has been given to these issues, and how they relate to concepts such as ‘information’,‘order’ and complexity itself. From these explorations, the actual vocabulary was developed, including the methodological means to use this vocabulary. This has taken the shape of a recursive development of a so-called pattern-library, which has crossed disciplinary boundaries, from technological areas, through biology, psychology and the social sciences, to a topic that is typical of the humanities. This journey across the divide of C.P. Snow’s ‘two cultures’ is both a test for a lingua democratica, as well as aimed to demonstrate how delicate, and balanced such a path must be in order to be effective, especially if one aims to retain certain coherence along the way. Finally, the methodology has been applied in a very practical way, to a current development that hinges strongly on research in genomics, which is trans-humanist movement

    Proceedings of the 4th International Conference on Principles and Practices of Programming in Java

    Full text link
    This book contains the proceedings of the 4th international conference on principles and practices of programming in Java. The conference focuses on the different aspects of the Java programming language and its applications
    • 

    corecore