24 research outputs found

    Developing Web Applications For Different Architectures: The MoWebA Approach

    Get PDF
    This study presents the Architecture Specific Model (ASM) defined by the MoWebA approach to improve the development of web applications for different architectures. MoWebA is a model-driven approach to web applications development. The article presents a general overview of MoWebA, including the methodological aspects related to its modeling and transformation processes, the process of defining the ASM, and an example of an ASM model.CONACYT – Consejo Nacional de Ciencia y TecnologíaPROCIENCI

    The Impact of Ownership and Contribution Alignment on Code Technical Debt Accumulation

    Full text link
    Software development organisations strive to maintain their effectiveness while the complexity of the systems they develop continues to grow. To tackle this challenge, organisations tend to be organised into small teams working with components that can be developed separately. Here, organisations must design their architecture and organisational structures in a way that enables communication and minimises dependencies, and helps teams reduce code and architectural degradation. Ensuring that each small independent team is responsible for components they primarily contribute is one approach to achieving this goal. This study aims at understanding the impact of ownership and contribution alignment on accumulation of code technical debt and how abrupt changes in team constellation affect teams' effectiveness in managing TD. We conducted an embedded case study in a company developing a very large software system, analysing ten components belonging to 1 team. During the studied period, the team was split into two, and the components owned by them were distributed between the two new teams. With high degrees of contribution alignment, we noticed a negative correlation between contribution alignment and TD Density before the team split. In 4 components, this correlation is statistically significant. This means a higher contribution alignment degree implies a lower TD Density. After the split, we observe a negative correlation in 3 components. The positive correlation observed in the other 5 components could be attributed to low contribution alignment, leading to difficulties in managing TD. Our findings suggest that contribution alignment can be important in controlling TD in software development organisations. Making teams responsible for the quality of components they have more expertise over and minimising dependencies between teams can help organisations mitigate the growth of TD.Comment: Submitted to Transactions on Software Engineering (TSE

    DSL4SPM: Domain-specific language for software process modeling

    Get PDF
    This paper presents a novel formal approach to software process modeling based on the Software Process Engineering Metamodel (SPEM) for the syntactic aspect of a process model and a domain-specific language (DSL) for the semantic aspect of the model. This approach provides a conceptual framework for designing processes in a more abstract way and to enable process implementation on various platforms. A Process-Centered Software Environment (PCSE) called DSL4SPM (Domain-Specific Language for Software Process Modeling) is a plug-in tool which satisfies the meta-requirements for Process Modeling Languages (PMLs). The key concept of the DSL4SPM is the use of a toolbox, containing SPEM elements, to instantiate objects in a graphical scene. The process model designer links these elements with relations, and defines the values of the attributes required for both these and the objects, with the aim of arriving at a consolidated view of the problem. An overview of the advantages of the approach is presented. With it, the process manager is able to quickly and easily model a process from innovative perspectives, with the aim of better understanding the risks associated with software development

    Model-Driven Development of Aspect-Oriented Software Architectures

    Full text link
    The work presented in this thesis of master is an approach that takes advantage of the Model-Driven Development approach for developing aspect-oriented software architectures. A complete MDD support for the PRISMA approach is defined by providing code generation, verification and reusability properties.Pérez Benedí, J. (2007). Model-Driven Development of Aspect-Oriented Software Architectures. http://hdl.handle.net/10251/12451Archivo delegad

    Software Architecture Description & UML Workshop

    Get PDF

    Evolución Dinámica de Arquitecturas Software Orientadas a Aspectos

    Full text link
    Se persigue dotar a los sistemas software altamente disponibles de la capacidad de alterar tanto su estructura como su comportamiento en tiempo de ejecución, afectando al mínimo número de subsistemas que lo forman. Esto se ha realizado a nivel de arquitecturas software y basándose en la separación de asuntos de intéres.Costa Soria, C. (2007). Evolución Dinámica de Arquitecturas Software Orientadas a Aspectos. http://hdl.handle.net/10251/12907Archivo delegad

    A meta-programming framework for software evolution

    Get PDF

    Design and Implementation of a Software Architecture Knowledge Base

    Get PDF
    Viime vuosina ohjelmistoarkkitehtuurien tutkimuksessa on nostettu esiin arkkitehtuuritietämyksen käsite. Arkkitehtuuritietämys kattaa ohjelmiston arkkitehtuurin ja siihen vaikuttavat asiat laajasti, käsittäen perinteisen arkkitehtuurin kuten ohjelmakomponenttien ja niiden suhteiden lisäksi muun muassa suunnittelupäätökset ja arkkitehtuurin pohjalla olevat vaatimukset. Järjestelmää koskevan arkkitehtuuritietämyksen kerääminen auttaa järjestelmän kehitystä ja ylläpitoa, mutta sen kerääminen perinteisiin dokumentteihin voi olla ongelmallista. Tämän vuoksi tässä työssä kehitettiin selaimella käytettävä arkkitehtuuritietämyskanta tietämyksen tallentamiseen ja tarkasteluun. Tietämyskannan idea on, että sinne tallennetaan kaikki järjestelmän elinkaaren aikana syntyvä tieto sitä mukaa, kun se syntyy. Tallennettua tietoa voidaan sitten tarkastella eri sidosryhmien tarpeisiin toteutettujen näkymien avulla. Tietämyskanta rakennettiin Polarion ALM -ohjelmiston elinkaaren hallintajärjestelmän päälle. Kantaan tallennettavan tiedon rakenteen määritti tätä varten kehitetty arkkitehtuuritietämyksen metamalli, joka yhdistää perinteisen arkkitehtuurin arkkitehtuuriarvioinnissa syntyvään tietoon ja yleiseen arkkitehtuuritietoon. Polarionin tiedon syöttö- ja tarkasteluominaisuuksia täydentämään tietämyskantaan toteutettiin arkkitehtuuriarvioinnissa käytettävä tiedon syöttötyökalu ja kolme erilaista ja eri tarkoituksiin sopivaa näkymää tallennettuun tietoon. Tietämyskantaa arvioitiin tallentamalla sinne erään oppimisympäristön arkkitehtuuritietämystä ja pyytämällä järjestelmää tuntevia henkilöitä arvioimaan tiedon syöttötyökalua sekä tietämyksestä luotuja näkymiä. Tämä arviointi ei ollut kaikilta osin kovin kattavaa, mutta sen pohjalta voidaan sanoa, että tietämyskanta ja siihen toteutetut ominaisuudet ovat periaatteessa toimivia. Tietämyskantaa ei myöskään voi sanoa tämän työn perusteella valmiiksi, ja se vaatiikin vielä jatkokehitystä, jolle tämä työ tarjoaa hyvän pohjan

    Contribution to Quality-driven Evolutionary Software Development process for Service-Oriented Architectures

    Get PDF
    The quality of software is a key element for the successful of a system. Currently, with the advance of the technology, consumers demand more and better services. Models for the development process have also to be adapted to new requirements. This is particular true in the case of service oriented systems (domain of this thesis), where an unpredictable number of users can access to one or several services. This work proposes an improvement in the models for the software development process based on the theory of the evolutionary software development. The main objective is to maintain and improve the quality of software as long as possible and with the minimum effort and cost. Usually, this process is supported on methods known in the literature as agile software development methods. Other key element in this thesis is the service oriented software architecture. Software architecture plays an important role in the quality of any software system. The Service oriented architecture adds the service flexibility, the services are autonomous and compact assets, and they can be improved and integrated with better facility. The proposed model in this thesis for evolutionary software development makes emphasis in the quality of services. Therefore, some principles of evolutionary development are redefined and new processes are introduced, such as: architecture assessment, architecture recovery and architecture conformance. Every new process will be evaluated with case studies considering quality aspects. They have been selected according to the market demand, they are: the performance, security and evolutionability. Other aspects could be considered of the same way than the three previous, but we believe that these quality attributes are enough to demonstrate the viability of our proposal
    corecore