Feedback Loops to Enhance Software Capability sample essay
Feedback loops are a part of the systems we examine in systems thinking. Our first text book Thinking in Systems tells us we can see the existence of a feedback loop when “the consistent behavior pattern over a long period of time” is observed. My own interpretation is that feedback loops provide information in real time (or something close to real time) to provide the opportunity to make adjustments, pushing toward improvement. Even more simply stated action= information=reaction.
Systems thinking is a methodology for us to analyze and predict behavior by developing an in-depth understanding of the underlying components in the system. The majority of real world problems are complex, and due to this complexity the systems models for these problems will be complex as well. It will be impossible to formulate solutions to complex issues without understanding the feedback loops that influence the systems we are studying.
For example, the Internet is an information system with feedback loops. I began to notice feedback loops at work on the internet this week while I was on my Facebook page. Earlier in the day I had been looking at Hotel options in Las Vegas as I will be travelling to Nevada for a trade show in April. One of the hotels I looked at via their website was the Golden Nugget on Fremont Street. A few minutes later when I visited my Facebook page, one of the ads on the side of my page was for the Golden Nugget hotel in Las Vegas. Obviously there is some correlation between the ads on your Facebook page and websites you have visited, I just had never noticed it before.
This has to be based on a feedback loop where Facebook is receiving information as to your browsing habits and then customizing advertising based on these habits. If we take this a step further this could also be used as a predictive tool as well. If you think you might like the Golden Nugget, you’ll really love the Mirage. That sort of suggestive selling could be a major revenue generator for Facebook assuming they receive a fee when a consumer purchases based upon their ads. I’d have to say this is a reinforcing feedback loop. The more Facebook knows about you the more it can customize your ads and this will continue to build upon itself with ni limitation other than your own habits.
Feedback loops are also being used to enhance software capability. Patikirikorala stated “The feedback control loop has been one of the key concepts used in building self-adaptive software systems to manage their performance among other quality aspects” (2678). All of us who use and depend on software on a daily basis know that it is unpredictable. It can also at times be unstable, sometimes due to user error and other times due to real product deficiencies. The concept with using feedback loops is to help the software be able to fine tune itself in order to help create better performance and also reduce on going administrative costs. It appears one of the major stumbling blocks with this approach at the moment is that software systems are complex and their problems are not easily reproduced through modeling and systems thinking.
Patikirikorala explores this issue when he says “For instance, an e-commerce system may face sudden intensive workloads when promotional offers are run or when referenced by a high-traffic site (the so-called ‘slash-dot’ effect). The workloads may also vary dramatically depending on the time of day (e.g., stock market applications) or the time of year (e.g., tax office sites). Third, if the application evolves due to new feature additions, bug fixes or system configuration changes, the constructed model has to be changed as well for accurate representation.
The resultant behavior of the software application therefore depends on a combination of the operating states or conditions of the underlying software layers, the current environmental workloads, and the current configuration of the application architecture. Depending on what combination of the above factors occurs, the behavior of the software application can be characterized by a number of distinct operating regions. However, the complexity of interactions between these factors means that creating a single model of the system is very difficult if not virtually impossible.” (2679).
One may only need to examine the stated issues above however to see the potential benefits by software that can self-regulate through a feedback loop. For instance, what if the system software used for on-line trading of stocks could execute a scenario during peak hours to allow the maximum number of users higher throughput, in order to execute their trades quickly and accurately without a slowdown in performance? This must have been the effect Windows was looking for when it enabled the real time reporting of bugs and crashes into its operating systems. The next logical evolution will be when the software itself tracks these issues and makes the adjustments without user intervention or reporting.
This methodology need not be limited to software either, the race appears to be on from network hardware providers such as Cisco and Enterasys to provide network infrastructure that is self-healing, self-configuring, and self-adapting. Networks that can distinguish between different types of threats, discriminate between devices attempting to connect and self-install patches or security measures are the next generation of hardware. This is also all accomplished through the use of feedback loops.
One thing is certain, without the feedback loop, and our ability to understand them. Our ability to formulate solutions via the use of Systems Thinking is severely limted.
Patikirikorala, T., Colman, A., Han, J., & Wang, L. (2012). An evaluation of multi-model self-managing control schemes for adaptive performance management of software systems. Journal Of Systems & Software, 85(12), 2678-2696. doi:10.1016/j.jss.2012.05.077
Boehmer, W. (2012). Toward a target and coupling function of three different Information Security Management Systems. Concurrency & Computation: Practice & Experience, 24(15), 1708-1725. doi:10.1002/cpe.1873
Meadows, Donella H., (2008), Thinking in Systems. White River Junction, Vermont: Chelsea Green Publishing
Need help with writing Feedback Loops to Enhance Software Capability sample essay?Get help