10,740 research outputs found

    A heuristic-based approach to code-smell detection

    Get PDF
    Encapsulation and data hiding are central tenets of the object oriented paradigm. Deciding what data and behaviour to form into a class and where to draw the line between its public and private details can make the difference between a class that is an understandable, flexible and reusable abstraction and one which is not. This decision is a difficult one and may easily result in poor encapsulation which can then have serious implications for a number of system qualities. It is often hard to identify such encapsulation problems within large software systems until they cause a maintenance problem (which is usually too late) and attempting to perform such analysis manually can also be tedious and error prone. Two of the common encapsulation problems that can arise as a consequence of this decomposition process are data classes and god classes. Typically, these two problems occur together – data classes are lacking in functionality that has typically been sucked into an over-complicated and domineering god class. This paper describes the architecture of a tool which automatically detects data and god classes that has been developed as a plug-in for the Eclipse IDE. The technique has been evaluated in a controlled study on two large open source systems which compare the tool results to similar work by Marinescu, who employs a metrics-based approach to detecting such features. The study provides some valuable insights into the strengths and weaknesses of the two approache

    Usability and Security in Medication. Administration Applications

    Get PDF
    The traditional process of ïŹlling the medicine trays and dispensing the medicines to the patients in the hospitals is manually done by reading the printed paper medicinechart. This process can be very strenuous and error-prone, given the number of sub-tasksinvolved in the entire workïŹ‚ow and the dynamic nature of the work environment.Therefore, efforts are being made to digitalise the medication dispensation process byintroducing a mobile application called Smart Dosing application. The introduction ofthe Smart Dosing application into hospital workïŹ‚ow raises security concerns and callsfor security requirement analysis. This thesis is written as a part of the smart medication management project at EmbeddedSystems Laboratory, A˚bo Akademi University. The project aims at digitising the medicine dispensation process by integrating information from various health systems, and making them available through the Smart Dosing application. This application is intended to be used on a tablet computer which will be incorporated on the medicine tray. The smart medication management system include the medicine tray, the tablet device, and the medicine cups with the cup holders. Introducing the Smart Dosing application should not interfere with the existing process carried out by the nurses, and it should result in minimum modiïŹcations to the tray design and the workïŹ‚ow. The re-designing of the tray would include integrating the device running the application into the tray in a manner that the users ïŹnd it convenient and make less errors while using it. The main objective of this thesis is to enhance the security of the hospital medicine dispensation process by ensuring the security of the Smart Dosing application at various levels. The methods used for writing this thesis was to analyse how the tray design, and the application user interface design can help prevent errors and what secure technology choices have to be made before starting the development of the next prototype of the Smart Dosing application. The thesis ïŹrst understands the context of the use of the application, the end-users and their needs, and the errors made in everyday medication dispensation workïŹ‚ow by continuous discussions with the nursing researchers. The thesis then gains insight to the vulnerabilities, threats and risks of using mobile application in hospital medication dispensation process. The resulting list of security requirements was made by analysing the previously built prototype of the Smart Dosing application, continuous interactive discussions with the nursing researchers, and an exhaustive state-of-the-art study on security risks of using mobile applications in hospital context. The thesis also uses Octave Allegro method to make the readers understand the likelihood and impact of threats, and what steps should be taken to prevent or ïŹx them. The security requirements obtained, as a result, are a starting point for the developers of the next iteration of the prototype for the Smart Dosing application.Siirretty Doriast

    Value Creation with Extended Reality Technologies - A Methodological Approach for Holistic Deployments

    Get PDF
    Mit zunehmender RechenkapazitĂ€t und Übertragungsleistung von Informationstechnologien wĂ€chst die Anzahl möglicher Anwendungs-szenarien fĂŒr Extended Reality (XR)-Technologien in Unternehmen. XR-Technologien sind Hardwaresysteme, Softwaretools und Methoden zur Erstellung von Inhalten, um Virtual Reality, Augmented Reality und Mixed Reality zu erzeugen. Mit der Möglichkeit, Nutzern Inhalte auf immersive, interaktive und intelligente Weise zu vermitteln, können XR-Technologien die ProduktivitĂ€t in Unternehmen steigern und Wachstumschancen eröffnen. Obwohl XR-Anwendungen in der Industrie seit mehr als 25 Jahren wissenschaftlich erforscht werden, gelten nach wie vor als unausgereift. Die HauptgrĂŒnde dafĂŒr sind die zugrundeliegende KomplexitĂ€t, die Fokussierung der Forschung auf die Untersuchung spezifische Anwendungsszenarien, die unzu-reichende Wirtschaftlichkeit von Einsatzszenarien und das Fehlen von geeigneten Implementierungsmodellen fĂŒr XR-Technologien. GrundsĂ€tzlich wird der Mehrwert von Technologien durch deren Integration in die Wertschöpfungsarchitektur von GeschĂ€ftsmodellen freigesetzt. Daher wird in dieser Arbeit eine Methodik fĂŒr den Einsatz von XR-Technologien in der Wertschöpfung vorgestellt. Das Hauptziel der Methodik ist es, die Identifikation geeigneter Einsatzszenarien zu ermöglichen und mit einem strukturierten Ablauf die KomplexitĂ€t der Umsetzung zu beherrschen. Um eine ganzheitliche Anwendbarkeit zu ermöglichen, basiert die Methodik auf einem branchen- und ge-schĂ€ftsprozessunabhĂ€ngigen Wertschöpfungsreferenzmodell. Dar-ĂŒber hinaus bezieht sie sich auf eine ganzheitliche Morphologie von XR-Technologien und folgt einer iterativen EinfĂŒhrungssequenz. Das Wertschöpfungsmodell wird durch ein vorliegendes Potential, eine Wertschöpfungskette, ein Wertschöpfungsnetzwerk, physische und digitale Ressourcen sowie einen durch den Einsatz von XR-Technologien realisierten Mehrwert reprĂ€sentiert. XR-Technologien werden durch eine morphologische Struktur mit Anwendungsmerk-malen und erforderlichen technologischen Ressourcen reprĂ€sentiert. Die Umsetzung erfolgt in einer iterativen Sequenz, die fĂŒr den zu-grundeliegenden Kontext anwendbare Methoden der agilen Soft-wareentwicklung beschreibt und relevante Stakeholder berĂŒcksich-tigt. Der Schwerpunkt der Methodik liegt auf einem systematischen Ansatz, der universell anwendbar ist und den Endnutzer und das Ökosystem der betrachteten Wertschöpfung berĂŒcksichtigt. Um die Methodik zu validieren, wird der Einsatz von XR-Technologien in zwei industriellen AnwendungsfĂ€llen unter realen wirtschaftlichen Bedingungen durchgefĂŒhrt. Die AnwendungsfĂ€lle stammen aus unterschiedlichen Branchen, mit unterschiedlichen XR-Technologiemerkmalen sowie unterschiedlichen Formen von Wert-schöpfungsketten, um die universelle Anwendbarkeit der Methodik zu demonstrieren und relevante Herausforderungen bei der Durch-fĂŒhrung eines XR-Technologieeinsatzes aufzuzeigen. Mit Hilfe der vorgestellten Methodik können Unternehmen XR-Technologien zielgerichtet in ihrer Wertschöpfung einsetzen. Sie ermöglicht eine detaillierte Planung der Umsetzung, eine fundierte Auswahl von Anwendungsszenarien, die Bewertung möglicher Her-ausforderungen und Hindernisse sowie die gezielte Einbindung der relevanten Stakeholder. Im Ergebnis wird die Wertschöpfung mit wirtschaftlichem Mehrwert durch XR-Technologien optimiert

    Vehicle Surveillance Alarm System in Focus of Application Software

    Get PDF
    Society has been very concern about the important of safety and security that leads the manufacturing company to design several of security systems ranging from the simple to complex systems. This report present information on the research involves in Vehicle Surveillance Alarm System, which is purposely design for vehicle security and safety since most of the road transportation lack of security and safety features, which may cause vehicle fatalities that increase from year to year. Hence, the function of the Vehicle Surveillance Alarm System is to trigger an alarm if any abnormal condition happens to inform and alert the vehicle driver about the situation through the use of advance warning messages. This research covers the studies of the application software that involves with manipulating data from the serial port and displaying the data into a proper GUI design. This report features the introduction that explains the background of study, problem statement, significant of the project, objectives and the scope of study of the project research. The author also writes the literature review or theory from several researchers for supporting information or reference to support the project research. The software development methodology use by the author for the project research is taken from several steps of Software Development Life Cycle and Waterfall Model in order to suit the research needs, which also used the concept of static data applied in the prototype. Procedure identification is briefly discussed in order to complete the research and describe tools of hardware and software use to design the product. The author visualize the results of the findings and discusses more details on the serial interface, database storage and GUI interface of the system including the software chosen to accomplish the project of the Vehicle Surveillance Alarm System. The author writes the conclusions and recommendations for further research and future enhancement that includes in the final chapter of the report. The end-result of the research is the static vehicle alarm system software prototype that satisfies the basic needs of vehicle alarm system. The prototype visualize how the vehicle alarm system enables the vehicle driver to be alert by any uncertainty behaviors from the vehicle component, retrieve and view available data of the surveillance history records through the system

    Kollaboratives Reengineering und Modularisieren von Softwaresystemen

    Get PDF
    Software systems evolve over their lifetime. Changing requirements make it inevitable for developers to modify and extend the underlying code base. Specific requirements emerge in the context of open source software where everybody can contribute and requirements can change over time. In particular, research software is often not structured with a maintainable and extensible architecture. Furthermore, often databases are employed for retrieving, storing, and processing application data. Insufficient knowledge of the actual structure and behavior of such software systems and related databases can entail further challenges. Thus, understanding these software systems embodies a crucial task, which needs to be addressed in an appropriate way to face inevitable challenges while performing software changes. Approaches based on alternative display and interaction concepts can support this task by offering a more immersive user experience. In this thesis, we introduce three complementary approaches to support the evolution and particularly understanding of software systems in different aspects. Our main contributions are (i) an approach named CORAL for enabling collaborative reengineering and modularization of software systems, (ii) a gesture-based, collaborative, and multi-user-featuring Virtual Reality approach named ExplorViz VR for the software city metaphor, and (iii) a database behavior live-visualization approach named RACCOON for database comprehension of software systems. An extensive case study shows that our CORAL approach is capable of supporting reengineering and modularization processes. Furthermore, several lab experiments demonstrate the high usability, and efficiency and effectiveness for solving comprehension tasks when using the visualization within our multi-user VR approach ExplorViz VR. All implementations are available as open-source software on www.explorviz.net. Additionally, we provide an extensive experimental package of our latest VR evaluation to facilitate the verifiability and reproducibility of our results

    A Holistic Usability Framework For Distributed Simulation Systems

    Get PDF
    This dissertation develops a holistic usability framework for distributed simulation systems (DSSs). The framework is developed considering relevant research in human-computer interaction, computer science, technical writing, engineering, management, and psychology. The methodology used consists of three steps: (1) framework development, (2) surveys of users to validate and refine the framework, and to determine attribute weights, and (3) application of the framework to two real-world systems. The concept of a holistic usability framework for DSSs arose during a project to improve the usability of the Virtual Test Bed, a prototypical DSS, and the framework is partly a result of that project. In addition, DSSs at Ames Research Center were studied for additional insights. The framework has six dimensions: end user needs, end user interface(s), programming, installation, training, and documentation. The categories of participants in this study include managers, researchers, programmers, end users, trainers, and trainees. The first survey was used to obtain qualitative and quantitative data to validate and refine the framework. Attributes that failed the validation test were dropped from the framework. A second survey was used to obtain attribute weights. The refined framework was used to evaluate two existing DSSs, measuring their holistic usabilities. Ensuring that the needs of the variety of types of users who interact with the system during design, development, and use are met is important to launch a successful system. Adequate consideration of system usability along the several dimensions in the framework will not only ensure system success but also increase productivity, lower life cycle costs, and result in a more pleasurable working experience for people who work with the system

    Development of a Machine Learning Platform

    Get PDF
    Adoption of machine learning is becoming widespread, thus, it is natural to see a more comprehensive adoption of this technology by companies to, not only to enhance their products and services, but also to offer greater market competitiveness. Having said that, and attending to this new paradigm, the present dissertation is focused on the implementation of a platform to optimize and enhance the development of projects in the area of machine learning. This challenge arises from a proposal put forward by company GMV, which aims to make the machine learning process more accessible and intuitive for its workers and, in parallel, to ensure high levels of consistency and productivity in the development of its projects. Based on all these assumptions, a first approach is made in this dissertation, laying both on how a machine learning project is organized as well as on the problems that arise throughout its development. First, a study was made of the functioning of some platforms already present in the market, in order to understand which problems they intend to solve and which solution or solutions have been developed to address them. Then, the characteristics to be integrated in the platform were identified. The study and comparison of some technologies present in the market allowed us to select and implement the most promising ones regarding the characteristics previously identified. Finally, the proposed solution is presented, explaining both the functioning of the platform and the options taken throughout its development.Numa altura em que se preconiza a adoção, cada vez mais generalizada, da aprendi- zagem automĂĄtica, Ă© com naturalidade que se assiste a uma adesĂŁo mais abrangente por parte das empresas a esta tecnologia. NĂŁo sĂł para potenciar os seus produtos e serviços, mas tambĂ©m porque oferece uma maior competitividade no mercado. Posto isto, e aten- dendo a todo este novo paradigma, surge a presente dissertação, que tem como foco o desenvolvimento de uma plataforma que permita otimizar e potenciar o desenvolvimento de projetos na ĂĄrea de inteligĂȘncia artificial. Este desafio surgiu de uma proposta apre- sentada pela empresa GMV, que pretende tornar o processo de aprendizagem automĂĄtica mais acessĂ­vel e intuitivo para os seus trabalhadores e, paralelamente, assegurar nĂ­veis elevados de consistĂȘncia e produtividade no desenvolvimento dos seus projetos. Partindo de todos estes pressupostos, nesta dissertação foi feita uma primeira aborda- gem, quer sobre como Ă© organizado um projeto de aprendizagem automĂĄtica, quer aos problemas que existem ao longo do seu desenvolvimento. Posteriormente, foi feito um estudo do funcionamento de algumas plataformas jĂĄ presentes no mercado, por forma a compreender quais os problemas que pretendem resolver e qual a solução ou soluçÔes desenvolvidas para os colmatar. Feita esta anĂĄlise, prosseguiu-se com a identificação das caracterĂ­sticas a integrar na plataforma. ApĂłs este passo, seguiu-se o estudo e comparação de algumas tecnologias presentes no mercado tendo em vista a implementação das mais promissoras e que contemplassem as caracterĂ­sticas identificadas previamente. Por fim, Ă© apresentada a solução proposta, com a explicação quer do funcionamento da plataforma, quer das opçÔes tomadas ao longo do seu desenvolvimento

    ImageJ2: ImageJ for the next generation of scientific image data

    Full text link
    ImageJ is an image analysis program extensively used in the biological sciences and beyond. Due to its ease of use, recordable macro language, and extensible plug-in architecture, ImageJ enjoys contributions from non-programmers, amateur programmers, and professional developers alike. Enabling such a diversity of contributors has resulted in a large community that spans the biological and physical sciences. However, a rapidly growing user base, diverging plugin suites, and technical limitations have revealed a clear need for a concerted software engineering effort to support emerging imaging paradigms, to ensure the software's ability to handle the requirements of modern science. Due to these new and emerging challenges in scientific imaging, ImageJ is at a critical development crossroads. We present ImageJ2, a total redesign of ImageJ offering a host of new functionality. It separates concerns, fully decoupling the data model from the user interface. It emphasizes integration with external applications to maximize interoperability. Its robust new plugin framework allows everything from image formats, to scripting languages, to visualization to be extended by the community. The redesigned data model supports arbitrarily large, N-dimensional datasets, which are increasingly common in modern image acquisition. Despite the scope of these changes, backwards compatibility is maintained such that this new functionality can be seamlessly integrated with the classic ImageJ interface, allowing users and developers to migrate to these new methods at their own pace. ImageJ2 provides a framework engineered for flexibility, intended to support these requirements as well as accommodate future needs
    • 

    corecore