32 research outputs found

    Una integración de modelos estáticos UML y Eiffel

    Get PDF
    Las técnicas formales y semiformales de especificación de software pueden jugar roles complementarios en el desarrollo de software orientado a objetos. Se describe en este trabajo un método de ingeniería “forward” de modelos estáticos UML basado en la integración de notaciones semiformales UML, especificaciones algebraicas y código. Eiffel fue seleccionado como lenguaje orientado a objetos. El énfasis está puesto en la descripción de una de las etapas del método: la transformación de especificaciones algebraicas a Eiffel. En particular, se analizan las transformaciones para los diferentes tipos de relaciones UML.Eje: Ingeniería de softwareRed de Universidades con Carreras en Informática (RedUNCI

    Una integración de modelos estáticos UML y Eiffel

    Get PDF
    Las técnicas formales y semiformales de especificación de software pueden jugar roles complementarios en el desarrollo de software orientado a objetos. Se describe en este trabajo un método de ingeniería “forward” de modelos estáticos UML basado en la integración de notaciones semiformales UML, especificaciones algebraicas y código. Eiffel fue seleccionado como lenguaje orientado a objetos. El énfasis está puesto en la descripción de una de las etapas del método: la transformación de especificaciones algebraicas a Eiffel. En particular, se analizan las transformaciones para los diferentes tipos de relaciones UML.Eje: Ingeniería de softwareRed de Universidades con Carreras en Informática (RedUNCI

    Collaboration Between Developers and Designers

    Get PDF
    Customer-facing applications are essential for businesses. Therefore, a good user experience is fundamental for their success in the market. Companies nowadays employ highly specialized people in front-end development and User Experience (UX) & User Interface (UI) design to achieve this goal. Their collaboration is critical, and raises some efficiency challenges in the software industry. This work focuses and is applied on OutSystems, a low-code platform that inherits these challenges. While there are some code-generation plugins for popular design tools, these do not generate code for low-code platforms. Therefore, the transformation process from design to development is done 100% manually, which is highly inefficient. Our goal is to accelerate this transformation process from a design model to a development model to mitigate this inefficiency. To do so, we developed an approach using model transformation techniques that automates part of the process. Namely, it automates the generation of application pages/screens by composing the screen mockups in a design technology (such as Figma or Sketch) with a library of reusable UI components to instantiate the design in a front-end technology (such as OutSystems). Our approach was validated by a professional team of front-end developers from an established enterprise-grade low-code platform who applied and evaluated this work on some of their past real projects. Preliminary results show an overall acceptance of the developed tool with a possible increase of 150% to 400% in the value that they can deliver without investing more effort than they already do today. This mitigates a bottleneck faced by development teams today. To increase the value, they could offer to customers (e.g., by producing more application screens in the same period), they would need to recruit new collaborators whose skill set is high on demand. This work delivers major efficiency improvements and lessens the severe lack of qualified professionals, by allowing existing ones to produce more without investing further effort.As aplicações são algo essencial para as empresas. Uma boa experiência de utilizador é fundamental para o sucesso destas aplicações no mercado. Hoje em dia, para alcançar este objetivo, as empresas empregam pessoas altamente especilaizadas em desenvolvimento Front-End e de UX (User Experience) & UI (User Interface) design. A colaboração destas equipas é crucial e de momento apresenta desafios de eficiência na indústria do software. Este trabalho foca-se na OutSystems, uma plataforma low-code, que tem subjacente estas ineficiências que estão presentes em toda a industria. Embora atualmente existam alguns plugins de geração de código para as ferramentas de design populares, estes não geram código para plataformas low-code. Portanto, o processo de transformação de design para desenvolvimento é um processo 100% manual, o que resulta em perdas de eficiência que serão refletidas no valor final entregue aos clientes. O nosso objetivo é acelarar este processo de conversão de um modelo de design para um modelo de desenvolvimento Front-End para mitigar esta ineficiência. Para tal, desenvolvemos uma abordagem utilizando técnicas de transformação de modelos que automatizam parte do processo. Nomeadamente, este automatiza a geração de páginas/ecrãs de aplicações através da composição de mockups de ecrãs numa tecnologia de design (como o Sketch) com uma biblioteca de componentes de UI reutilizáveis para instanciar o design numa tecnologia Front-End (como a OutSystems). A nossa abordagem foi validada por uma equipa profissional de desenvolvimento Front-End de uma plataforma low-code de nível empresarial que aplicaram e avaliaram o trabalho em projetos passados reais da equipa. Os resultados preliminares mostram uma aceitação global da ferramenta desenvolvida, com um possível aumento entre 150% a 400% no valor que conseguem oferecer. Isto permite mitigar um ponto de fricção que as equipas de desenvolvimento encontram de momento. Para aumentar o valor que a equipa consegue entregar aos clientes (por exemplo, através da produção de mais ecrãs no mesmo período de tempo), estes necessitariam de empregar novos colaboradores cujas habilidades têm elevada procura. O nosso trabalho oferece uma alternativa mais económica para o aumento da eficiência e ao mesmo tempo diminui o impacto da escassez de profissionais qualificados, ao permitir que os já existentes consigam produzir mais sem investimento adicional da sua parte

    Formal specification and modeling of complex systems: towards a physics of information via networks

    Get PDF

    Semantic Web methods for knowledge management [online]

    Get PDF

    Codegeneratoren für MOF-basierte Modellierungssprachen

    Get PDF
    Umfang und Funktionalität eingesetzter Softwaresysteme nehmen beständig zu. Zudem wird Software immer häufiger in Bereichen eingesetzt, die spezielle Anforderungen an die Qualität der eingesetzten Software stellen. Modellbasierte Softwareentwicklung wird als vielversprechender Ansatz angesehen, die daraus entstehenden Anforderungen zu bewältigen. In den vergangenen Jahren wurde eine Vielzahl modellbasierter Ansätze zur Softwareentwicklung vorgestellt. Viele dieser Ansätze verwenden die Unified Modeling Language (UML), um die Modelle zu notieren. In letzter Zeit gewinnt die Model Driven Architecture (MDA) zunehmend an Bedeutung, die in erheblich stärkerem Maße als andere Ansätze auf die automatische Abbildung von Modellen auf den Code der Zielplattform setzt. Um die Ziele der MDA zu erreichen, werden domänenspezifische Anpassungen von Modellierungssprachen benötigt. Eine Möglichkeit, entsprechende Anpassungen für die UML zu definieren, ist die Metamodellierungssprache Meta Object Facility (MOF), da diese auch zur Definition der UML verwendet wird. Im Vortrag wird ein Baukasten vorgestellt, der die Entwicklung von Codegeneratoren für Modellierungssprachen erleichtert, die durch ein MOF-Modell definiert sind

    Human-Computer Interaction

    Get PDF
    In this book the reader will find a collection of 31 papers presenting different facets of Human Computer Interaction, the result of research projects and experiments as well as new approaches to design user interfaces. The book is organized according to the following main topics in a sequential order: new interaction paradigms, multimodality, usability studies on several interaction mechanisms, human factors, universal design and development methodologies and tools

    Towards a comprehensive agent-oriented software engineering methodology

    Get PDF
    Recently, agent systems have proven to be a powerful new approach for designing and developing complex and distributed software systems. The agent area is one of the most dynamic and exciting areas in computer science today, because of the agents ability to impact the lives and work of all of us. Developing multi-agent systems for complex and distributed systems entails a robust methodology to assist developers to develop such systems in appropriate way. In the last ten years, many of agent oriented methodologies have been proposed. Although, these methodologies are based on strong basis they still suffer from a set of shortcomings and they still have the problems of traditional distributed systems as well as the difficulties that arise from flexibility requirements and sophisticated interactions. This thesis proposed a new agent oriented software engineering methodology called: Multi-Agent System Development (MASD) for development of multi-agent systems. The new methodology is provided by a set of guidelines, methods, models, and techniques that facilitate a systematic software development process. The thesis makes the following contributions: The main contribution of this thesis is to build a new methodology for the development of multi-agent systems. It is based upon the previous existing methodologies. It is aimed to develop a complete life-cycle methodology for designing and developing MASs. The new methodology is considered as an attempt to solve some of the problems that existing methodologies suffer from. The new methodology is established based on three fundamental aspects: concepts, models, and process. These three aspects are considered as a foundation for building a solid methodology. The concepts are all the necessary MAS concepts that should be available in order to build the models of the new methodology in a correct manner. The models include modeling techniques, modeling languages, a diagramming notation, and tools that can be used to analysis and design the agent system. The process is a set of steps or phases describe how the new methodology works in detail. The new methodology is built to bridge the gap between design models and existing agent implementation languages. It provides refined design models that can be directly implemented in an available programming language or use a dedicated agent-oriented programming language which provides constructs to implement the high-level design concepts such as Jadex, JADE, JACK, etc. The MASD methodology also uses an important concept called triggers and relies heavily on agent roles. The role concept is considered one of the most important aspects that represent agent behaviour. The trigger concept is also considered as an important aspect that represents agent reactivity. The new methodology captures the social agent aspects by utilizing well-known techniques such as use case maps, which enable developers to identify social aspects from the problem specification. MASD methodology is developed based on the essential software engineering issues such as preciseness, accessibility, expressiveness, domain applicability, modularity, refinement, model derivation, traceability, and clear definitions. The MASD methodology is provided by a plain and understandable development process through the methodology phases. It captures the holistic view of the system components, and commutative aspects, which should be recognized before designing the methodology models. This is achieved by using well-known techniques such as UCMs and UML UCDs. The resulting methodology was obtained by performing several steps. First, a review study “literature review” of different agent methodologies is carried out to capture their strengths and weaknesses. This review study started with the conceptual framework for MAS to discuss the common terms and concepts that are used in the thesis. The aim is to establish the characteristics of agent-oriented methodologies, and see how these characteristics are suited to develop multi-agent systems. Secondly, a requirement for a novel methodology is presented. These requirements are discussed in detail based on the three categories: concepts, models, and process. Thirdly, the new mature methodology is developed based on existing methodologies. The MASD methodology is composed of four phases: the system requirement phase, analysis phase, design phase and implementation phase. The new methodology covers the whole life cycle of agent system development, from requirement analysis, architecture design, and detailed design to implementation. Fourthly, the methodology is illustrated by a case study on an agent-based car rental system. Finally, a framework for evaluating agent-oriented methodologies is performed. Four methodologies including MASD are evaluated and compared by performing a feature analysis. This is carried out by evaluating the strengths and weaknesses of each participating methodology using a proposed evaluation framework called the Multi-agent System Analysis and Design Framework (MASADF). The evaluation framework addresses several major aspects of agent-oriented methodologies, such as: concepts, models and process
    corecore