Computer Software
Course: MBA-I
Subject: IT For Manager
Unit-2
1
Software & Hardware?
• Computer Instructions or data, anything that can be stored
electronically is Software.
• Hardware is one that is tangible. The storage devices (Hard
disk, CD’s etc.,), mouse, keyboard CPU and display devices
(Monitor) are Hardware.
2
Types of Software
System Software
Application Software
3
System Software:
System Software includes the Operating System and all the
utilities that enable the computer to function.
System software is a term referring to any computer software
which manages and controls the hardware so that application
software can perform a task.
Example:
Operating Systems, Compiler, Loader, Linker, Interpreter.
4
Application Software:
Application Software includes programs that do real work for
user.
Example:
Payroll systems, Inventory Control, Manage student database,
Word Processor, Spreadsheet and Database Management
System etc.,
5
System Software:
Operating System:
• Operating System is a software, which makes a computer to
actually work.
• It is the software the enables all the programs we use.
• The OS organizes and controls the hardware.
• OS acts as an interface between the application programs and
the machine hardware.
• Examples: Windows, Linux, Unix and Mac OS, etc.,
6
System Software (contd):
Source Languages Target Languages
‘C’ language ‘C’ language
‘Pascal’ language Machine language
FORTRAN language
C++ language
ADA language
Compiler: A compiler is a program that reads a program
in one language – the source language and translates into
an equivalent program in another language – the target
language.
7
System Software (contd):
Loader: A loader is the part of an operating system that is
responsible for loading programs into memory, preparing them
for execution and then executing them.
The loader is usually a part of the operating system's kernel and
usually is loaded at system boot time and stays in memory
until the system is rebooted, shut down, or powered off.
In Unix, the loader is the handler for the system call execve().
8
System Software (contd):
Linker: A linker or link editor is a program that takes one or
more objects generated by compilers and assembles them into
a single executable program.
Linkers can take objects from a collection called a library. The
objects are program modules containing machine code and
information for the linker.
The linker takes care of arranging the objects in a program's
address space.
9
System Software (contd):
Interpreter: An interpreter is a computer
program that translates and executes instructions
written in a computer programming language line-by-
line, unit by unit etc.,
An interpreter needs to be able to analyze, or parse,
instructions written in the source language.
Example: Lisp systems, etc.,
10
Application Software:
Word Processors:
Word processing is a tool that helps user in creating, editing,
and printing documents. Word processors will normally have
the following capabilities built into them:
» Spell checking
» Standard layouts for normal documents
» Have some characters appear in bold print,
italics, or underlined
» Center lines, make text line up on the left side of
the paper, or the right side of the paper
» Save the document so it can be used again
» print the document.
Examples: WordPerfect and Microsoft Word
11
Application Software
(contd…):
Spreadsheets: The spreadsheet packages are designed to
use numbers and formulas to do calculations with
ease. Examples of spreadsheets include:
» Budgets
» Payrolls
» Grade Calculations
» Address Lists
The most commonly used spreadsheet programs are Microsoft
Excel and Lotus 123.
12
Application Software
(contd…):
Graphic Presentations: The presentation programs
can make giving presentations and using overheads
easier. Other uses include:
» Slide Shows
» Repeating Computer Presentations on a
computer monitor
» Using Sound and animation in slide shows
The most recognized graphic presentation programs are
Microsoft PowerPoint and Harvard Graphics.
13
Application Software
(contd…):
Database Management System (DBMS):
• A DBMS is a software tool that allows multiple users to store,
access, and process data into useful information.
• Database programs are designed for these types of
applications:
» Membership lists
» Student lists
» Grade reports
» Instructor schedules
All of these have to be maintained so you can find what you
need quickly and accurately.
• Example:Microsoft Access, dBASE, Oracle.
14
What is Assemblers?
• An assembler is a type of computer program that interprets
software programs written in assembly language into machine
language, code and instructions that can be executed by a
computer.
• An assembler enables software and application developers to
access, operate and manage a computer's hardware architecture
and components.
• An assembler is sometimes referred to as the compiler of
assembly language. It also provides the services of an
interpreter.
15
What Do Compilers Do
• A compiler acts as a translator,
transforming human-oriented programming languages
into computer-oriented machine languages.
– Ignore machine-dependent details for programmer
16
Programming
Language
(Source)
Compiler
Machine
Language
(Target)
What Do Compilers Do
• Compilers may generate three types of code:
– Pure Machine Code
• Machine instruction set without assuming the existence of
any operating system or library.
• Mostly being OS or embedded applications.
– Augmented Machine Code
• Code with OS routines and runtime support routines.
• More often
– Virtual Machine Code
• Virtual instructions, can be run on any architecture with a
virtual machine interpreter or a just-in-time compiler
• Ex. Java
17
What Do Compilers Do ?
• Another way that compilers
differ from one another is in the format of the
target machine code they generate:
– Assembly or other source format
– Relocatable binary
• Relative address
• A linkage step is required
– Absolute binary
• Absolute address
• Can be executed directly
18
The Structure of a Compiler
19
Scanner Parser
Semantic
Routines
Code
Generator
Optimizer
Source
Program Tokens Syntactic
Structure
Symbol and
Attribute
Tables
(Used by all Phases of The Compiler)
(Character Stream)
Intermediate
Representation
Target machine code
Interpreter
• It helps the user to execute the source program with a few
differences as compared to compilers. The source program is
just like English statements in both interpreters and compilers.
• Interpreter reads the program line by line, whereas in compiler
the entire program is read by the compiler, which then
generates the object codes.
• Interpreter directly executes the program from its source code.
Due to this, every time the source code should be inputted to
the interpreter.
• In other words, each line is converted into the object codes. It
takes very less time for execution because no intermediate
object code is generated.
20
Interpreter
21
Software Development Models
22
Waterfall Model
• Requirements – defines needed
information, function, behavior,
performance and interfaces.
• Design – data structures, software
architecture, interface
representations, algorithmic
details.
• Implementation – source code,
database, user documentation,
testing.
1.1 Waterfall Model
23
Waterfall Strengths
• Easy to understand, easy to use
• Provides structure to inexperienced staff
• Milestones are well understood
• Sets requirements stability
• Good for management control (plan, staff, track)
• Works well when quality is more important than cost
or schedule
24
Waterfall Deficiencies
• All requirements must be known upfront
• Deliverables created for each phase are considered
frozen – inhibits flexibility
• Can give a false impression of progress
• Does not reflect problem-solving nature of software
development – iterations of phases
• Integration is one big bang at the end
• Little opportunity for customer to preview the system
(until it may be too late)
25
When to use the Waterfall Model
• Requirements are very well known
• Product definition is stable
• Technology is understood
• New version of an existing product
• Porting an existing product to a new platform.
26
V-Shaped SDLC Model
• A variant of the Waterfall
that emphasizes the
verification and validation
of the product.
• Testing of the product is
planned in parallel with a
corresponding phase of
development
V-Shaped SDLC Model
27
V-Shaped Steps
• Project and Requirements Planning –
allocate resources
• Product Requirements and
Specification Analysis – complete
specification of the software system
• Architecture or High-Level Design –
defines how software functions fulfill
the design
• Detailed Design – develop algorithms
for each architectural component
• Production, operation and
maintenance – provide for
enhancement and corrections
• System and acceptance testing –
check the entire software system in its
environment
• Integration and Testing – check that
modules interconnect correctly
• Unit testing – check that each module
acts as expected
• Coding – transform algorithms into
software
28
V-Shaped Strengths
• Emphasize planning for verification and
validation of the product in early stages of
product development
• Each deliverable must be testable
• Project management can track progress by
milestones
• Easy to use
29
V-Shaped Weaknesses
• Does not easily handle concurrent events
• Does not handle iterations or phases
• Does not easily handle dynamic changes in
requirements
• Does not contain risk analysis activities
30
Structured Evolutionary Prototyping Model
• Developers build a prototype during the
requirements phase
• Prototype is evaluated by end users
• Users give corrective feedback
• Developers further refine the prototype
• When the user is satisfied, the prototype code
is brought up to the standards needed for a
final product.
31
Structured Evolutionary Prototyping Steps
• A preliminary project plan is developed
• An partial high-level paper model is created
• The model is source for a partial requirements specification
• A prototype is built with basic and critical attributes
• The designer builds
– the database
– user interface
– algorithmic functions
• The designer demonstrates the prototype, the user evaluates for
problems and suggests improvements.
• This loop continues until the user is satisfied
32
Structured Evolutionary Prototyping
Strengths
• Customers can “see” the system requirements as they
are being gathered
• Developers learn from customers
• A more accurate end product
• Unexpected requirements accommodated
• Allows for flexible design and development
• Steady, visible signs of progress produced
• Interaction with the prototype stimulates awareness of
additional needed functionality
33
Structured Evolutionary Prototyping
Weaknesses
• Tendency to abandon structured program
development for “code-and-fix” development
• Bad reputation for “quick-and-dirty” methods
• Overall maintainability may be overlooked
• The customer may want the prototype delivered.
• Process may continue forever (scope creep)
34
Spiral SDLC Model
• Adds risk analysis, and
4gl RAD prototyping to
the waterfall model
• Each cycle involves the
same sequence of steps
as the waterfall process
model
Spiral SDLC Model
35
Spiral Model Strengths
• Provides early indication of insurmountable risks,
without much cost
• Users see the system early because of rapid
prototyping tools
• Critical high-risk functions are developed first
• The design does not have to be perfect
• Users can be closely tied to all lifecycle steps
• Early and frequent feedback from users
• Cumulative costs assessed frequently
36
Spiral Model Weaknesses
• Time spent for evaluating risks too large for small or low-risk
projects
• Time spent planning, resetting objectives, doing risk analysis
and prototyping may be excessive
• The model is complex
• Risk assessment expertise is required
• Spiral may continue indefinitely
• Developers must be reassigned during non-development phase
activities
• May be hard to define objective, verifiable milestones that
indicate readiness to proceed through the next iteration
37
Reference
Book Reference
1. Fundamentals of Computer Programming and IT: For TU By Kamthane, ITL
ESL
2. Software Engineering Research, Management and Applications edited by
Roger Lee
3. Software Engineering By Sommerville
4. Software Engineering By A.A.Puntambekar
5. Software Engineering: A Practitioner's Approach By Roger S. Pressman
Image Reference
• https://www.google.co.in/search?biw=1517&bih=714&noj=1&tbm
=isch&sa=1&q=Software+development+model+in+software+engi
neering&oq=Software+development+model+in+software+engineer
ing&gs_l=img.3...119319.126153.0.127260.31.24.0.0.0.4.478.3443
.0j2j7j1j2.12.0.msedr...0...1c.1.60.img..29.2.929.43o3LKW7tvk
38

More Related Content

PPTX
Bsc cs 1 fit u-2 application and system software
PPTX
Unit 2 computer software
PPT
Computer software
PPTX
Mca i-fundamental of computer-u-2- application and system software
PPTX
System Programming
PDF
MCA-5 unit1
PPT
System software
PPTX
system software and application software, compiler, interpreter & assembler
Bsc cs 1 fit u-2 application and system software
Unit 2 computer software
Computer software
Mca i-fundamental of computer-u-2- application and system software
System Programming
MCA-5 unit1
System software
system software and application software, compiler, interpreter & assembler

What's hot (20)

DOCX
Interaction With Computers FIT
PPT
EVOLUTION OF SYSTEM
PPT
Software tools
PPT
Software
PPTX
Introduction to system programming
PPTX
Cross compiling android applications
PPTX
Software (Application and System Software)
PDF
system-software-tools
DOC
Richa garg itm
PPTX
System programming
PPTX
Introduction to Computers Lecture # 12
PPSX
Spr ch-01
PDF
Embedded systems tools & peripherals
PDF
Linker and Loader Explained
PDF
Compiler Design Introduction
PPTX
Application Software
PDF
Introduction to Computer and Programming - Lecture 01
PPTX
Embedded System Tools ppt
PPT
Chapter 4 Computer Software
PPT
Compilers and interpreters
Interaction With Computers FIT
EVOLUTION OF SYSTEM
Software tools
Software
Introduction to system programming
Cross compiling android applications
Software (Application and System Software)
system-software-tools
Richa garg itm
System programming
Introduction to Computers Lecture # 12
Spr ch-01
Embedded systems tools & peripherals
Linker and Loader Explained
Compiler Design Introduction
Application Software
Introduction to Computer and Programming - Lecture 01
Embedded System Tools ppt
Chapter 4 Computer Software
Compilers and interpreters
Ad

Viewers also liked (8)

PPTX
Botones de colores
PPTX
Mca i ecls_u-3_corporate communication
PPT
Ch. 17 lecture outline
PPTX
Howard Gardner School Develops New Capabilities in New Facility
DOC
Pasos de proyecto1
PPT
Bca 2nd sem-u-3.2-basic computer programming and micro programmed control
PPT
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
PPT
Bca 2nd sem-u-1.6 digital logic circuits, digital component
Botones de colores
Mca i ecls_u-3_corporate communication
Ch. 17 lecture outline
Howard Gardner School Develops New Capabilities in New Facility
Pasos de proyecto1
Bca 2nd sem-u-3.2-basic computer programming and micro programmed control
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
Bca 2nd sem-u-1.6 digital logic circuits, digital component
Ad

Similar to Mba i-ifm-u-2-computer software (20)

PPTX
Bba i-introduction to computer-u-2- application and system software
PPTX
Bca i-fundamental of computer-u-2- application and system software
PPTX
Software ppt
PPT
systemsoftwarevs-140725005422-phpapp02.ppt
PPT
software development and programming languages
PPT
Computer software 2
PPT
Computer software 2
PPT
2 software
PPT
System Software vs.Application Software
PPT
B.sc i bio chem u 2 computer software
PPT
B.sc i cs u 2 computer software
PPT
B.sc i bio tech u 2 computer software
PPT
B.sc i agri u 2 computer software
PPT
B.sc i micro bio u 2 computer software
PDF
SPOS_UNIT I System Programming and Operating System.pdf
PPTX
Computer Software and It's Development
PPT
Introduction to computer software12 9-07
PPT
Computer edborook gullam si-Software.ppt
PPTX
bui ba ba
PPT
Last module pc_software
Bba i-introduction to computer-u-2- application and system software
Bca i-fundamental of computer-u-2- application and system software
Software ppt
systemsoftwarevs-140725005422-phpapp02.ppt
software development and programming languages
Computer software 2
Computer software 2
2 software
System Software vs.Application Software
B.sc i bio chem u 2 computer software
B.sc i cs u 2 computer software
B.sc i bio tech u 2 computer software
B.sc i agri u 2 computer software
B.sc i micro bio u 2 computer software
SPOS_UNIT I System Programming and Operating System.pdf
Computer Software and It's Development
Introduction to computer software12 9-07
Computer edborook gullam si-Software.ppt
bui ba ba
Last module pc_software

More from Rai University (20)

PDF
Brochure Rai University
PPT
Mm unit 4point2
PPT
Mm unit 4point1
PPT
Mm unit 4point3
PPT
Mm unit 3point2
PPTX
Mm unit 3point1
PPTX
Mm unit 2point2
PPT
Mm unit 2 point 1
PPT
Mm unit 1point3
PPT
Mm unit 1point2
PPTX
Mm unit 1point1
DOCX
Bdft ii, tmt, unit-iii, dyeing & types of dyeing,
PPTX
Bsc agri 2 pae u-4.4 publicrevenue-presentation-130208082149-phpapp02
PPTX
Bsc agri 2 pae u-4.3 public expenditure
PPTX
Bsc agri 2 pae u-4.2 public finance
PPS
Bsc agri 2 pae u-4.1 introduction
PPT
Bsc agri 2 pae u-3.3 inflation
PPTX
Bsc agri 2 pae u-3.2 introduction to macro economics
PPTX
Bsc agri 2 pae u-3.1 marketstructure
PPTX
Bsc agri 2 pae u-3 perfect-competition
Brochure Rai University
Mm unit 4point2
Mm unit 4point1
Mm unit 4point3
Mm unit 3point2
Mm unit 3point1
Mm unit 2point2
Mm unit 2 point 1
Mm unit 1point3
Mm unit 1point2
Mm unit 1point1
Bdft ii, tmt, unit-iii, dyeing & types of dyeing,
Bsc agri 2 pae u-4.4 publicrevenue-presentation-130208082149-phpapp02
Bsc agri 2 pae u-4.3 public expenditure
Bsc agri 2 pae u-4.2 public finance
Bsc agri 2 pae u-4.1 introduction
Bsc agri 2 pae u-3.3 inflation
Bsc agri 2 pae u-3.2 introduction to macro economics
Bsc agri 2 pae u-3.1 marketstructure
Bsc agri 2 pae u-3 perfect-competition

Recently uploaded (20)

PPTX
Reproductive system-Human anatomy and physiology
PDF
fundamentals-of-heat-and-mass-transfer-6th-edition_incropera.pdf
PDF
Compact First Student's Book Cambridge Official
PPTX
2025 High Blood Pressure Guideline Slide Set.pptx
PDF
Lecture on Viruses: Structure, Classification, Replication, Effects on Cells,...
PDF
Journal of Dental Science - UDMY (2021).pdf
PDF
M.Tech in Aerospace Engineering | BIT Mesra
PDF
Journal of Dental Science - UDMY (2022).pdf
PDF
Disorder of Endocrine system (1).pdfyyhyyyy
PDF
LIFE & LIVING TRILOGY- PART (1) WHO ARE WE.pdf
PPTX
Climate Change and Its Global Impact.pptx
PPTX
Macbeth play - analysis .pptx english lit
PPT
REGULATION OF RESPIRATION lecture note 200L [Autosaved]-1-1.ppt
PPTX
PLASMA AND ITS CONSTITUENTS 123.pptx
PDF
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
PDF
Farming Based Livelihood Systems English Notes
PDF
LIFE & LIVING TRILOGY - PART (3) REALITY & MYSTERY.pdf
PDF
MICROENCAPSULATION_NDDS_BPHARMACY__SEM VII_PCI Syllabus.pdf
DOCX
Ibrahim Suliman Mukhtar CV5AUG2025.docx
PDF
Nurlina - Urban Planner Portfolio (english ver)
Reproductive system-Human anatomy and physiology
fundamentals-of-heat-and-mass-transfer-6th-edition_incropera.pdf
Compact First Student's Book Cambridge Official
2025 High Blood Pressure Guideline Slide Set.pptx
Lecture on Viruses: Structure, Classification, Replication, Effects on Cells,...
Journal of Dental Science - UDMY (2021).pdf
M.Tech in Aerospace Engineering | BIT Mesra
Journal of Dental Science - UDMY (2022).pdf
Disorder of Endocrine system (1).pdfyyhyyyy
LIFE & LIVING TRILOGY- PART (1) WHO ARE WE.pdf
Climate Change and Its Global Impact.pptx
Macbeth play - analysis .pptx english lit
REGULATION OF RESPIRATION lecture note 200L [Autosaved]-1-1.ppt
PLASMA AND ITS CONSTITUENTS 123.pptx
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
Farming Based Livelihood Systems English Notes
LIFE & LIVING TRILOGY - PART (3) REALITY & MYSTERY.pdf
MICROENCAPSULATION_NDDS_BPHARMACY__SEM VII_PCI Syllabus.pdf
Ibrahim Suliman Mukhtar CV5AUG2025.docx
Nurlina - Urban Planner Portfolio (english ver)

Mba i-ifm-u-2-computer software

  • 2. Software & Hardware? • Computer Instructions or data, anything that can be stored electronically is Software. • Hardware is one that is tangible. The storage devices (Hard disk, CD’s etc.,), mouse, keyboard CPU and display devices (Monitor) are Hardware. 2
  • 3. Types of Software System Software Application Software 3
  • 4. System Software: System Software includes the Operating System and all the utilities that enable the computer to function. System software is a term referring to any computer software which manages and controls the hardware so that application software can perform a task. Example: Operating Systems, Compiler, Loader, Linker, Interpreter. 4
  • 5. Application Software: Application Software includes programs that do real work for user. Example: Payroll systems, Inventory Control, Manage student database, Word Processor, Spreadsheet and Database Management System etc., 5
  • 6. System Software: Operating System: • Operating System is a software, which makes a computer to actually work. • It is the software the enables all the programs we use. • The OS organizes and controls the hardware. • OS acts as an interface between the application programs and the machine hardware. • Examples: Windows, Linux, Unix and Mac OS, etc., 6
  • 7. System Software (contd): Source Languages Target Languages ‘C’ language ‘C’ language ‘Pascal’ language Machine language FORTRAN language C++ language ADA language Compiler: A compiler is a program that reads a program in one language – the source language and translates into an equivalent program in another language – the target language. 7
  • 8. System Software (contd): Loader: A loader is the part of an operating system that is responsible for loading programs into memory, preparing them for execution and then executing them. The loader is usually a part of the operating system's kernel and usually is loaded at system boot time and stays in memory until the system is rebooted, shut down, or powered off. In Unix, the loader is the handler for the system call execve(). 8
  • 9. System Software (contd): Linker: A linker or link editor is a program that takes one or more objects generated by compilers and assembles them into a single executable program. Linkers can take objects from a collection called a library. The objects are program modules containing machine code and information for the linker. The linker takes care of arranging the objects in a program's address space. 9
  • 10. System Software (contd): Interpreter: An interpreter is a computer program that translates and executes instructions written in a computer programming language line-by- line, unit by unit etc., An interpreter needs to be able to analyze, or parse, instructions written in the source language. Example: Lisp systems, etc., 10
  • 11. Application Software: Word Processors: Word processing is a tool that helps user in creating, editing, and printing documents. Word processors will normally have the following capabilities built into them: » Spell checking » Standard layouts for normal documents » Have some characters appear in bold print, italics, or underlined » Center lines, make text line up on the left side of the paper, or the right side of the paper » Save the document so it can be used again » print the document. Examples: WordPerfect and Microsoft Word 11
  • 12. Application Software (contd…): Spreadsheets: The spreadsheet packages are designed to use numbers and formulas to do calculations with ease. Examples of spreadsheets include: » Budgets » Payrolls » Grade Calculations » Address Lists The most commonly used spreadsheet programs are Microsoft Excel and Lotus 123. 12
  • 13. Application Software (contd…): Graphic Presentations: The presentation programs can make giving presentations and using overheads easier. Other uses include: » Slide Shows » Repeating Computer Presentations on a computer monitor » Using Sound and animation in slide shows The most recognized graphic presentation programs are Microsoft PowerPoint and Harvard Graphics. 13
  • 14. Application Software (contd…): Database Management System (DBMS): • A DBMS is a software tool that allows multiple users to store, access, and process data into useful information. • Database programs are designed for these types of applications: » Membership lists » Student lists » Grade reports » Instructor schedules All of these have to be maintained so you can find what you need quickly and accurately. • Example:Microsoft Access, dBASE, Oracle. 14
  • 15. What is Assemblers? • An assembler is a type of computer program that interprets software programs written in assembly language into machine language, code and instructions that can be executed by a computer. • An assembler enables software and application developers to access, operate and manage a computer's hardware architecture and components. • An assembler is sometimes referred to as the compiler of assembly language. It also provides the services of an interpreter. 15
  • 16. What Do Compilers Do • A compiler acts as a translator, transforming human-oriented programming languages into computer-oriented machine languages. – Ignore machine-dependent details for programmer 16 Programming Language (Source) Compiler Machine Language (Target)
  • 17. What Do Compilers Do • Compilers may generate three types of code: – Pure Machine Code • Machine instruction set without assuming the existence of any operating system or library. • Mostly being OS or embedded applications. – Augmented Machine Code • Code with OS routines and runtime support routines. • More often – Virtual Machine Code • Virtual instructions, can be run on any architecture with a virtual machine interpreter or a just-in-time compiler • Ex. Java 17
  • 18. What Do Compilers Do ? • Another way that compilers differ from one another is in the format of the target machine code they generate: – Assembly or other source format – Relocatable binary • Relative address • A linkage step is required – Absolute binary • Absolute address • Can be executed directly 18
  • 19. The Structure of a Compiler 19 Scanner Parser Semantic Routines Code Generator Optimizer Source Program Tokens Syntactic Structure Symbol and Attribute Tables (Used by all Phases of The Compiler) (Character Stream) Intermediate Representation Target machine code
  • 20. Interpreter • It helps the user to execute the source program with a few differences as compared to compilers. The source program is just like English statements in both interpreters and compilers. • Interpreter reads the program line by line, whereas in compiler the entire program is read by the compiler, which then generates the object codes. • Interpreter directly executes the program from its source code. Due to this, every time the source code should be inputted to the interpreter. • In other words, each line is converted into the object codes. It takes very less time for execution because no intermediate object code is generated. 20
  • 23. Waterfall Model • Requirements – defines needed information, function, behavior, performance and interfaces. • Design – data structures, software architecture, interface representations, algorithmic details. • Implementation – source code, database, user documentation, testing. 1.1 Waterfall Model 23
  • 24. Waterfall Strengths • Easy to understand, easy to use • Provides structure to inexperienced staff • Milestones are well understood • Sets requirements stability • Good for management control (plan, staff, track) • Works well when quality is more important than cost or schedule 24
  • 25. Waterfall Deficiencies • All requirements must be known upfront • Deliverables created for each phase are considered frozen – inhibits flexibility • Can give a false impression of progress • Does not reflect problem-solving nature of software development – iterations of phases • Integration is one big bang at the end • Little opportunity for customer to preview the system (until it may be too late) 25
  • 26. When to use the Waterfall Model • Requirements are very well known • Product definition is stable • Technology is understood • New version of an existing product • Porting an existing product to a new platform. 26
  • 27. V-Shaped SDLC Model • A variant of the Waterfall that emphasizes the verification and validation of the product. • Testing of the product is planned in parallel with a corresponding phase of development V-Shaped SDLC Model 27
  • 28. V-Shaped Steps • Project and Requirements Planning – allocate resources • Product Requirements and Specification Analysis – complete specification of the software system • Architecture or High-Level Design – defines how software functions fulfill the design • Detailed Design – develop algorithms for each architectural component • Production, operation and maintenance – provide for enhancement and corrections • System and acceptance testing – check the entire software system in its environment • Integration and Testing – check that modules interconnect correctly • Unit testing – check that each module acts as expected • Coding – transform algorithms into software 28
  • 29. V-Shaped Strengths • Emphasize planning for verification and validation of the product in early stages of product development • Each deliverable must be testable • Project management can track progress by milestones • Easy to use 29
  • 30. V-Shaped Weaknesses • Does not easily handle concurrent events • Does not handle iterations or phases • Does not easily handle dynamic changes in requirements • Does not contain risk analysis activities 30
  • 31. Structured Evolutionary Prototyping Model • Developers build a prototype during the requirements phase • Prototype is evaluated by end users • Users give corrective feedback • Developers further refine the prototype • When the user is satisfied, the prototype code is brought up to the standards needed for a final product. 31
  • 32. Structured Evolutionary Prototyping Steps • A preliminary project plan is developed • An partial high-level paper model is created • The model is source for a partial requirements specification • A prototype is built with basic and critical attributes • The designer builds – the database – user interface – algorithmic functions • The designer demonstrates the prototype, the user evaluates for problems and suggests improvements. • This loop continues until the user is satisfied 32
  • 33. Structured Evolutionary Prototyping Strengths • Customers can “see” the system requirements as they are being gathered • Developers learn from customers • A more accurate end product • Unexpected requirements accommodated • Allows for flexible design and development • Steady, visible signs of progress produced • Interaction with the prototype stimulates awareness of additional needed functionality 33
  • 34. Structured Evolutionary Prototyping Weaknesses • Tendency to abandon structured program development for “code-and-fix” development • Bad reputation for “quick-and-dirty” methods • Overall maintainability may be overlooked • The customer may want the prototype delivered. • Process may continue forever (scope creep) 34
  • 35. Spiral SDLC Model • Adds risk analysis, and 4gl RAD prototyping to the waterfall model • Each cycle involves the same sequence of steps as the waterfall process model Spiral SDLC Model 35
  • 36. Spiral Model Strengths • Provides early indication of insurmountable risks, without much cost • Users see the system early because of rapid prototyping tools • Critical high-risk functions are developed first • The design does not have to be perfect • Users can be closely tied to all lifecycle steps • Early and frequent feedback from users • Cumulative costs assessed frequently 36
  • 37. Spiral Model Weaknesses • Time spent for evaluating risks too large for small or low-risk projects • Time spent planning, resetting objectives, doing risk analysis and prototyping may be excessive • The model is complex • Risk assessment expertise is required • Spiral may continue indefinitely • Developers must be reassigned during non-development phase activities • May be hard to define objective, verifiable milestones that indicate readiness to proceed through the next iteration 37
  • 38. Reference Book Reference 1. Fundamentals of Computer Programming and IT: For TU By Kamthane, ITL ESL 2. Software Engineering Research, Management and Applications edited by Roger Lee 3. Software Engineering By Sommerville 4. Software Engineering By A.A.Puntambekar 5. Software Engineering: A Practitioner's Approach By Roger S. Pressman Image Reference • https://www.google.co.in/search?biw=1517&bih=714&noj=1&tbm =isch&sa=1&q=Software+development+model+in+software+engi neering&oq=Software+development+model+in+software+engineer ing&gs_l=img.3...119319.126153.0.127260.31.24.0.0.0.4.478.3443 .0j2j7j1j2.12.0.msedr...0...1c.1.60.img..29.2.929.43o3LKW7tvk 38