Here is a term paper on ‘System Tools’ especially written for college and IT students.
Term Paper on System Tools
Term Paper Contents:
- Term Paper on Decision Table
- Term Paper on Decision Tree
- Term Paper on Pseudo-Code
- Term Paper on Meta-Code
- Term Paper on Data Flow Diagram
- Term Paper on Structured English
- Term Paper on Data Structure Diagram
- Term Paper on Structure Chart
- Term Paper on System Chart
- Term Paper on Data Dictionary
- Term Paper on Case Tools
- Term Paper on Prototyping
- Term Paper on CASE Paradigm
ADVERTISEMENTS:
Term Paper on System Tool # 1. Decision Table:
A Decision Table is a system tool for specifying the details of a policy to be pursued, that is, it clarifies in a tabular form the rules (or conditions) on the basis of which certain selective actions are taken — the logic of the decisions are clearly shown, and so, it is a tool for displaying decision making conditions.
A decision tool has three parts called:
To prepare a decision table:
ADVERTISEMENTS:
1. Define the conditions and each of their respective possible values.
2. Compute the total number of rules, which is a product of the possible values of all the conditions.
3. Identify the proposed actions to be taken under each rule.
ADVERTISEMENTS:
4. Prepare the table, mark the appropriate action as “X” under each rule. If a rule represents an impossible case, mark with “?”.
5. With the Decision Table ready, try to simplify it by eliminating the impossible cases and then combining the cases where the impact of a condition is indifferent, which is marked with “-“.
Let us take a hypothetical case to understand the different points. Let us say that the credit policy of a company contains three conditions, each having two values of Yes or No. Then the total number of rules = 2 × 2 × 2 = 8.
The three conditions are:
ADVERTISEMENTS:
1. Customer Classification [CC] — Regular [R]/Irregular [IR]
2. Payment Pattern [PP] — Regular [R]/Irregular [IR]
3. Reputation [RN] — Good [G]/Bad [B]
The actions to be taken based on the fulfilment of the above three conditions are granting: Full Credit, 50% Credit, 20% Credit, and No Credit. While writing the values of the conditions, write alternately Yes or No for condition 1 (as only two values are there), write each value of condition 2 for all values of the condition 1, and so on.
ADVERTISEMENTS:
The tabulated results are:
The policy of the management is to give full credit to a customer if he is a regular one, makes regular payment, and has a good reputation, in other words, under Column 1 we have Yes for all the three conditions. Accordingly, under the action stub, we have written “X” to allow full credit.
Similarly for Column 2, if a customer is not a regular customer (N), but whenever he has bought anything he has paid on time (Y), and he has a good reputation (Y), then up to 50% credit is allowed. The management’s policy in giving credit on fulfilment or non-fulfilment of the three conditions are reflected with “X” in the action stub area.
As you can see from the Decision Table, Rules 4 and 8 are indifferent for condition 3, whether it is Y or N, that is, the customer has good reputation or not does not matter, so these can be combined and a “-” written in place of Y in condition 3 for Rule 4; Rule S being eliminated. For Rule 7, we feel it is an impossible situation, so it is eliminated. Now we are left with only 6 rules, as shown below in the redrawn Decision Table.
After preparing a Decision Table it becomes easier to incorporate the conditions in the program, with IF – THEN structure, so that the computer is in a position to say whether credit is to be give and if yes, how much. In fact, we can further revise by eliminating Rules 4 and 6, which are concerned with “no credit” situations.
Term Paper on System Tool # 2. Decision Tree:
It is a graphical representation of the decision table’s conditions and actions in a hierarchical tree form — each branch providing for one condition, as detailed below:
Term Paper on System Tool # 3. Pseudo-Code:
Since our objective is to get the job done by a computer, whose processing abilities are somewhat restricted compared to us, at the stage of analyst-programmer interface, we have to detail the steps in a manner as the computer will actually do it, but still expressing the instructions in our own natural language.
When this part will be completed, all that would remain to be done to bring the program into existence, would be to use the codes of any high level language to translate the instructions into computer process-able codes — which the compiler or interpreter will translate into machine readable codes.
Such type of codes, which represents the actual processing codes of a computer in a natural language is called pseudo-code; giving the outline of the program. Let us say that we want a program to compute the area of a circle.
After the first two steps of program development, under pre-program sequencing we may write:
For a radius R, the area of a circle is Pai R2 and by using different values of R, we will get different areas and we also know Pai = 3.14 [approximately].
In terms of pseudo-code, we would write:
1. Get the value of the radius R from the user
2. Define a constant Pai = 3.14
3. Compute the Area, A = Pai × R × R
4. Display the value of A.
These four steps provide the detail of different instructions to be given to a computer, which will ultimately be converted into machine understandable form, after being coded using the syntax of a high level language.
This pseudo-code when transformed in to a program using BASIC, it would be like:
To translate the pseudo-codes to program codes one has to have a good grasp of reserved words, commands, functions, and other constructional rules defined in the respective high-level languages. These have to be used exactly as per the details given in the manual, as these are also specific codes given in an easier-to- remember representation of the binary codes of 0s and 1s, which the translator has been told how to translate to what.
Term Paper on System Tool # 4. Meta-Code:
Sometimes, pseudo-codes are also referred to as meta-codes. However, there is a subtle difference between the two. The meta-codes are usually pseudo-codes prepared using standard programming-logic syntax like, if-then-else, begin-end, etc., and are extensively used in representing algorithms — so that by referring to a meta-code, a programmer can, without any ambiguity, convert the algorithm to appropriate program code.
We can say that meta-codes are an abbreviated form of expression where both natural language and some programming language control statements are used to give the sequence of execution for a solution in programming.
In spite of its advantages, in large programming problems, it becomes a highly time consuming job to prepare pseudo-codes resulting in confusion. Moreover, in some cases the exact pseudo-code for a specific programming code may not be possible to write.
Term Paper on System Tool # 5. Data Flow Diagram [DFD]:
By using visual symbols, a Data Flow Diagram shows the detailed stage by stage movement (or flow) of data from the input to the output stage — passing through different processing operations. Two different sets of symbols are available, one ‘developed by Gane-Sarson and the other by DeMacro-Yourdon.
Under the symbols of Gane-Sarson, a process is described by a rounded rectangle, with number and name of the process inside it. In the DeMacro-Yourdon model, a circle, also called Bubble or Transform is used. In any processing information, an input is transformed to an output and this is shown in the Data Flow Diagram, but not the details of how the processing as carried out.
The input/output boundary of the system is shown by a square in Gane-Sarson and a rectangle in DeMacro-Yourdon system. The storage place of data are shown as open boxes of the following types. It includes both physical storage places like filing cabinet as well as computer files and data bases.
The flow of the data is shown by an arrow which contain the name of the data being moved. In DeMacro-Yourdon set, sometimes curved arrows are used.
The basic difference between a Data Flow Diagram and a Flow Chart is that in Data Flow Diagram, one or more processes can be shown to be operating in parallel, where as in a Flow Chart [PFC], only one process can be shown to execute at a time, as that is how the computer executes different programs. Data Flow Diagram shows flow of data through the system and these movements must show the contents of the data.
In case of multiple-document movement, it should be shown as a single data with single arrow representing its flow. All data movements must begin and end at a process. Actually, in Data Flow Diagram the emphasis is on processing operation, which are also called activities, although it is called a Data Flow Diagram.
Term Paper on System Tool # 6. Structured English:
As the very name suggests, in this system development tool, natural English language is used in a structured form — the concept being borrowed from the principles of structured programming. Its construction is quite similar to that of pseudo-code, except that, in pseudocode the emphasis is on logical program coding and it uses some of the programming syntax like IF-THEN-ELSE, which is not allowed in Structured English — it is a tool for describing procedures of a system in pure, simple English language in structured form.
In Webster’s English Dictionary, a structure is defined as — something made up of interdependent parts in definite pattern of organisation. So, whenever the word “structure” is used, it denotes existence of some predefined definite pattern of doing, writing, analyzing, etc.
The basic use of Structured English is to clarify the procedures for user’s understanding, so it has to be simple and no computer jargon can be used.
An example could be:
For each Personnel _No in the Employee File
Multiply the following fields
Basic-Pay of the employee
Days_Worked in the month
Place the product in the Gross_Pay field
Subtract the Tax_Payable field from above
Report the Net_Amount thus computed
Until there are no more Personnel_No in the file.
Term Paper on System Tool # 7. Data Structure Diagram:
The data items which take up different values and are typically the components of input, output, and data storage by themselves as such have no values. But when these are logically combined to form a data structure, they acquire significance. Hence, a data structure is a combination of data items, which have definite relationship among them and definite processing operations can be performed on these in a specific manner.
The three general data structure, which are followed and expressed in English or algebraic forms, constitute the data structure diagram.
These structures are:
1. One or more data items or groups of them occurring in sequence one after the another.
2. One or more data items which are selected from a set.
3. One or more data items which are repeated one after another.
For example, we can have the following for sequence and selection type:
Term Paper on System Tool # 8. Structure Chart:
Using a hierarchical tree-diagram, a Structure Chart shows the flow of data and the flow of control between different processing modules. To prepare a Structure Chart, the system is decomposed into functional modules or sub-systems. A rectangle is used to represent a sub-system process.
An arrow with a small circle at the trailing end shows data flow, where as an arrow with a darkened circle shows the flow of control. A process called Transaction Analysis is used to identify the transaction centres from a Data Flow Diagram and a process called Transfer Analysis is used to divide different processes to input, processing, output [I-P-O] categories. IBM’s Hierarchy Plus Input Output Process [HIPO] is an example of a Structure Chart.
Hierarchy: Input — Process — Output (HIPO):
It is a tabular form supplemented by graphical representation of the basic Input — Processing — Output operations given in a hierarchical form.
It is depicted by three charts called Visual Table of Contents [VTOC], Overview Chart, and Detailed Diagram, as shown below:
Visual Table of Contents:
Term Paper on System Tool # 9. System Chart:
The System Chart is a variety of Program Flow Chart, where the emphasis is on the processes carried out by different components or sub-systems and not the programming sequence followed, as is done in Program Flow Chart. The symbols used are identical and have been defined by the American National Standard Institute [ANSI].
System Charts graphically represent the different methods and procedures followed in a system, without going into the details, where as, a Program Flow Chart shows the step by step execution of processes, as is done in algorithms.
Term Paper on System Tool # 10. Data Dictionary:
A dictionary, as you all know, is a reference book containing words with information about their forms, pronunciation, meaning, etc. A Data Dictionary is similar to an ordinary language dictionary, except that it contains the details about data items instead of words. A data dictionary describes the data items, their structure, the files and data bases and the processes involved in a system under study. It is a non-graphical tool.
In any system, large volume of data items are used and an enormous amount of detail about these are available. A data dictionary is used to store these details in a systematic manner, keeping track of which data item is used where, how it is stored where — whether on a file, a program, a document, a data base, etc.
The basic objective is to avoid duplication and provide a ready reference book to all concerned. For example, the PIN code can be stored by different analysts/ programmers as PIN, PINCODE, PIN_CODE, and so on each dealing with the same data item. A data dictionary helps to eliminate such things totally. Such a dictionary, when used in a system development project, is sometimes called a Project Dictionary.
The contents of a project dictionary are generally:
The contents of a data dictionary is often stored in a data file for ready reference. In any organizational data base it is essential to develop a data dictionary to avoid data redundancy and confusion in storing useful data for generating the desired information.
Term Paper on System Tool # 11. Case Tools:
The Computer Aided Software Engineering (CASE) tool is a computer operated software which assists in applying automatic, structured technique based system analysis and design. It greatly helps in improving the productivity of the system analyst, which is generally quite low. CASE also provides excellent documentation service. The CASE tool activities are centered around the Project or Data Dictionary that keeps all the details as discussed earlier.
Generally CASE tools provide:
1. A number of graphic facilities for use of structured techniques like Data Flow Diagrams [DFD], Structure Chart, Flow Chart, etc.
2. Tools to maintain and develop details of a system
3. Tools for describing prototypes which enable building up of input screen, output formats, etc.
4. Tools for generating program codes.
5. Tools for cost-benefit analysis
6. The tools for project management like PERT [Programme Evaluation and Review Technique], Gnatt Chart, etc.
7. Detailed documentation of all aspects of system development.
Term Paper on System Tool # 12. Prototyping:
The classical techniques which we have discussed so far uses pen and paper in system analysis and design. But the modern technique is to use computers to carry out the process of system development, which relies on what is called prototyping. A prototype is an working model which is used for experimentation to understand, define, and refine the different aspects of a system or a thing whose model is prepared.
In System Analysis, prototypes are built and manipulated by using 4GLs [4th Generation Languages] and or Application Generators [AG]. It naturally contributes to higher productivity in system development. There are two types of prototyping called Rapid Prototyping-and System Prototyping — in the former, different components of a system like input, output, etc., are defined and refined, while the latter is concerned with the system as a whole.
The advantages of prototyping are many being:
The disadvantages are that, so far, the final system developed by prototyping has to be converted by using program codes of third generation languages [3GLs]. It is not yet possible to incorporate effective internal control systems. Generally its operation becomes slower when the volume of data increases.
Term Paper on System Tool # 13. CASE Paradigm:
CASE, which stands for Computer Aided Software Engineering is generically viewed as three broad areas, which are:
The steps are:
1. Classical Life Cycle.
2. Prototyping.
3. The Spiral Model.
This is a model which incorporates the best features of the System Development Life Cycle given by Classical Life Cycle and that of Prototyping. It also adds a new dimension called Risk Analysis.
The steps involved are:
1. Planning, that is, determining the objectives, alternate solutions and identification of the constraints.
2. Risk Analysis, that is, analyzing the alternatives considered in terms of risks involved in achieving them and how to overcome these.
3. Engineering, that is, development of the final system, called next-level product.
4. Customer Evaluation, that is, assessment of the final system in terms of customer satisfaction.
The four activities are divided into four quadrants and starting with the base level in the Planning Quadrant, one moves to the next quadrant, then the third quadrant, the, fourth quadrant and ultimately again to the Planning Quadrant — but each movement of activities move to higher levels, forming a spiral, as shown below.