A Design Approach for Software Robustness
暂无分享,去创建一个
The information appliances are diversified nowadays. The types of software vary from device to device and from application to application. For end-user applications, the popularity is based on the user acceptance. Therefore, it is reasonable to develop according to user feedback which indicates new changes to the software requirements. To deal with the changing requirements, agile process is popular. It requires expertise to maintain the quality while frequently evolving versions. Among the user feedback, application crash is intolerable. In this paper, we consider the software architecture for a robust application. We use Erlang/OTP as a reference and examine the important factors to make an application auto-recoverable. By this approach, the down time of an application is shortened. We then summarize a few design guidelines for the run-time environments in which Erlang/OTP native solution is not applicable. We also discuss some considerations for reducing the implementation complexity. To demonstrate the feasibility of the guidelines, we also present an example application in C language.
[1] Craig A. Knoblock,et al. Advanced Programming in the UNIX Environment , 1992, Addison-Wesley professional computing series.
[2] Ali Shahrokni,et al. A systematic review of software robustness , 2013, Inf. Softw. Technol..
[3] Kenneth S. Rubin,et al. Essential Scrum: A Practical Guide to the Most Popular Agile Process , 2012 .
[4] Joe Armstrong,et al. Programming Erlang: Software for a Concurrent World , 1993 .