{"title":"失速估计度量:估算软件复杂性的架构度量标准","authors":"Amit R. Pandey","doi":"10.1109/ICRITO.2016.7784987","DOIUrl":null,"url":null,"abstract":"Software metrics can be classified in to two categories of code metrics and architectural metrics [1,2]. Code metrics basically consider analysis of data structures and algorithms for determining the complexity of the program [3,4,5]. Whereas architectural metrics consider the mechanism how system is processing data within its components and any existing dependencies between the processed data for estimating the complexity [3,6]. In any pipelined RISC processor program is executed instruction after instruction and it is also possible to have program dependencies between them [7]. These dependencies are of two types, data dependencies and control dependencies [8,9,10,11]. Data dependencies can be resolved by forwarding the data between stages of the pipelined RISC processor. Stall can be induced between the instructions while resolving some of these data dependencies. Stall can also be induced between instructions during branch prediction. The proposed architectural metric considers all those cases which will affect the overall execution of the program by causing stall together with the count of statements actually executed, for estimating the overall software complexity.","PeriodicalId":377611,"journal":{"name":"2016 5th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO)","volume":"131 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Stall estimation metric: An architectural metric for estimating software complexity\",\"authors\":\"Amit R. Pandey\",\"doi\":\"10.1109/ICRITO.2016.7784987\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Software metrics can be classified in to two categories of code metrics and architectural metrics [1,2]. Code metrics basically consider analysis of data structures and algorithms for determining the complexity of the program [3,4,5]. Whereas architectural metrics consider the mechanism how system is processing data within its components and any existing dependencies between the processed data for estimating the complexity [3,6]. In any pipelined RISC processor program is executed instruction after instruction and it is also possible to have program dependencies between them [7]. These dependencies are of two types, data dependencies and control dependencies [8,9,10,11]. Data dependencies can be resolved by forwarding the data between stages of the pipelined RISC processor. Stall can be induced between the instructions while resolving some of these data dependencies. Stall can also be induced between instructions during branch prediction. The proposed architectural metric considers all those cases which will affect the overall execution of the program by causing stall together with the count of statements actually executed, for estimating the overall software complexity.\",\"PeriodicalId\":377611,\"journal\":{\"name\":\"2016 5th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO)\",\"volume\":\"131 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-09-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2016 5th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICRITO.2016.7784987\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 5th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICRITO.2016.7784987","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Stall estimation metric: An architectural metric for estimating software complexity
Software metrics can be classified in to two categories of code metrics and architectural metrics [1,2]. Code metrics basically consider analysis of data structures and algorithms for determining the complexity of the program [3,4,5]. Whereas architectural metrics consider the mechanism how system is processing data within its components and any existing dependencies between the processed data for estimating the complexity [3,6]. In any pipelined RISC processor program is executed instruction after instruction and it is also possible to have program dependencies between them [7]. These dependencies are of two types, data dependencies and control dependencies [8,9,10,11]. Data dependencies can be resolved by forwarding the data between stages of the pipelined RISC processor. Stall can be induced between the instructions while resolving some of these data dependencies. Stall can also be induced between instructions during branch prediction. The proposed architectural metric considers all those cases which will affect the overall execution of the program by causing stall together with the count of statements actually executed, for estimating the overall software complexity.