Header Ads Widget

728-90

Decision Trees, Structure Analysis and Decision Tables

 

Decision Trees, Structure Analysis and Decision Tables

Decision Trees

Decision trees is a supervised learning approach that is most often employed to solve classification difficulties. With internal nodes representing data sets characteristics, branches representing decision rules, and each leaf node representing the result, and basically it is a tree structured. It can be applied for both regression and classification problems.

For example:-

Consider a GYM membership automation software (GMS) where it should support the following three options:

·         New member

·         Renewal

·         Cancel Membership

New member option:-

Decision: When the new member option is selected then the software asks the details such as name, address, phone number etc. of the member.

Action: If proper information is entered then software create a membership record of the member and a bill is printed for the monthly membership.

Renewal Option:-

Decision: If renewal option is chosen then the GMS software asks the membership number to check whether the he is valid member or not.

Action: If the membership is valid the membership expiry date is updated and the annual membership bill is printed, otherwise an error message is displayed.

Cancel Membership option:-

Decision: If the cancel membership option is selected the the software asks for membership number.

Action: The membership is cancelled and the membership record is deleted from the database.

Decision Table

To represent the complex processing logic in tabular form a decision table shall be used. The variables or conditions to be evaluated shall be specified in the upper rows of the table. Actions to be taken if the corresponding conditions are met are set out in the lower rows of the table. A column in a table is called a rule. A rule implies that if a condition is true then the corresponding action is to be executed.

Example:-

Considering the above given example of GMS. The following decision table shows how to represent the GMS problem in a tabular form. The table is divided into two parts, the upper part shows the condition and the lower part shows what actions are taken. And each column of the table is called a rule.

From the above table one can easily understand that if the valid selection condition is false then the action taken for this condition displays error message. Similarly other conditions can be also inferred from the table.

Structured Analysis

Structured Analysis is a diagrammatic representation of the system , which makes system easier to understand. The main aim of structured analysis is to improve quality and to decrease the risk of system failures. It establishes a concrete management specifications and documentation. The focus is on the stability, reliability and sustainability of a system. The method is based on structured programming which emphasizes the importance of breaking down a software system into smaller and simpler components.

Basically in SA/SD , the software development process is divided into two steps i.e. structured analysis and structured design. During Structured analysis phase, the problem is analyzed and requirements are gathered for problem solving. And during Structured Design phase the system is designed to meet the requirements which was gathered during structured analysis phase.

Structure Analysis/Structured Design is a set of methods for designing and building software systems in a systematic and organized manner. 

Here are some common concepts used in SA/SD:

Functional decomposition: functional decomposition is used to break down a complex system into smaller subsystems, which are easy to manage. In this technique a main function is identified and this main function is then break down into smaller function which can be implemented independently.

Data flow diagram: DFDs are basically graphical representation of the system which is used to represent the flow of the data in a system.

Data dictionary: A data dictionary contains descriptions of all the elements which is used in the system, which makes it easier to understanding the working of the system.

Modular programming: Modular programming technique is used to breaking the systems code into smaller modules which makes it easier to develop, test and maintain the system.

Structured design: To develop systems architecture and components structured design technique is used.

The main steps involved in the SA/SD process are:

Requirement gathering: The SA/SD process begins with gathering stakeholders feedback from users, clients, and business partners.

Structured Analysis: In structured analysis stage, the requirements are examined to determine the main parts of the system, relationships between those parts, and the flow of data within the system.

Data modelling: During this stage, a model is created that represents the information used in the system, as well as the relationships between the data elements.

Process Modelling: At this stage, the flowcharts or data flow diagrams are used to model the processes in the system.

Input/Output Design: This stage includes the development of the system’s input and outputs, including user interfaces and reports.

Structured Design: In the Structured Design stage, the system is developed to meet the needs identified during the Structured Analysis stage. This may include the selection of suitable hardware and software environments, database design, and data structure definition.

Implementation and Testing: Once the design is done, the system is put into practice and tested.

But nowadays, SA/SD is replaced by modern software methodologies, but its principle of structured analysis and design continue to influence current software development practices.

In a nutshell, the SA/SD approach is based on the data flow diagram. SA/SD is simple to understand, but it concentrated on well-defined system boundaries. Whereas, JSD approach is overly complicated and has no graphical representation.

SA/SD involves 2 phases:

i.                    Analysis phase: In this Data flow Diagram, Data Dictionary, State Transition Diagram and     ER Diagram.

ii.                  Design Phase: It uses Structure Chart and Pseudo Code.

Advantages of Structured Analysis:

  • This methodology emphasis on breaking down the complex system into smaller subsystems, which makes system easy to understand and more manageable.
  • The SA/Sd methodology offers a common language ad structure for communicating a system’s design, which can enhance stakeholder communication and ensure that the system satisfies stakeholders’ needs and expectations.
  • With the SA/SD method, a system is structured in a way that makes it easier makes it easier to keep track of and update over time.
  • SA/SD defines the outputs and inputs of the system, making it easier to validate the system and make sure it meets your needs.

Disadvantage of Structured Analysis:

  • Because of large amount of data and analysis required, this process is quite time consuming.
  • It is difficult to make changes once the system is designed because this process is highly structured and documentation-intensive.

     Decision Tree Quiz  Click here


Post a Comment

0 Comments