0% found this document useful (0 votes)
57 views

Lec 9

The document summarizes the key phases of the program development life cycle (PDLC) including problem analysis, program design, program coding, program debugging and testing, and program implementation and maintenance. It also discusses different programming languages and paradigms. The PDLC involves analyzing problems, designing program specifications and structure, coding the program, debugging and testing it, and maintaining the working program. Different programming languages range from low-level machine-dependent languages to high-level machine-independent languages.

Uploaded by

harram habib
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views

Lec 9

The document summarizes the key phases of the program development life cycle (PDLC) including problem analysis, program design, program coding, program debugging and testing, and program implementation and maintenance. It also discusses different programming languages and paradigms. The PDLC involves analyzing problems, designing program specifications and structure, coding the program, debugging and testing it, and maintaining the working program. Different programming languages range from low-level machine-dependent languages to high-level machine-independent languages.

Uploaded by

harram habib
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 19

CSC101

Introduction to
ICT
Muhammad Sharjeel
muhammadsharjeel@cuilahor
e.edu.pk

1
Lecture - 9

Program Development and


Programming Languages

2
Program Development Life Cycle
凝 The overall process of creating computer programs is called program development.

凝 Program development life cycle (PDLC) contains five phases of program development
凝 Problem analysis
凝 Program design
凝 Program coding
凝 Program debugging and testing
凝 Program implementation and maintenance

Read more: https://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/


Program_Development
3
Program Development Life
Cycle
Problem
analysis Program specifications

Amended program package

Program
implementation Program design
And maintenance

Design specifications
Completed program package
de
co
u rce
so
d
e nte
Program m
cu
debugging and Do Program coding
testing

4
Problem Analysis (PDLC)
凝 The problem is considered, and the program specifications are developed
凝 specifications developed during this phase are reviewed by the systems analyst and the
programmer (the person who will code the program)

凝 Goal: To understand the functions the software must perform

凝 Documentation: Includes program specifications (what it does, timetable, programming


language to be used, etc.)

5
Program Design (PDLC)
凝 The program specifications are expanded into a complete design of the new program
凝 good program design is extremely important
凝 Program design tools
凝 Structure charts: depict the overall organization of a program
凝 Pseudocode: uses natural language statements to outline the logic of a program
凝 Algorithm: a clear specification of how to solve a problem
凝 Flowcharts: graphically show how a computer program will process data
凝 Unified Modeling Language (UML) models: a set of standard notations for creating business
models. Widely used in object-oriented programs, including class diagrams, use case diagrams, etc.

凝 Structure theorem: A pattern for controlling the flow of logic in a computer program, module, or
method
凝 Sequence: series of statements that follow one another
凝 Selection: multiple paths, direction depends on the result of the test
凝 Repetition: repeat series of steps 6
Program Design (PDLC)
凝 Good program design is essential as it saves a lot of time

凝 Good program design principles;


凝 be specific
凝 all things the program must-do needs to be specified
凝 one-entry-point/one-exit-point rule
凝 no infinite loops or other logic errors
凝 design should be tested to ensure logic is correct
凝 desk check, tracing tables

凝 Documentation: Includes design specifications

7
Program Coding (PDLC)
凝 The program code (source code or the set of instructions) is written using a
programming language

凝 When choosing a programming language, consider;


凝 suitability to the application
凝 integration with other programs
凝 standards for the company
凝 programmer availability
凝 portability if being run on multiple platforms
凝 development speed

8
Program Coding (PDLC)
凝 Coding standards are rules designed to standardize programming
凝 makes programs more readable and easier to maintain
凝 includes the proper use of comments to:
凝 identify the programmer and last modification date
凝 explain variables used in the program
凝 identify the main parts of the program

凝 Pretested error-free code segments can be re-used repeatedly with minor


modifications
凝 can greatly reduce development time

凝 Documentation: Includes documented source code

9
Program Debugging and Testing (PDLC)
凝 The process of ensuring a program is free of errors (bugs) and works as it is
supposed to
凝 Before they can be debugged, coded programs need to be translated into
executable code

凝 Source code: coded program before it is compiled


凝 Object code: machine language version of a program

凝 Language translator: Program that converts source code to machine language


凝 Types of language translators;
凝 Compilers: converts an entire program into machine language before
executing it
凝 Interpreters: translates one line of code at one time

1
0
Program Debugging and Testing (PDLC)
凝 Debugging: Finds initial errors
凝 Compiler errors: program doesn’t run
凝 typically syntax errors that occurs when the programmer has not followed the rules of the
programming language
凝 Run time error: error that occurs when the program is running
凝 Logic errors: program will run but produces incorrect results

凝 Dummy print statements can help locate logic errors and other run-time errors

1
1
Program Debugging and Testing (PDLC)
凝 Testing: Occurs after the program appears to be correct to find any additional errors
凝 should use good test data
凝 tests conditions that will occur when the program is implemented
凝 should check for coding omissions (product quantity allowed to be < 0, etc.)
凝 Alpha test (inside the organization)
-Alpha testing is performed at the developer's site.
凝 Beta test (outside testers)
-Beta testing is performed at end user of the product.

凝 Documentation: Completed program package (user’s manual, description of software


commands, troubleshooting guide to help with difficulties, etc.)

12
Program Implementation and Maintenance
(PDLC)
凝 Program implementation: Once the system containing the program is installed (up and
running), the implementation process is complete
凝 Program maintenance: Process of updating the software so it continues to be useful
凝 Documentation: Amended program package
凝 it is normally very costly

1
3
Programming Languages
凝 Programming language is a computer language that consists of instructions designed for the
computers
凝 Processors only understand machine code (0’s and 1’s), which is difficult to understand
凝 Thus various programming languages are being used which are more understandable than the
machine code and provides greater portability

凝 Categories of programming languages


凝 Low-level languages: Difficult to code, machine-dependent
凝 example, Assembly language
凝 High-level languages: Closer to natural languages, machine-independent
凝 example, C, Visual Basic, C#, Python, Java

1
4
Programming Languages
凝 Based on the programming paradigm, one can broadly classify programming languages into
three categories
凝 Structured programming
凝 Procedural programming
凝 Object-oriented programming

凝 Key Difference between the three programming paradigms


凝 Structured programming emphasizes separating a program’s data from its functionality
凝 Procedural programming consists of a set of procedure calls and a set of code for each
procedure
凝 Object-oriented programming is based on entities known as objects

Ream more: http://www.dif erencebetween.info/dif erence-between-procedural-structural-and-object-oriented-


programming-languages
15
Common Programming Languages
凝 FORTRAN
凝 High-level programming language used for mathematical, scientific, and engineering applications
凝 Used for high-performance computing tasks
凝 COBOL
凝 Designed for business transaction processing, mostly used in financial institutions
凝 Makes extensive use of modules and submodules, newer version is COBOL.NET

凝 Pascal
Created as a teaching tool to encourage structured programming
Contains a variety of control structures used to manipulate modules
systematicaly

凝 BASIC
凝 Easy-to-learn, high-level programming language that was developed to be used by beginning programmers
凝 The more recent object-oriented version of BASIC, cal ed Visual Basic or VB, uses a visual environment

16
凝 C
凝 A structured programming language designed for system programming
凝 It can be used to develop software like operating systems, databases, compilers, etc.
凝 C++
凝 A cross-platform and object-oriented versions of C language
凝 A powerful general-purpose programming language which is used to develop operating systems,
games, etc.
凝 C#

凝 A general-purpose, multi-paradigm programming language

凝 Developed by Microsoft and mostly used to create Web applications


凝 JavaScript
凝 JavaScript or JS, is a high-level, interpreted programming language
凝 dynamic, weakly typed, prototype-based and supports multi-paradigm
凝 Used to make dynamic web pages interactive and provide online programs,
including video games

1
7

PHP
凝 PHP or Hypertext Preprocessor is a server-side Web scripting language, used for making
dynamic Web pages
凝 Widely-used, efficient, general-purpose and open source programming language
凝 Java
• High-level, object-oriented programming language frequently used for Web-based applications.
 Compiles programs into bytecode that can run on any computer having Java Virtual Machine (JVM).
 Used to write Java applets, scroll text on Web page, games, calculators, etc.

凝 Python
凝 High-level programming language for general-purpose programming
凝 features a dynamic type system and automatic memory management
凝 Supports multiple programming paradigms, including object-oriented, imperative, functional, and
procedural
凝 Has a large and comprehensive standard library

1
8
THANK
YOU
1
9

You might also like