Planned maintenance
A system upgrade is planned for 10/12-2024, at 12:00-13:00. During this time DiVA will be unavailable.
Change search
Link to record
Permanent link

Direct link
Publications (10 of 36) Show all publications
Lenhard, J., Blom, M. & Herold, S. (2019). Exploring the suitability of source code metrics for indicating architectural inconsistencies. Software quality journal, 27(1), 241-274
Open this publication in new window or tab >>Exploring the suitability of source code metrics for indicating architectural inconsistencies
2019 (English)In: Software quality journal, ISSN 0963-9314, E-ISSN 1573-1367, Vol. 27, no 1, p. 241-274Article in journal (Refereed) Published
Abstract [en]

Software architecture degradation is a phenomenon that frequently occurs during software evolution. Source code anomalies are one of the several aspects that potentially contribute to software architecture degradation. Many techniques for automating the detection of such anomalies are based on source code metrics. It is, however, unclear how accurate these techniques are in identifying the architecturally relevant anomalies in a system. The objective of this paper is to shed light on the extent to which source code metrics on their own can be used to characterize classes contributing to software architecture degradation. We performed a multi-case study on three open-source systems for each of which we gathered the intended architecture and data for 49 different source code metrics taken from seven different code quality tools. This data was analyzed to explore the links between architectural inconsistencies, as detected by applying reflexion modeling, and metric values indicating potential design problems at the implementation level. The results show that there does not seem to be a direct correlation between metrics and architectural inconsistencies. For many metrics, however, classes more problematic as indicated by their metric value seem significantly more likely to contribute to inconsistencies than less problematic classes. In particular, the fan-in, a classes’ public API, and method counts seem to be suitable indicators. The fan-in metric seems to be a particularly interesting indicator, as class size does not seem to have a confounding effect on this metric. This finding may be useful for focusing code restructuring efforts on architecturally relevant metrics in case the intended architecture is not explicitly specified and to further improve architecture recovery and consistency checking tool support.

Place, publisher, year, edition, pages
Springer, 2019
Keywords
Architectural inconsistencies Software architecture degradation Reflexion modeling Source code metrics Code anomalies Multi-case study
National Category
Computer Sciences
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-66704 (URN)10.1007/s11219-018-9404-z (DOI)000462236000007 ()2-s2.0-85042912586 (Scopus ID)
Projects
DigitalWell Research (5465)
Funder
Region Värmland
Note

Downloads before file update: 189

Available from: 2018-03-15 Created: 2018-03-15 Last updated: 2024-07-23Bibliographically approved
Geiger, M., Harrer, S., Lenhard, J. & Wirtz, G. (2018). BPMN2.0: The state of support and implementation. Future Generation Computer Systems, 80, 250-262
Open this publication in new window or tab >>BPMN2.0: The state of support and implementation
2018 (English)In: Future Generation Computer Systems, ISSN 0167-739X, E-ISSN 1872-7115, Vol. 80, p. 250-262Article in journal (Refereed) Published
Place, publisher, year, edition, pages
Elsevier, 2018
National Category
Software Engineering
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-65316 (URN)10.1016/j.future.2017.01.006 (DOI)000419409200020 ()
Available from: 2017-12-04 Created: 2017-12-04 Last updated: 2024-09-04Bibliographically approved
Lenhard, J., Ferme, V., Harrer, S., Geiger, M. & Pautasso, C. (2018). Lessons Learned from Evaluating Workflow Management Systems. In: L. Braubach, J.M. Murillo, N. Kaviani, M. Lama, L. Burgueño, N. Moha & M. Oriol (Ed.), Service-Oriented Computing – ICSOC 2017 Workshops: . Paper presented at 13th International Workshop on Engineering Service-Oriented Applications and Cloud Services (WESOACS) co-located with the 15th International Conference on Service-Oriented Computing (ICSOC), Malaga, Spain, November 13th, 2017 (pp. 216-228). Springer, 10797
Open this publication in new window or tab >>Lessons Learned from Evaluating Workflow Management Systems
Show others...
2018 (English)In: Service-Oriented Computing – ICSOC 2017 Workshops / [ed] L. Braubach, J.M. Murillo, N. Kaviani, M. Lama, L. Burgueño, N. Moha & M. Oriol, Springer, 2018, Vol. 10797, p. 216-228Conference paper, Published paper (Refereed)
Abstract [en]

Work ow Management Systems (WfMSs) today act as ser- vice composition engines and service-oriented middleware to enable the execution of automated business processes. Automation based on WfMSs promises to enable the model-driven construction of exible and easily maintainable services with high-performance characteristics. In the past decade, signi cant e ort has been invested into standardizing WfMSs that compose services, with standards such as the Web Services Business Process Execution Language (WS-BPEL) or the Business Process Model and Notation (BPMN). One of the aims of standardization is to enable users of WfMSs to compare di erent systems and to avoid vendor lock-in. Despite these e orts, there are many expectations concerning portabil- ity, performance e ciency, usability, reliability and maintainability of WfMSs that are likely to be unful lled. In this work, we synthesize the ndings of two research initiatives that deal with WfMSs conformance and performance benchmarking to distill a set of lessons learned and best practices. These ndings provide useful advice for practitioners who plan to evaluate and use WfMSs and for WfMS vendors that would like to foster wider adoption of process-centric service composition middleware. 

Place, publisher, year, edition, pages
Springer, 2018
Series
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 10797
Keywords
Workflow Management Systems, Standards, Lessons Learned, Evaluation Research, Benchmarking, Service Composition
National Category
Computer Sciences Software Engineering Other Computer and Information Science
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-65602 (URN)10.1007/978-3-319-91764-1_17 (DOI)000541536700017 ()978-3-319-91763-4 (ISBN)978-3-319-91764-1 (ISBN)
Conference
13th International Workshop on Engineering Service-Oriented Applications and Cloud Services (WESOACS) co-located with the 15th International Conference on Service-Oriented Computing (ICSOC), Malaga, Spain, November 13th, 2017
Available from: 2018-01-15 Created: 2018-01-15 Last updated: 2020-12-10Bibliographically approved
Harrer, S., Kopp, O. & Lenhard, J. (2018). Patterns for workflow engine benchmarking. In: Barbosa, S.D.J., Filipe, J., Kotenko, I., Sivalingam, K.M., Washio, T., Yuan, J., Zhou, L. (Ed.), ESOCC 2016: Advances in Service-Oriented and Cloud Computing. Paper presented at ESOCC: European Conference on Service-Oriented and Cloud Computing, Vienna, Austria, September 5–7, 2016 (pp. 151-163). Springer
Open this publication in new window or tab >>Patterns for workflow engine benchmarking
2018 (English)In: ESOCC 2016: Advances in Service-Oriented and Cloud Computing / [ed] Barbosa, S.D.J., Filipe, J., Kotenko, I., Sivalingam, K.M., Washio, T., Yuan, J., Zhou, L., Springer , 2018, p. 151-163Conference paper, Published paper (Refereed)
Abstract [en]

Workflow engines are frequently used in the service-oriented and cloud computing domains. Since engines have significant impact on the quality of service provided by hosted applications, it is desirable to compare and select the most appropriate engine for a given task. To enable such a comparison, approaches for benchmarking workflow engines have emerged. Although these approaches deal with different quality properties, such as performance or standard conformance, they face many reoccurring problems during the design and implementation phase, which they solve in similar ways. In this paper, we describe such common solutions to reoccurring problems in the area of workflow engine benchmarking as patterns. Our aim is to present pattern candidates that help benchmark authors to design and implement proper and valid workflow engine benchmarks and benchmarking tools

Place, publisher, year, edition, pages
Springer, 2018
Series
Communications in Computer and Information Science (CCIS), ISSN 1865-0929 ; 707
Keywords
Benchmarking, Patterns, Workflow engine, Cloud computing, Quality of service, Benchmarking tools, Design and implementations, Design and implements, Quality properties, Service Oriented, Standard conformances, Workflow engines, Engines
National Category
Computer Sciences Software Engineering
Identifiers
urn:nbn:se:kau:diva-66549 (URN)10.1007/978-3-319-72125-5_12 (DOI)000453043900012 ()2-s2.0-85042112919 (Scopus ID)9783319721248 (ISBN)
Conference
ESOCC: European Conference on Service-Oriented and Cloud Computing, Vienna, Austria, September 5–7, 2016
Available from: 2018-03-02 Created: 2018-03-02 Last updated: 2019-02-07Bibliographically approved
Dietz, L. W., Manner, J., Harrer, S. & Lenhard, J. (2018). Teaching clean code. In: Krusche S., Schneider K., Kuhrmann M., Heinrich R., Jung R. et al (Ed.), Combined Proceedings of the Workshops of the German Software Engineering Conference 2018 (SE 2018): . Paper presented at SE-WS 2018 Software Engineering Workshops, 6 March 2018, Ulm, Germany (pp. 24-27). CEUR-WS
Open this publication in new window or tab >>Teaching clean code
2018 (English)In: Combined Proceedings of the Workshops of the German Software Engineering Conference 2018 (SE 2018) / [ed] Krusche S., Schneider K., Kuhrmann M., Heinrich R., Jung R. et al, CEUR-WS , 2018, p. 24-27Conference paper, Published paper (Refereed)
Abstract [en]

Learning programming is hard - teaching it well is even more challenging. At university, the focus is often on functional correctness and neglects the topic of clean and maintainable code, despite the dire need for developers with this skill set within the software industry. We present a feedbackdriven teaching concept for college students in their second to third year that we have applied and refined successfully over a period of more than six years and for which received the faculty's teaching award. Evaluating the learning process within a semester of student submissions (n=18) with static code analysis tools shows satisfying progress. Identifying the correction of the in-semester programming assignments as the bottleneck for scaling the number of students in the course, we propose using a knowledge base of code examples to decrease the time to feedback and increase feedback quality. From our experience in assessing student code, we have compiled such a knowledge base with the typical issues of Java learners' code in the format of before/after comparisons. By simply referencing the problem to the student, the quality of feedback can be improved, since such comparisons let the student understand the problem and the rationale behind the solution. Further speed-up is achieved by using a curated list of static code analysis checks to help the corrector in identifying violations in the code swiftly. We see this work as a foundational step towards online courses with hundreds of students learning how to write clean code.

Place, publisher, year, edition, pages
CEUR-WS, 2018
Series
CEUR Workshop Proceedings, ISSN 1613-0073 ; 2066
Keywords
Codes (symbols), Knowledge based systems, Software engineering, Teaching, Functional correctness, Learning programming, Programming assignments, Quality of feedbacks, Software industry, Static code analysis, Static code analysis tools, Students learning, Students
National Category
Other Computer and Information Science Didactics
Identifiers
urn:nbn:se:kau:diva-67084 (URN)2-s2.0-85044541080 (Scopus ID)
Conference
SE-WS 2018 Software Engineering Workshops, 6 March 2018, Ulm, Germany
Available from: 2018-04-19 Created: 2018-04-19 Last updated: 2018-05-16Bibliographically approved
Lenhard, J., Fritsch, L. & Herold, S. (2017). A Literature Study on Privacy Patterns Research. In: SEAA 2017 - 43rd Euromicro Conference Series on Software Engineering and Advanced Applications: . Paper presented at 2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA) Aug 30 - Sept 1. Vienna, Austria (pp. 194-200). IEEE
Open this publication in new window or tab >>A Literature Study on Privacy Patterns Research
2017 (English)In: SEAA 2017 - 43rd Euromicro Conference Series on Software Engineering and Advanced Applications, IEEE, 2017, p. 194-200Conference paper, Published paper (Refereed)
Abstract [en]

Context: Facing the implementation of the EU General Data Protection Regulation in May 2018, many commercial software providers will soon need to adapt their products to new privacy-related constraints. Privacy patterns defined for different aspects of the software engineering process promise to be a useful concept for this task. In this situation, it seems valuable to characterize the state of the research related to privacy patterns.Objective: To identify, characterize and classify the contributions made by published research results related to patterns in the context of considering privacy concerns in engineering software. Method: A literature review in form of a mapping study of scientific articles was performed. The resulting map structures the relevant body of work into multiple dimensions, illustrating research focuses and gaps.Results: Results show that empirical evidence in this field is scarce and that holistic approaches to engineering privacy into software based on patterns are lacking. This potentially hinders industrial adoption.Conclusion: Based on these results, we recommend to empirically validate existing privacy patterns, to consolidate them in pattern catalogues and languages, and to move towards seamless approaches from engineering privacy requirements to implementation.

Place, publisher, year, edition, pages
IEEE, 2017
Keywords
privacy patterns, privacy, software engineering, mapping study
National Category
Computer Sciences
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-65025 (URN)10.1109/SEAA.2017.28 (DOI)000426074600029 ()978-1-5386-2141-7 (ISBN)978-1-5386-2142-4 (ISBN)
Conference
2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA) Aug 30 - Sept 1. Vienna, Austria
Available from: 2017-11-01 Created: 2017-11-01 Last updated: 2019-11-10Bibliographically approved
Harrer, S., Lenhard, J., Kopp, O., Ferme, V. & Pautasso, C. (2017). A Pattern Language for Workflow Engine Conformance and Performance Benchmarking. In: Proceedings of the 22nd European Conference on Pattern Languages of Programs EuroPLoP '17: . Paper presented at The 22nd European Conference on Pattern Languages of Programs (EuroPLop), Irsee, Germany, July 12 - 16, 2017. Association for Computing Machinery (ACM), Article ID article No 1.
Open this publication in new window or tab >>A Pattern Language for Workflow Engine Conformance and Performance Benchmarking
Show others...
2017 (English)In: Proceedings of the 22nd European Conference on Pattern Languages of Programs EuroPLoP '17, Association for Computing Machinery (ACM), 2017, article id article No 1Conference paper, Published paper (Refereed)
Abstract [en]

Workflow engines are frequently used in the domains of business process management, service orchestration, and cloud computing, where they serve as middleware platforms for integrated business applications. Engines have a significant impact on the quality of service provided by hosted applications. Therefore, it is desirable to compare them and to select the most appropriate engine for a given task. To enable such a comparison, approaches for benchmarking workflow engines have emerged. Although these approaches deal with different quality attributes, i.e., performance or standard conformance, they face many reoccurring design and implementation problems, which have been solved in similar ways. In this paper, we present a pattern language that captures such common solutions to reoccurring problems (e.g., from test identification, benchmarking procedure validation, automatic engine interaction, and workflow execution observation) in the area of workflow engine conformance and performance benchmarking. Our aim is to help future benchmark authors with the pattern language presented in this paper to benefit from our experience with the design and implementation of workflow engine benchmarks and benchmarking tools

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM), 2017
Keywords
workflow engines, benchmarking, performance, conformance, patterns
National Category
Software Engineering Information Systems Computer Sciences
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-65056 (URN)10.1145/3147704.3147705 (DOI)000559735500001 ()
Conference
The 22nd European Conference on Pattern Languages of Programs (EuroPLop), Irsee, Germany, July 12 - 16, 2017
Available from: 2017-11-02 Created: 2017-11-02 Last updated: 2020-12-10Bibliographically approved
Lenhard, J., Hassan, M. M., Blom, M. & Herold, S. (2017). Are Code Smell Detection Tools Suitable For Detecting Architecture Degradation?. In: ECSA '17 Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings. Paper presented at 4th Workshop on Software Architecture Erosion and Architectural Consistency (SAEroCon 2017) co-located with the 11th European Conference on Software Architecture (ECSA 2017) (pp. 138-144). Association for Computing Machinery (ACM)
Open this publication in new window or tab >>Are Code Smell Detection Tools Suitable For Detecting Architecture Degradation?
2017 (English)In: ECSA '17 Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, Association for Computing Machinery (ACM), 2017, p. 138-144Conference paper, Published paper (Refereed)
Abstract [en]

Context: Several studies suggest that there is a relation between code smells and architecture degradation. They claim that classes, which have degraded architecture-wise, can be detected on the basis of code smells, at least if these are manually identiÿed in the source code.

Objective: To evaluate the suitability of contemporary code smell detection tools by combining different smell categories for ÿnding classes that show symptoms of architecture degradation.

Method: A case study is performed in which architectural in-consistencies in an open source system are detected via reflexion modeling and code smell metrics are collected through several tools. Using data mining techniques, we investigate if it is possible to auto-matically and accurately classify classes connected to architectural inconsistencies based on the gathered code smell data.

Results: Results suggest that existing code smell detection techniques, as implemented in contemporary tools, are not sufficiently accurate for classifying whether a class contains architectural in-consistencies, even when combining categories of code smells.

Conclusion: It seems that current automated code smell detection techniques require ÿne-tuning for a speciÿc system if they are to be used for ÿnding classes with architectural inconsistencies. More research on architecture violation causes is needed to build more accurate detection techniques that work out-of-the-box.

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM), 2017
Keywords
architecture erosion, code smells, data mining, case study
National Category
Software Engineering
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-63784 (URN)10.1145/3129790.3129808 (DOI)000426556400032 ()978-1-4503-5217-8 (ISBN)
Conference
4th Workshop on Software Architecture Erosion and Architectural Consistency (SAEroCon 2017) co-located with the 11th European Conference on Software Architecture (ECSA 2017)
Available from: 2017-09-18 Created: 2017-09-18 Last updated: 2018-11-16Bibliographically approved
Lenhard, J. (2017). Improving Process Portability Through Metrics and Continuous Inspection. In: Manfred Reichert, Roy Oberhauser, Gregor Grambow (Ed.), Advances in Intelligent Process-Aware Information Systems: (pp. 193-223). Springer
Open this publication in new window or tab >>Improving Process Portability Through Metrics and Continuous Inspection
2017 (English)In: Advances in Intelligent Process-Aware Information Systems / [ed] Manfred Reichert, Roy Oberhauser, Gregor Grambow, Springer, 2017, p. 193-223Chapter in book (Refereed)
Place, publisher, year, edition, pages
Springer, 2017
Series
Intelligent Systems Reference Library, ISSN 1868-4394 ; 123
National Category
Software Engineering
Research subject
Computer Science
Identifiers
urn:nbn:se:kau:diva-54034 (URN)10.1007/978-3-319-52181-7_8 (DOI)978-3-319-52179-4 (ISBN)
Available from: 2017-05-30 Created: 2017-05-30 Last updated: 2020-06-02Bibliographically approved
Kopp, O., Lenhard, J. & Pautasso, C. (Eds.). (2017). Proceedings of the 9th Central European Workshop on Services and their Composition (ZEUS 2017). Paper presented at 9th Central European Workshop on Services and their Composition (ZEUS 2017), Lugano, 13-14 February. Aachen: CEUR-WS.org
Open this publication in new window or tab >>Proceedings of the 9th Central European Workshop on Services and their Composition (ZEUS 2017)
2017 (English)Conference proceedings (editor) (Refereed)
Place, publisher, year, edition, pages
Aachen: CEUR-WS.org, 2017
Series
CEUR Workshop Proceedings, ISSN 1613-0073 ; 1826
National Category
Software Engineering
Identifiers
urn:nbn:se:kau:diva-48360 (URN)
Conference
9th Central European Workshop on Services and their Composition (ZEUS 2017), Lugano, 13-14 February
Available from: 2017-04-25 Created: 2017-04-25 Last updated: 2019-06-17Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-0107-2108

Search in DiVA

Show all publications