SlideShare a Scribd company logo
Structured Programming
&
Programming Methodologies
Presented by:
DR Ritu Sachdeva
Assistant Professor, MRIIRS
Structured Programming
Structured programming is a programming
paradigm aimed at improving the clarity, quality,
and development time of a computer program
by making extensive use of the structured
control flow constructs of selection
(if/then/else) and repetition (while and for),
block structures, and subroutines
Flow of Execution
The mechanisms that allow us to control the flow of execution are called control
structures. Flowcharting is a method of documenting (charting) the flow (or
paths) that a program would execute. The main categories of control structures:
• Sequence –Simply do one instruction then the next and the next. Just do them
in a given sequence or in the order listed. Most lines of code are this.
• Selection – This is where you select or choose between two or more flows.
The choice is decided by asking some sort of question. The answer determines
the path (or which lines of code) will be executed.
• Iteration – Also known as repetition, it allows some code (one to many lines)
to be executed (or repeated) several times. The code might not be executed at
all (repeat it zero times), executed a fixed number of times or executed
indefinitely until some condition has been met. Also known as looping because
the flowcharting shows the flow looping back to repeat the task.
• Branching – An uncontrolled structure that allows the flow of execution to
jump to a different part of the program. This category is rarely used in modular
structured programming.
Major concepts in Structured Programming
Structured programming uses three major concepts:
1. Top-down Analysis
2. Modular Programming
3. Structured Coding
Top-down Analysis: Software is always designed to perform some kind of analysis. In the world of
software, this type of analysis is referred to as a problem. As a result, we must comprehend how to
address the issue. The problem is broken down into small pieces with some significance in top-down
analysis. Each problem is solved individually, and the steps to do so are clearly stated.
Modular Programming: While programming, the code is broken down into smaller groups of
instructions. These groups are referred to as modules, subprograms, or subroutines. Modular
programming is based on an understanding of top-down analysis. It discourages program jumps using
'goto statements, which render the program flow untraceable. Jumps are prohibited, and the modular
format is encouraged in structured programming.
Coding Structure: Structured coding, in contrast to top-down analysis, subdivides modules into smaller
units of code in the order of their execution. The control structure is used in structured programming to
control the flow of the program, whereas structured coding uses control structure to organise its
instructions in definable patterns.
Top-down analysis in structured
programming
Top-down programming is a sequence of decomposition
and partitions of functional specifications and sub-
specifications until finally the level of programming
language statements is reached.
Software is always designed to perform some kind of
analysis. In the world of software, this type of analysis is
referred to as a problem. As a result, we must comprehend
how to address the issue. The problem is broken down into
small pieces with some significance in top-down analysis.
Each problem is solved individually, and the steps to do so
are clearly stated.
Modular Programming
While programming, the code is broken down into
smaller groups of instructions. These groups are
referred to as modules, subprograms, or
subroutines. Modular programming is based on an
understanding of top-down analysis. It discourages
program jumps using 'goto statements, which
render the program flow untraceable. Jumps are
prohibited, and the modular format is encouraged
in structured programming.
Coding Structure
Structured coding, in contrast to top-down
analysis, subdivides modules into smaller units
of code in the order of their execution. The
control structure is used in structured
programming to control the flow of the
program, whereas structured coding uses
control structure to organise its instructions in
definable patterns.
Types of structured programming
Structured programming can be divided into
three categories:
• Procedural programming
• Object-oriented programming (OOP)
• Model-based programming
Procedural programming
It is a programming paradigm that is based on the idea that
programs are sequences of instructions that must be
executed. They place a strong emphasis on dividing programs
into named sets of instructions known as procedures, which
are analogous to functions. A procedure can access and
modify global data variables and store local data that is not
accessible from outside the procedure's scope.
Fortran and ALGOL were two of the first procedural
programming languages. The concepts developed in ALGOL
are still very relevant and prevalent in modern programming
languages.
Principles of Procedural programming
• Programs are made up of instruction sequences. There is
only a thin abstraction layer between the code and the
machine.
• Procedures, which are logical blocks made up of groups
of instructions, can be called from anywhere in the code.
• A procedure can take arguments and return results to
the caller. Functions can also access and modify variables
in the global scope.
• Procedural languages use block-based control flow
rather than goto commands and adhere to structured
programming practices.
Object-oriented programming (OOP)
It defines a program as a collection of objects or
resources to which commands are sent. An
object-oriented language will create a data
resource and pass it to processing commands.
For example, a procedural programmer may say
"Print(object)," whereas an OOP programmer
may say "Tell Object to Print."
Model-based programming
Database query languages are the most common example of this.
Units of code in database programming are associated with steps
in database access and are updated or run when those steps occur.
The structure of the code will be determined by the database and
database access structure.
Reverse Polish Notation (RPN), a math-problem structure that
lends itself to efficient solving of complex expressions, is another
example of a model-based structure.
Quantum computing, which is still in its early stages, is another
example of model-based structured programming; the quantum
computer requires a specific model to organise steps, and the
language simply provides it.
Programming Methodology
Programming methodology is the process of
designing, writing, testing, and maintaining
computer programs. It encompasses various
concepts and techniques that programmers use
to develop software applications efficiently and
effectively.
The key concepts of programming
methodology
• Algorithms: An algorithm is a step-by-step procedure for solving a problem or
performing a task. Programmers use algorithms to develop the logic for their programs
and ensure that they run efficiently and correctly.
• Data structures: Data structures are ways of organizing and storing data in a computer.
Programmers use data structures to optimize the storage and retrieval of data within
their programs.
• Object-oriented programming (OOP): OOP is a programming paradigm that focuses on
objects, which are instances of classes that encapsulate data and behavior. OOP allows
programmers to create modular, reusable, and maintainable code.
• Functional programming: Functional programming is a programming paradigm that
emphasizes the use of functions to perform computations. Functional programming can
improve code clarity, maintainability, and reliability.
• Software design patterns: Software design patterns are reusable solutions to common
programming problems. They can help programmers write more efficient and
maintainable code.
• Code testing and debugging: Programmers use testing and debugging techniques to
ensure that their code runs correctly and efficiently. This includes techniques such as
unit testing, integration testing, and system testing.
Why need Programming Methodology ?
• Efficiency: Programming methodology provides a systematic approach to designing and
developing software applications, which can lead to more efficient and effective code. By
following best practices and established techniques, programmers can optimize their code for
performance, scalability, and maintainability.
• Reusability: Programming methodology emphasizes the use of modular and reusable code,
which can save time and resources in the long run. By developing code that can be easily
adapted and reused, programmers can avoid duplicating efforts and create applications more
quickly.
• Quality assurance: Programming methodology includes techniques for testing and debugging
code to ensure that it runs correctly and efficiently. By using these techniques, programmers
can catch errors and bugs early in the development process, leading to higher-quality
software applications.
• Collaboration: Programming methodology provides a common language and set of tools that
programmers can use to collaborate on software projects. By using established practices and
techniques, programmers can communicate more effectively and work together more
efficiently.
• Innovation: Programming methodology provides a framework for innovation and
experimentation. By using established techniques and best practices as a starting point,
programmers can build on existing knowledge and create new solutions to complex problems.
Advantages of Structured Programming
• Application programs are easier to read and
comprehend.
• Application programs are less likely to contain logic
errors.
• Errors are more easily identified.
• It increases productivity during application program
development.
• The design of application programs has been improved.
• Application programs are more easily maintained.
• Machine-Independent, mostly.
Disadvantages of Structured Programming
• It is machine-independent so converting it to machine code
takes time.
• The program is dependent on variables such as data types.
As a result, it must be kept up to date with the changing
needs.
• The converted machine code differs from the assembly
language code.
• This approach is language-dependent, so the development
usually takes longer. In the case of assembly language,
development takes less time because it is pre-programmed
for the machine.
Structured programming & Programming methodologies.pptx
Structured programming & Programming methodologies.pptx

More Related Content

Similar to Structured programming & Programming methodologies.pptx (20)

PPTX
Introduction to problem solving in C
Diwakar Pratap Singh 'Deva'
 
PPTX
APP_Unit 1_updated.pptx
gogulram2
 
PPTX
PCCF UNIT 2.pptx
DivyaKS12
 
PPTX
Ppt about programming in methodology
Vaishnavirakshe2
 
PPTX
PCCF UNIT 2 CLASS.pptx
vishnupriyapm4
 
PDF
Algorithm-Introduction ,Characterestics & Control Structures.pdf
MaryJacob24
 
PPTX
Lecture No.1.pptx
anzazubair91
 
PPTX
module1 new c programming for begginers.pptx
amruthavarshini849703
 
PPT
MPP-UPNVJ
M. Misdianto, MSc.
 
PPTX
Introduction to object oriented language
farhan amjad
 
PDF
Lec 1 25_jul13
Palak Sanghani
 
PPTX
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
SherinRappai1
 
PPTX
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
SherinRappai
 
PPT
Steps for Developing a 'C' program
Sahithi Naraparaju
 
PPT
Coding
Anand Mutyala
 
PPTX
Object Oriented Programming Part 2 of Unit 1
VigneshkumarPonnusam1
 
PPT
LA5_PL Approach
Cma Mohd
 
PPT
LA5_Generation of Programming Languages
Cma Mohd
 
PPTX
APP_All Five Unit PPT_NOTES.pptx
HaniyaMumtaj1
 
Introduction to problem solving in C
Diwakar Pratap Singh 'Deva'
 
APP_Unit 1_updated.pptx
gogulram2
 
PCCF UNIT 2.pptx
DivyaKS12
 
Ppt about programming in methodology
Vaishnavirakshe2
 
PCCF UNIT 2 CLASS.pptx
vishnupriyapm4
 
Algorithm-Introduction ,Characterestics & Control Structures.pdf
MaryJacob24
 
Lecture No.1.pptx
anzazubair91
 
module1 new c programming for begginers.pptx
amruthavarshini849703
 
Introduction to object oriented language
farhan amjad
 
Lec 1 25_jul13
Palak Sanghani
 
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
SherinRappai1
 
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
SherinRappai
 
Steps for Developing a 'C' program
Sahithi Naraparaju
 
Object Oriented Programming Part 2 of Unit 1
VigneshkumarPonnusam1
 
LA5_PL Approach
Cma Mohd
 
LA5_Generation of Programming Languages
Cma Mohd
 
APP_All Five Unit PPT_NOTES.pptx
HaniyaMumtaj1
 

Recently uploaded (20)

PPTX
Arduino Based Gas Leakage Detector Project
CircuitDigest
 
PDF
Design Thinking basics for Engineers.pdf
CMR University
 
PPTX
fatigue in aircraft structures-221113192308-0ad6dc8c.pptx
aviatecofficial
 
DOCX
CS-802 (A) BDH Lab manual IPS Academy Indore
thegodhimself05
 
PPTX
MobileComputingMANET2023 MobileComputingMANET2023.pptx
masterfake98765
 
PDF
Viol_Alessandro_Presentazione_prelaurea.pdf
dsecqyvhbowrzxshhf
 
PDF
Reasons for the succes of MENARD PRESSUREMETER.pdf
majdiamz
 
PDF
smart lot access control system with eye
rasabzahra
 
PDF
AI TECHNIQUES FOR IDENTIFYING ALTERATIONS IN THE HUMAN GUT MICROBIOME IN MULT...
vidyalalltv1
 
PPTX
Heart Bleed Bug - A case study (Course: Cryptography and Network Security)
Adri Jovin
 
PPTX
Solar Thermal Energy System Seminar.pptx
Gpc Purapuza
 
PPTX
Damage of stability of a ship and how its change .pptx
ehamadulhaque
 
PPTX
原版一样(Acadia毕业证书)加拿大阿卡迪亚大学毕业证办理方法
Taqyea
 
PPTX
artificial intelligence applications in Geomatics
NawrasShatnawi1
 
PDF
PORTFOLIO Golam Kibria Khan — architect with a passion for thoughtful design...
MasumKhan59
 
PPTX
DATA BASE MANAGEMENT AND RELATIONAL DATA
gomathisankariv2
 
PDF
Set Relation Function Practice session 24.05.2025.pdf
DrStephenStrange4
 
PPTX
The Role of Information Technology in Environmental Protectio....pptx
nallamillisriram
 
PDF
International Journal of Information Technology Convergence and services (IJI...
ijitcsjournal4
 
PPTX
Lecture 1 Shell and Tube Heat exchanger-1.pptx
mailforillegalwork
 
Arduino Based Gas Leakage Detector Project
CircuitDigest
 
Design Thinking basics for Engineers.pdf
CMR University
 
fatigue in aircraft structures-221113192308-0ad6dc8c.pptx
aviatecofficial
 
CS-802 (A) BDH Lab manual IPS Academy Indore
thegodhimself05
 
MobileComputingMANET2023 MobileComputingMANET2023.pptx
masterfake98765
 
Viol_Alessandro_Presentazione_prelaurea.pdf
dsecqyvhbowrzxshhf
 
Reasons for the succes of MENARD PRESSUREMETER.pdf
majdiamz
 
smart lot access control system with eye
rasabzahra
 
AI TECHNIQUES FOR IDENTIFYING ALTERATIONS IN THE HUMAN GUT MICROBIOME IN MULT...
vidyalalltv1
 
Heart Bleed Bug - A case study (Course: Cryptography and Network Security)
Adri Jovin
 
Solar Thermal Energy System Seminar.pptx
Gpc Purapuza
 
Damage of stability of a ship and how its change .pptx
ehamadulhaque
 
原版一样(Acadia毕业证书)加拿大阿卡迪亚大学毕业证办理方法
Taqyea
 
artificial intelligence applications in Geomatics
NawrasShatnawi1
 
PORTFOLIO Golam Kibria Khan — architect with a passion for thoughtful design...
MasumKhan59
 
DATA BASE MANAGEMENT AND RELATIONAL DATA
gomathisankariv2
 
Set Relation Function Practice session 24.05.2025.pdf
DrStephenStrange4
 
The Role of Information Technology in Environmental Protectio....pptx
nallamillisriram
 
International Journal of Information Technology Convergence and services (IJI...
ijitcsjournal4
 
Lecture 1 Shell and Tube Heat exchanger-1.pptx
mailforillegalwork
 
Ad

Structured programming & Programming methodologies.pptx

  • 1. Structured Programming & Programming Methodologies Presented by: DR Ritu Sachdeva Assistant Professor, MRIIRS
  • 2. Structured Programming Structured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of the structured control flow constructs of selection (if/then/else) and repetition (while and for), block structures, and subroutines
  • 3. Flow of Execution The mechanisms that allow us to control the flow of execution are called control structures. Flowcharting is a method of documenting (charting) the flow (or paths) that a program would execute. The main categories of control structures: • Sequence –Simply do one instruction then the next and the next. Just do them in a given sequence or in the order listed. Most lines of code are this. • Selection – This is where you select or choose between two or more flows. The choice is decided by asking some sort of question. The answer determines the path (or which lines of code) will be executed. • Iteration – Also known as repetition, it allows some code (one to many lines) to be executed (or repeated) several times. The code might not be executed at all (repeat it zero times), executed a fixed number of times or executed indefinitely until some condition has been met. Also known as looping because the flowcharting shows the flow looping back to repeat the task. • Branching – An uncontrolled structure that allows the flow of execution to jump to a different part of the program. This category is rarely used in modular structured programming.
  • 4. Major concepts in Structured Programming Structured programming uses three major concepts: 1. Top-down Analysis 2. Modular Programming 3. Structured Coding Top-down Analysis: Software is always designed to perform some kind of analysis. In the world of software, this type of analysis is referred to as a problem. As a result, we must comprehend how to address the issue. The problem is broken down into small pieces with some significance in top-down analysis. Each problem is solved individually, and the steps to do so are clearly stated. Modular Programming: While programming, the code is broken down into smaller groups of instructions. These groups are referred to as modules, subprograms, or subroutines. Modular programming is based on an understanding of top-down analysis. It discourages program jumps using 'goto statements, which render the program flow untraceable. Jumps are prohibited, and the modular format is encouraged in structured programming. Coding Structure: Structured coding, in contrast to top-down analysis, subdivides modules into smaller units of code in the order of their execution. The control structure is used in structured programming to control the flow of the program, whereas structured coding uses control structure to organise its instructions in definable patterns.
  • 5. Top-down analysis in structured programming Top-down programming is a sequence of decomposition and partitions of functional specifications and sub- specifications until finally the level of programming language statements is reached. Software is always designed to perform some kind of analysis. In the world of software, this type of analysis is referred to as a problem. As a result, we must comprehend how to address the issue. The problem is broken down into small pieces with some significance in top-down analysis. Each problem is solved individually, and the steps to do so are clearly stated.
  • 6. Modular Programming While programming, the code is broken down into smaller groups of instructions. These groups are referred to as modules, subprograms, or subroutines. Modular programming is based on an understanding of top-down analysis. It discourages program jumps using 'goto statements, which render the program flow untraceable. Jumps are prohibited, and the modular format is encouraged in structured programming.
  • 7. Coding Structure Structured coding, in contrast to top-down analysis, subdivides modules into smaller units of code in the order of their execution. The control structure is used in structured programming to control the flow of the program, whereas structured coding uses control structure to organise its instructions in definable patterns.
  • 8. Types of structured programming Structured programming can be divided into three categories: • Procedural programming • Object-oriented programming (OOP) • Model-based programming
  • 9. Procedural programming It is a programming paradigm that is based on the idea that programs are sequences of instructions that must be executed. They place a strong emphasis on dividing programs into named sets of instructions known as procedures, which are analogous to functions. A procedure can access and modify global data variables and store local data that is not accessible from outside the procedure's scope. Fortran and ALGOL were two of the first procedural programming languages. The concepts developed in ALGOL are still very relevant and prevalent in modern programming languages.
  • 10. Principles of Procedural programming • Programs are made up of instruction sequences. There is only a thin abstraction layer between the code and the machine. • Procedures, which are logical blocks made up of groups of instructions, can be called from anywhere in the code. • A procedure can take arguments and return results to the caller. Functions can also access and modify variables in the global scope. • Procedural languages use block-based control flow rather than goto commands and adhere to structured programming practices.
  • 11. Object-oriented programming (OOP) It defines a program as a collection of objects or resources to which commands are sent. An object-oriented language will create a data resource and pass it to processing commands. For example, a procedural programmer may say "Print(object)," whereas an OOP programmer may say "Tell Object to Print."
  • 12. Model-based programming Database query languages are the most common example of this. Units of code in database programming are associated with steps in database access and are updated or run when those steps occur. The structure of the code will be determined by the database and database access structure. Reverse Polish Notation (RPN), a math-problem structure that lends itself to efficient solving of complex expressions, is another example of a model-based structure. Quantum computing, which is still in its early stages, is another example of model-based structured programming; the quantum computer requires a specific model to organise steps, and the language simply provides it.
  • 13. Programming Methodology Programming methodology is the process of designing, writing, testing, and maintaining computer programs. It encompasses various concepts and techniques that programmers use to develop software applications efficiently and effectively.
  • 14. The key concepts of programming methodology • Algorithms: An algorithm is a step-by-step procedure for solving a problem or performing a task. Programmers use algorithms to develop the logic for their programs and ensure that they run efficiently and correctly. • Data structures: Data structures are ways of organizing and storing data in a computer. Programmers use data structures to optimize the storage and retrieval of data within their programs. • Object-oriented programming (OOP): OOP is a programming paradigm that focuses on objects, which are instances of classes that encapsulate data and behavior. OOP allows programmers to create modular, reusable, and maintainable code. • Functional programming: Functional programming is a programming paradigm that emphasizes the use of functions to perform computations. Functional programming can improve code clarity, maintainability, and reliability. • Software design patterns: Software design patterns are reusable solutions to common programming problems. They can help programmers write more efficient and maintainable code. • Code testing and debugging: Programmers use testing and debugging techniques to ensure that their code runs correctly and efficiently. This includes techniques such as unit testing, integration testing, and system testing.
  • 15. Why need Programming Methodology ? • Efficiency: Programming methodology provides a systematic approach to designing and developing software applications, which can lead to more efficient and effective code. By following best practices and established techniques, programmers can optimize their code for performance, scalability, and maintainability. • Reusability: Programming methodology emphasizes the use of modular and reusable code, which can save time and resources in the long run. By developing code that can be easily adapted and reused, programmers can avoid duplicating efforts and create applications more quickly. • Quality assurance: Programming methodology includes techniques for testing and debugging code to ensure that it runs correctly and efficiently. By using these techniques, programmers can catch errors and bugs early in the development process, leading to higher-quality software applications. • Collaboration: Programming methodology provides a common language and set of tools that programmers can use to collaborate on software projects. By using established practices and techniques, programmers can communicate more effectively and work together more efficiently. • Innovation: Programming methodology provides a framework for innovation and experimentation. By using established techniques and best practices as a starting point, programmers can build on existing knowledge and create new solutions to complex problems.
  • 16. Advantages of Structured Programming • Application programs are easier to read and comprehend. • Application programs are less likely to contain logic errors. • Errors are more easily identified. • It increases productivity during application program development. • The design of application programs has been improved. • Application programs are more easily maintained. • Machine-Independent, mostly.
  • 17. Disadvantages of Structured Programming • It is machine-independent so converting it to machine code takes time. • The program is dependent on variables such as data types. As a result, it must be kept up to date with the changing needs. • The converted machine code differs from the assembly language code. • This approach is language-dependent, so the development usually takes longer. In the case of assembly language, development takes less time because it is pre-programmed for the machine.