IEEE SoftwarePub Date : 2024-08-07DOI: 10.1109/ms.2024.3409988
Diomidis Spinellis
{"title":"Modular Data Analytics","authors":"Diomidis Spinellis","doi":"10.1109/ms.2024.3409988","DOIUrl":"https://doi.org/10.1109/ms.2024.3409988","url":null,"abstract":"Relational online analytical processing (ROLAP) often involves complex queries with many intermediate steps, which can be expensive to run on large datasets. Modularizing SQL queries improves readability, testability, and incremental execution. While SQL common table expressions (CTEs) and views help in modularization, they have availability, performance, or development limitations. To address these, simple-rolap, an open-source framework, automates dependency analysis and orchestrates the execution of modular queries using GNU make. It uses a main database containing the infrequently modified base data and a secondary database for caching intermediate results. Simple-rolap ensures efficient, maintainable ROLAP queries by splitting complex queries into simple ones that create intermediate tables or report results, which can be unit-tested. It uses the make tool to manage dependencies and execution order, enhancing workflow control, testing, visualization, and troubleshooting.","PeriodicalId":55018,"journal":{"name":"IEEE Software","volume":"373 1","pages":""},"PeriodicalIF":3.3,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141946714","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
IEEE SoftwarePub Date : 2024-08-07DOI: 10.1109/ms.2024.3409933
Les Hatton, Michiel van Genuchten
{"title":"Computer Still Says …","authors":"Les Hatton, Michiel van Genuchten","doi":"10.1109/ms.2024.3409933","DOIUrl":"https://doi.org/10.1109/ms.2024.3409933","url":null,"abstract":"It used to be a standing joke with computer systems when questioning their frequently suspicious outputs. You might call a computer support line to complain about a strange telephone bill, only to be told that the bill is correct because “Computer says …”. even if the bill was unusually large. Of course, the effects of software errors are limited only by the imagination and “unusually” large can really mean just that, such as happened with the unfortunate French woman in 2012 who received a telephone bill for EUR 11.8 quadrillion.1 If you are unaccustomed to numbers like this in your telephone bill, it is hardly surprising as it is around US$13,000,000,000,000,000 or just under 5,000 times the gross domestic product of France for that year; some phone bill. To be fair to the lady’s phone company Bouygues Telecom, they did offer to allow her to pay off the bill in installments, a most generous offer, although they didn’t say how many installments might be necessary. (We know you are desperate to know so at US$1,000 a month, it would take about 50 times the current lifetime of the universe taking bureaucratic innumeracy to new and giddy depths. No mention was made of accumulating interest payments).","PeriodicalId":55018,"journal":{"name":"IEEE Software","volume":"26 1","pages":""},"PeriodicalIF":3.3,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141946813","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
IEEE SoftwarePub Date : 2024-08-07DOI: 10.1109/ms.2024.3410712
Andreas Vogelsang
{"title":"From Specifications to Prompts: On the Future of Generative Large Language Models in Requirements Engineering","authors":"Andreas Vogelsang","doi":"10.1109/ms.2024.3410712","DOIUrl":"https://doi.org/10.1109/ms.2024.3410712","url":null,"abstract":"Generative LLMs, such as GPT, have the potential to revolutionize Requirements Engineering (RE) by automating tasks in new ways. This column explores the novelties and introduces the importance of precise prompts for effective interactions. Human evaluation and prompt engineering are essential in leveraging LLM capabilities.","PeriodicalId":55018,"journal":{"name":"IEEE Software","volume":"19 1","pages":""},"PeriodicalIF":3.3,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141969591","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
IEEE SoftwarePub Date : 2024-08-07DOI: 10.1109/ms.2024.3416648
Sigrid Eldh
{"title":"Code Review Evolution","authors":"Sigrid Eldh","doi":"10.1109/ms.2024.3416648","DOIUrl":"https://doi.org/10.1109/ms.2024.3416648","url":null,"abstract":"From Fagan Inspections to cleanroom practices, agile code reviews, mob programming, and failing fast. This editorial provides a personal reflection of how the practice of code reviews has changed over the decades.","PeriodicalId":55018,"journal":{"name":"IEEE Software","volume":"174 1","pages":""},"PeriodicalIF":3.3,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141946711","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
IEEE SoftwarePub Date : 2024-08-07DOI: 10.1109/ms.2024.3408388
Miroslaw Staron, Silvia Abrahão, Grace Lewis, Henry Muccini, Chetan Honnenahalli
{"title":"Bringing Software Engineering Discipline to the Development of AI-Enabled Systems","authors":"Miroslaw Staron, Silvia Abrahão, Grace Lewis, Henry Muccini, Chetan Honnenahalli","doi":"10.1109/ms.2024.3408388","DOIUrl":"https://doi.org/10.1109/ms.2024.3408388","url":null,"abstract":"Engineering AI Software systems is starting to evolve from the pure development of machine learning (ML) models to a more structured discipline that treats ML components as part of much larger software systems. As such, more structured principles are required for their development, such as established design principles, established development models, and safeguards for deployed ML models. This column focuses on papers presented at the Third International Conference on AI Engineering—Software Engineering for AI (CAIN 2024). The selected papers reflect the current development of the field of AI systems engineering and AI software development, taking it to the next level of maturity. Feedback or suggestions are welcome. In addition, if you try or adopt any of the practices included in the column, please send us and the authors of the paper(s) a note about your experiences.","PeriodicalId":55018,"journal":{"name":"IEEE Software","volume":"55 1","pages":""},"PeriodicalIF":3.3,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141946713","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}