{"title":"软件开发:过去、现在和未来","authors":"Jalal Kiswani, S. Dascalu, Fred Harris","doi":"10.29007/qzrd","DOIUrl":null,"url":null,"abstract":"In the field of software development, the processes, technologies, and practices have matured over the time to achieve a higher level of delivery and quality. However, the de- velopment phase, which is an essential part of the software development life cycle (SDLC), is still consuming a significant cost (time and resources) in both approaches, waterfall and agile. The reason behind that, current technologies and approaches of software develop- ment are somehow following the same rules and practices for decades, and have not evolved with the proper velocity over the time. In this article, and based on real-life case studies, we will discuss how the utilization of components re-usability (API’s and frameworks), metadata-driven development, code generation, and Artificial Intelligence can make the software development more efficient by creating a holistic approach to creating software systems.","PeriodicalId":93549,"journal":{"name":"EPiC series in computing","volume":"1 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2022-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Software Development: Past, Present, and Future\",\"authors\":\"Jalal Kiswani, S. Dascalu, Fred Harris\",\"doi\":\"10.29007/qzrd\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In the field of software development, the processes, technologies, and practices have matured over the time to achieve a higher level of delivery and quality. However, the de- velopment phase, which is an essential part of the software development life cycle (SDLC), is still consuming a significant cost (time and resources) in both approaches, waterfall and agile. The reason behind that, current technologies and approaches of software develop- ment are somehow following the same rules and practices for decades, and have not evolved with the proper velocity over the time. In this article, and based on real-life case studies, we will discuss how the utilization of components re-usability (API’s and frameworks), metadata-driven development, code generation, and Artificial Intelligence can make the software development more efficient by creating a holistic approach to creating software systems.\",\"PeriodicalId\":93549,\"journal\":{\"name\":\"EPiC series in computing\",\"volume\":\"1 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-01-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"EPiC series in computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.29007/qzrd\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"EPiC series in computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.29007/qzrd","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
In the field of software development, the processes, technologies, and practices have matured over the time to achieve a higher level of delivery and quality. However, the de- velopment phase, which is an essential part of the software development life cycle (SDLC), is still consuming a significant cost (time and resources) in both approaches, waterfall and agile. The reason behind that, current technologies and approaches of software develop- ment are somehow following the same rules and practices for decades, and have not evolved with the proper velocity over the time. In this article, and based on real-life case studies, we will discuss how the utilization of components re-usability (API’s and frameworks), metadata-driven development, code generation, and Artificial Intelligence can make the software development more efficient by creating a holistic approach to creating software systems.