0% found this document useful (0 votes)
19 views29 pages

SDLC PLs

This document provides an overview of programming languages and the software development life cycle. It discusses the different types of software, stages of the SDLC including preliminary analysis, analysis, design, programming, testing/implementation, and maintenance. It also covers the different generations of programming languages from machine code to modern languages, and different programming paradigms like structured, procedural, logical, object-oriented, and functional. The purpose of having multiple programming languages is that they suit different needs based on factors like runtime, efficiency, portability, and the application.

Uploaded by

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

SDLC PLs

This document provides an overview of programming languages and the software development life cycle. It discusses the different types of software, stages of the SDLC including preliminary analysis, analysis, design, programming, testing/implementation, and maintenance. It also covers the different generations of programming languages from machine code to modern languages, and different programming paradigms like structured, procedural, logical, object-oriented, and functional. The purpose of having multiple programming languages is that they suit different needs based on factors like runtime, efficiency, portability, and the application.

Uploaded by

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

Programming I

Corozal Junior College


Course code: CS102
Topic: Software Cycle and
Classification of Programming
Languages
Instructor: Mrs. Nydia Young
Software
● Is a set of instructions that controls a computer
and performs specific tasks.
● There are 3 major types of software:
– system software-OS,drivers and utilities
– application software-office suites, productivity
tools,custom-written software etc.
– programming software-programming
language,compilers,interpretors etc
SDLC
● Software Development Life Cycle
● The software development life cycle (SDLC) is
a framework defining tasks performed at each
step in the software development process.
Software Cycle

Stages:
●Preliminary Analysis

●Analysis

●Design

●Programming

●Testing/Implementation

●Maintenance
Preliminary Analysis
● You need to find out the organization's
objectives and the nature and scope of the
problem under study.
● Propose alternative solutions
● Feasibility Study
– Economic(Cost/Benefit Analysis)
– Legal
– Operational
– Technical
Analysis

● Gathering of requirements and


specifications of the software to be
created.
● Here we find out "WHAT" the program will
do.
Design
● The system specifications are translated
into a software representation. Data
Structures,Algorithms and Interfaces are
done.
● DFDs and pseudocode are used.
● Here we find “HOW” the program will
accomplish the specifications gotten from
the first phase.
Programming
● In this phase, the algorithms derived in the
design phase are implemented using a
programming language.
● This translation should be mechanical if a good
design was done.
● Before the coding begins,a programming
language has to be chosen that will suit the
needs of the overall program.
Implementation/Testing
● Lots of tests are carried to debug the software
and then it is implemented.
● Extensive tests are carried out by the users of
the software at this stage.
● Many types of input data are tried on the
program to see if any bugs are found.
Implementation/Testing
● 3 types of errors can occur while executing a
program:
– compilation errors-mostly syntax errors done by the
programmer not following the rules of the programming
language.
– execution errors-produced by instructions the computer can
understand but not execute eg dividing by 0, square root by
a negative number.
– logical errors-produced by a bad design of algorithms. Are
the hardest to detect since the program will not have no
error messages but for eg. calculation of balances may be
wrong.
Maintenance
● Documentation and manuals should be
developed to make the use and maintenance of
the program easier.
● Internal and External documentation.
● Support is given to the users.
● Also training occurs at this stage.
SDLC Models/Methodologies
● Waterfall
● V-Shaped
● Incremental
● Spiral
Programming Language
● Is a series of commands and codes that can
translate into electronic pulses that underlie all
computing activities.
● A programming language is an artificial
language that can be used to control the
behavior of a machine, particularly a computer.
Programming Language
● When using a natural language to communicate
with other people, human authors and speakers
can be ambiguous and make small errors, and still
expect their intent to be understood. However,
computers do exactly what they are told to do, and
cannot understand the code the programmer
"intended" to write.
Purpose of PLs
● Attempts to design one "universal" computer
language have failed.
● The need for diverse computer languages
arises from the diversity of contexts in which
languages are used:
– Programs range from tiny scripts written by
individual hobbyists to huge systems written by
hundreds of programmers.
Purpose of PLs
– Programmers range in expertise from novices who
need simplicity above all else, to experts who may
be comfortable with considerable complexity.
– Programs must balance speed, size, and simplicity
on systems ranging from microcontrollers to
supercomputers.
Purpose of PLs
– Programs may be written once and not change for
generations, or they may undergo nearly constant
modification.
– Finally, programmers may simply differ in their
tastes: they may be accustomed to discussing
problems and expressing them in a particular
language.
History of Pls
● In the 1940s, the first electrically powered digital
computers were created. The computers of the
early 1950s, notably the UNIVAC I and the IBM
701 used machine language programs.
● First generation machine language programming
was quickly superseded by a second generation of
programming languages known as Assembly
languages.
History of Pls
● Later in the 1950s, assembly language
programming, which had evolved to include the
use of macro instructions, was followed by the
development of three modern programming
languages: FORTRAN, LISP, and COBOL.
● At the end of the 1950s, the language formalized
as Algol 60 was introduced, and most modern
programming languages are, in many respects,
descendants of Algol.
Generations of PLs
● 1GL
● 2GL
● 3GL
● 4GL
● 5GL
First Generation
● A first-generation programming language is a
machine-level programming language. It
consists of 1s and 0s.
● Very fast and reliable.
● Hard to code.
● Not portable.
● Used in ancient machines
● Any code compiler has to create machine code.
Second Generation
● A second-generation programming language is
a term usually used to refer to some form of
assembly language.
● Fast.
● Easier for humans to understand.
● Used in drivers,kernels and system libraries.
● Eg is Motorola THRSim11
Eg of assembler code
LDAB #$7F ; $7F  B
LDX #$1000 ; $1000  X
ABX ; X+00:B  X
LDAB #$FF ; $FF  B
LDAA #$FF ; $FF  A
ABA ; A+B  A
TAB ; AB
CLRA ; A=0
SEC ; C=1
ADCA #$00 ; A+$00+C  A
Third Generation
● A third generation language (3GL) is a
programming language designed to be easier for a
human to understand, including things like named
variables. A fragment might be: let b = c + 2 * d
● Most "modern" languages (BASIC, C, C++, Delphi,
Java, and including COBOL, Fortran, ALGOL) are
third generation.
● Most 3GLs support structured programming.
Fourth Generation
● A fourth-generation programming
language(1970s-1990) is a programming
language or programming environment
designed with a specific purpose in mind, such
as the development of commercial business
software.
● All 4GLs are designed to reduce programming
effort, the time it takes to develop software, and
the cost of software development.
● Egs are SQL and PowerBuilder.
Fifth Generation
● A fifth-generation programming language is a
programming language based around solving
problems using constraints given to the program,
rather than using an algorithm written by a
programmer.
● Most logic programming languages and some
declarative languages are fifth-generation
languages.
● Used mainly in artificial intelligence research.
Prolog, OPS5, and Mercury are the best known
fifth-generation languages.
Programming Paradigms
● A paradigm is a model; just a way of doing
things.
● There are several ways of programming.
● Consist of structured,procedural or
imperative,logical,object-oriented and
functional.
Need for different PLs
● Run-time
● Efficiency
● Portability
● Usability
● Maintainability of programs
● Appropriateness to application

You might also like