Beruflich Dokumente
Kultur Dokumente
S. Agarwal
St. Xaviers College, Kolkata.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
What is a SYSTEM ? A system is defined as a set of concepts or parts that must work together to perform a particular function. An organization is a system or a collection of systems. Every job in an organization is used by a system to produce a product or service. The product or service is the means by which a organization supports itself.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
There are four inputs necessary in every system to produce a product or service: People: The workers making up a group People and linked by a common activity. Material: The raw products which go into Material the system. Technology: The technique for achieving Technology a practical purpose or goal. Time: The measured period during which Time an action or process begins and ends.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Functional Divisions of an Organization and IS : Finance Marketing & sales Human resources Operation (manufacturing or services) Information systems (IS)
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Information System : A system, whether automated or manual, that comprises people, machines, and/or methods organized to collect, process, transmit, and disseminate data that represent user information.
At the center of organizational units lies the information system. Each unit relies on the information system in the generation of information. People in different functional areas of the organization will need different types of information. Often it is not even appropriate for people in one area to have information given to workers in another area. For example, most companies do not allow people outside of the human resources and payroll departments to have information about various employees' salaries. Therefore, one of the functions of a CIS, besides making information available to employees who need it, is to keep information away from employees who should not have it. Sometimes this second function is harder to manage than the first.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Simons Decision-Making Model Renowned mathematician, Herbert Simon, born in 1916, is responsible for many of the algorithms used in today's computer models. Dr. Simon spent his career developing mathematical formulas to mimic human thinking. His work has added much to the study of artificial intelligence. Herbert Simon describes the decision-making process as having three phases. 1. Intelligence : In this phase we collect facts (the data). 2. Design : In this phase, we design the methods for studying the data, such as models, decisions trees tools that let us analyze the various alternatives 3. Choice : When we have reduced the alternatives down to a manageable number, we make our decision
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Decisions are easy to make when we can clearly see that one option is better than the others. Unfortunately, most decisions we make are not this cut and dried. As the number possible options increases, the decision-making process becomes more difficult. When we are talking about decisions in terms of strategic issues, i.e., product decisions, marketing decisions, cost/benefit decisions, etc. the number of alternatives can be enormous. In the world of business, you will be faced with three general types of problems -- structured, unstructured and semi-structured.
Structured or programmable - The solution has a known set of steps. The data and solution to all three phases of Simons decision-making model are known or can be determined. an example of a structured problem would be figuring out a payment amount, based upon a known principal, interest rate and time period. We know there is a mathematical model to solve this problem. Solving this type of problem using this model will always give us the same result. Structured problems are easy for us to resolve.
Unstructured : The steps are not known. There may be too much or to little information to allow us to arrive at the best conclusion. The data and solution to all three phases of Simons decision-making model are unknown or not quantifiable. In an unstructured problem there is no known set of steps to follow. There may not be enough information about the situation, or there may be so much information that a model cannot be formulated to reach a decision. There is so much information to disseminate it would be impossible to pinpoint. Stock behavior, world economies etc.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Semi-structured - We cannot say with absolute certainty the best decision, but we are able to narrow it down to the most likely decision. Usually one or two of the phases of Simons decision-making model are known and one or two are not known. Semi-structured problems are somewhere in between. We cannot say with absolute certainty that it will be sunny in Boone tomorrow, but based upon forecasts we can be relatively sure. In the case of certain diseases, it can be difficult to say with absolute certainty what a diagnoses should be, but based upon data and various alternatives, we can narrow it down to the most likely diagnoses. Managers are constantly faced with Semi-structured problems.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Why Automate? Basically, we create information systems to provide the following: Reduce costs Increase speed Increase accuracy Increase customer service Improve decision making If the systems can not provide some or all of the above, then we should not consider automation.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Within companies and large organizations, the department responsible for computer systems is sometimes called the MIS department. Other names for MIS include IS (Information Services) and IT (Information Technology).
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Transaction (Data) Processing The objective of the transaction (data) processing (TP/DP) system is the collection and maintenance of data. This is where most of the data in an organization is collected and stored for use by members of the organization. It is interesting that most of the workers in the TP/DP system are lower level workers.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
The tasks that must be accomplished in the TP/DP system include: Data (transaction) gathering : The first task is to gather the data or transactions. This task mostly deals with collecting new data as close to the source as possible. Data manipulation : This task includes editing, correction, classifying, coding, sorting, calculating, summarizing, and maintenance of data. Data editing ensures the accuracy of the data. Data correction only require correcting of the data in error. Data storage : This task stores the data for future use. Reporting : Reports must be created for edits and operational control. Typical reports include transaction logs, input and error lists, and summaries.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
The MIS provides detailed, summary, and exception reports. Report triggers (events that cause a report to be produced) include periodic (also known as scheduled reports), exception, and on demand. A periodic trigger occurs when some time period is reached (such as the end of the month, or every Monday). An exception trigger causes a report to be produced when the exception is encountered (such as a missed payment, or a sale). Marketing, manufacturing, and financial systems are typical MISs.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Expert Systems
Expert systems are systems that emulate the thought process of an expert. There are many types of expert systems. However, before looking at expert systems, we need to visit the roots of expert systems Artificial Intelligence. Artificial intelligence (AI) applications are where the computer appears to "reason" or display the ability to duplicate human reasoning. AI has not developed much, but has taken a back seat to DSS and Expert Systems. Expert systems is a subset of artificial intelligence. Expert systems function in the same manner as a human expert; that is they emulate the thought process of an expert. The objective of an expert system is to come to a conclusion; to make a decision.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
AI includes:
Vision Systems : These systems simulate the function of the human eye. Natural Languages : Natural languages allow us to communicate with computers in "normal English." Voice input is a good example of the use of natural languages systems. Robotics : Robotics is the science of using robots to perform tasks. Robotics now includes robots with vision and sight. Expert Systems : the fourth area and the one used in business systems.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Characteristics of an expert system (ES) include: The ES must demonstrate the expertise of the expert. It represents knowledge symbolically. It should be able to handle complex rules and problems. It should be able to estimate the accuracy of the conclusions.
Advantages of expert systems are numerous. They allow for better (more accurate) solutions over a nonexpert system. They allow a company to maintain control over the knowledge. If an expert retires, dies, or leaves the company, the expert knowledge is retained through the expert system. They sometimes allow for faster solutions. Finally, they provide a consistency. The expert system will provide the same solution, given the same inputs, every time. An expert can forget a rule or apply the data provided in an inconsistent manner, thereby obtaining different answers.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Other terms and concepts relating to expert systems include: Expert System Shells - A ready-made inference engine tailored to a specific problem domain. Many companies buy a expert shell and add additional facts and rules to the knowledge base. Knowledge Engineer An IS person that works with the expert to isolate and define rules. Knowledge engineers are IS persons that specialize in programming the thought process of experts. Neural Networks Systems that attempt to emulate the biological structure of the brain. Fuzzy logic/data The science of inexact/ambiguous reasoning. Many expert systems use types of fuzzy logic to define the facts and rules. Virtual Reality (cyberspace) Systems that use multi-sensory human/computer interfaces. Virtual reality (VR) works in 3-D space. Virtual reality was covered earlier in Chapter 5 of the text.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
The following table shows some well-known expert systems. System Prospector Adviser Genplan Puff Xsel Dendral Molgen Mycin Cats-1 Application Geology Petroleum Aircraft Assembly Medicine Sales Chemistry Genetics Medicine Manufacturing Purpose Evaluates field sites for mineral deposits Analyzes oil well production Creates complex manufacturing plans for airplane manufacturing Diagnoses lung disorders Assists computer salespeople in selecting components Helps chemists determine the molecular structure of compounds Plans experiments involving structural analysis and synthesis of DNA Diagnoses bacterial infections and prescribes treatment Diagnoses malfunctions in diesel locomotives and suggests repairs
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
It is important to emphasize that decision support systems provide help in decision-making. They are usually very focused, that is, they are aimed at the decision to be made. They can be fairly expensive depending on scope. Because they are usually very costly, they are used for recurring decisions. The information provided/used in a decision support system depends on the decision.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Decision support systems provide the organization with many benefits. These include: A DSS can evaluate more alternatives. It allows the user to better understand the problem. It can analyze new scenarios. It usually saves time and costs It usually allows for better decisions.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Quality assurance (testing, backup, documentation) Has a valid, quality decision support system been created? Erroneous outcomes - Does the system provide valid outcomes or results? Without a good quality assurance program, the system may not be accurate. Unknown alternatives - A DSS evaluates the alternatives that are programmed. If the user is not aware of alternatives, they will not evaluate them.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Companies use DSSs to perform something called Sensitivity Analysis, or What If analysis. Sensitivity Analysis (What if)-- The sensitivity of an outcome is high if the outcome is affected significantly by a slight change in some parameter. The user enters parameters at varying degrees to see the various outcomes. How much will sales of Coke Classic increase if advertising dollars in TV media are increased by 10%, or 5%, or 3%.
How does a company decide if it needs a DSS? Basically, the following questions should be answered: Do we need a DSS to aide in analysis? Are the data in computerized databases? How often do we need to solve these problems? Who will use the system? Information systems are tremendous investments for companies, both in terms of dollars and in terms of change for the organization. So, before investing in a DSS, the questions asked above should be considered. A Decision Support System simply gives managers more information to aid in the decision making process. The manager, or human component, must make the ultimate decision based upon the best information possible.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Executive Information Systems Executive Information Systems (EISs) support executives (VP & above) in their decision roles. They rely heavily on the ability to retrieve data and present information for an executive.
Another way to look at an EIS is that it is basically a DSS to provide summary and decision making information to an executive. Executive support is required for an EIS to be a success. Since they are costly, they are more often found in large companies.
Characteristics of a EIS include: Highly summarized Most executives are looking for summary data upon which to make decisions. They very seldom want detailed data. Top-level executives making decisions for large organizations do not have time to wade through pages of detail, but must be able to see enormous amounts of information in such a way that is quickly meaningful and useful. Drill down - Although an executive usually needs summarized data, sometimes more detailed data is needed. Drill down means that the transactions that created a total can be accessed, when needed. Easy on-line access to internal and external data Most EISs provide access to external data, as well as internal data. For example, an executive may require access to current stock prices.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Problem solving ability Many EISs contain what if analysis capabilities. This allows the executive to analyze scenarios. Easy to use and easy to learn Designed with executives CSFs in mind The screens are usually customized to the executives needs. On demand industry- and organization-wide indicators The executive should be able to find, at a moment s notice, the companys financial strengths and weaknesses. Use state-of-the-art graphics, data storage, communications, and data retrieval.
Computer-Supported Co-operative Work Computer-supported cooperative work (Groupware) is a class of software that helps groups of colleagues (workgroups), attached to a local-area network, organize their activities.
Typically, groupware supports the following operations: Scheduling meetings and allocating resources E-mail Password protection for documents Telephone utilities Electronic newsletters File distribution Video conferencing Application sharing.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
is
sometimes
called
workgroup productivity
Much research has been done by organizational behaviorists with regard to group or team oriented work processes. Researchers have found that individuals that work within a team environment are more productive, efficient and effective than when working alone. Thus, groupware facilitates this process. Groupware also supports the concept of anonymity. Individuals are often reluctant to share creative ideas in a group setting. Groupware allows the sharing of such ideas without necessarily revealing identities.
System Analyst
A systems analyst is an information system professional who helps plan, develop, and implement computer-based information systems. In short, they help organizations determine their information system needs. Systems analysts are problemsolving professionals who work with users & management to determine an organizations information system needs. They define the requirements needed to modify an existing system, or to develop a new one. Their job involves communication, including listening skills.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
The systems analysis and design process is a very costly, time-consuming, and difficult to manage process. Many systems analysis and design projects fail. Some points to avoid problems and failures include: User involvement is crucial. A problem-solving approach works best. Good project management skills are needed. Documentation is required. Use checkpoints to make sure the project is on track. Design systems for growth and change.
The Systems Development Life Cycle is the entire life cycle of an information system - from inception to replacement. Although the number of phases differ from time to rime, normally it as a five phase process: 1. Identify problems and opportunities, 2. Analyze and documenting existing systems, 3. Design & develop the system, 4. Implement the system, and 5. Support and maintain the system.
At the end of each phase, a "deliverable" is produced, which is a tangible product that both ends that phase and is used as input for the next phase.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
SDLC models take a variety of approaches to development. Some of these life cycle models include: The Waterfall Model: A classic SDLC model, with a linear and sequential method that has goals for each development phase. The waterfall model simplifies task scheduling, because there are no iterative or overlapping steps. One drawback of the waterfall model is that it does not allow for much revision. The waterfall model builds correction pathways into the model that enable a return to a previous phase. Its currently the most widely used way to implement the systems development life cycle.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Rapid Application Development (RAD): This model is based on the concept that better products can be developed more quickly by using workshops or focus groups to gather system requirements. Joint application development (JAD): This model involves the client or end user in the design and development of an application, through a series of collaborative workshops called JAD sessions. Prototyping Model: In this model, a prototype (an early approximation of a final system or product) is built, tested, and then reworked as necessary until an acceptable prototype is finally achieved from which the complete system or product can now be developed.
Synchronize-and-Stabilize: This model involves teams working in parallel on individual application modules, frequently synchronizing their code with that of other teams and stabilizing code frequently throughout the development process. Spiral Model: This model of development combines the features of the prototyping model and the waterfall model. The spiral model is favored for large, expensive, and complicated projects
System Study
System study is the first stage of system development life cycle. This gives a clear picture of what actually the physical system is? In practice, the system study is done in two phases. In the first phase, the preliminary survey of the system is done which helps in identifying the scope of the system. The second phase of the system study is more detailed and indepth study in which the identification of users requirement and the limitations and problems of the present system are studied. After completing the system study, a system proposal is prepared by the System Analyst and placed before the user. The proposed system contains the findings of the present system and recommendations to overcome the limitations and problems of the present system in the light of the users requirements.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Problem recognition occurs when actual outcomes fall below expected or desired outcomes. In the process of Problem Recognition, one must clearly identify desires and expectations, and different people and different groups of stakeholders will have different desires and expectations which will contribute to their ability to perceive or recognize a problem.
It is important to keep all viewpoints in account, and to provide a means which different stakeholders can use to communicate with one another, so that a common definition of the problem can be agreed upon by all stakeholders. How can the objectives of the organization be pursued/met? Make the agreed upon problem recognition explicit in formally stated goals or problem definitions.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
1.Identify and make explicit the symptoms of the problem. How do you know there is a problem? What is the measured discrepancy between expectations/desires and outcomes? 1.Identify and make explicit multiple possible causes for the symptoms. The goal is to find as many possible causes as possible. If you have identified only one or two possible causes, you know that you are missing something.
Fact-Finding
Analyze organizational Charts to get an idea of the affected group, and to select the interviewees. Conduct Interviews to get an idea of what people think and what is their understanding of the system. Review Current Documents to understand the current processes, and to compare the current practices with what the people said in the interview Observe Operation to get a good idea as to how the day-to-day operation is performed, and to identify the problems and good practices Carry out a user survey: Make a questionnaire and let the representatives as chosen in "Analyze Organizational Chart" answer it. This is more time-efficient than interviews.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Estimate time and cost to continue development : This activity involves a complete Project cost and time estimate.
The Importance of Good Estimation Software projects are typically controlled by four major variables; time, requirements, resources (people, infrastructure/materials, and money), and risks. Unexpected changes in any of these variables will have an impact on a project. Hence, making good estimates of time and resources required for a project is crucial. Underestimating project needs can cause major problems because there may not be enough time, money, infrastructure/materials, or people to complete the project. Overestimating needs can be very expensive for the organization because a decision may be made to defer the project because it is too expensive or the project is approved but other projects are "starved" because there is less to go around.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Feasibility Study
A feasibility study is designed to provide an overview of the primary issues related to a business idea. The purpose is to identify any make or break issues that would prevent your business from being successful in the marketplace. In other words, a feasibility study determines whether the business idea makes sense.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
The difference between system user and System customer : User is the person(s) who uses the System, and customer is the person(s) who is served by the system. Customer is external to the system, while the user is internal to the system.
Operational Feasibility:
This feasibility addresses questions like :
Does the proposed system align with the company's goals ? What will be the impact of the System on the employees? Is there enough support/enthusiasm in the company for the proposed System ?
Technical Feasibility: Does the company have enough technical resources both HUMAN/NON-HUMAN to run the proposed system? If not then can the company acquire them ?
Technological Issues
The cost and availability of technology may be of critical importance to the feasibility of a project, or it may not be an issue at all. Key questions to answer include: What are the technology needs for the proposed business? What other equipment does your proposed business need? Where will you obtain this technology and equipment? When can you get the necessary equipment? How does your ability to obtain this technology and equipment affect your start-up timeline? How much will the equipment and technology cost? Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Economic Feasibility:
Will the proposed system increase revenues either directly or indirectly ?
During the Economic feasibility study, the System Review Committee (SRC) must incorporate ALL the costs and benefits. This includes: Ongoing support cost Maintenance cost System development/ acquisition cost The above three types of costs may be attributed to the following three factors: People (training, re-training, consultants) H/W cost (purchase, up grade of equip.) S/W cost (purchase, up grade of Software) These costs should be compared against the tangible and non-tangible benefits And a decision must be made based on this study.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
FINANCIAL ISSUES :
a. Start-Up Costs: These are the costs incurred in starting up a new business, including capital goods such as land, buildings, equipment, etc. The business may have to borrow money from a lending institution to cover these costs. b. Operating Costs: These are the ongoing costs, such as rent, utilities, and wages that are incurred in the everyday operation of a business. The total should include interest and principle payments on any debt for start-up costs. c. Revenue Projections: How will you price your goods or services? Assess what the estimated monthly revenue will be. d. Sources of Financing: If your proposed business will need to borrow money from a bank or other lending institution, you may need to research potential lending sources. e. Profitability Analysis: This is the bottom line for the proposed business. Given the costs and revenue analyses above, will your business bring in enough revenue to cover operating expenses? Will it break even, Compiled by : S. Agarwal, St. Xaviers College, Kolkata. lose money or make a profit? Is there anything you can do to improve the
Cost/Benefit Analysis
Evaluating Quantitatively Whether to Follow a Course of Action
You may have been intensely creative in generating solutions to a problem, and rigorous in your selection of the best one available. This solution may still not be worth implementing, as you may invest a lot of time and money in solving a problem that is not worthy of this effort. Cost/Benefit Analysis is a widely used technique for deciding whether to make a change. As its name suggests, to use the technique simply add up the value of the benefits of a course of action, and subtract the costs associated with it.
Costs are either one-off, or may be ongoing. Benefits are most often received over time. We build this effect of time into our analysis by calculating a payback period. This is the time it takes for the benefits of a change to repay its costs. Many companies look for payback over a specified period of time - e.g. three years. In its simple form, cost/benefit analysis is carried out using only financial costs and financial benefits.
Key points:
Cost/Benefit Analysis is a powerful, widely used and relatively easy tool for deciding whether to make a change. To use the tool, firstly work out how much the change will cost to make. Then calculate the benefit you will from it. Where costs or benefits are paid or received over time, work out the time it will take for the benefits to repay the costs. Cost/Benefit Analysis can be carried out using only financial costs and financial benefits. You may, however, decide to include intangible items within the analysis. As you must estimate a value for these, this inevitably brings an element of subjectivity into the process.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Recommendations: This will include System Analyst's recommendations. Each recommendation should be followed by its justification. Time and Cost estimates: This will include a detailed calculation of the Time and Project size estimates, and the methodologies used for estimates. Expected benefits to the company: This section is the most important section. A non-technical manager may only read this section. In this section the System Analyst must be very convincing. This Manager of the company will probably decided the system's fate based on this section. Appendix: Appendix will contain all the supporting documents (e.g. questionnaire, forms etc. ), and definition of all the related terms.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
You can use two different types of notations on your data flow diagrams: Yourdon & Coad or Gane & Sarson.
incoming
data
flow
into
DataStore Datastores are repositories of data in the system. They are sometimes also referred to as files.
Dataflow Dataflows are pipelines through which packets of information flow. Label the arrows with the name of the data that moves through it.
These are composite data items (or objects) that pass either from any element to a process (input dataflow) or from a process to any element (output dataflow)
In a DFD each symbol is labelled with a description in English or another natural language.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
External Entity External entities are objects outside the system, with which the system communicates. External entities are sources and destinations of the system's inputs and outputs. These are also called Terminators.
Naming Conventions:
Data Flows: name of the packet of information Data Stores: name of the data stored there Transformations (Processes) : name of the activity Origins and Destinations (Terminators): name of producers, customers, etc. in the environment
4. Each dataflow diagram should contain no more than six or seven processes and no more than six or seven data stores. If a part of the system is too big or too complicated to describe in an easily grasped diagram, break it down into two or three lower-level diagrams. 5. For every process, one of the following must eventually be true: a. The description label is so simple and unambiguous that every reader will understand it in exactly the same way. b. It is expanded or decomposed into a separate lower-level dataflow diagram that preserves exactly the same net inputs and outputs, but shows internal detail, such as data stores and internal processes. c. It is rigorously described by a separate process specification (business rule, decision rule, function definition, algorithm, etc.).
The 'context' of any situation is the external environment in which it exists. Like a ship on the seas, the captain ignores the elements at his (or her!) peril. Whilst the ship is self-contained, it is intimately connected to its context. In process terms, the context contains other processes that provide inputs and outputs to and from the process in question. A context diadram is also called a Top Level or Highest Level DFD.
A context diagram represents the system as a single process and shows its interaction with external entities.
ORDERS
CUSTOMERS
INVOICES
Course Registration
CONTEXT DIAGRAM
LIBRARY
LIBRARY
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
These diagrams show a group of related sets: Context Diagram: This is the highest level and represents the overall system and its interaction with its environment Level 0 Diagram: This shows the major subsystems and their interactions Level x Diagram: Shows the processes that make up each of the major subsystems Level x.y Diagram: Shows detail of the above diagrams
Each bubble (process) on one level gets "exploded" to show the detail at another level. These pairs are referred to as parent-child pairs. It is important to keep balance between the individual parents and their children. Numbering: Each process in Level 0 gets a number. Each child inherits the number. Bubbles on the child dfd maintain that number, and begin their numbering as a number after the decimal point. These are unique numbers.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
of the data flows e.g. customer address breaks down to street number, street name, city and postcode of the data in stores e.g. in Customer store include name, date of birth, address, credit rating etc. of the relationships between entities
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
yComposition
yDetails
current-height is an example of elementary data. No composition need be shown (an empty comment, **, is used as a placeholder), though an explanation of the relevant units/symbols is needed an order always has an order-id (which is the key field), a customer-name and a shipping-address, and has between 1 and 10 items. orders is a datastore
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Decision tables
These are a precise yet compact way to model complicated logic. Decision tables, like if-then-else and switch-case statements, associate conditions with actions to perform. But, unlike the control structures found in traditional programming languages, decision tables can associate many independent conditions with several actions in an elegant way.
Decision Tables
Used when the process result is based around several different variables and the logic gets too complex for other methods To create:
List all the relevant variables (inputs/conditions) and all the relevant actions on the left of the table Number all the possible combination of variables on the top of the table Generally use binary (True/False) variables Set a rule for each possible result
Structure
Decision tables are typically divided into four quadrants, as shown below.
Each condition corresponds to a variable, relation or predicate whose possible values are listed among the condition alternatives. Each action is a procedure or operation to perform, and the entries specify whether (or in what order) the action is to be performed for the set of condition alternatives the entry corresponds to. The limited-entry decision table is the simplest to describe. The condition alternatives are simple boolean values, and the action entries are check-marks, representing which of the actions in a given column are to be performed.
The condition stub contains a list of all the necessary tests in a decision table. In the lower left-hand corner of the decision table we find the action stub where one may note all the processes desired in a given module. Thus Action Stub contains a list of all the processes involved in a decision table. The upper right corner provides the space for the condition entry - all possible permutations of yes and no responses related to the condition stub. The yes and no possibilities are arranged as a vertical column called rules. Rules are numbered 1,2,3 and so on. We can determine the rules in a decision table by the formula: Number of rules = 2N Thus a decision table with four conditions has 16 (24 = 2 x 2 x 2 x 2 = 16) rules and one with six conditions has 64 rules and eight conditions yield 256 rules. The Condition entry contains a list of all the yes/no permutations in a decision table. The lower right corner holds the action entry. Xs or dots indicate whether an action should occur as a consequence of the yes/no entries under condition entry. Xs indicate action; dots indicate no action. Thus Action entry indicates via dot or X whether something should happen in a decision table.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Printer troubleshooter Conditions Printer does not print A red light is flashing Printer is unrecognized Actions Check the power cable Check the printer-computer cable Ensure printer software is installed Check/replace ink Check for paper jam X X X X X X Y Y Y Y N N N N Y Y N N Y Y N N Y N Y N Y N Y N X X X X X X X
Of course, this is just a simple example (and it does not necessarily correspond to the reality of printer troubleshooting), but even so, it is possible to see how decision tables can scale to several conditions with many possibilities.
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
An Example
A store wishes to program a decision on non-cash receipts for goods into their intelligent tills. The conditions to check are agreed as:
1. Transaction under 50 2. Pays by cheque with cheque card (guarantee 50) 3. Pays by credit card
The possible actions that a cashier could take are agreed as:
1. Ring up sale 2. Check credit card from local database 3. Call a supervisor 4. Automatic check of credit card company database
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
The condition rules are yes or no, therefore the number of possible condition rules are 2 alternatives for condition 1 x 2 alternatives for condition 2 x 2 alternatives for condition 3 or 2 3 = 8
Under 50 Pays by cheque Pays by credit card Ring up sale Check from local database Call Supervisor Check credit card database We can see that some of the condition rules are invalid, the customer cannot pay by cheque AND pay by credit card or not pay by either method. We have decided that these combinations are mutually exclusive. This decision table can be reduced to 4 condition rules. Y Y Y Y Y N Y N Y Y N N N Y Y N Y N N N Y N N N
Decision table reduced to 4 condition rules. Under 50 Pays by cheque Pays by credit card Ring up sale Check from local database Call Supervisor Check credit card database Y Y N Y N Y N Y N N N Y
Y Y N Y
Y Y N N
Y N Y Y
Y N Y N
N Y N Y
N Y N N
N N Y Y
N N Y N
The dash in the Pays by credit row indicates that it does not matter about the condition rule since if a customer pays by cheque they will not pay by credit card and vice versa ( mutually exclusive ).
Under 50 Pays by cheque Pays by credit card Unknown customer Ring up sale Check from local database Call Supervisor Check credit card database X X Y Y Y Y N X X X X X X N Y Y N N Y Y N Y N N Y N N N
Look for redundancies, contradictions and impossible situations. Under 50 Pays by cheque Pays by credit card Unknown customer Ring up sale Check from local database Call Supervisor Check credit card database X X Y Y Y Y N X X X X X X N Y Y N N Y Y N Y N N Y N N N
The red and cyan columns are repeats and one is therefore redundant.
After removing the redundant columns : Under 50 Pays by cheque Pays by credit card Unknown customer Ring up sale Check from local database Call Supervisor Check credit card database X X Y Y Y Y N X X X X N Y Y N N N Y N N N N
Some condition rules can be combined by examining the action stub for identical actions and the pay by credit row in the condition stub can be removed since it can create an impossible situation.
Under 50 Pays by cheque Pays by credit card Unknown customer Ring up sale Check from local database Call Supervisor Check credit card database
Y Y
Y Y N X
N Y
Y N N
N Y N
N N N
X X X X X
Final version of the decision table. Under 50 Pays by cheque Unknown customer Ring up sale Check from local database Call Supervisor Check credit card database Y Y N X X X X
Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
Y N N
N Y -
N N -
Another example :
Problem :
If order is from book store And if order is for 6 copies Then discount is 25% Else (if order is for less then 6 copies) No discount is allowed Else (if order is from libraries) If order is for 50 copies or more Then discount is 15% Else if order is for 20 to 49 copies Then discount is 10% Else if order is for 6 to 19 copies Then discount is 5% Else (order is for less then 6 copies) No discount is allowed Compiled by : S. Agarwal, St. Xaviers College, Kolkata.
el ba T no si ce D i
Decision Tree The decision tree defines the conditions as a sequence of left to right tests. A decision tree helps to show the paths that are possible in a design following an action or decision by the user.
Decision tree turns a decision table into a diagram. This tool is read from left to right, decision results in a fork, and all branches end with an outcome. Figure 6 illustrates the decision tree for the book order decision table we saw earlier.