SlideShare a Scribd company logo
11
Most read
13
Most read
16
Most read
E.M.G.YADAVA WOMEN’S COLLEGE, MADURAI-14
(An Autonomous Institution – Affiliated to Madurai Kamaraj University)
Re-accredited (3rd Cycle) with Grade A+ & CGPA 3.51 by NAAC
DEPARTMENT OF COMPUTER SCIENCE
V – Semester
SOFTWARE ENGINEERING
Roger S. Pressman
7th Edition
Mrs. V. JAYAVANI, M.S(IT&M).,
Assistant Professor of Computer Science
UNIT - I
OUTLINE
• TheNatureof Software
• WhatisSoftwareEngineering
• DefiningSoftware
• CharacteristicofSoftware
• SoftwareApplication Domains
• LegacySoftware
1.1 THE NAUTRE OF SOFTWARE
What is Engineering?
It is an application of science, tools and
methods to find cost effective solution to
problem.
What is Software Engineering?
Software engineering is defined as
systematic, disciplined and quantifiable approach
- for the development, operation and
maintenance of software
1.1.1 Defining SOFTWARE
Software is (1) instructions that when
executed provide desired features, function and
performance; (2) data structures that enable the
programs to adequately manipulate information, and
(3) descriptive information in both hard copy and
virtual forms that describes the operation and use of
the programs.
CHARACTERISTICS OF SOFTWARE
1. Software is developed or Engineered. It is not manufactured in the
classical sense.
 Although some similarities exist between software development and
hardware manufacturing, the two activities are fundamentally
different.
 In both activities, high quality is achieved through good design, but
the manufacturing phase for hardware can introduce quality problem
that are nonexistent for software.
 Both activities are dependent on people, but the relationship between
the people applied and work accomplished is entirely different.
 Both activities require the construction of s “Product”, but the
approaches are different.
CHARACTERISTICS OF SOFTWARE (Cont…)
2. Software doesn’t “Wear out”.
Figure: Failure curve for Hardware
Failure rate as a function of time for hardware. The relationship,
often called the “bathtub curve”, indicates the hardware exhibits
relatively high failure rates early in its life. The failure rate rises again as
hardware components suffer from the cumulative effects of dust,
vibration, abuse, temperature extremes, and many other environmental
maladies. State simply, the hardware begins to wear out.
CHARACTERISTICS OF SOFTWARE (Cont…)
Figure: Failure curves for software
When a hardware component wears out, it is replaced by a spare
part. There are no software spare parts. Every software failure indicates an
error in design or in the process through which design was translated into
machine executable code. Therefore, software maintenance involves
considerably more complexity
CHARACTERISTICS OF SOFTWARE (Cont…)
3. Although the industry is moving toward component-based
construction, most software continues to be custom built.
 As an engineering discipline evolves, a collection of standard
design components is created.
 Standard screws and off-the-shelf integrated circuits are only two of
thousands of standard components that are used by mechanical and
electrical engineers as they design new system.
 The reusable components have been created so that the engineer can
concentrate on the truly innovative elements of a design, that is, the
part of the design that represent something new.
 In the hardware world, component reuse is a natural part of the
engineering process.
 In the software world, it is something that has only begun to be
achieved on a broad scale.
1.1.2 Software Application Domains
 System Software
 Application Software
 Engineering / Scientific Software
 Embedded Software
 Product-line Software
 Web Application
 Artificial intelligence Software
Software Application Domains (Cont…)
System Software:
System software is a collection of programs written to
service other programs. It is characterized by heavy interaction with
computer hardware; heavy usage by multiple users; concurrent
operation that requires scheduling, resource sharing, and
sophisticated process management; complex data structures; and
multiple external interfaces.
Ex. Compilers, operating system, drivers etc.
Software Application Domains (Cont…)
Application Software :
Application software consists of standalone programs that solve a
specific business need. Application software is used to control the business
function in real-time.
Ex. E-mail applications, Spread-Sheets.
Engineering /Scientific Software:
Characterized by "number crunching" algorithms. Applications
range from astronomy to volcano logy, from automotive stress analysis to
space shuttle orbital dynamics, and from molecular biology to automated
manufacturing.
Ex. Computer Aided Design (CAD)
Software Application Domains (Cont…)
Embedded Software:
It resides in read-only memory and is used to control
products and systems. Embedded software can perform limited and
esoteric functions.
Ex. GPS Devices, Factory robots
Product-line Software:
Designed to provide a specific capability for use by many
different customers, product line software can focus on a limited and
esoteric marketplace.
Ex. Word processing, spreadsheet, CG, multimedia, etc.
Software Application Domains (Cont…)
Web Applications:
Web apps can be little more than a set of linked hypertext
files. It evolving into sophisticated computing environments that not
only provide standalone features, functions but also integrated with
corporate database and business applications.
Ex. Online auctions, Web mails…
Artificial Intelligence Software:
AI software makes use of non-numerical algorithms to solve
complex problems that are not amenable to computation or
straightforward analysis.
Ex. Robotics, expert system, game playing, etc.
Software New Categories
1. Open-world computing: The challenge for software engineers will be to
develop system and application software that will allow mobile devices,
personal computers and enterprise systems to communicate across vast
networks.
2. Netsourcing: The challenge for software engineers is to architect simple
(e.g: Financial planning) sophisticated applications that provide a benefit
to targeted end-user markets worldwide.
3. Open source: The challenge for software engineers is to build source
code that is self-descriptive, but more importantly, to develop techniques
that will enable both customers and developers to know what changes
have been made & how those changes manifest themselves within the
1.1.3 Legacy Software
Legacy Software…. Were developed decades ago and have been
continually modified to meet changes in business requirements and computing
platforms. The proliferation of such systems is causing headaches for large
organizations who find them costly to maintain and risky to evolve. Legacy
software often evolve for one or more of the following reasons:
 The software must be adapted to meet the needs of new computing
environments or technology.
 The software must be enhanced to implement new business requirements.
 The software must be extended to make it interoperable with other more
modern systems or databases.
 The software must be re-architected to make it viable within a network
environment.
THANK
YOU

More Related Content

PPT
UML Diagrams
PPTX
System Modelling
DOCX
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
PPTX
Modules and modularization criteria
PPTX
Design Model & User Interface Design in Software Engineering
PPTX
Chapter 1 2 - some size factors
PPT
Uml in software engineering
PPTX
Object oriented testing
UML Diagrams
System Modelling
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Modules and modularization criteria
Design Model & User Interface Design in Software Engineering
Chapter 1 2 - some size factors
Uml in software engineering
Object oriented testing

What's hot (20)

PPTX
Grasp patterns and its types
PPTX
Model Based Software Architectures
PPTX
Quality Concept
PPTX
Software requirements specification
PPTX
Object oriented modeling and design
PPT
Uml class Diagram
PDF
State chart diagram
PPTX
PPTX
Quality and productivity factors
PPTX
Overview of UML Diagrams
PDF
Measures of query cost
PPT
Uml class-diagram
PPTX
software cost factor
PPTX
PPTX
Software quality
PPT
Analysis modeling
PDF
INTRODUCTION TO UML DIAGRAMS
PPT
1.1 The nature of software.ppt
PPTX
Design notation
PPTX
Software Engineering Layered Technology Software Process Framework
Grasp patterns and its types
Model Based Software Architectures
Quality Concept
Software requirements specification
Object oriented modeling and design
Uml class Diagram
State chart diagram
Quality and productivity factors
Overview of UML Diagrams
Measures of query cost
Uml class-diagram
software cost factor
Software quality
Analysis modeling
INTRODUCTION TO UML DIAGRAMS
1.1 The nature of software.ppt
Design notation
Software Engineering Layered Technology Software Process Framework
Ad

Similar to Software Engineering (20)

DOCX
software engineering
PPTX
Lect 01
PDF
Software Engineering notes with all diagrams
PPTX
INTRODUCITON TO SOFTWARE(1)_development _cycle.pptx
PPT
Chapter 01
PPT
1. Introduction to software engineering.ppt
PPT
SE Lecture 1.ppt
PPT
SE Lecture 1.ppt
PPT
Introduction to Software Engineering.ppt
PPT
Rekayasa Perangkat Lunak Pertemuan 1 RPL
PDF
LESSON FOR SOFTWARE ENGINEERING BASED ON MODELS
PDF
merged_notes_unit_1_2_3.pdf
PDF
Software Engineering Notes 1 (1) (1).pdf
PPT
Chapter 01
PPTX
Software engineering
PPT
Chapter 01
PPT
Oose unit 1 ppt
PDF
CS-326 Software Engineering for computer.pdf
PPT
SE_MAIN_OKhsjsjshsndndjdjndndmdnnnxnxmd.ppt
software engineering
Lect 01
Software Engineering notes with all diagrams
INTRODUCITON TO SOFTWARE(1)_development _cycle.pptx
Chapter 01
1. Introduction to software engineering.ppt
SE Lecture 1.ppt
SE Lecture 1.ppt
Introduction to Software Engineering.ppt
Rekayasa Perangkat Lunak Pertemuan 1 RPL
LESSON FOR SOFTWARE ENGINEERING BASED ON MODELS
merged_notes_unit_1_2_3.pdf
Software Engineering Notes 1 (1) (1).pdf
Chapter 01
Software engineering
Chapter 01
Oose unit 1 ppt
CS-326 Software Engineering for computer.pdf
SE_MAIN_OKhsjsjshsndndjdjndndmdnnnxnxmd.ppt
Ad

More from JayaKamal (12)

PPT
Introduction to Machine Learning Concepts
PPTX
Trees, Basic Terminology and Binary Trees
PPT
To learn Basic Excel - Data Entry, Formulas and Functions
PPTX
Introduction Linked Lists - Singly Linked List,
PPT
Introduction - Data Structures and Algorithms.ppt
PPTX
What is an Operating Systems?
PPTX
PPTX
Software Engineering
PPTX
Software Engineering
PPTX
Software Engineering
PPTX
Software Engineering
PPTX
Software Engineering
Introduction to Machine Learning Concepts
Trees, Basic Terminology and Binary Trees
To learn Basic Excel - Data Entry, Formulas and Functions
Introduction Linked Lists - Singly Linked List,
Introduction - Data Structures and Algorithms.ppt
What is an Operating Systems?
Software Engineering
Software Engineering
Software Engineering
Software Engineering
Software Engineering

Recently uploaded (20)

PDF
Indian roads congress 037 - 2012 Flexible pavement
PDF
Classroom Observation Tools for Teachers
PDF
Practical Manual AGRO-233 Principles and Practices of Natural Farming
PPTX
Digestion and Absorption of Carbohydrates, Proteina and Fats
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PPTX
History, Philosophy and sociology of education (1).pptx
PDF
Empowerment Technology for Senior High School Guide
DOC
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
PPTX
Introduction to Building Materials
PPTX
CHAPTER IV. MAN AND BIOSPHERE AND ITS TOTALITY.pptx
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
PDF
RMMM.pdf make it easy to upload and study
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PPTX
UNIT III MENTAL HEALTH NURSING ASSESSMENT
PDF
Complications of Minimal Access Surgery at WLH
PDF
Trump Administration's workforce development strategy
PDF
1_English_Language_Set_2.pdf probationary
Indian roads congress 037 - 2012 Flexible pavement
Classroom Observation Tools for Teachers
Practical Manual AGRO-233 Principles and Practices of Natural Farming
Digestion and Absorption of Carbohydrates, Proteina and Fats
Chinmaya Tiranga quiz Grand Finale.pdf
History, Philosophy and sociology of education (1).pptx
Empowerment Technology for Senior High School Guide
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
Introduction to Building Materials
CHAPTER IV. MAN AND BIOSPHERE AND ITS TOTALITY.pptx
Final Presentation General Medicine 03-08-2024.pptx
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
RMMM.pdf make it easy to upload and study
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
Final Presentation General Medicine 03-08-2024.pptx
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
UNIT III MENTAL HEALTH NURSING ASSESSMENT
Complications of Minimal Access Surgery at WLH
Trump Administration's workforce development strategy
1_English_Language_Set_2.pdf probationary

Software Engineering

  • 1. E.M.G.YADAVA WOMEN’S COLLEGE, MADURAI-14 (An Autonomous Institution – Affiliated to Madurai Kamaraj University) Re-accredited (3rd Cycle) with Grade A+ & CGPA 3.51 by NAAC DEPARTMENT OF COMPUTER SCIENCE V – Semester SOFTWARE ENGINEERING Roger S. Pressman 7th Edition Mrs. V. JAYAVANI, M.S(IT&M)., Assistant Professor of Computer Science
  • 2. UNIT - I OUTLINE • TheNatureof Software • WhatisSoftwareEngineering • DefiningSoftware • CharacteristicofSoftware • SoftwareApplication Domains • LegacySoftware
  • 3. 1.1 THE NAUTRE OF SOFTWARE What is Engineering? It is an application of science, tools and methods to find cost effective solution to problem.
  • 4. What is Software Engineering? Software engineering is defined as systematic, disciplined and quantifiable approach - for the development, operation and maintenance of software
  • 5. 1.1.1 Defining SOFTWARE Software is (1) instructions that when executed provide desired features, function and performance; (2) data structures that enable the programs to adequately manipulate information, and (3) descriptive information in both hard copy and virtual forms that describes the operation and use of the programs.
  • 6. CHARACTERISTICS OF SOFTWARE 1. Software is developed or Engineered. It is not manufactured in the classical sense.  Although some similarities exist between software development and hardware manufacturing, the two activities are fundamentally different.  In both activities, high quality is achieved through good design, but the manufacturing phase for hardware can introduce quality problem that are nonexistent for software.  Both activities are dependent on people, but the relationship between the people applied and work accomplished is entirely different.  Both activities require the construction of s “Product”, but the approaches are different.
  • 7. CHARACTERISTICS OF SOFTWARE (Cont…) 2. Software doesn’t “Wear out”. Figure: Failure curve for Hardware Failure rate as a function of time for hardware. The relationship, often called the “bathtub curve”, indicates the hardware exhibits relatively high failure rates early in its life. The failure rate rises again as hardware components suffer from the cumulative effects of dust, vibration, abuse, temperature extremes, and many other environmental maladies. State simply, the hardware begins to wear out.
  • 8. CHARACTERISTICS OF SOFTWARE (Cont…) Figure: Failure curves for software When a hardware component wears out, it is replaced by a spare part. There are no software spare parts. Every software failure indicates an error in design or in the process through which design was translated into machine executable code. Therefore, software maintenance involves considerably more complexity
  • 9. CHARACTERISTICS OF SOFTWARE (Cont…) 3. Although the industry is moving toward component-based construction, most software continues to be custom built.  As an engineering discipline evolves, a collection of standard design components is created.  Standard screws and off-the-shelf integrated circuits are only two of thousands of standard components that are used by mechanical and electrical engineers as they design new system.  The reusable components have been created so that the engineer can concentrate on the truly innovative elements of a design, that is, the part of the design that represent something new.  In the hardware world, component reuse is a natural part of the engineering process.  In the software world, it is something that has only begun to be achieved on a broad scale.
  • 10. 1.1.2 Software Application Domains  System Software  Application Software  Engineering / Scientific Software  Embedded Software  Product-line Software  Web Application  Artificial intelligence Software
  • 11. Software Application Domains (Cont…) System Software: System software is a collection of programs written to service other programs. It is characterized by heavy interaction with computer hardware; heavy usage by multiple users; concurrent operation that requires scheduling, resource sharing, and sophisticated process management; complex data structures; and multiple external interfaces. Ex. Compilers, operating system, drivers etc.
  • 12. Software Application Domains (Cont…) Application Software : Application software consists of standalone programs that solve a specific business need. Application software is used to control the business function in real-time. Ex. E-mail applications, Spread-Sheets. Engineering /Scientific Software: Characterized by "number crunching" algorithms. Applications range from astronomy to volcano logy, from automotive stress analysis to space shuttle orbital dynamics, and from molecular biology to automated manufacturing. Ex. Computer Aided Design (CAD)
  • 13. Software Application Domains (Cont…) Embedded Software: It resides in read-only memory and is used to control products and systems. Embedded software can perform limited and esoteric functions. Ex. GPS Devices, Factory robots Product-line Software: Designed to provide a specific capability for use by many different customers, product line software can focus on a limited and esoteric marketplace. Ex. Word processing, spreadsheet, CG, multimedia, etc.
  • 14. Software Application Domains (Cont…) Web Applications: Web apps can be little more than a set of linked hypertext files. It evolving into sophisticated computing environments that not only provide standalone features, functions but also integrated with corporate database and business applications. Ex. Online auctions, Web mails… Artificial Intelligence Software: AI software makes use of non-numerical algorithms to solve complex problems that are not amenable to computation or straightforward analysis. Ex. Robotics, expert system, game playing, etc.
  • 15. Software New Categories 1. Open-world computing: The challenge for software engineers will be to develop system and application software that will allow mobile devices, personal computers and enterprise systems to communicate across vast networks. 2. Netsourcing: The challenge for software engineers is to architect simple (e.g: Financial planning) sophisticated applications that provide a benefit to targeted end-user markets worldwide. 3. Open source: The challenge for software engineers is to build source code that is self-descriptive, but more importantly, to develop techniques that will enable both customers and developers to know what changes have been made & how those changes manifest themselves within the
  • 16. 1.1.3 Legacy Software Legacy Software…. Were developed decades ago and have been continually modified to meet changes in business requirements and computing platforms. The proliferation of such systems is causing headaches for large organizations who find them costly to maintain and risky to evolve. Legacy software often evolve for one or more of the following reasons:  The software must be adapted to meet the needs of new computing environments or technology.  The software must be enhanced to implement new business requirements.  The software must be extended to make it interoperable with other more modern systems or databases.  The software must be re-architected to make it viable within a network environment.