SlideShare a Scribd company logo
Software Engineering-
Unit 1
INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 1
Computer Software
What is IT?
Computer software is the product that software professionals build and then
support over the long term. It encompasses programs that execute within a
computer of any size and architecture, content that is presented as the
computer programs execute, and descriptive information in both hard copy and
virtual forms that encompass virtually any electronic media. Software
engineering encompasses a process, a collection of methods (practice) and an
array of tools that allow professionals to build high quality computer software.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 2
Computer Software
Who does it?
Software engineers build and support software, and virtually everyone in
the industrialized world uses it either directly or indirectly.
Why is it Important?
Software is important because it affects nearly every aspect of our lives
and has become pervasive in our commerce, our culture, and our
everyday activities. Software engineering is important because it enables
us to build complex systems in a timely manner and with high quality.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 3
Computer Software
What are the steps?
You build computer software like you build any successful product, by
applying an agile, adaptable process that leads to a high-quality result that
meets the needs of the people who will use the product. You apply a
software engineering approach.
What is the work product?
From the point of view of a software engineer, the work product is the set
of programs, content (data), and other work products that are computer
software. But from the user’s viewpoint, the work product is the resultant
information that somehow makes the user’s world better
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 4
Software Crisis
Software Crisis is a term used in computer science for the
difficulty of writing useful and efficient computer programs
in the required time .software crisis was due to using same
workforce, same methods, same tools even though rapidly
increasing in software demand, complexity of software and
software challenges. With increase in the complexity of
software, many software problems arose because existing
methods were insufficient.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 5
Software Crisis
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 6
Software Crisis
Causes of Software Crisis:
1. The cost of owning and maintaining software was as expensive as developing the
software
2. At that time Projects was running over-time
3. At that time Software was very inefficient
4. The quality of software was low quality
5. Software often did not meet requirements
6. The average software project overshoots its schedule by half
7. At that time Software was never delivered
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 7
Solution of Software Crisis:
There is no single solution to the crisis. One possible solution of software crisis
is Software Engineering because software engineering is a systematic,
disciplined and quantifiable approach. For preventing software crisis, there are
some guidelines:
1. Reduction in software over-budget
2. The quality of software must be high
3. Less time needed for software project
4. Experience working team member on software project
5. Software must be delivered
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 8
Software Engineering
Although hundreds of authors have developed personal
definitions of software engineering, a definition proposed
by Fritz Bauer at the seminal conference on the subject still
serves as a basis for discussion:
[Software engineering is] the establishment and use of
sound engineering principles in order to obtain
economically software that is reliable and works efficiently
on real machines
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 9
Software Engineering
The IEEE [IEE93a] has developed a more comprehensive
definition when it states:
Software Engineering: (1) The application of a systematic,
disciplined, quantifiable approach to the development,
operation, and maintenance of software; that is, the
application of engineering to software.
(2) The study of approaches as in (1).
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 10
Software Engineering
Software engineering is a layered technology.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 11
Software Engineering
The Quality Focus:
Any engineering approach (including software engineering) must rest
on an organizational commitment to quality. Total quality
management, Six Sigma, and similar philosophies foster a continuous
process improvement culture, and it is this culture that ultimately
leads to the development of increasingly more effective approaches
to software engineering. The bedrock that supports software
engineering is a quality focus.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 12
Software Engineering
Process:
The foundation for software engineering is the process layer. The software
engineering process is the glue that holds the technology layers together
and enables rational and timely development of computer software.
Process defines a framework. that must be established for effective
delivery of software engineering technology.
The software process forms the basis for management control of software
projects and establishes the context in which technical methods are
applied, work products (models, documents, data, reports, forms, etc.)
are produced, milestones are established, quality is ensured, and change
is properly managed.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 13
Software Engineering
Methods:
Software engineering methods provide the technical how-to’s for
building software. Methods encompass a broad array of tasks that
include communication, requirements analysis, design modeling,
program construction, testing, and support. Software engineering
methods rely on a set of basic principles that govern each area of the
technology and include modeling activities and other descriptive
techniques.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 14
Software Engineering
Tools:
Software engineering tools provide automated or semi
automated support for the process and the methods. When
tools are integrated so that information created by one tool
can be used by another, a system for the support of
software development, called computer-aided software
engineering, is established.
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 15
References:
https://www.geeksforgeeks.org/software-engineering-software-crisis/
7th edition Software Engineering A Practitioners Approach by Roger S. Pressman
8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 16

More Related Content

What's hot

Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...
Drusilla918
 
software characteristics
software characteristicssoftware characteristics
software characteristics
Muhammad Sikandar Mustafa
 
software engineering models
software engineering models software engineering models
software engineering models
mansab MIRZA
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
ans ali raza
 
Srs (software requirement specification) in software engineering basics by ra...
Srs (software requirement specification) in software engineering basics by ra...Srs (software requirement specification) in software engineering basics by ra...
Srs (software requirement specification) in software engineering basics by ra...
Ram Paliwal
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
Baskarkncet
 
SDLC RAD model
SDLC RAD modelSDLC RAD model
SDLC RAD model
Jay Sharma
 
Software engineering tutorial
Software engineering tutorial Software engineering tutorial
Software engineering tutorial
Ahmed Elshal
 
software process
software process software process
software process
Muhammad Sikandar Mustafa
 
Week 8 final assesement presentation
Week 8  final assesement presentationWeek 8  final assesement presentation
Week 8 final assesement presentation
matumba Thuso
 
software product and its characteristics
software product and its characteristicssoftware product and its characteristics
software product and its characteristics
Priyanka Pradhan
 
Reuse landscape
Reuse landscapeReuse landscape
Reuse landscape
sommerville-videos
 
RAD Model
RAD ModelRAD Model
What is software engineering
What is software engineeringWhat is software engineering
What is software engineering
Jennifer Polack
 
Unit1
Unit1Unit1
Unit1
anuragmbst
 
Software engineering
Software engineering Software engineering
Software engineering
MOHAMED RIYAZUDEEN
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Ahmed Alageed
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERING
Preeti Mishra
 

What's hot (18)

Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...
 
software characteristics
software characteristicssoftware characteristics
software characteristics
 
software engineering models
software engineering models software engineering models
software engineering models
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Srs (software requirement specification) in software engineering basics by ra...
Srs (software requirement specification) in software engineering basics by ra...Srs (software requirement specification) in software engineering basics by ra...
Srs (software requirement specification) in software engineering basics by ra...
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
 
SDLC RAD model
SDLC RAD modelSDLC RAD model
SDLC RAD model
 
Software engineering tutorial
Software engineering tutorial Software engineering tutorial
Software engineering tutorial
 
software process
software process software process
software process
 
Week 8 final assesement presentation
Week 8  final assesement presentationWeek 8  final assesement presentation
Week 8 final assesement presentation
 
software product and its characteristics
software product and its characteristicssoftware product and its characteristics
software product and its characteristics
 
Reuse landscape
Reuse landscapeReuse landscape
Reuse landscape
 
RAD Model
RAD ModelRAD Model
RAD Model
 
What is software engineering
What is software engineeringWhat is software engineering
What is software engineering
 
Unit1
Unit1Unit1
Unit1
 
Software engineering
Software engineering Software engineering
Software engineering
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERING
 

Similar to Software and software engineering basics by ram k paliwal

SE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.docSE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.doc
DrPreethiD1
 
SE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.docSE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.doc
DrPreethiD1
 
The Product and Process(1).pdf
The Product and Process(1).pdfThe Product and Process(1).pdf
The Product and Process(1).pdf
ShivareddyGangam
 
SE Introduction sharbani bhattacharya
SE Introduction sharbani bhattacharyaSE Introduction sharbani bhattacharya
SE Introduction sharbani bhattacharya
Sharbani Bhattacharya
 
IRJET- Online Programming Environment
IRJET- Online Programming EnvironmentIRJET- Online Programming Environment
IRJET- Online Programming Environment
IRJET Journal
 
Introduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docxIntroduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docx
mariuse18nolet
 
software
softwaresoftware
software
mansab MIRZA
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1
Samura Daniel
 
1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx
jackiewalcutt
 
Lecture-1-3.pptx
Lecture-1-3.pptxLecture-1-3.pptx
Lecture-1-3.pptx
FarHana74914
 
Unit1
Unit1Unit1
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 ppt
Dr VISU P
 
OOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.pptOOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.ppt
itadmin33
 
Software Engineering Introduction by Dr M Zhu
Software Engineering Introduction by Dr M ZhuSoftware Engineering Introduction by Dr M Zhu
Software Engineering Introduction by Dr M Zhu
AmirrulRasyid
 
Software Engineering - Ch1 introduction
Software Engineering - Ch1 introductionSoftware Engineering - Ch1 introduction
Software Engineering - Ch1 introduction
Ra'Fat Al-Msie'deen
 
“Scrumbear” framework for solving traditional scrum model problems
“Scrumbear” framework for solving traditional scrum model problems“Scrumbear” framework for solving traditional scrum model problems
“Scrumbear” framework for solving traditional scrum model problems
journalBEEI
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
ryan aja
 
Ch1 introduction
Ch1 introductionCh1 introduction
Ch1 introduction
software-engineering-book
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
AlenaDion
 
Lecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxLecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptx
YaseenNazir3
 

Similar to Software and software engineering basics by ram k paliwal (20)

SE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.docSE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.doc
 
SE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.docSE-TEXT-BOOK_Material.doc
SE-TEXT-BOOK_Material.doc
 
The Product and Process(1).pdf
The Product and Process(1).pdfThe Product and Process(1).pdf
The Product and Process(1).pdf
 
SE Introduction sharbani bhattacharya
SE Introduction sharbani bhattacharyaSE Introduction sharbani bhattacharya
SE Introduction sharbani bhattacharya
 
IRJET- Online Programming Environment
IRJET- Online Programming EnvironmentIRJET- Online Programming Environment
IRJET- Online Programming Environment
 
Introduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docxIntroduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docx
 
software
softwaresoftware
software
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1
 
1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx
 
Lecture-1-3.pptx
Lecture-1-3.pptxLecture-1-3.pptx
Lecture-1-3.pptx
 
Unit1
Unit1Unit1
Unit1
 
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 ppt
 
OOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.pptOOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.ppt
 
Software Engineering Introduction by Dr M Zhu
Software Engineering Introduction by Dr M ZhuSoftware Engineering Introduction by Dr M Zhu
Software Engineering Introduction by Dr M Zhu
 
Software Engineering - Ch1 introduction
Software Engineering - Ch1 introductionSoftware Engineering - Ch1 introduction
Software Engineering - Ch1 introduction
 
“Scrumbear” framework for solving traditional scrum model problems
“Scrumbear” framework for solving traditional scrum model problems“Scrumbear” framework for solving traditional scrum model problems
“Scrumbear” framework for solving traditional scrum model problems
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Ch1 introduction
Ch1 introductionCh1 introduction
Ch1 introduction
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Lecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxLecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptx
 

More from Ram Paliwal

Mis classification By Ram K Paliwal
Mis classification By Ram K PaliwalMis classification By Ram K Paliwal
Mis classification By Ram K Paliwal
Ram Paliwal
 
Management inofrmation system basics by ram k paliwal
Management inofrmation system basics by ram k paliwalManagement inofrmation system basics by ram k paliwal
Management inofrmation system basics by ram k paliwal
Ram Paliwal
 
Database design (entity attribute and its types) unit 2 part 4
Database design (entity attribute and its types)  unit 2 part 4Database design (entity attribute and its types)  unit 2 part 4
Database design (entity attribute and its types) unit 2 part 4
Ram Paliwal
 
Database design (entity, entity set and entity type) unit 2 part 3
Database design (entity, entity set and entity type)  unit 2 part 3Database design (entity, entity set and entity type)  unit 2 part 3
Database design (entity, entity set and entity type) unit 2 part 3
Ram Paliwal
 
Database design (conceptual, logical and physical design) unit 2 part 2
Database design (conceptual, logical and physical design)  unit 2 part 2Database design (conceptual, logical and physical design)  unit 2 part 2
Database design (conceptual, logical and physical design) unit 2 part 2
Ram Paliwal
 
Database development life cycle unit 2 part 1
Database development life cycle  unit 2 part 1Database development life cycle  unit 2 part 1
Database development life cycle unit 2 part 1
Ram Paliwal
 
Memory hierarchy unit 2 by ram k paliwal
Memory hierarchy  unit 2 by ram k paliwalMemory hierarchy  unit 2 by ram k paliwal
Memory hierarchy unit 2 by ram k paliwal
Ram Paliwal
 
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwal
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwalCpu register, instruction exucution and interrupts unit 1 by ram k paliwal
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwal
Ram Paliwal
 
System component and system calls unit 1 by ram k paliwal
System component and system calls unit 1 by ram k paliwalSystem component and system calls unit 1 by ram k paliwal
System component and system calls unit 1 by ram k paliwal
Ram Paliwal
 
Types of operating system unit 1 by Ram K Paliwal
Types of operating system  unit 1 by Ram K PaliwalTypes of operating system  unit 1 by Ram K Paliwal
Types of operating system unit 1 by Ram K Paliwal
Ram Paliwal
 
Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2
Ram Paliwal
 
Database models unit 1 part 2
Database models unit 1  part 2Database models unit 1  part 2
Database models unit 1 part 2
Ram Paliwal
 
Database overview unit 4 part 1
Database overview unit 4  part 1Database overview unit 4  part 1
Database overview unit 4 part 1
Ram Paliwal
 
Database development life cycle unit 2 part 1
Database development life cycle  unit 2 part 1Database development life cycle  unit 2 part 1
Database development life cycle unit 2 part 1
Ram Paliwal
 
Operating system basics function of os unit 1 by ram k paliwal part 1
Operating system basics function of os unit 1 by ram k paliwal part 1Operating system basics function of os unit 1 by ram k paliwal part 1
Operating system basics function of os unit 1 by ram k paliwal part 1
Ram Paliwal
 
Do lecommerce
Do lecommerceDo lecommerce
Do lecommerce
Ram Paliwal
 

More from Ram Paliwal (16)

Mis classification By Ram K Paliwal
Mis classification By Ram K PaliwalMis classification By Ram K Paliwal
Mis classification By Ram K Paliwal
 
Management inofrmation system basics by ram k paliwal
Management inofrmation system basics by ram k paliwalManagement inofrmation system basics by ram k paliwal
Management inofrmation system basics by ram k paliwal
 
Database design (entity attribute and its types) unit 2 part 4
Database design (entity attribute and its types)  unit 2 part 4Database design (entity attribute and its types)  unit 2 part 4
Database design (entity attribute and its types) unit 2 part 4
 
Database design (entity, entity set and entity type) unit 2 part 3
Database design (entity, entity set and entity type)  unit 2 part 3Database design (entity, entity set and entity type)  unit 2 part 3
Database design (entity, entity set and entity type) unit 2 part 3
 
Database design (conceptual, logical and physical design) unit 2 part 2
Database design (conceptual, logical and physical design)  unit 2 part 2Database design (conceptual, logical and physical design)  unit 2 part 2
Database design (conceptual, logical and physical design) unit 2 part 2
 
Database development life cycle unit 2 part 1
Database development life cycle  unit 2 part 1Database development life cycle  unit 2 part 1
Database development life cycle unit 2 part 1
 
Memory hierarchy unit 2 by ram k paliwal
Memory hierarchy  unit 2 by ram k paliwalMemory hierarchy  unit 2 by ram k paliwal
Memory hierarchy unit 2 by ram k paliwal
 
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwal
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwalCpu register, instruction exucution and interrupts unit 1 by ram k paliwal
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwal
 
System component and system calls unit 1 by ram k paliwal
System component and system calls unit 1 by ram k paliwalSystem component and system calls unit 1 by ram k paliwal
System component and system calls unit 1 by ram k paliwal
 
Types of operating system unit 1 by Ram K Paliwal
Types of operating system  unit 1 by Ram K PaliwalTypes of operating system  unit 1 by Ram K Paliwal
Types of operating system unit 1 by Ram K Paliwal
 
Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2
 
Database models unit 1 part 2
Database models unit 1  part 2Database models unit 1  part 2
Database models unit 1 part 2
 
Database overview unit 4 part 1
Database overview unit 4  part 1Database overview unit 4  part 1
Database overview unit 4 part 1
 
Database development life cycle unit 2 part 1
Database development life cycle  unit 2 part 1Database development life cycle  unit 2 part 1
Database development life cycle unit 2 part 1
 
Operating system basics function of os unit 1 by ram k paliwal part 1
Operating system basics function of os unit 1 by ram k paliwal part 1Operating system basics function of os unit 1 by ram k paliwal part 1
Operating system basics function of os unit 1 by ram k paliwal part 1
 
Do lecommerce
Do lecommerceDo lecommerce
Do lecommerce
 

Recently uploaded

Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Soumen Santra
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
zwunae
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
SyedAbiiAzazi1
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 
New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
wisnuprabawa3
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
obonagu
 
bank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdfbank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdf
Divyam548318
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
gerogepatton
 
sieving analysis and results interpretation
sieving analysis and results interpretationsieving analysis and results interpretation
sieving analysis and results interpretation
ssuser36d3051
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
nooriasukmaningtyas
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
ChristineTorrepenida1
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
Kerry Sado
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
ihlasbinance2003
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
Series of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.pptSeries of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.ppt
PauloRodrigues104553
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理
一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理
一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理
skuxot
 

Recently uploaded (20)

Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 
New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
 
bank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdfbank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdf
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
 
sieving analysis and results interpretation
sieving analysis and results interpretationsieving analysis and results interpretation
sieving analysis and results interpretation
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
Series of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.pptSeries of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.ppt
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理
一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理
一比一原版(UC Berkeley毕业证)加利福尼亚大学|伯克利分校毕业证成绩单专业办理
 

Software and software engineering basics by ram k paliwal

  • 1. Software Engineering- Unit 1 INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 1
  • 2. Computer Software What is IT? Computer software is the product that software professionals build and then support over the long term. It encompasses programs that execute within a computer of any size and architecture, content that is presented as the computer programs execute, and descriptive information in both hard copy and virtual forms that encompass virtually any electronic media. Software engineering encompasses a process, a collection of methods (practice) and an array of tools that allow professionals to build high quality computer software. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 2
  • 3. Computer Software Who does it? Software engineers build and support software, and virtually everyone in the industrialized world uses it either directly or indirectly. Why is it Important? Software is important because it affects nearly every aspect of our lives and has become pervasive in our commerce, our culture, and our everyday activities. Software engineering is important because it enables us to build complex systems in a timely manner and with high quality. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 3
  • 4. Computer Software What are the steps? You build computer software like you build any successful product, by applying an agile, adaptable process that leads to a high-quality result that meets the needs of the people who will use the product. You apply a software engineering approach. What is the work product? From the point of view of a software engineer, the work product is the set of programs, content (data), and other work products that are computer software. But from the user’s viewpoint, the work product is the resultant information that somehow makes the user’s world better 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 4
  • 5. Software Crisis Software Crisis is a term used in computer science for the difficulty of writing useful and efficient computer programs in the required time .software crisis was due to using same workforce, same methods, same tools even though rapidly increasing in software demand, complexity of software and software challenges. With increase in the complexity of software, many software problems arose because existing methods were insufficient. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 5
  • 6. Software Crisis 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 6
  • 7. Software Crisis Causes of Software Crisis: 1. The cost of owning and maintaining software was as expensive as developing the software 2. At that time Projects was running over-time 3. At that time Software was very inefficient 4. The quality of software was low quality 5. Software often did not meet requirements 6. The average software project overshoots its schedule by half 7. At that time Software was never delivered 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 7
  • 8. Solution of Software Crisis: There is no single solution to the crisis. One possible solution of software crisis is Software Engineering because software engineering is a systematic, disciplined and quantifiable approach. For preventing software crisis, there are some guidelines: 1. Reduction in software over-budget 2. The quality of software must be high 3. Less time needed for software project 4. Experience working team member on software project 5. Software must be delivered 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 8
  • 9. Software Engineering Although hundreds of authors have developed personal definitions of software engineering, a definition proposed by Fritz Bauer at the seminal conference on the subject still serves as a basis for discussion: [Software engineering is] the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 9
  • 10. Software Engineering The IEEE [IEE93a] has developed a more comprehensive definition when it states: Software Engineering: (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1). 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 10
  • 11. Software Engineering Software engineering is a layered technology. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 11
  • 12. Software Engineering The Quality Focus: Any engineering approach (including software engineering) must rest on an organizational commitment to quality. Total quality management, Six Sigma, and similar philosophies foster a continuous process improvement culture, and it is this culture that ultimately leads to the development of increasingly more effective approaches to software engineering. The bedrock that supports software engineering is a quality focus. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 12
  • 13. Software Engineering Process: The foundation for software engineering is the process layer. The software engineering process is the glue that holds the technology layers together and enables rational and timely development of computer software. Process defines a framework. that must be established for effective delivery of software engineering technology. The software process forms the basis for management control of software projects and establishes the context in which technical methods are applied, work products (models, documents, data, reports, forms, etc.) are produced, milestones are established, quality is ensured, and change is properly managed. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 13
  • 14. Software Engineering Methods: Software engineering methods provide the technical how-to’s for building software. Methods encompass a broad array of tasks that include communication, requirements analysis, design modeling, program construction, testing, and support. Software engineering methods rely on a set of basic principles that govern each area of the technology and include modeling activities and other descriptive techniques. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 14
  • 15. Software Engineering Tools: Software engineering tools provide automated or semi automated support for the process and the methods. When tools are integrated so that information created by one tool can be used by another, a system for the support of software development, called computer-aided software engineering, is established. 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 15
  • 16. References: https://www.geeksforgeeks.org/software-engineering-software-crisis/ 7th edition Software Engineering A Practitioners Approach by Roger S. Pressman 8/2/2019 RAM K PALIWAL - INTRODUCTION TO SOFTWARE AND SOFTWARE ENGINEERING - UNIT 1 16

Editor's Notes

  1. software is an information transformer—producing, managing, acquiring, modifying, displaying, or transmitting information that can be as simple as a single bit or as complex as a multimedia presentation derived from data acquired from dozens of independent sources. As the vehicle used to deliver the product, software acts as the basis for the control of the computer (operating systems), the communication of information (networks), and the creation and control of other programs (software tools and environments).
  2. Computer software continues to be the single most important technology on the world stage. And it’s also a prime example of the law of unintended consequences. Fifty years ago no one could have predicted that software would become an indispensable technology for business, science, and engineering; that software would enable the creation of new technologies (e.g., genetic engineering and nanotechnology), the extension of existing technologies (e.g., telecommunications), and the radical change in older technologies (e.g., the printing industry); that software would be the driving force behind the personal computer revolution; that shrink-wrapped software products would be purchased by consumers in neighborhood malls; that software would slowly evolve from a product to a service as “on-demand” software companies deliver just-in-time functionality via a Web browser; No one could foresee that software would become embedded in systems of all kinds: transportation, medical, telecommunications, military, industrial, entertainment, office machines, . . . the list is almost endless. And if you believe the law of unintended consequences, there are many effects that we cannot yet predict. No one could predict that millions of computer programs would have to be corrected, adapted, and enhanced as time passed. The burden of performing these “maintenance” activities would absorb more people and more resources than all work applied to the creation of new software.
  3. You will be tempted to add to this definition. It says little about the technical aspects of software quality; it does not directly address the need for customer satisfaction or timely product delivery; it omits mention of the importance of measurement and metrics; it does not state the importance of an effective process. And yet, Bauer’s definition provides us with a baseline. What are the “sound engineering principles” that can be applied to computer software development? How do we “economically” build software so that it is “reliable”? What is required to create computer programs that work “efficiently” on not one but many different “real machines”? These are the questions that continue to challenge software engineers.
  4. And yet, a “systematic, disciplined, and quantifiable” approach applied by one software team may be burdensome to another. We need discipline, but we also need adaptability and agility.