In software engineering, there must be clarity in communication among interested parties to elicit the requirements aimed at software development through frameworks to achieve the behaviors expected by the software. Problem: A lack of clarity in the requirement-elicitation stage can impact subsequent stages of software development. Solution: We proposed a case study focusing on the performance efficiency characteristic expressed in the ISO/IEC/IEEE 25010 standard using Behavior-Driven Development (BDD). Method: The case study was performed with professionals who use BDD to elicit the non-functional requirements of a company that develops software. Summary of Results: The result obtained was the validation related to the elicitation of non-functional requirements aimed at the performance efficiency characteristic of the ISO/IEC/IEEE 25010 Standard using the BDD framework through a real case study in a software development company. Contributions and impact: The article’s main contribution is to demonstrate the effectiveness of using BDD to elicit non-functional requirements about the performance efficiency characteristic of the ISO/IEC/IEEE 25010 standard.
Microservices have been an essential theme in research and the software industry. Microservices emerged in recent years as a new class of software architecture based on Service-Oriented Architecture due to the massive adoption of cloud computing and the need to integrate legacy systems. Therefore, due to the amplification of this architecture, a systematic characterisation of the data about the main patterns adopted when implementing software with the microservices architecture can support developers, software architects and researchers of the field in the evolution of the systems. The main objective is to analyse architectural patterns with the purpose of characterising, with respect to Microservices, from the point of view of researchers in the context of theoretical and applied research. We started with a search on ACM, IEEE, WoS, ScienceDirect, Scopus, and Springer. As a result, we obtained 2653 articles, from which 76 articles were selected to be evaluated in this study for producing a view of state-of-the-art patterns/architecture styles adopted in Microservice research. An additional result is the description of a catalogue of Microservices patterns.
Context: In Software Engineering, there must be clarity in communication among interested parts to elicit the requirements aimed at software development through frameworks to achieve the behaviors expected by the software. Problem: Lack of clarity in the requirements elicitation stage can impact subsequent stages of software development. Solution: We proposed a case study to achieve the proposed goal focusing on the performance efficiency characteristic expressed in the ISO/IEC/IEEE 25010 Standard using Behavior-Driven Development (BDD). Method: The case study was performed with professionals who use BDD to elicit the non-functional requirements of a company that develops software. Summary of Results: The results obtained were aspects related to the elicitation of non-functional requirements aimed at the performance efficiency characteristic of the ISO/IEC/IEEE 25010 Standard using BDD through the point of view of industry professionals. Contributions and impact: The article’s main contribution is to demonstrate the effectiveness of using BDD to elicit non-functional requirements about the performance efficiency characteristic of the ISO/IEC/IEEE 25010 Standard.
This article presents an experience report with an exploratory approach, combining results measurement methods applied in the educational context of Software Engineering. The study aims to investigate the responsible use of Large Language Models (LLMs) in generating software requirements based on artifacts produced by Event Storming workshops. It aims to evaluate whether combining methodologies with AI-based tools can improve student autonomy and conceptual understanding. The research was conducted with final-year undergraduate students in a Systems Analysis and Development program. The activity was structured into three phases: training and project planning using Lean Inception, requirement generation using LLMs based on Event Storming outputs, and individual evaluation. We collected data through a Likert-scale questionnaire. The findings indicate that even students with no experience in Event Storming were able to use the technique to generate inputs for LLMs. The results showed a high utilization of the requirements generated by AI in conjunction with Event Storming. The combined use of Event Storming and LLMs has proven promising for teaching requirements engineering, fostering critical thinking, and promoting student autonomy. We observed in the study that students who had greater ease in meeting the requirements were more critical of the quality.
Context: In software development, looking for ways to save time and systematize the process is necessary. Problem: Lack of clarity regarding the aspects necessary for adopting BDD. Solution: Present guidelines for implementing BDD. Method: Identify and present via a mind map such guidelines through a Design Science Research approach. Expected contribution: The potential assistance in improving processes and software products through the correct adoption of BDD. The link to the video with additional information is: https://youtu.be/TQ2pOc8G1xg.