Information system analysis and design Dr. Dina Tbaishat
Recap Last two lectures we looked at DFDs as a graphical tool to look at what happens in a system Today we shall look at data dictionaries and other tools used to analyse structured decisions ; these are: decision tables, decision trees and structured English)
Data Dictionaries Can be called meta data repository Data dictionary provides a descriptive list of names, definitions, and attributes of data elements to be captured in an information system This indeed helps programmers understand the system Data dictionary is built for certain context, it associates context with elements of the structure Used to develop and maintain a database
Data dictionary benefits: Improved data quality Improved documentation and control Reduced data redundancy Reuse of data Consistency in data use Easier data analysis Improved decision making based on better data Simpler programming
Field name Data type Other information Customer ID Auto-number Primary key Name Text Size: 15 Number Size: 10
Decision Tables Decision tables are used to model complicated programming logic. They can make it easy to see that all possible combinations of conditions have been considered; when conditions are missed, it is easy to see this. In the top left corner the conditions are listed, they can be in the form of a question with a Yes or No answer or simply, given some alternative (ex: Male and Female) In the bottom left part actions are listed The combinations of responses are called rules (the columns)
If there are n conditions, there are 2n rules (columns), ex: 2 conditions 22 =2 x 2 = 4 rules)
Condition one Y N Condition two Action 1 X Action 2 Action 3
Powerful presentation Less errors Decision tables are appropriate when the number of actions is large – they handle complexity better Group related rules into single table and combine tables to achieve decisions However, they have less graphical structure and not very easy to construct (compared to decision trees) No indication is given about the sequence of actions
Decision Trees A diagram that is read from left to right. The leftmost node in a decision tree is called the root node The branches from a decision node to the right represent the set of decision alternatives that are available One, and only one, of these alternatives can be selected The small circles in the tree are called chance nodes
The number shown in parentheses on each branch of a chance node is the probability that the outcome shown on that branch will occur at the chance node The right end of each path through the tree is called an endpoint
Structured English Using English language with the syntax of programming, to represent the logic of the system It can be kept in automated format For beginners, it might take time to build It also seems to be more formal than it is An example is shown next:
Process 1.1 - Validate Customer Enter customer number Seek customer number in Customer file if customer number found then create order record in Order file go to process 1.2 else display error message ask user if he/she wants to create new customer record in Customer file if yes then go to process 1.3 else terminate order entry process endif endif