people.uwplatt.edupeople.uwplatt.edu/.../csse411-materials/s12/Delkj_final_paper_2.docx  · Web...

12
Comparing Decision-Making Techniques James Delk Computer Informational Systems University of Wisconsin – Platteville [email protected] Abstract Figure 1: a table of the various problems a software developer might encounter when designing a system. Figure 1

Transcript of people.uwplatt.edupeople.uwplatt.edu/.../csse411-materials/s12/Delkj_final_paper_2.docx  · Web...

Comparing Decision-Making Techniques

James Delk

Computer Informational Systems

University of Wisconsin – Platteville

[email protected]

Abstract

Figure 1: a table of the various problems a software developer might encounter when designing a system.

Decision-making techniques are a key part of designing all software. The quality of a system depends upon how well the system fulfills the needs and desires of the operators. The

Figure 1 Figure 1 Figure 1 Figure 1 Figure 1 Figure 1 Figure 1 Figure 1

designer/architect must balance utility, adaptability, understandability, and many more variables, all with future operators in mind. An easy way of balancing these options is to first set the criteria that you will be basing your decisions on; then pick the techniques you plan on using to differentiate the various options available. Decision-making techniques should help the user find the optimal choices while taking into account all the variables. Examples of these variables are things such as wasted processor time, the burden on the processor, or how the burden will reflect on the life of the processor. [1]

This comparative will list some different decision-making techniques. Then it will compare each of the models listed to the others, continuing with a general comparison of the several of the listed techniques. Finally, it will end with some issues that architects might run into in the process of choosing which techniques to use.

Introduction

We are faced with decisions every day, not only as programmers, but also as people. Decision making techniques allow us to quantify or compare the choices available to us. The usage in computer science is not some much direct code, but the choice of which method to use. These methods can evaluate things such as the method of data caching used, what algorithms will work the most efficiently with your system, and even what language you should design your system in. Decision making techniques have an extremely wide range of possible applications, making them useful in every situation.

The methods that will be described and compared are AHP, Decision Tree, Influence, Rational Decision, and Decision Analysis. These methods show a broad spectrum of the qualifications generally associated with decision making techniques.

Comparing Decision-Making Techniques

Decision Making Techniques

AHP method

Figure 2: this figure represents the web created by using the AHP method’s criterions, options, and goals.

One of the simplest types of decision-making strategies is the AHP model as seen in figure 2. This is where the designer lists the goal, creates the criterion and links the options to the criterion that each option can fulfill. This allows the architect to see which of the options best fits the criterions and how the options can be shifted, merged, or changed to allow the coverage of more criterions. The use of predefined criterions allows the designer to compare the options side by side to have an easier comparison. This makes it easier to compare different options than many of the other models. However, this model has several fairly major issues, one of the easiest to identify is that there is no levels of certainty. Without the different levels all the criterions must be either yes or no options, making this model rather inflexible and forcing the designer to check the options more to get an accurate account of each option. [2]

Decision tree method

Another fairly simple technique is the decision tree model. This model forces the designer to choose between comparable options while showing the options that the each of the available choices will generate. Once again there is no level of certainty, so this method also requires quite a bit of additional research to be used effectively in that context. If the starting option is completely incompatible with another option another tree must be drawn to compare the two. Also, this method will end up increasing in size exponentially for each additional requirement that is considered. For some of the more complex decisions this option is almost completely infeasible.[4]

Influence method

A third model is an influence diagram. This model is much like the decision tree model with two noticeable differences, levels of certainty and a far less rigid structure. The influence diagram is also a display of the interdependence of the various criterions and options. The levels of certainty allows the user to see the ease at which a system will follow a natural flow into the decision and the less rigid structure makes the model much easier to denote and create. However, the less rigid structure also makes the process harder to follow or compare and the levels of certainty add a whole new factor into the system, one that might be extraneous.

Rational Decision method

Figure 3: this figure depicts the rational decision method process.

A far more basic decision-making technique is a simple pro vs. con comparison. For this method the architect simply takes all the options, writes down the good and the bad of each option and picks whichever option has the best pro to con ratio. The biggest issues with this method are the limited scope of the technique and that this option does not take into account the value placed upon the different pros and cons. The proper title for this method is rational decision making. [3]

Decision Analysis method

And the last of the models that will be covered in this paper is the decision analysis method. This model is much like the rational decision making model, however, each of the options’ significant parts is assigned a weighted value and the option with the greatest value is selected. The problem of limited scope is applicable in this case as well.

Comparisons

AHP method – Decision tree method

When you compare the AHP model to the decision tree model the differences are readily visible, the AHP only accounts for one fairly extensive set of criterion, while the decision tree takes quite a bit longer to make. While the AHP method starts with the final goal, the decision tree model starts with the options available. The AHP method is more useful when the architect has many criterions that can be satisfied by several different options. However, when the amount of options is fairly low the decision tree usually goes more in depth for each option. If the architect desires to see nearly every option he should use both as to not miss dangling parts from either end.

AHP method - Influence method

The influence diagram has some definitive advantages over the AHP model. The levels of certainty and the fluid diagram allow the architect to see farther into each option, allowing for a more informed decision. However, the AHP diagram is much easier to read and compare the basic criterion that each option can fulfill. Much like the decision tree diagram, the influence diagram requires the architect to generate a new diagram for each option. This is a major hindrance when either cost or time is an issue.

AHP method – Rational Decision method

The rational decision method has an almost parallel feel when compared to the AHP method. Both the benefits and the negatives can be listed as the AHP method’s criterion. However,

criterions generally fall under a more strict guideline than the pluses and minuses of an option. Yet, the rational decision does not have as professional of a touch, so, if the model is for a presentation, I feel that the AHP method is more appropriate.

AHP method – Decision Analysis method

The issues that are found between the AHP method and the decision analysis method are much like those found between the AHP method and the rational decision method. However, there is one more main point of contention, the weighted values. These make the choice between the two fairly easy as the rational method covers everything that the AHP method does, in addition to having the weighted values. So the only reason to go with the AHP method is if you are either do not want to take the time, or have some constriction preventing you from doing so.

Decision Tree method - Influence method

When you compare the decision tree model to the influence model, the only real differences between the two are that the influence model is more flexible as it includes the levels of certainty. However, the influence model is also slightly more flexible as the decision tree model has a rigid structure. The rigid structure makes it easier to compare as they both have the same overall format. It really is up to the architect whether he has the additional time to follow the rigid structure, or if he wants the levels of certainty included in the final product.

Decision Tree method – Rational Decision method

The rational decision method is much faster than the decision tree method. However, the decision tree method also goes into the different steps of the options. The value and relevance of the more in-depth decision tree model should be weighed against the time and resources allowed as well as the depth required by the assignment.

Decision Tree method – Decision Analysis method

Much like the rational decision versus the decision tree question, the decision analysis method has some very significant differences from the decision tree method. The difference in the comparison is the weighed values must now be compared to the depth of the decision tree

method. The decision tree shows a hierarchical view of the process, giving a relationship between the different options, while the weighted values of the decision analysis are exceptional for quantifying the options. It is these options that you must make a decision on.

Influence method - Rational Decision method

The influence method shows the flow of each option as well as including the certainty values. However, as mentioned before the influence method, like the decision tree method, has a fairly large resource demand. Once again the architect must weigh quality versus speed as the rational decision method is one of the fastest methods commonly used. This is because the weight of each variable must be decided upon and assigned to the variable, which is usually not a quick process. While on the other hand the rational decision method is like hey this option has more items, regardless of their value, pick it.

Influence method – Decision Analysis method

Both the influence method and the decision analysis method have a type of weight placed upon the variables. The difference is that the influence method shows how the values are related to each other, while the decision analysis method shows different values based upon a predetermined system created by the architect.

Rational Decision method – Decision Analysis method

The decision analysis method has far more value in nearly every situation when compared to the rational decision method. So, unless there are several issues that the architect cannot put a value to then the decision analysis method should be used as there is a fairly large increase in value for a minimal increase of time required.

All methods

When the architect compares all the methods against each other to decide which one to use, there are several questions that will come up. The answers to these questions will determine which method or methods are to be used. If the architect desires the most in depth and complete system, regardless of cost and time required, I would suggest using three separate methods from the

above selection. One of them should be the AHP method as that is the only method that starts with the final goal and shows you which methods can complete most of the desired criteria. The other two should be the decision analysis and the influence method. The decision analysis method because it will show the architect which options fit his goals the best. The influence method to see which parts of the process will go the smoothest.

Issues

There are many issues that an architect will run into while trying to decide upon which method to use to get the most relevant and most valuable data. One of the most common issues is teamwork. Most of the systems in today’s world are not designed or even researched by a single architect. There are task groups, teams, supporting personal, and even the bosses will sometimes request specific requirements for the new system. It is important to know exactly what you are looking for when planning on creating a new system. Also there are some methods that work better with teams, such as the decision tree and the influence methods. They can be accomplished much faster with teams as each option requires its own model.

Conclusion

The decision-making techniques listed are only a small sampling of the amount of decision-making techniques. Nearly every step in creating a system can be aided by the use of decision-making techniques. Effective use of these techniques will allow for not only better systems but also show how you created these better systems for future reference.

References

[1] Davide Falessi, Giovanni Cantone, Rick Kazman, Philippe Kruchten ”Decision-Making Techniques for Software Architecture Design: A Comparative Survey”. Retrieved March 25, 2012 from http://www.ece.ubc.ca/sites/default/files/Falessi%202011%20CSUR.pdf

[2] AHP model retrieved March 25, 2012 from:

http://www.decision-making-solutions.com/decision_making_techniques.html

[3] model retrieved March 27, 2012 from:

http://home.ubalt.edu/ntsbarsh/opre640a/partix.htm

[4] Decision trees, retrieved April 18, 2012 from: http://www.mindtools.com/dectree.html

Acknowledgements

“A Comparison of Autonomic Decision Making Techniques” Martina Maggio, Henry Hoffmann, Marco D. Santambrogio, Anant Agarwal, and Alberto Leva,

Computer Science and Artificial Intelligence Laboratory Technical Report,

Massachusetts institute of technology, Cambridge, ma 02139 USA — www.csail.mit.edu

MIT-CSAIL-TR-2011-019 April 1, 2011