{"title":"Approach for Fast Growing Software Systems using layered architecture : Scaling an architecture with minimal refactoring","authors":"J. Filipe, Correia Pereira, A. Cruz","doi":"10.23919/CISTI58278.2023.10211943","DOIUrl":null,"url":null,"abstract":"Currently, the market imposes several demands on software throughout its development cycle, such as the rapid availability of a minimum viable product, the ability to deal with rapid growth in the volume of data and in the number of users, the ability to provide new features or changes, easy adaptability of new developers, among many others. Choosing a software architecture is something that will impact the entire software development lifecycle (SDLC) and, as such, should be seen as an extremely important task. A monolithic architecture enables a fast initial development, however there are several limits after a certain point. A microservices architecture is highly scalable and can handle many clients simultaneously, but it is too complex to be used at an early stage of software development. If the software grows, it will have to scale, and an architecture migration may be necessary. This paper presents an architectural approach for this migration to be done with minimal refactoring and keeping infrastructure and implementation costs low.","PeriodicalId":121747,"journal":{"name":"2023 18th Iberian Conference on Information Systems and Technologies (CISTI)","volume":"51 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-06-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2023 18th Iberian Conference on Information Systems and Technologies (CISTI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.23919/CISTI58278.2023.10211943","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Currently, the market imposes several demands on software throughout its development cycle, such as the rapid availability of a minimum viable product, the ability to deal with rapid growth in the volume of data and in the number of users, the ability to provide new features or changes, easy adaptability of new developers, among many others. Choosing a software architecture is something that will impact the entire software development lifecycle (SDLC) and, as such, should be seen as an extremely important task. A monolithic architecture enables a fast initial development, however there are several limits after a certain point. A microservices architecture is highly scalable and can handle many clients simultaneously, but it is too complex to be used at an early stage of software development. If the software grows, it will have to scale, and an architecture migration may be necessary. This paper presents an architectural approach for this migration to be done with minimal refactoring and keeping infrastructure and implementation costs low.