Decision Support System Tools
We need to look at the tools that can be used to build a DSS (Decision Support System). That means expressions, text, hypertext, etc. The thing to keep in mind is that each of these features may or may not be needed in your DSS, may or may not be available with your chosen DSS builder, and may or may not be able to cross from one tool to another. The tools can enable the developer to build the DSS, assist the user in entering the right information, or be used to display the results.
An expression is simply a way of deriving a value. Most of you are familiar with the term expression as a numerical or algebraic formula such as 5*3 or 2y/x. The algebraic expression can also include fields (from a database) or labels (from a spreadsheet) – profit = [selling_price] – [cost]. It can be a Boolean value (yes/no, true/false) with operands such as =, OR, AND, NOT or <>. It can also be a string formed by concatenation such as “00000”+”1234”+”ATTEMPT”, which would derive “000001234ATTEMPT”. Fields and labels would be variables – words signifying a saved area of memory to be filled with a value. That value could be a Boolean, a picture, a numeric value, or a string (collection of characters). A function is just a preset formula. A macro can also be viewed as an expression, since a macro is a formula of coding steps. Where this comes in handy is the reprogramming of function keys. In the old IBM mainframe terminals, they often had a second keyboard of function keys from F13 to F24. Some software programmed these (to compile coding, open a word processor, etc.) and the user could preprogram them him/herself, perhaps to print to the local printer.
In document management, we go from the ridiculous (Documentum) to the sublime (table of contents or index with hyperlinks). You may recall that I’ve mentioned a company that scans and indexes lawsuit-related documents to make them readily available. The scanned images, indexes and related information all reside in a database – effectively a DSS of its own for the attorney. MS Word incorporates hyperlinks in its table of contents and index.
Hypertext documents sound very complex, and certainly back in 1989, when I attended a consortium at Cornell, a package called Stella was fascinating and a bit daunting. Specific words in one document could trigger the opening of another document. What a phenomenal concept. But actually you use the concept every day – http stands for hypertext transfer protocol – and the links you click on the World Wide Web are hyperlinks. So you are actually very familiar with this. What most of you may not be so familiar with is the ability to do this without the Internet.
Another example of hyperlinking – Windows Explorer. It appears to ‘tree’ documents into folders and subfolders, and if you double click on a folder, it opens to expose more folders and documents (files). What you see is simply a pictorial representation of pointers to make it easier for you to visualize your file management.
Ah, database management with a relational database – my pet! Most of you are familiar with Microsoft Access, which is the best PC-sized relational DBMS (database management system) available. Other relational databases are much bigger – Oracle, SQL Server (Microsoft) and DB2 (IBM). However, most people are
only familiar enough with Access to build a couple of tables and write a few select queries. In actuality, Access can manage documents, pictures, calculations, functions, hyperlinks, graphs, what-if statements, interaction, just about anything. However, it takes a pretty sophisticated IT person to use this power fully.
Most people know the basics of applications software. But it is the more advanced features which make any of these tools amenable to building a DSS. The best you can do in the beginning is explore the possibilities
Solvers are a challenge. They effectively are a decision making system rather than a support system. But texts approach them as functions, and for this they are very handy for the decision maker. For instance, deriving the monthly payments for a mortgage, given the variables of interest rate, down payment, and length of mortgage. Or they can be used to extrapolate pro forma – given the monthly sales of the Eastern region for the last 24 months and the inflation rate, what can we expect the sales to be six months into the future?
Models and modeling are terms that are overused, but they are the currently popular buzz words for design, layout or architecture. Anyone who has drawn a flow chart has modeled.
If one were to choose a single medium for a DSS, the most popular would be a spreadsheet. This is more from familiarity and ease of use than anything else. Spreadsheets can do far more than most people give them credit for. And there are many people who treat a spreadsheet as if it was a DBMS. A spreadsheet can do a great amount of data handling, and the display of the information can even be set up to appear as a report. You can insert control buttons to trigger some very fancy macros. For instance, a student and I built a spreadsheet for banking, and when you clicked the control button, the workbook added a new spreadsheet, named it for the new month, labeled and formatted the cells, entered the constants and brought the beginning balance in.
A single worksheet (spreadsheet) is a 2-dimensional grid sometimes called (to the delight of military persons and geeks everywhere) a matrix. When you use more than one worksheet in concert you work three-dimensionally – as in an Excel workbook. I use one for each class – the first sheet has roster information; the 3rd through 7th sheets list the grading requirements for each week, with automatic dating. The second sheet goes 3-dimensionally through the others, picks up the grades for each person, weights them, and calculates the final grade. This keeps me honest, as everyone’s grade gets calculated the same way, and of course avoids calculation errors.
Programming – well, that’s an entire master’s course! For this discussion, programming experience can come in very handy for making macros and VBA in controls, if you are so inclined. Students of programming can of course code everything that a DSS tool can do, since the tool is simply preprogrammed. To try and teach assignment statements, I/O commands, etc., is ludicrous. But for those of you with programming experience, it can of course be used to create a DSS. Cobol is so entrenched in business machines and mainframes that it is still the main language for airlines, colleges, and quite a few businesses. Y2k kept many a Cobol programmer working! But now Cobol is getting supplanted by C++ (or any form of C) and hypertext languages like Java and HTML. And Visual Basic is getting a great boost because of the changeover from mainframes to PCs and networking, as well as its easy front end for databases and web applications.
Menus are undoubtedly a method of interaction with the user – now we are shifting from full systems tools to individual tools within a system. About ten years ago there were DOS-based programs called menu makers, but now the menus are built into the system tools. You can create or modify menus in Excel, Word and Access. You can create and manipulate them in code such as Visual Basic.
When developing a DSS for someone else, the developer tends to avoid ‘natural language’ queries and text box fill-ins because they are open to interpretation. As an alternative, the developer offers selection from a menu, or options lists or drop-down lists. After all, if you say you want to search on “Bob Smith”, and the knowledge base has only “Robert Smith” – you will find no entries, when in fact they are there.
As with menu makers, there used to be a plethora of DOS-based applications called Forms Makers. These did just what they sound like – you could set up an electronic form. Microsoft Word and Word Perfect now offer that capability as well; this comes in handy when you have a user who has been filling out paper forms for eons, to help ease the transition to electronic data. The forms of Microsoft Access are simply a user-friendly way of filling the information in on a table. For instance, there may be 25 fields per record; to scroll over to the right every 7 columns in a spreadsheet or table can be confusing and time-consuming. But if you created a form so that all 25 fields for a single record were on the screen at one time it’s easier to enter the information.
The report manager in Access is not initially user-friendly, but even ad hoc queries could benefit from some presentation formatting. Word processors can import spreadsheet, query or table information; spreadsheets can pick up information three-dimensionally to display it in a clearer manner. If you have a series of graphs which would benefit from being viewed next to each other, a report format would be preferable.
Graphics can play a lot more than a decorative role – graphs of trends or comparison are the start, but one might also want to use pictures or even derive models, as in designing any three-dimensional object. If the DSS is being designed to help decide which architect to choose to build the new headquarters building, surely we would want to be able to view their renditions of the final design. And a graph of sales might indicate a dip during July and August every year, causing the decision maker to pump up marketing during that period – or force vacation closings.
Rules management is a big topic. Inference engines are fascinating. We can start playing with this when trying to make a peanut butter and jelly sandwich. To do this we use reverse reasoning – we know what we want to end up with (the sandwich), so we need to break down the rules to get there. In forward reasoning, one doesn’t know the result – one works through each base comparison to find out where to go next. If any of you had quantitative analysis you understand this approach:
I have a white substance.
I change the temperature to find the melting point.
I change the temperature again to find the freezing point.
With these two properties, I have a window of elements this could be (depending on how pure it is.)
I now check the pH...
Each property that is tested leads us in the direction of the next analysis to do, until we narrow it down to a single substance we can identify. Thank you, Merke!
Messages can either be part of the knowledge base or part of the interaction between user and DSS. An example of a message as part of the KB is the portfolio managers at Shawmut bank, where I managed their network. They got streaming data from a Bloomberg system of all stocks so that they could buy or sell at a moment’s notice. This was quite a feat at the time (1994). So the Bloomberg system was sending them messages every 30 seconds, which they used to help them decide which stocks to trade.
The DSS could of course use message boxes to request clarification, answer a quick question, or warn of improper data input.
Perhaps the most familiar forms of message management are bulletin boards, chat rooms – and the University of Phoenix online! Another that I have used on occasions is webinars – seminars held on the Web, where the user can not only listen and watch, but submit questions.
Finally we face the interface! In the DSS, we are referring to the results as they are presented to the user (decision maker).
In Access, this is usually done in a report summarizing the recommendations. Another format I often use is a “form” with calculated fields that give totals, etc., as the user enters the parameters – or a form which displays the results on the click of a button (for comparisons or what-ifs).
In Excel, this is often done with a ‘summary sheet’ in the front of the workbook. Here, in a pleasing and lucid manner, the DSS should present to the decision maker those recommendations gleaned from the KB and processes, along with the specs which support the recommendations. So it should say something to the effect that these are the indicated directions you can go and why.