lnu.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Perez-Palacin, DiegoORCID iD iconorcid.org/0000-0002-2736-845X
Publications (10 of 30) Show all publications
Perez-Palacin, D., Merseguer, J., Requeno, J. I., Guerriero, M., Di Nitto, E. & Tamburri, D. A. (2019). A UML Profile for the Design, Quality Assessment and Deployment of Data-intensive Applications. Software and Systems Modeling, 18(6), 3577-3614
Open this publication in new window or tab >>A UML Profile for the Design, Quality Assessment and Deployment of Data-intensive Applications
Show others...
2019 (English)In: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374, Vol. 18, no 6, p. 3577-3614Article in journal (Refereed) Published
Abstract [en]

Big Data or Data-Intensive applications (DIAs) seek to mine, manipulate, extract or otherwise exploit the potential intelligence hidden behind Big Data. However, several practitioner surveys remark that DIAs potential is still untapped because of very difficult and costly design, quality assessment and continuous refinement. To address the above shortcoming, we propose the use of a UML domain-specific modeling language or profile specifically tailored to support the design, assessment and continuous deployment of DIAs. This article illustrates our DIA-specific profile and outlines its usage in the context of DIA performance engineering and deployment. For DIA performance engineering, we rely on the Apache Hadoop technology, while for DIA deployment, we leverage the TOSCA language. We conclude that the proposed profile offers a powerful language for data-intensive software and systems modeling, quality evaluation and automated deployment of DIAs on private or public clouds.

Place, publisher, year, edition, pages
Springer, 2019
Keywords
UML, Profile, Data-intensive applications, Software design, Big Data, Performance assessment, Model-driven deployment, Apache Hadoop, TOSCA language
National Category
Computer and Information Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-89407 (URN)10.1007/s10270-019-00730-3 (DOI)000485320600014 ()
Available from: 2019-10-03 Created: 2019-10-03 Last updated: 2019-10-03Bibliographically approved
Requeno, J. I., Merseguer, J., Bernardi, S., Perez-Palacin, D., Giotis, G. & Papanikolaou, V. (2019). Quantitative Analysis of Apache Storm Applications: The NewsAsset Case Study. Information Systems Frontiers, 21(1), 67-85
Open this publication in new window or tab >>Quantitative Analysis of Apache Storm Applications: The NewsAsset Case Study
Show others...
2019 (English)In: Information Systems Frontiers, ISSN 1387-3326, E-ISSN 1572-9419, Vol. 21, no 1, p. 67-85Article in journal (Refereed) Published
Abstract [en]

The development of Information Systems today faces the era of Big Data. Large volumes of information need to be processed in real-time, for example, for Facebook or Twitter analysis. This paper addresses the redesign of NewsAsset, a commercial product that helps journalists by providing services, which analyzes millions of media items from the social network in real-time. Technologies like Apache Storm can help enormously in this context. We have quantitatively analyzed the new design of NewsAsset to assess whether the introduction of Apache Storm can meet the demanding performance requirements of this media product. Our assessment approach, guided by the Unified Modeling Language (UML), takes advantage, for performance analysis, of the software designs already used for development. In addition, we converted UML into a domain-specific modeling language (DSML) for Apache Storm, thus creating a profile for Storm. Later, we transformed said DSML into an appropriate language for performance evaluation, specifically, stochastic Petri nets. The assessment ended with a successful software design that certainly met the scalability requirements of NewsAsset.

Place, publisher, year, edition, pages
Berlin/Heidelberg: Springer, 2019
Keywords
Apache Storm, UML, Petri nets, Software Performance, Software reuse
National Category
Software Engineering
Research subject
Computer Science, Software Technology; Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-77364 (URN)10.1007/s10796-018-9851-x (DOI)
Projects
H2020 DICE - Grant Agreement 644869Spanis Ministry of Economy and Competitiveness TIN2014-58457-R
Funder
EU, European Research Council, 644869
Available from: 2018-08-28 Created: 2018-08-28 Last updated: 2019-05-17Bibliographically approved
Bernardi, S., Domínguez, J. L., Gómez, A., Joubert, C., Merseguer, J., Perez-Palacin, D., . . . Romeu, A. (2018). A systematic approach for performance assessment using process mining: An industrial experience report. Journal of Empirical Software Engineering, 23(6), 3394-3441
Open this publication in new window or tab >>A systematic approach for performance assessment using process mining: An industrial experience report
Show others...
2018 (English)In: Journal of Empirical Software Engineering, ISSN 1382-3256, E-ISSN 1573-7616, Vol. 23, no 6, p. 3394-3441Article in journal (Refereed) Published
Abstract [en]

Software performance engineering is a mature field that offers methods to assess system performance. Process mining is a promising research field applied to gain insight on system processes. The interplay of these two fields opens promising applications in the industry. In this work, we report our experience applying a methodology, based on process mining techniques, for the performance assessment of a commercial data-intensive software application. The methodology has successfully assessed the scalability of future versions of this system. Moreover, it has identified bottlenecks components and replication needs for fulfilling business rules. The system, an integrated port operations management system, has been developed by Prodevelop, a medium-sized software enterprise with high expertise in geospatial technologies. The performance assessment has been carried out by a team composed by practitioners and researchers. Finally, the paper offers a deep discussion on the lessons learned during the experience, that will be useful for practitioners to adopt the methodology and for researcher to find new routes.

Place, publisher, year, edition, pages
Springer, 2018
Keywords
Software performance, Process mining, Unified modeling language, Complex event processing, Stochastic petri net
National Category
Computer Sciences
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-74460 (URN)10.1007/s10664-018-9606-9 (DOI)000451593200009 ()2-s2.0-85044196222 (Scopus ID)
Projects
H2020 DICE, Grant Agreement No. 644869CyCriSec-TIN2014-58457-R
Funder
EU, Horizon 2020, 644869
Available from: 2018-05-22 Created: 2018-05-22 Last updated: 2019-08-29Bibliographically approved
Artac, M., Borovsak, T., Di Nitto, E., Guerriero, M., Perez-Palacin, D. & Tamburri, D. A. (2018). Infrastructure-as-code for data-intensive architectures: a model-driven development approach. In: 2018 IEEE 25th International Conference on Software Architecture (ICSA): . Paper presented at 2018 IEEE International Conference on Software Architecture, Seattle, USA, April 30 - May 4, 2018 (pp. 156-165). IEEE
Open this publication in new window or tab >>Infrastructure-as-code for data-intensive architectures: a model-driven development approach
Show others...
2018 (English)In: 2018 IEEE 25th International Conference on Software Architecture (ICSA), IEEE, 2018, p. 156-165Conference paper, Published paper (Refereed)
Abstract [en]

As part of the DevOps tactics, Infrastructure-as- Code (IaC) provides the ability to create, configure, and manage complex infrastructures by means of executable code. Writing IaC, however, is not an easy task, since it requires blending different infrastructure programming languages and abstractions, each specialized on a particular aspect of infrastructure creation, configuration, and management. Moreover, the more the architectures become large and complex (e.g. Data-Intensive or Microservice-based architectures), the more dire the need of IaC becomes. The goal of this paper is to exploit Model- Driven Engineering (MDE) to create language-agnostic models that are then automatically transformed into IaC. We focus on the domain of Data-Intensive Applications as these typically exploit complex infrastructures which demand sophisticated and fine-grained configuration and re-configuration — we show that, through our approach, called DICER, it is possible to create complex IaC with significant amounts of time savings, both in IaC design as well as deployment and re-deployment times.

Place, publisher, year, edition, pages
IEEE, 2018
Keywords
DevOps, Big Data, Model-Driven Engineering, Cloud, Infrastructure-as-Code, TOSCA
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-81769 (URN)10.1109/ICSA.2018.00025 (DOI)2-s2.0-85051103640 (Scopus ID)9781538663981 (ISBN)9781538663998 (ISBN)
Conference
2018 IEEE International Conference on Software Architecture, Seattle, USA, April 30 - May 4, 2018
Available from: 2019-04-09 Created: 2019-04-09 Last updated: 2019-08-29Bibliographically approved
Garcia-Valls, M., Perez-Palacin, D. & Mirandola, R. (2018). Pragmatic cyber physical systems design based on parametric models. Journal of Systems and Software, 144, 559-572
Open this publication in new window or tab >>Pragmatic cyber physical systems design based on parametric models
2018 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 144, p. 559-572Article in journal (Refereed) Published
Abstract [en]

The adaptive nature of cyber physical systems (CPS) comes from the fact that they are deeply immersed in the physical environments that are inherently dynamic. CPS also have stringent requirements on real-time operation and safety that are fulfilled by rigorous model design and verification. In the real-time literature, adaptation is mostly limited to off-line modeling of well known and predicted transitions; but this is not appropriate for cyber physical systems as each transition can have unique and unknown characteristics. In the adaptive systems literature, adaptation solutions are silent about timely execution and about the underlying hardware possibilities that can potentially speed up execution. This paper presents a solution for designing adaptive cyber physical systems by using parametric models that are verified during the system execution (i.e., online), so that adaptation decisions are made based on the timing requirements of each particular adaptation event. Our approach allows the system to undergo timely adaptations that exploit the potential parallelism of the software and its execution over multicore processors. We exemplify the approach on a specific use case with autonomous vehicles communication, showing its applicability for situations that require time-bounded online adaptations.

Place, publisher, year, edition, pages
Elsevier, 2018
Keywords
CPS, Autonomous systems, Adaptive systems, Verification
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-78408 (URN)10.1016/j.jss.2018.06.044 (DOI)000445441100032 ()2-s2.0-85050800511 (Scopus ID)
Available from: 2018-10-22 Created: 2018-10-22 Last updated: 2019-08-29Bibliographically approved
Perez-Palacin, D., Mirandola, R. & Merseguer, J. (2017). Accurate modeling and efficient QoS analysis of scalable adaptive systems under bursty workload. Journal of Systems and Software, 130, 24-41
Open this publication in new window or tab >>Accurate modeling and efficient QoS analysis of scalable adaptive systems under bursty workload
2017 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 130, p. 24-41Article in journal (Refereed) Published
Abstract [en]

Fulfillment of QoS requirements for systems deployed in the Internet is becoming a must. A widespread characteristic of this kind of systems is that they are usually subject to highly variable and bursty workloads. The allocation of resources to fulfill QoS requirements during the peak workloads could entail a waste of computing resources. A solution is to provide the system with self-adaptive techniques that can allocate resources only when and where they are required. We pursue the QoS evaluation of workload-aware self-adaptive systems based on stochastic models. In particular, this work proposes an accurate modeling of the workload variability and burstiness phenomena based on previous approaches that use Markov Modulated Poisson Processes. We extend these approaches in order to accurately model the variations of the workload strongly influence the QoS of the self-adaptive system. Unfortunately, this stochastic modeling may lead to a non tractable QoS analysis. Consequently, this work also develops an efficient procedure for carrying out the QoS analysis.

Place, publisher, year, edition, pages
Elsevier, 2017
Keywords
Adaptability, Quality of service, Petri nets, Markov models, workload
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-68925 (URN)10.1016/j.jss.2017.05.022 (DOI)2-s2.0-85019454236 (Scopus ID)
Available from: 2017-11-23 Created: 2017-11-23 Last updated: 2018-01-13Bibliographically approved
Vergori, G., Tamburri, D. A., Perez-Palacin, D. & Mirandola, R. (2017). DevOps Performance Engineering: A Quasi-Ethnographical Study. In: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion: . Paper presented at 3rd International Workshop on Quality-Aware DevOps (QUDOS), L'Aquila, Italy, April 22 - 26, 2017 (pp. 127-132). New York, USA: ACM Press
Open this publication in new window or tab >>DevOps Performance Engineering: A Quasi-Ethnographical Study
2017 (English)In: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, New York, USA: ACM Press, 2017, p. 127-132Conference paper, Published paper (Refereed)
Abstract [en]

DevOps is a software engineering strategy to reduce software changes' rollout times by adopting any set of tactics that reduce friction in software lifecycles and their organisational variables, for example: coordination, communication, product evolution, deployment, operation, continuous architecting, continuous integration and more. Going DevOps is increasingly demanding that software engineering disciplines which were typically product-oriented such as software performance engineering to rethink their typical comfort zone, enlarging their scope from product, to process or even further to ecosystem and organisational levels of abstraction. This article makes an attempt at understanding what are the dimensions in DevOps organisational scenarios that can be addressed with a performance engineering lens. To do this, we performed a quasi-ethnographical study featuring a real-life industrial DevOps scenario. Discussing our results we conclude that many synergies exist between DevOps and performance engineering each with peculiarities, limitations and challenges - more research is needed to offer a full-spectrum performance-engineering support for DevOps practitioners.

Place, publisher, year, edition, pages
New York, USA: ACM Press, 2017
Keywords
DevOps, software performance engineering, the phoenix project
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-75281 (URN)10.1145/3053600.3053628 (DOI)978-1-4503-4899-7 (ISBN)
Conference
3rd International Workshop on Quality-Aware DevOps (QUDOS), L'Aquila, Italy, April 22 - 26, 2017
Projects
H2020 DICE
Funder
EU, Horizon 2020, 644869
Available from: 2018-06-07 Created: 2018-06-07 Last updated: 2019-05-22Bibliographically approved
Perez-Palacin, D., Ridene, Y. & Merseguer, J. (2017). Quality Assessment in DevOps: Automated Analysis of a Tax Fraud Detection System. In: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion: . Paper presented at 3rd International Workshop on Quality-Aware DevOps, L'Aquila, Italy, April 22 - 26, 2017 (pp. 133-138). New York, USA: ACM Press
Open this publication in new window or tab >>Quality Assessment in DevOps: Automated Analysis of a Tax Fraud Detection System
2017 (English)In: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, New York, USA: ACM Press, 2017, p. 133-138Conference paper, Published paper (Refereed)
Abstract [en]

The paper presents an industrial application of a DevOps process for a Tax fraud detection system. In particular, we report the influence of the quality assessment during development iterations, with special focus on the fulfillment of performance requirements. We investigated how to guarantee quality requirements in a process iteration while new functionalities are added. The experience has been carried out by practitioners and academics in the context of a project for improving quality of data intensive applications.

Place, publisher, year, edition, pages
New York, USA: ACM Press, 2017
Keywords
DevOps, Model-based QoS, Tax Fraud detection, Data Intensive Applications, Unified Modeling Language
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-74484 (URN)10.1145/3053600.3053632 (DOI)978-1-4503-4899-7 (ISBN)
Conference
3rd International Workshop on Quality-Aware DevOps, L'Aquila, Italy, April 22 - 26, 2017
Projects
H2020 DICE
Funder
EU, Horizon 2020, 644869
Available from: 2018-05-22 Created: 2018-05-22 Last updated: 2018-05-23Bibliographically approved
Alexeeva, Z., Perez-Palacin, D. & Mirandola, R. (2016). Design Decision Documentation: A Literature Overview. In: Bedir Tekinerdogan, Uwe Zdun, Ali Babar (Ed.), Software Architecture: 10th European Conference, ECSA 2016, Copenhagen, Denmark, November 28 -- December 2, 2016, Proceedings. Paper presented at 10th European Conference on Software Architecture, ECSA 2016; Copenhagen; Denmark; 28 - 2 December 2016; (pp. 84-101). Springer
Open this publication in new window or tab >>Design Decision Documentation: A Literature Overview
2016 (English)In: Software Architecture: 10th European Conference, ECSA 2016, Copenhagen, Denmark, November 28 -- December 2, 2016, Proceedings / [ed] Bedir Tekinerdogan, Uwe Zdun, Ali Babar, Springer, 2016, p. 84-101Conference paper, Published paper (Refereed)
Abstract [en]

Despite the abundance of research on methodologies for the documentation of design decisions and the evidence linking documentation to the improvement in the systems evolution, their practical adoption seems to be sparse. To understand this issue, we have conducted an overview of state-of-the-art on documentation of design decisions. We pursue an identification of characteristics of the different techniques proposed in the literature, such as the final goal of the documentation, the quantity of information attached to each decision documentation, the rigour of the proposed technique or its level of automation. To unveil these, we propose six classification dimensions, relevant for the industrial application, and use them to structure and analyse the review results. This work contributes with a taxonomy of the area, a structured overview covering 96 publications and a summary of open questions, which can be addressed by future research to facilitate practical adoption.

Place, publisher, year, edition, pages
Springer, 2016
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 9839
Keywords
design decision, documentation
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-75280 (URN)10.1007/978-3-319-48992-6_6 (DOI)978-3-319-48991-9 (ISBN)978-3-319-48992-6 (ISBN)
Conference
10th European Conference on Software Architecture, ECSA 2016; Copenhagen; Denmark; 28 - 2 December 2016;
Projects
FP7 seaclouds
Funder
EU, FP7, Seventh Framework Programme, ICT-610531
Available from: 2018-06-07 Created: 2018-06-07 Last updated: 2018-06-08Bibliographically approved
Pagliari, L., Mirandola, R., Perez-Palacin, D. & Trubiani, C. (2016). Energy-aware adaptive techniques for information diffusion in ungoverned peer-to-peer networks. In: Proceedings : 2016 12th International ACM SIGSOFT Conference on Quality of Software Architectures: QoSA 2016 : 5–8 April 2016, Venice, Italy. Paper presented at International ACM SIGSOFT Conference on Quality of Software Architectures, QoSA 2016 (pp. 96-105). IEEE Press
Open this publication in new window or tab >>Energy-aware adaptive techniques for information diffusion in ungoverned peer-to-peer networks
2016 (English)In: Proceedings : 2016 12th International ACM SIGSOFT Conference on Quality of Software Architectures: QoSA 2016 : 5–8 April 2016, Venice, Italy, IEEE Press, 2016, p. 96-105Conference paper, Published paper (Refereed)
Abstract [en]

The problem of handling emergency situations (e.g., earthquakes, tornados, hurricanes, political rebellions, etc.) is very challenging since the fixed network infrastructures can become unusable, and it is fundamental to build a peer-to-peer network intended to spread information among people involved in the emergency. The goal of this paper is to propose an approach that enables an adaptive behavior of ungoverned communication networks with the purpose of maximizing the information diffusion and minimizing the energy consumption of the communication devices (e.g., smartphones). We introduce an energy-aware gossip algorithm to adapt the message passing methodology among the involved devices on the basis of their battery level, while guaranteeing the information diffusion within a certain geographical area and minimizing the overall energy consumption. The approach is implemented in a simulation context that allows to quantify the percentage of area coverage within a certain interval of time by adapting the process of message passing on the basis of devices' battery level. Experimental results demonstrate that our approach outperforms classic broadcast algorithms up to 85.58% in terms of energy consumption.

Place, publisher, year, edition, pages
IEEE Press, 2016
Keywords
energy, self-adaptive, peer-to-peer
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-68929 (URN)10.1109/QoSA.2016.19 (DOI)2-s2.0-84983424352 (Scopus ID)978-1-5090-2567-1 (ISBN)978-1-5090-2568-8 (ISBN)
Conference
International ACM SIGSOFT Conference on Quality of Software Architectures, QoSA 2016
Available from: 2017-11-24 Created: 2017-11-24 Last updated: 2018-05-23Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-2736-845X

Search in DiVA

Show all publications