This paper develops an improved structural software complexity metrics named information flow complexity which is closely related to the reliability of software. Together with the three software complexity metrics, th...This paper develops an improved structural software complexity metrics named information flow complexity which is closely related to the reliability of software. Together with the three software complexity metrics, the total software complexity is measured and some rules to reduce the complexity are presented in the paper. To illustrate and explain the process of measurement and reduction of software complexity, several examples and experiments are given. It is proposed that software complexity metrics can be measured earlier in software development and can provide substantial information of software systems whose reliabil- ity can be modeled and used in the determination of initial parameter estimation.展开更多
Traditionally, timing and the failure rate are the only two factors considered in software reliability formula, which is actually incomplete. Reliability should be redefined as a function of software complexity, test ...Traditionally, timing and the failure rate are the only two factors considered in software reliability formula, which is actually incomplete. Reliability should be redefined as a function of software complexity, test effectiveness, and operating environment. This paper focuses on software complexity with its relation to the soft- ware reliability. Today, many software complexity measurements have been proposed, but most of them treat the reliability model incompletely. This paper proposes a new method which considers a relatively complete view of software reliability including its complexity and test effectiveness of the software being tested.展开更多
The Ethereum blockchain’s smart contract is a programmable transaction that performs general-purpose computations and can be executed automatically on the blockchain.Leveraging this component,blockchain technology(BT...The Ethereum blockchain’s smart contract is a programmable transaction that performs general-purpose computations and can be executed automatically on the blockchain.Leveraging this component,blockchain technology(BT)has grown beyond the scope of cryptocurrencies and can now be applicable in various industries other than finance.In this paper,we investigated the current trends in Ethereum-based decentralized applications(DApps)to be able to categorize and analyze the DApps to measure the complexity of smart contracts behind them,their level of security and their correlation to the maintainability of the DApps.We leveraged the source code analysis,security analysis,and the developmental metadata of the DApps to infer this correlation.Based on our findings,we concluded that the maintainability of Ethereum DApps is proportional to the code size,number of functions,and,most importantly,the number of outgoing invocations and statements in the smart contracts.展开更多
Complexity is commonly summarized as‘the actions of the whole are more than the sum of the actions of the parts’.Understanding how the coherence emerges from these natural and artificial systems provides a radical s...Complexity is commonly summarized as‘the actions of the whole are more than the sum of the actions of the parts’.Understanding how the coherence emerges from these natural and artificial systems provides a radical shift in the process of thought,and brings huge promises for controlling and fostering this emergence.The authors define the term‘Complex System Engineering’to denote this approach,which aims at transferring the radical insights from Complex System Science to the pragmatic world of engineering,especially in the Computing System Engineering domain.A theoretical framework for Complex System Engineering is built by the morphogenetic engineering framework,which identifies a graduation of models,in growing order of generative power.The implementation of Complex System Engineering requires a portfolio of operational solutions:The authors therefore provide a classification of Complex System application approaches to answer this challenge and support the emergence of Complex System Engineers capable of addressing the issues of an ever more connected world.展开更多
基金the National Natural Science Foundation of China (No. 60473033)
文摘This paper develops an improved structural software complexity metrics named information flow complexity which is closely related to the reliability of software. Together with the three software complexity metrics, the total software complexity is measured and some rules to reduce the complexity are presented in the paper. To illustrate and explain the process of measurement and reduction of software complexity, several examples and experiments are given. It is proposed that software complexity metrics can be measured earlier in software development and can provide substantial information of software systems whose reliabil- ity can be modeled and used in the determination of initial parameter estimation.
基金the National Natural Science Foundation of China (Nos. 60473033 and 60173029)
文摘Traditionally, timing and the failure rate are the only two factors considered in software reliability formula, which is actually incomplete. Reliability should be redefined as a function of software complexity, test effectiveness, and operating environment. This paper focuses on software complexity with its relation to the soft- ware reliability. Today, many software complexity measurements have been proposed, but most of them treat the reliability model incompletely. This paper proposes a new method which considers a relatively complete view of software reliability including its complexity and test effectiveness of the software being tested.
文摘The Ethereum blockchain’s smart contract is a programmable transaction that performs general-purpose computations and can be executed automatically on the blockchain.Leveraging this component,blockchain technology(BT)has grown beyond the scope of cryptocurrencies and can now be applicable in various industries other than finance.In this paper,we investigated the current trends in Ethereum-based decentralized applications(DApps)to be able to categorize and analyze the DApps to measure the complexity of smart contracts behind them,their level of security and their correlation to the maintainability of the DApps.We leveraged the source code analysis,security analysis,and the developmental metadata of the DApps to infer this correlation.Based on our findings,we concluded that the maintainability of Ethereum DApps is proportional to the code size,number of functions,and,most importantly,the number of outgoing invocations and statements in the smart contracts.
文摘Complexity is commonly summarized as‘the actions of the whole are more than the sum of the actions of the parts’.Understanding how the coherence emerges from these natural and artificial systems provides a radical shift in the process of thought,and brings huge promises for controlling and fostering this emergence.The authors define the term‘Complex System Engineering’to denote this approach,which aims at transferring the radical insights from Complex System Science to the pragmatic world of engineering,especially in the Computing System Engineering domain.A theoretical framework for Complex System Engineering is built by the morphogenetic engineering framework,which identifies a graduation of models,in growing order of generative power.The implementation of Complex System Engineering requires a portfolio of operational solutions:The authors therefore provide a classification of Complex System application approaches to answer this challenge and support the emergence of Complex System Engineers capable of addressing the issues of an ever more connected world.