6 research outputs found

    Development of a UML profile to generate a reference prototype framed in the domain of electronic commerce, in an open source tool, using the model-driven software paradigm

    Get PDF
    El presente proyecto muestra una extensión del Meta-Modelo del Lenguaje Unificado de Modelado (UML) a través de un Perfil UML llamado ECOM en un dominio específico como lo es el comercio electrónico (Carrito de Compras), ámbito en el cual se instituyó una topografía de elementos comunes en este tipo de aplicaciones que brinda un nivel de abstracción para fortalecer el desarrollo de nuevos productos software a través del paradigma de desarrollo de software dirigido por modelos, utilizando una herramienta de generación de códigos Open Source denominada Acceleo2. OBJETIVOS 6 2.1 OBJETIVO GENERAL 6 2.2 OBJETIVOS ESPECÍFICOS 6 3. METODOLOGÍA 7 4. ANTECEDENTES 8 4.1 PALABRAS CLAVE: 9 4.2 AUTORES DESTACADOS: 9 5. MARCO TEÓRICO O ESTADO DEL ARTE 12 5.1 MODEL DRIVEN DEVELOPMENT 12 5.2 MODELO Y META-MODELO 13 5.3 THE UNIFIED MODELING LANGUAGE - UML 14 5.4 PERFIL UML (UML-PROFILE) 15 5.5 HERRAMIENTAS DE MODELADO QUE SOPORTAN PERFILES UML 15 5.5.1 PAPYRUS 15 5.5.2 UML2 15 5.5.3 TOPCASED 15 5.6 MODEL DRIVEN ARCHITECTURE 15 5.7 MODELOS MDA 16 5.8 CAPAS DE MDA 17 5.9 TRANSFORMACIONES 17 5.10 HERRAMIENTAS MDA 18 5.11 FABRICAS DE PRODUCTO SOFTWARE 21 5.12 COMERCIO ELECTRÓNICO 21 6. RESULTADOS Y DISCUSIÓN 23 6.1 MUESTRA DE SOFTWARE DE COMERCIO ELECTRÓNICO (CARRITOS DE COMPRA) 23 6.2 ANÁLISIS ESTADÍSTICO DE APLICACIONES DE COMERCIO ELECTRÓNICO. 23 6.2.1 MÉTRICA 23 6.2.2 FORMULARIO 24 6.2.3 RESULTADOS 31 6.2.4 LISTA DE ELEMENTOS IDENTIFICADOS. 43 6.2.4.1 CLASES 44 6.2.4.2 ATRIBUTOS 44 6.2.4.3 MÉTODOS 46 6.2.5 RESTRICCIONES 48 6.2.6 DIAGRAMA DE CLASES. 48 PACKAGE: EDU.MGADS.LENIN.ECOM.BASE 48 6.3 ECOM, PERFIL UML PIM ENMARCADO EN EL DOMINIO DEL COMERCIO ELECTRÓNICO (CARRITO DE COMPRAS). 51 PACKAGE: EDU.MGADS.LENIN.ECOM.PROFILE 51 6.4 PERFIL UML PSM PHP– LESTHARKIN FRAMEWORK. 52 PACKAGE: EDU.MGADS.LENIN.LESTHARKIN.FRAMEWORK.PROFILE 52 6.5 LESTHARKINFRAMEWORK 53 PACKAGE: COM.LENIN.LESTHARKIN.FRAMEWORK 53 6.6 PERFIL UML PSM HTML5 – HTML 55 PACKAGE: EDU.MGADS.LENIN.ECOM.HTML.PROFILE 55 6.7 TRANSFORMADOR UML A PHP IMPLEMENTADO PARA ACCELEO OPEN SOURCE 2.8. 56 PROYECTO: EDU.MGADS.LENIN.ECOM.GEN.PHP 56 6.7.1 CADENA DE TRANSFORMACIÓN 57 6.8 PROTOTIPO DE REFERENCIA BASADO EN LOS PERFILES ECOM, LESTHARKIN Y HTML. 58 PACKAGE: EDU.MGADS.LENIN.ECOM.PROTOTYPE.MODEL 58 6.9 PROTOTIPO DE REFERENCIA, GENERACIÓN DE CÓDIGO EN PHP. 59 PACKAGE: EDU.MGADS.LENIN.ECOM.PROTOTYPE.PHP 59 6.10 ARTÍCULO: “EVOLUCIÓN DEL DESARROLLO DE SOFTWARE”. 65 7. CONCLUSIONES 66 8. RECOMENDACIONES 67 9. TRABAJOS FUTUROS 68 10. REFERENCIAS Y BIBLIOGRAFÍA 69MaestríaThe present project shows an extension of the Meta-Model of the Unified Modeling Language (UML) through a UML Profile called ECOM in a specific domain such as electronic commerce (Shopping Cart), an area in which a topography was instituted of common elements in this type of application that provides a level of abstraction to strengthen the development of new software products through the paradigm of model-driven software development, using an Open Source code generation tool called Accele

    A ‘conversation’ between Frank Land [FL] and Antony Bryant [AB] – : Part 2

    Get PDF
    Part 1 of the ‘conversation’ offered important insights into a groundbreaking era for computer development – adding further detail to existing writings by Frank Land, the work of the LEO group in general, and extended accounts such as those by Ferry, Hally and Harding. This should have whetted the appetite for readers keen to know more, also prompting others to offer their own accounts. Part 2 moves on to Frank Land’s subsequent activities as one of the founding figures of the Information Systems (IS) Academy, and his ‘Emeritus’ phase

    Efficient caching algorithms for memory management in computer systems

    Get PDF
    As disk performance continues to lag behind that of memory systems and processors, fully utilizing memory to reduce disk accesses is a highly effective effort to improve the entire system performance. Furthermore, to serve the applications running on a computer in distributed systems, not only the local memory but also the memory on remote servers must be effectively managed to minimize I/O operations. The critical challenges in an effective memory cache management include: (1) Insightfully understanding and quantifying the locality inherent in the memory access requests; (2) Effectively utilizing the locality information in replacement algorithms; (3) Intelligently placing and replacing data in the multi-level caches of a distributed system; (4) Ensuring that the overheads of the proposed schemes are acceptable.;This dissertation provides solutions and makes unique and novel contributions in application locality quantification, general replacement algorithms, low-cost replacement policy, thrashing protection, as well as multi-level cache management in a distributed system. First, the dissertation proposes a new method to quantify locality strength, and accurately to identify the data with strong locality. It also provides a new replacement algorithm, which significantly outperforms existing algorithms. Second, considering the extremely low-cost requirements on replacement policies in virtual memory management, the dissertation proposes a policy meeting the requirements, and considerably exceeding the performance existing policies. Third, the dissertation provides an effective scheme to protect the system from thrashing for running memory-intensive applications. Finally, the dissertation provides a multi-level block placement and replacement protocol in a distributed client-server environment, exploiting non-uniform locality strengths in the I/O access requests.;The methodology used in this study include careful application behavior characterization, system requirement analysis, algorithm designs, trace-driven simulation, and system implementations. A main conclusion of the work is that there is still much room for innovation and significant performance improvement for the seemingly mature and stable policies that have been broadly used in the current operating system design

    Efficient Main Memory Deduplication Through Cross Layer Integration

    Get PDF
    Limited main memory size is the primary bottleneck for consolidating VMs. Memory scanners reduce the memory footprint of VMs by eliminating duplicate memory pages. Our approach extends main memory scanners through Cross Layer I/O-based Hints (XLH). Compared to scanners such as KSM, XLH can merge equal pages that stem from the virtual disk image earlier by minutes and is capable of saving up to eight times as much memory, at the same scan-rate

    Memory abstractions for parallel programming

    Get PDF
    Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2012.Cataloged from PDF version of thesis.Includes bibliographical references (p. 156-163).A memory abstraction is an abstraction layer between the program execution and the memory that provides a different "view" of a memory location depending on the execution context in which the memory access is made. Properly designed memory abstractions help ease the task of parallel programming by mitigating the complexity of synchronization or admitting more efficient use of resources. This dissertation describes five memory abstractions for parallel programming: (i) cactus stacks that interoperate with linear stacks, (ii) efficient reducers, (iii) reducer arrays, (iv) ownershipaware transactions, and (v) location-based memory fences. To demonstrate the utility of memory abstractions, my collaborators and I developed Cilk-M, a dynamically multithreaded concurrency platform which embodies the first three memory abstractions. Many dynamic multithreaded concurrency platforms incorporate cactus stacks to support multiple stack views for all the active children simultaneously. The use of cactus stacks, albeit essential, forces concurrency platforms to trade off between performance, memory consumption, and interoperability with serial code due to its incompatibility with linear stacks. This dissertation proposes a new strategy to build a cactus stack using thread-local memory mapping (or TLMM), which enables Cilk-M to satisfy all three criteria simultaneously. A reducer hyperobject allows different branches of a dynamic multithreaded program to maintain coordinated local views of the same nonlocal variable. With reducers, one can use nonlocal variables in a parallel computation without restructuring the code or introducing races. This dissertation introduces memory-mapped reducers, which admits a much more efficient access compared to existing implementations. When used in large quantity, reducers incur unnecessarily high overhead in execution time and space consumption. This dissertation describes support for reducer arrays, which offers the same functionality as an array of reducers with significantly less overhead. Transactional memory is a high-level synchronization mechanism, designed to be easier to use and more composable than fine-grain locking. This dissertation presents ownership-aware transactions, the first transactional memory design that provides provable safety guarantees for "opennested" transactions. On architectures that implement memory models weaker than sequential consistency, programs communicating via shared memory must employ memory-fences to ensure correct execution. This dissertation examines the concept of location-based memoryfences, which unlike traditional memory fences, incurs latency only when synchronization is necessary.by I-Ting Angelina Lee.Ph.D
    corecore