12 research outputs found

    Mapping the systematic literature studies about software ecosystems

    Get PDF
    There is a need to improve the definition and development of technological ecosystems in order to solve the main problems detected in previous studies. To achieve this goal, it is required to identify and analyse the solutions available in the literature in the field of software engineering applied to ecosystems. The research in software ecosystems is a relatively young research area, but there are already several works that analyse the literature associated. To conduct a new systematic literature review is necessary to ensure that there are no studies that do the same, namely, that do not answer the same research questions. The identification of the need for a review was done through a study focused on systematic literature reviews and mapping studies about software ecosystems. This work aims to describe the mapping conducted as part of that study. It provides a global state of the art of this kind of studies in the area of software ecosystems

    State of the Practice in Application Programming Interfaces (APIs): A Case Study

    Get PDF
    Application Programming Interfaces (APIs) have become prevalent in today’s software systems and services. APIs are basically a technical means to realize the co-operation between software systems or services. While there are several guidelines for API development, the actually applied practices and challenges are less clear. To better understand the state of the practice of API development and management in the industry, we conducted a descriptive case study in four Finnish software companies: two consultancy companies developing software for their customers, and two companies developing their software products. As a result, we identified five different usage scenarios for APIs and emphasize that diversity of usage should be taken into account more explicitly especially in research. API development and technical management are well supported by the existing tools and technologies especially available from the cloud technology. This leaves as the main challenge the selection of the right technology from the existing technology stack. Documentation and usability are practical issues to be considered and often less rigorously addressed. However, understanding what kind of API management model to apply for the business context appears as the major challenge. We also suggest considering APIs more clearly a separate concern in the product management with specific practices, such as API roadmapping.Peer reviewe

    Metodologías ágiles Scrum, XP, SLeSS, Scrumban, HME, Mobile-D y MASAN empleadas en la industria de dispositivos móviles: Un contraste en favor de la industria del desarrollo móvil

    Get PDF
    La finalidad de este artículo fue realizar un contraste entre metodologías ágiles Scrum, XP, SLeSS, Scrumban, HME, Mobile-D y MASAN, empleadas en la industria del desarrollo de software para dispositivos móviles. Como resultado de la investigación se encontró que dichas metodologías no están direccionadas a cumplir con los todos los requerimientos especiales, exigidos por los aplicativos móviles, ya que la mayor parte de éstas no surgieron pensando en el desarrollo de los mismos. Si bien parte de las características de las metodologías ágiles es que fueron concebidas para abordar proyectos de cortos y mediano plazo con requerimientos cambiantes a lo largo del mismo, en algunos de los casos dejan varios vacíos como la baja calidad y la precaria robustez del software resultante. Después de un análisis exhaustivo se concluyó Scrum, SLeSS y Scrumban, son las más capacitadas para atender las necesidades del desarrollo de aplicaciones para dispositivos móvil.TARAPOTOEscuela Profesional de Ingeniería de SistemasDesarrollo de Softwar

    Ecosistemas Software: Análisis de revisiones sistemáticas de literatura

    Get PDF
    [EN]Software ecosystems, and in particular, technological ecosystems, allow solving problems related to the management of information and knowledge in all types of organizations. In order to improve the definition and development of this type of technological solutions, first, previous investigations must be identified and analyzed. In this way it is intended to clarify if there are solutions in the literature that allow solving the identified problems. As a preliminary phase to the systematic literature review, an analysis focused on systematic literature studies about software ecosystems has been carried out. This analysis was done through a systematic mapping

    The importance of socio-technical resources for software ecosystems management

    Get PDF
    AbstractSoftware Ecosystem (SECO) is often understood as a set of actors interacting among themselves and manipulating artifacts with the support of a common technology platform. Usually, SECO approaches can be designed as an environment whose component repository is gathering stakeholders as well as software products and components. By manipulating software artifacts, a technical network emerges from interactions made over the component repository in order to reuse artifacts, improving code quality, downloading, selling, buying etc. Although technical repositories are essential to store SECO’s artifacts, the interaction among actors in an emerging social network is a key factor to strengthen the SECO’s through increasing actor’s participation, e.g., developing new software, reporting bugs, and communicating with suppliers. In the SECO context, both the internal and external actors keep the platform’s components updated and documented, and even support requirements and suggestions for new releases and bug fixes. However, those repositories often lack resources to support actors’ relationships and consequently to improve the reuse processes by stimulating actors’ interactions, information exchange and better understanding on how artifacts are manipulated by actors. In this paper, we focused on investigating SECO as component repositories that include socio-technical resources. As such, we present a survey that allowed us to identify the relevance of each resource for a SECO based on component repositories, initially focused on the Brazilian scenario. This paper also describes the analysis of the data collected in that survey. Information of other SECO elements extracted from the data is also presented, e.g., the participants’ profile and how they behave within a SECO. As an evolution of our research, a study for evaluating the availability and the use of such resources on top of two platforms was also conducted with experts in collaborative development in order to analyze the usage of the most relevant resources in real SECO’s platforms. We concluded that socio-technical resources have aided collaboration in software development for SECO, coordination of teams based on more knowledge of actor’s tasks and interactions, and monitoring of quality of SECOs’ platforms through the orchestration of the contributions developed by external actors

    An Introduction to Software Ecosystems

    Full text link
    This chapter defines and presents different kinds of software ecosystems. The focus is on the development, tooling and analytics aspects of software ecosystems, i.e., communities of software developers and the interconnected software components (e.g., projects, libraries, packages, repositories, plug-ins, apps) they are developing and maintaining. The technical and social dependencies between these developers and software components form a socio-technical dependency network, and the dynamics of this network change over time. We classify and provide several examples of such ecosystems. The chapter also introduces and clarifies the relevant terms needed to understand and analyse these ecosystems, as well as the techniques and research methods that can be used to analyse different aspects of these ecosystems.Comment: Preprint of chapter "An Introduction to Software Ecosystems" by Tom Mens and Coen De Roover, published in the book "Software Ecosystems: Tooling and Analytics" (eds. T. Mens, C. De Roover, A. Cleve), 2023, ISBN 978-3-031-36059-6, reproduced with permission of Springer. The final authenticated version of the book and this chapter is available online at: https://doi.org/10.1007/978-3-031-36060-

    Integration analysis of solutions based on software as a service to implement Educational Technological Ecosystems

    Get PDF
    [ES]Una de las principales características de la actual Sociedad del Conocimiento reside en el valor del conocimiento como un recurso activo en cualquier tipo de entidad, desde instituciones educativas hasta grandes corporaciones empresariales. La gestión del conocimiento surge como una ventaja competitiva de tal forma que las entidades dedican parte de sus recursos a desarrollar su capacidad para compartir, crear y aplicar nuevos conocimientos de forma continuada a lo largo del tiempo. La tecnología, considerada el motor, el elemento central, en la Sociedad de la Información, pasa a convertirse en un soporte para el aprendizaje, para la transformación de conocimiento tácito en explícito, de conocimiento individual en grupal. Internet, las tecnologías de la información y la comunicación y, en particular, los sistemas de información pasan de ser elementos que guían el desarrollo de la sociedad a ser herramientas cuyo desarrollo está guiado por las necesidades de gestión del conocimiento y los procesos de aprendizaje. Los ecosistemas tecnológicos, considerados como la evolución de los sistemas de información tradicionales, se posicionan como sistemas de gestión del conocimiento que abarcan tanto la componente tecnológica como el factor humano. En el caso de que la gestión del conocimiento esté dirigida a apoyar fundamentalmente procesos de aprendizaje, el ecosistema tecnológico se puede denominar ecosistema de aprendizaje. La metáfora de ecosistema, que proviene del área de la biología, se utiliza en diferentes contextos para transmitir la naturaleza evolutiva de procesos, actividades y relaciones. El uso del concepto ecosistema natural se aplica al ámbito tecnológico para reflejar un conjunto de características o propiedades de los ecosistemas naturales que pueden transferirse a los ecosistemas tecnológicos o ecosistemas software con el fin de proporcionar soluciones, las cuales deben estar orientadas resolver los problemas de gestión del conocimiento. A su vez, estas soluciones tienen que adaptarse a los constantes cambios que sufre cualquier tipo de entidad o contexto en el que se despliega algún tipo de solución tecnológica. A pesar de las ventajas que ofrecen los ecosistemas tecnológicos, el desarrollo de este tipo de soluciones tiene una mayor complejidad que los sistemas de información tradicionales. A los problemas propios de la ingeniería del software, tales como la interoperabilidad de los componentes o la evolución del ecosistema, se unen la dificultad de gestionar un conocimiento complejo y la diversidad de personas involucradas. Los diferentes retos y problemas de los ecosistemas tecnológicos, y en particular de aquellos centrados en gestionar el conocimiento y el aprendizaje, requieren mejorar los procesos de definición y desarrollo de este tipo de soluciones tecnológicas. La presente tesis doctoral se centra en proporcionar un marco arquitectónico que permita mejorar la definición, el desarrollo y la sostenibilidad de los ecosistemas tecnológicos para el aprendizaje. Dicho marco estará compuesto, principalmente, por dos resultados asociados a esta investigación: un patrón arquitectónico que permita resolver los problemas detectados en ecosistemas de aprendizaje reales y un metamodelo de ecosistema de aprendizaje, basado en el patrón, que permita aplicar Ingeniería Dirigida por Modelos para sustentar la definición y el desarrollo de los ecosistemas de aprendizaje. Para llevar a cabo la investigación se han definido tres ciclos siguiendo el marco metodológico Investigación-Acción. El primer ciclo se ha centrado en el análisis de varios casos de estudio reales con el fin de obtener un modelo de dominio del problema. Se han analizado ecosistemas tecnológicos para la gestión del conocimiento y el aprendizaje desplegados en contextos heterogéneos, en particular, la Universidad de Salamanca, el grupo de investigación GRIAL y el proyecto europeo TRAILER (centrado en gestionar el conocimiento informal en instituciones y empresas). Como resultado de este ciclo se han detectado una serie de características que debe tener un ecosistema tecnológico y se ha definido un patrón arquitectónico que permite sentar las bases del ecosistema, dando solución a algunos de los problemas detectados y asegurando la flexibilidad y adaptabilidad de los componentes del ecosistema con el fin de permitir su evolución. El segundo ciclo se ha centrado en la mejora y validación del patrón arquitectónico. Los problemas detectados en el ciclo anterior se han modelado con la notación Business Process Model and Notation. Para ello, se han agrupado los problemas relacionados con procesos de gestión del conocimiento similares y posteriormente se ha realizado para cada conjunto de problemas un diagrama con un alto nivel de abstracción. Después, para cada uno de los diagramas, se han identificado una vez más los problemas a resolver y se ha definido un nuevo diagrama aplicando el patrón. Esto ha permitido validar el patrón arquitectónico y sentar las bases para su formalización. Por último, el tercer ciclo ha planteado el Desarrollo Dirigido por Modelos de ecosistemas tecnológicos para la gestión del conocimiento y el aprendizaje. En concreto, se ha definido un metamodelo de ecosistema de aprendizaje basado en el patrón arquitectónico planteado en el ciclo anterior. El metamodelo se ha validado a través de una serie de transformaciones modelo a modelo automatizadas mediante reglas de transformación. Para poder llevar a cabo dicho proceso, se ha definido un metamodelo específico de plataforma que proporciona un conjunto de recomendaciones, tanto tecnológicas como humanas, para implementar ecosistemas de aprendizaje basados en software open source. El metamodelo de ecosistema de aprendizaje y el metamodelo específico de plataforma para definir ecosistemas basados en software open source proporcionan las guías necesarias para definir ecosistemas de aprendizaje que resuelvan los principales problemas detectados en este tipo de soluciones software. Los tres casos de estudio reales que se han desarrollado para validar los resultados obtenidos a lo largo de los ciclos de Investigación-Acción, en especial, el patrón arquitectónico para modelar ecosistemas de aprendizaje, el metamodelo de ecosistema de aprendizaje y el metamodelo específico de plataforma para definir ecosistemas basados en software open source, permiten afirmar, como conclusión más general, que es posible mejorar la definición y el desarrollo de los ecosistemas tecnológicos enfocados en gestionar el conocimiento y los procesos de aprendizaje. Más concretamente, el uso de ingeniería dirigida por modelos, sustentada sobre una sólida propuesta arquitectónica, permite definir ecosistemas de aprendizaje que evolucionan y se adaptan a las necesidades cambiantes del entorno y de los usuarios, así como resolver un conjunto de problemas comunes identificado en este tipo de soluciones tecnológicas

    Hedonické nebo pragmatické preference? Komparativní analýza uživatelů platforem Android a iOS z pohledu UX a informačního chování

    Get PDF
    The theoretical part of the thesis presents the evolution of the fields of human-computer interaction (HCI) and user experience (UX) including hedonic-pragmatic model of user experience. It further presents platforms and ecosystems in general, the evolution of smartphone market and the platforms of Android and iOS, and explains the basic concepts of information and consumer behaviour. A part of the thesis is a qualitative study examining the differences between the preferences towards smartphones of Android and iOS users, and differences in their information behaviour. It was found out that the participants - users of both platforms have mostly pragmatic reasons for their platform preference but describe them differently; that Android users seek more information at the time of smartphone purchase decision and that some iOS users, unlike Android users, started using their platform based on observation of others' good user experience with it.Teoretická část práce představuje vývoj oborů interakce člověk-počítač a uživatelské zkušenosti včetně hedonicko-pragmatického modelu. Dále jsou představeny platformy a ekosystémy obecně, vývoj trhu se smartphony a samotné dvě platformy Android a iOS. Vysvětleny jsou i základní koncepty informačního a zákaznického chování. Součástí práce je kvalitativní výzkum, jenž zkoumá rozdíly v požadavcích uživatelů obou platforem na bázi hedonicko-pragmatického modelu uživatelské zkušenosti a v jejich informačním chování. Bylo zjištěno, že účastníci výzkumu - uživatelé obou platforem mají zejména pragmatické důvody, ale i některé hedonické důvody pro volbu své platformy, ale popisují je jiným způsobem; a zároveň, že uživatelé Androidu zjišťují více informací při kupování nového smartphonu a že uživatelé iOS se v některých případech, na rozdíl od uživatelů Androidu, rozhodli pro svoji platformu na základě pozorování spokojenosti okolí.Institute of Information Studies and Librarianship - New Media StudiesÚstav informačních studií - studia nových médiíFilozofická fakultaFaculty of Art
    corecore