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

Unit 1 C-Programming

The document discusses various program design tools used in software development including algorithms, flowcharts, and pseudocode. It provides examples of algorithms to find simple interest and sum of two numbers. It also describes flowcharts, their advantages and disadvantages, types (system and program flowcharts), symbols used in flowcharts like processing, decision, and flow lines. Finally, it provides examples of self-practice problems to write algorithms and draw flowcharts for problems like finding greatest of three numbers and checking pass or fail based on average marks.

Uploaded by

amitghimire102
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Unit 1 C-Programming

The document discusses various program design tools used in software development including algorithms, flowcharts, and pseudocode. It provides examples of algorithms to find simple interest and sum of two numbers. It also describes flowcharts, their advantages and disadvantages, types (system and program flowcharts), symbols used in flowcharts like processing, decision, and flow lines. Finally, it provides examples of self-practice problems to write algorithms and draw flowcharts for problems like finding greatest of three numbers and checking pass or fail based on average marks.

Uploaded by

amitghimire102
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 100

1

 Program Design Tools

 Programming Paradigm

 Program/system Development Life Cycle

 Software Development Model


 System Design Tools
[email protected] 9/24/2020
2
Program Design Tools

 Tools used to develop a program are called programming


tools. It is used by the designers.
Some of the commonly used tools in programming are:
 Algorithm
 Flowchart
 Pseudo code

[email protected] 9/24/2020
3
Program Design Tools…..

 Algorithm

An algorithm is the finite set of step by step set of statements


that solve a particular problem.

In other words , algorithm is the step wise solution of a


problem. It is the finite set of instructions to solve a problem.

[email protected] 9/24/2020
4
Program Design Tools…..

 Algorithm should have following properties:


 It should have an input
 The steps mentioned in an algorithm can be executable by the computer
 Each and every instruction should be in a simple language
 The number of steps should be finite
 It must be able to generate correct and desirable output

[email protected] 9/24/2020
5
Program Design Tools…..

 Algorithm…..
Example 1: Find the simple interest of given number
 Step 1: Start
 Step 2 : Read principal , rate and time
 Step 3 : Multiply principal , rate and time , divide by 100 and store it in SI
 Step 4: Print result SI
 Step 5: Stop
[email protected] 9/24/2020
6
Program Design Tools…..

 Algorithm…..
Example 2: Find the sum of two numbers
 Step 1: Start
 Step 2 : Read the two numbers i.e. A,B
 Step 3 : Add the number A and B and Store in sum i.e. sum=A+B
 Step 4: Display or Print result sum
 Step 5: Stop
[email protected] 9/24/2020
7
Program Design Tools…..

 Flowchart
A flowchart is a diagrammatic or pictorial representation that
illustrates the sequence of operations to be performed. After
designing an algorithm , the next stage is to design a flowchart to
check the flow of logic running through it.

[email protected] 9/24/2020
8
Program Design Tools…..

 Advantages of Flowchart
 It is easier for a programmer to explain the logic of a program
through flowchart
 It helps in effective analysis of the program
 Easy to detect , locate and remove bugs in a program
 Effective means of communication
 Serve as documentation
 With the help of flowchart coding becomes effective and faster
[email protected] 9/24/2020
9
Program Design Tools…..

 Disadvantages of Flowchart
 Very time consuming and laborious job
 Flowcharts are difficult to maintain
 Occupies space while documentation
 Translation of flowchart to computer program is difficult

[email protected] 9/24/2020
10
Program Design Tools…..

 Types of Flowchart
According to use and application of flowchart , there are two types
of flowchart. They are:

 System flowchart

 Program flowchart

[email protected] 9/24/2020
11
Program Design Tools…..

 Types of Flowchart……..
 System flowchart

It represents the system and its components, information from


one component to other component. It describes the sequence
of processes to perform specific work. It explains the total flow
of data inside the system.
[email protected] 9/24/2020
12
Program Design Tools…..

 Types of Flowchart……..
 Program flowchart

To represent the program, we have to use standard diagram


called program flowchart. It shows the flow of instructions to
solve the problems. It is used to make the logical structure of
program.
[email protected] 9/24/2020
13
Program Design Tools…..

 Symbols used in Flowchart


 Some of the basic symbols used in flowchart and their
meaning are given below:

[email protected] 9/24/2020
14
Program Design Tools…..

 Symbols used in Flowchart…


Symbol Function Meaning
1. Start / Stop Point Indicates starting and
ending points in a program

Terminal Box

2. Input / Output Indicates when an input or output


operations to be performed
Input/output Box

[email protected] 9/24/2020
15
Program Design Tools…..

 Symbols used in Flowchart…


Symbol Function Meaning
3. Processing Operation Indicates that an operation and
process is to be performed
Processing Box
4. Decision Indicates a point of branch. It is used to
check logical condition.

Decision Box

[email protected] 9/24/2020
16
Program Design Tools…..

 Symbols used in Flowchart…


Symbol Function Meaning
5.. Connector Indicates a logic flow from one page
of the flowchart to another
Connector

6. Direction of logic Indicates the direction of flow


of logic

Flow lines

[email protected] 9/24/2020
17
Examples:

 Flowchart to find area of Rectangle


Start

Read L,B

A= L x B

Display A

[email protected] Stop 9/24/2020


18
Self Practice

 Write an algorithm and draw flowchart to find given number


is odd or even.
 Write an algorithm and draw flowchart to find the greatest
number among three input numbers.
 Write an algorithm and draw flowchart to read name , class
and marks for five different subjects. Find the average . If the
average is greater than or equal to 40 display “Pass” else
display “Fail”.

[email protected] 9/24/2020
19
Self Practice

 Write an algorithm and draw flowchart to display


even numbers from 2 to 50 and the find the sum.
 Write an algorithm and flow chart to print the
word “Hello” ten times using “while loop”

[email protected] 9/24/2020
20
Flowchart to find the greatest number among three input numbers

[email protected] 9/24/2020
21
Self practice

Algorithm
Step 1: start
Step 2: read name , class ,and marks for five subjects
Step 3: find the average mark.
Step 4: if the average is greater than or equal to 40 then print
“Pass” otherwise “Fail”
Step 5: stop
[email protected] 9/24/2020
22
Flowchart
Start

Read
name,class,m1,m2,m3,m4,m5

Avg=(m1+m2+m3+m4+m5)/5

Is Yes
Display Pass
Avg>=40

No
Display Fail

[email protected] Stop 9/24/2020


23

Self practice:
Computer scholarship are given on the following basis:
Marks scholarship
>=90 40%
>=70 and <90 35%
>=60 and <70 25%
<60 nil
The computer fee for a course is 20000. Draw a
flowchart which inputs the marks and computes the fee a
student has to pay
[email protected] 9/24/2020
24
Draw flowchart to display even numbers from 2 to
50 and find the sum.
Algorithm:
Step 1: start
Step 2: store 2 to A
Step 3: display A
Step 4: store A in Sum
Step 5: add 2 in A
Step 6: Is A is less than 50, if yes, repeat 3,4,5 and 6 step
if No, goto step 7
Step 7: display Sum
Step 8 : stop
[email protected] 9/24/2020
25
Pseudo code:

 Pseudo code is a simple way of writing programming code in


English.
 Pseudo code is not actual programming language
 It is a mixture of Natural language and programming language
 cannot be compiled or executed, but explains a resolution to a
problem
[email protected] 9/24/2020
26
Example of Pseudo code:

 Pseudo code to create a program to add 2 numbers together


and then display the result.
Start Program
Enter two numbers, A, B
Add the numbers together
Print Sum
End Program
[email protected] 9/24/2020
27
Example of Pseudo code:

 pseudo code to compute the perimeter of a rectangle:


Enter length, l
Enter width, b
Compute Perimeter = 2*(l+b)
Display Perimeter of a rectangle

[email protected] 9/24/2020
28
Difference between Algorithm and Flowchart:
Algorithm Flowchart
1. It is step by step operation/solution to a 1. It is a type of diagram that represents
particular problem. an algorithm.
2. It doesn't use any specific boxes/symbols. 2. It uses various kinds of boxes/symbols
which are interlinked with arrows/lines.

3. It is a bit difficult to understand 3. It is easy to understand

[email protected] 9/24/2020
29
Testing and Debugging:

 Debugging:
 The process of detecting , locating and correcting
errors is called Debugging
 Done by developer
 Need to know the source code

[email protected] 9/24/2020
30
Error(Bug) and types of errors

 An error or defect occurred inside a computer


program
 Most of the bugs arise from mistakes and errors are
made by programmers in source code

[email protected] 9/24/2020
31
Types of errors:

 The different types of errors are:


 Syntax error
 Logical error(semantic error)
 Run time error

[email protected] 9/24/2020
32
Types of errors:

 Syntax error:
 Syntax errors are detected at compile time
 For example: missing semi-colon or misspelling
 If a program contains syntax error, it will not be executed and
will not produce output
 This type of error is easier, faster and cheaper to debug
[email protected] 9/24/2020
33
Types of errors:

 Logical error(Semantic error):


 A logical error is an error in a logic/idea/concept of the program
 It is not detected by language translator during translation
 Programs runs but produces incorrect result/output
 For example: to find simple interest, i=(p*t*r)/100 but if we write
i=(p*t*r)/10 then it will produce semantic error

[email protected] 9/24/2020
34
Types of errors:

 Run-Time error:
 Occur at run time
 Programs terminate unexpectedly due to illegal operation such
as dividing a number by zero(0)

[email protected] 9/24/2020
35
Language Processor/translator

 A computer understands instructions in machine code, i.e. in the form of 0s


and 1s. It is a tedious task to write a computer program directly in machine
code. The programs are written mostly in high level languages like Java, C++,
Python etc. and are called source code. These source code cannot be executed
directly by the computer and must be converted into machine language to be
executed. Hence, a special translator system software is used to translate
the program written in high-level language into machine code is
called Language Processor and the program after translated into machine
code (object program / object code).
[email protected] 9/24/2020
36
Language Processor/translator

 Language translator convert programming source


code into language that the computer processor
understands

[email protected] 9/24/2020
37
Types of Language Processor/translator

[email protected] 9/24/2020
38
Types of Language Processor/translator

 Assembler:
The Assembler is used to translate the program written in Assembly language into
machine code. The source program is a input of assembler that contains assembly
language instructions. The output generated by assembler is the object code or
machine code understandable by the computer.

[email protected] 9/24/2020
39
Types of Language Processor/translator

 Compiler:
The language processor that reads the complete source program written in high
level language as a whole in one go and translates it into an equivalent program
in machine language is called as a Compiler.
Example: C, C++, C#, Java

[email protected] 9/24/2020
40
Types of Language Processor/translator

 Interpreter:
The translation of single statement of source program into machine code is
done by language processor and executes it immediately before moving on to
the next line is called an interpreter.
Example: Perl, Python and Matlab.

[email protected] 9/24/2020
41
Difference between Interpreter and Compiler

Compiler Interpreter

1. A compiler is a program which coverts the entire 1. Interpreter takes a source program and runs it
source code of a programming language into line by line, translating each line as it comes to it.
executable machine code for a CPU.

2. Generates intermediate object code. 2. No intermediate object code is generated.

3. Examples: C, C++, Java 3. Examples: Python, Perl

4. Compiler takes large amount of time to analyze 4. Interpreter takes less amount of time to
the entire source code but the overall execution analyze the source code but the overall execution
time of the program is comparatively faster. time of the program is slower.
[email protected] 9/24/2020
 Programming Paradigm

9/24/2020 [email protected] 42
 Programming Paradigm

 A programming paradigm is a style, or “way,” of programming.


 Programming paradigm is an approach to solve problem using some
programming language or also we can say it is a method to solve a problem
using tools and techniques that are available to us following some
approach.
 There are two main programming paradigms:
a. Imperative Programming paradigm
b. Declarative Programming paradigm

9/24/2020 [email protected] 43
 Programming Paradigm…

9/24/2020 [email protected] 44
1. Imperative Programming Paradigm

 It is one of the oldest programming paradigm.


 A program based on this paradigm is made up of a clearly-defined
sequence of instructions to a computer. Therefore, the source code
for imperative languages is a series of commands, which specify what
the computer has to do – and when – in order to achieve a desired
result. Values used in variables are changed at program runtime. To
control the commands, control structures such as loops or branches
are integrated into the code.

9/24/2020 [email protected] 45
 Advantages of Imperative Programming Paradigm

 Very simple to implement


 It contains loops, variables

 Disadvantages of Imperative Programming Paradigm

 Complex problem cannot be solved


 Less efficient and less productive
 Parallel programming is not possible

9/24/2020 [email protected] 46
 Procedural Programming paradigm:
 Procedural languages are statement oriented with the variables holding values. In this
language the execution of a program is modeled as a series of states of variable
locations. It uses a linear or top-down approach.
Examples of Procedural programming paradigm:
 C : developed by Dennis Ritchie and Ken Thompson
 C++ : developed by Bjarne Stroustrup
 Java : developed by James Gosling at Sun Microsystems
 ColdFusion : developed by J J Allaire
 Pascal : developed by Niklaus Wirth

9/24/2020 [email protected] 47
 Object Oriented paradigm:
 The Object Oriented paradigm is addressed on the concept of the object. Everything
is focused on objects.
 More emphasis is on data rather procedure. It can handle almost all kind of real life
problems which are today in scenario.
Examples of Object Oriented programming paradigm:
 Simula : first OOP language developed by Ole-Johan Dahl and Kristen Nygaard.
 Java : developed by James Gosling at Sun Microsystems
 C++ : developed by Bjarne Stroustrup
 Visual Basic .NET : developed by Microsoft
 Python : developed by Guido van Rossum
 Ruby : developed by Yukihiro Matsumoto
 Smalltalk : developed by Alan Kay, Dan Ingalls, Adele Goldberg

9/24/2020 [email protected] 48
 Parallel processing approach

 The processing of program instructions by dividing them among multiple


processors.
 Examples are NESL((Nested Data Parallelism) (one of the oldest one))
and C/C++ also supports because of some library function.

9/24/2020 [email protected] 49
2. Declarative Programming Paradigm

 It is divided as Logic, Functional, Database


 The declarative programming is a style of building programs that
expresses logic of computation without talking about its control
flow.
 It often considers programs as theories of some logic.

9/24/2020 [email protected] 50
2. Declarative Programming Paradigm…

 Logic programming paradigms:


It can be termed as abstract model of computation. It would solve
logical problems like puzzles, series etc.
 In logical programming the main emphasize is on knowledge base
and the problem. The execution of the program is very much like
proof of mathematical statement, e.g., Prolog

9/24/2020 [email protected] 51
2. Declarative Programming Paradigm…

 Functional programming paradigms:


 In this paradigm, a program consists of a collection of functions. A
function just computes and returns a value.
 The key principal of this paradigms is the execution of series of
mathematical functions.
 Some of the languages like perl, javascript mostly uses this
paradigm.

9/24/2020 [email protected] 52
2. Declarative Programming Paradigm…

 Database/Data driven programming approach:


 This programming methodology is based on data and its movement.
Program statements are defined by data rather than hard-coding a
series of steps.
 A database program is the heart of a business information system
and provides file creation, data entry, update, query and reporting
functions.
 There are several programming languages that are developed mostly
for database application. For example SQL.
9/24/2020 [email protected] 53
9/24/2020 [email protected] 54
 System/Program Development Life Cycle
 Software Development Life Cycle (SDLC) is a process used by the
software industry to design, develop and test high quality software.
 SDLC is a process followed for a software project, within a software
organization. It consists of a detailed plan describing how to develop,
maintain, replace and alter or enhance specific software. The life cycle
defines a methodology for improving the quality of software and the
overall development process.

9/24/2020 [email protected] 55
 Objectives/Aims of System/Program Development Life Cycle

 The SDLC aims to produce a high-quality software that meets or exceeds


customer expectations, reaches completion within time and cost estimates.

9/24/2020 [email protected] 56
 Phases /Stages of SDLC

Phase 1: Requirement collection Planning

and analysis/planning Maintenance


Defining
Phase 2: Defining/Feasibility study
Phase 3: Design
Deployment SDLC Phases
Phase 4: Coding:
Phase 5: Testing: Designing

Phase 6: Installation/Deployment: Testing


Phase 7: Maintenance:
Coding

The above figure is a graphical representation of the


various stages of a typical SDLC.
9/24/2020 57
[email protected]
 Requirement collection and analysis/planning
 Requirement analysis/planning is the first phase of the Software
Development Life Cycle. The main aim of this phase is to know the actual
requirement of client’s and to document them properly.
 The emphasis in requirement analysis is on identifying what is needed
from the system.
 It is one of the most essential phases in Software Development Life
Cycle
 The output of requirement analysis is Software Requirement
Specification (SRS); it is a complete and comprehensive description of
the behavior of the software to be developed.
9/24/2020 [email protected] 58
Defining / feasibility study phase:
 Once the requirement analysis phase is completed the next step is to
define and document software needs.
 At this phase the team analyzes if a software can be made to fulfill all
requirements of the user and if there is any possibility of software being
no more useful. It is found out, if the project is financially, practically
and technologically feasible for the organization to take up.
 It includes everything which should be designed and developed during the
project life cycle.

9/24/2020 [email protected] 59
Design
 It is the most creative phase in Software Development Life Cycle.
 The goal of this phase is to transform the requirement
specification into a structure or plan.
 It is the process of planning and problem solving for a software
solution. It implicates software developers and designers to
define the plan for a solution. The output of this phase is
Software Design Document (SDD).

9/24/2020 [email protected] 60
Building or Coding:
 In this phase, the system and software design documents are prepared
as per the requirement specification document. This helps define
overall system architecture.
 It is the logical phase of the Software Development Life Cycle. The
output of this phase is program code.

9/24/2020 [email protected] 61
Testing:
 Just after coding phase, testing is carried out to know the
outcome of application.
 Testing is made to know the actual result and the expected
result. This is most important and powerful phase. Effective
testing will provide high quality software products, lower
maintenance costs, and more accurate and reliable results.

9/24/2020 [email protected] 62
Deployment
 Once the software testing phase is over and no bugs or errors
left in the system then the final deployment process starts.
Based on the feedback given by the project manager, the final
software is released and checked for deployment issues if any.

9/24/2020 [email protected] 63
 Maintenance

 Correcting and upgrading process of the system is called system


maintenance.
 Maintenance is necessary to eliminate errors in the working
system during its working life.
 System maintenance involves training session, documentation of
the system and support after sell.

9/24/2020 [email protected] 64
 Software Development Model(SDLC Models)
 There is various software development approaches defined and designed which are used during
development process of software, these approaches are also referred as "Software
Development Process Models". Each process model follows a particular life cycle in order to
ensure success in process of software development. Some of the SDLC Models are:
 Waterfall Model
 Spiral Model
 Iterative Model
 Incremental Model
 Prototyping Model
 V -Shaped Model
 RAD Model

9/24/2020 [email protected] 65
 Software Development Model(SDLC Models)…

 Waterfall Model :
 It is referred as a linear-sequential life cycle model. It defines some basic tasks,
which are carried out in sequence: Analysis, Design ,Coding, Testing, Deployment,
Implement.
 In a waterfall model, each phase must be completed in its entirety before the next
phase can begin. At the end of each phase, a review takes place to determine if the
project is on the right path and whether or not to continue or discard the project.
 This type of model is basically used for the project which is small and there are no
uncertain requirements.
 In this model the testing starts only after the development is complete. In waterfall
model phases do not overlap.
9/24/2020 [email protected] 66
 Software Development Model(SDLC Models)…

 Waterfall Model :

Coding

9/24/2020 [email protected] 67
 Software Development Model(SDLC Models)…

 Advantages of Waterfall Model :

 Simple and easy to understand and use.


 Easy to manage due to the rigidity of the model .
 Easy to arrange the task.
 Works well for smaller project where requirement are very well
understood

9/24/2020 [email protected] 68
 Software Development Model(SDLC Models)…

 Disadvantages of Waterfall Model :

 Not a good model for complex and object-oriented projects.


 High amounts of risk and uncertainty.
 Poor model for long and ongoing projects.

9/24/2020 [email protected] 69
 Software Development Model(SDLC Models)…

 Iterative Model:

 Iterative Model is a way of breaking down the software


development of a large application into smaller chunks.

 In iterative development, feature code is designed, developed


and tested in repeated cycles. With each iteration, additional
features can be designed, developed and tested until there is a
fully functional software application ready to be deployed to
customers.

9/24/2020 [email protected] 70
 Software Development Model(SDLC Models)…

 Iterative Model:

9/24/2020 [email protected] 71
 Software Development Model(SDLC Models)…

 Advantages of Iterative Model:


Some working functionality can be developed quickly and
early in the life cycle.
 Testing and debugging during smaller iteration is easy.
 It supports changing requirements.
 Results are obtained early and periodically.

9/24/2020 [email protected] 72
 Software Development Model(SDLC Models)…

 Disadvantages of Iterative Model:

Not suitable for smaller projects.


More resources may be required.

9/24/2020 [email protected] 73
 Software Development Model(SDLC Models)…

 Spiral model

 It is one of the most important Software Development Life Cycle model.


 This model was first described by Barry Bohem in 1986.
 It can handle large amount of risk
 In its diagrammatic representation, it looks like a spiral with many loops.
 The structure of spiral development model consists of four quadrants as
shown:

9/24/2020 [email protected] 74
 Software Development Model(SDLC Models)…

 Spiral model
1. Planning /Determine
Objectives 2. Risk Analysis

1.Planning/Determine Objectives:
Requirements are gathered from the
customers and the objectives are
identified, elaborated and analyzed at
the start of every phase. Then
alternative solutions possible for the
phase are proposed in this quadrant. 4. Plan the next 3. Develop next version
phase of the Product

9/24/2020 [email protected] 75
 Software Development Model(SDLC Models)…

 Spiral model…

2. Risk analysis
During the second quadrant all the possible solutions are evaluated to select the
best possible solution. Then the risks associated with that solution is identified
and the risks are resolved using the best possible strategy. At the end of this
quadrant, Prototype is built for the best possible solution.

9/24/2020 [email protected] 76
 Software Development Model(SDLC Models)…

 Spiral model…

3. Develop next level of product/Engineering


During the third quadrant, the identified features are developed and verified
through testing. At the end of the third quadrant, the next version of the
software is available.

9/24/2020 [email protected] 77
 Software Development Model(SDLC Models)…

 Spiral model…

4. Plan the next phase


As the development process proceeds in the fourth quadrant, the customers
evaluate the developed version of the project and reports if any further
changes are required. At last, planning for the subsequent phase is initiated.

9/24/2020 [email protected] 78
 Software Development Model(SDLC Models)…

 Advantages of Spiral model

 High amount of risk analysis hence, avoidance of Risk is enhanced.


 Good for large and mission-critical projects.
 Strong approval and documentation control.
 Additional Functionality can be added at a later date.
 Feedback from the user is available in the initial stages (phases).

9/24/2020 [email protected] 79
 Software Development Model(SDLC Models)…

 Disadvantages of Spiral model

 Can be a costly model to use.


 Risk analysis requires highly specific expertise.
 Project’s success is highly dependent on the risk analysis phase.
 Doesn’t work well for smaller projects.

9/24/2020 [email protected] 80
 Software Development Model(SDLC Models)…

 Prototyping Model

 Prototype model is generally used when the requirements are unclear.


 It is used when the customer is unclear about the details of the input,
process, and the output needs of the software
 Prototyping is the construction of the model of a system. It is the working
model to show functionality of the system to the users.

9/24/2020 [email protected] 81
 Software Development Model(SDLC Models)…

 Prototyping Model

Prototyping

Initial Customer
Design
requirements Evaluation

Customer
satisfied
Review &
Update

Maintain Test Development

9/24/2020 [email protected] 82
 Software Development Model(SDLC Models)…

 Advantages of Prototyping Model

 Customer can see steady progress


 This is useful when requirements are changing rapidly
 It helps the customer to easily realize the required modification before
final implementation of the system.
 Quick user feedback is available leading to better solution

9/24/2020 [email protected] 83
 Software Development Model(SDLC Models)…

 Disadvantages of Prototyping Model

 Neither customer nor developer is able to specify the number of


iterations.
 This model is time consuming and expensive because if the user is
not satisfied with the developed prototype , then a new prototype is
developed. This process goes on until a perfect prototype evolves.
 Prototyping can lead to false expectations

9/24/2020 [email protected] 84
 Software Development Model(SDLC Models)…

 Incremental Model

 Incremental Model is a process of software development where requirements are broken


down into multiple standalone modules of software development cycle. Incremental
development is done in steps from analysis design, implementation, testing/verification,
maintenance.
 Each iteration passes through the requirements, design, coding and testing phases. And
each subsequent release of the system adds function to the previous release until all
designed functionality has been implemented.

9/24/2020 [email protected] 85
 Software Development Model(SDLC Models)…

 Incremental Model

9/24/2020 [email protected] 86
 Software Development Model(SDLC Models)…

 Advantages of Incremental Model

 Errors are easy to detect.


 Easy to test and debug.
 Flexible.
 Easy to manage risk because it has been managed through
iteration
 The client is provided with significant functionality at an
early stage.

9/24/2020 [email protected] 87
 Software Development Model(SDLC Models)…

 Disddvantages of Incremental Model


 It needs good planning.
 The total cost is high.
 It needs well-defined module interfaces.

9/24/2020 [email protected] 88
 Software Development Model(SDLC Models)…

 Disadvantages of Incremental Model


 It needs good planning.
 The total cost is high.
 It needs well-defined module interfaces.

9/24/2020 [email protected] 89
 Review questions:
 Define Programming language. Explain low level language and high level
language with examples.
 What is language processor? Differentiate between Interpreter and
Compiler
 What is algorithm? List its characteristics
 What is flowchart? Write the different symbols used in flowchart with
their meaning

9/24/2020 [email protected] 90
 Review questions:
 Write an algorithm and draw flowchart to test whether the number is
positive , negative or zero
 What is SDLC/PDLC? Explain Waterfall model with its advantages and
disadvantages
 What is spiral model? List its advantages and disadvantages.

9/24/2020 [email protected] 91
 Review questions:
 Explain the various types of errors.
 Explain context diagram , DFD and Decision Table in brief

9/24/2020 [email protected] 92
 MCQ:
 Which of the following is object oriented language?
a. Basic
b. C
c. Java
d. FORTAN

9/24/2020 [email protected] 93
 MCQ:
 Risk analysis is key feature in ………….. Software process model
a. Waterfall
b. Spiral
c. Prototype
d. Reverse

9/24/2020 [email protected] 94
 MCQ:
 The diamond shaped symbol is used in the flowchart to show the…..
a. Decision
b. Process
c. Input
d. Stop

9/24/2020 [email protected] 95
 MCQ:
 In program development life cycle, design phase is followed by ….
a. Coding
b. Testing
c. Maintenance
d. None of the above

9/24/2020 [email protected] 96
 MCQ:
 Which of the following error can’t be detected by the compiler?
a. Syntax error
b. Run time error
c. Logical error
d. Both b and c

9/24/2020 [email protected] 97
 MCQ:
 What is the operation that is used in algorithm to repeat the particular
block of statement?
a. Selection
b. Sequence
c. Iteration
d. Reverse

9/24/2020 [email protected] 98
 MCQ:
 The mnemonics are used in
a. Assembly language
b. High level language
c. Machine level language
d. None

9/24/2020 [email protected] 99
 MCQ:
 Language in which single statement can be written to accomplish
substantial tasks is termed as
a. Machine level language
b. Assembly language
c. High level language
d. None

9/24/2020 [email protected] 100

You might also like