SlideShare una empresa de Scribd logo
1 de 22
An Introduction to
Software Engineering
By: M. B Suratkar, Dept. of Computer Science
Bangurnagar Degree College, Dandeli
www.bndc.co.in
Lecture 1
Objectives:
1. To identify the scope and necessity of software
engineering
2. To know the terms of software, software engineering and
to explain why it is important
3. To know the terms of software product and the attributes
of good software
4. To know the Software process model,
Introduction: The main objective of software engineering is to
produce software products. Software Engineering is concerned with
the methods, tools and techniques which are needed to develop
and managing the process of creating and evolving the software
products.
Software engineering is an engineering approach for software
development. Various methodologies and guidelines adopted to
develop the software.
A small program can be written without using software engineering
principles. But if one wants to develop a large software product,
then software engineering principles are essential to achieve a good
quality software cost effectively.
Introduction
Software Engineering
Methods Techniques
Tools Programs
Why software engineering?
1) In the late 1960’s hardware price were falling but software price
rising.
2) Many software projects failed.
3) Large software project required large development
4) Many software project late and over budget.
5) Complicity of software project is increased.
6) Demand for new software on the market.
1. To acquire skills to develop large programs.
2. Ability to solve complex programming problems.
3. Learn techniques of specification design.
4. Higher productivity.
5. Better quality programmers.
Why study software engineering?
• Computer programs and associated documentation
such as requirements, design models and user
manuals.
• Software products may be developed for a particular
customer or may be developed for a general market.
What is software?
1. Generic - developed to be sold to a range of different
customers e.g. PC software such as Excel or Word.
2. Bespoke (custom) - developed for a single customer
according to their specification.
New software can be created by developing new
programs, configuring generic software systems or
reusing existing software.
Software products
Attributes of good software
Difference between system engineering and system engineering
• System engineering is concerned with all aspects of computer-based
systems [CBSE] development including hardware, software and
process engineering. Software engineering is part of this process
concerned with developing the software infrastructure, control,
applications and databases in the system.
• System Engineers are involved in system specification,
architectural design, integration and deployment.
Program & Engineering
Program Engineering
1) Small project.
2) You
3) One product.
4) Cheap
5) Few sequential
changes.
1) large product
2) team
3) family of product
4) costly
5) Many parallel changes.
What is Software process ?
The software process is the set of activities and associated results which
produce a software product. These activities are mostly carried out by
software engineers. CASE tools may be used to help with some process
activities.
There are four fundamental process activities which are common to all
software processes. The activities are:
1. Software spacification - what the system should do and its
development constraints
2. Software development - production of the software system
3. Software validation - checking that the software is what the customer
wants
4. Software evolution - changing the software in response to changing
customer needs
What are software process attributes or characteristics
Process
characteristics
Description
1. Understandability To what extent is the process defined and how
easy is it understand the process definition
2. Visibility Making process visible
3. Supportability Process activities must be supported by CASE
tools
4. Acceptability Acceptable by engineers and responsible for
producing software product
5. Reliability Process errors are avoided
6. Robustness Process continue in spite of unexpected problems
7. Maintainability Process evolve to reflect changing organisational
requirements/improvements
8. Rapidity How fast can the process of the delivering a
system from a given specification be completed?
Software processes are complex and involve a very large number
of activities. Like product, processes, requirements specification,
software design, software implementation, software testing etc.
following software process models is used for practical systems
development.
1) Waterfall model
2) Evolutionary development model
3) Bohemia’s spiral model
SOFTWARE PROCESS MODEL
WATERFALL MODEL
This model offers the sequential development process. Because of
the cascade from one phase to another this model is called as
waterfall model. (Software life cycle)
1. Requirements: During this phase research is being
conducted which includes brainstorming about the
software, what it is going to be and what purpose is it
going to fulfil. In this phase system user study system’s
services, constraints and goals.
2. System and software design: If the first phase gets
successfully completed and a well thought out plan for
the software development then the next step involves
formulating the basic design of the software on paper.
This phase involves representing the software system
functions in a form that may be transformed into one or
more executable programs.
3. Implementation: During this stage, the software
design is realized as a set of programs or program unit.
In this phase the source code of the programs is written.
Unit test involves verifying that each unit meets its
specification.
4. Integration/system testing: The individual programs units or
programs are integrated and tested as a complete system to
ensure that all the software requirements. After testing, the
software system is delivered to the customer. The company puts it
in use after the system has been successfully tested.
5. Operation and maintenance: this is the longest life cycle
phase. The system is installed and put into practical use.
Maintenance involves correcting errors which were not discovered
in earlier stages of the life cycle. Improving the implementation of
system units and enhancing the system services as new
requirements are discovered.
CONCLUSION OF WATERFALL MODEL :
• Stages overlap and feed information to each other.
• During design problems with requirements are identified;
• During coding, design problems are found.
• The software process model but involves a sequences of
iterations of the development activities.
• Modifications are necessary for the software
Thank you

Más contenido relacionado

La actualidad más candente

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSachithra Gayan
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
Types of software testing
Types of software testingTypes of software testing
Types of software testingPrachi Sasankar
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering arvind pandey
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and DesignHaitham El-Ghareeb
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specificationshiprashakya2
 
Requirement Elicitation Techniques
Requirement Elicitation TechniquesRequirement Elicitation Techniques
Requirement Elicitation TechniquesShwetha-BA
 
CASE tools and their effects on software quality
CASE tools and their effects on software qualityCASE tools and their effects on software quality
CASE tools and their effects on software qualityUtkarsh Agarwal
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design pptfarazimlak
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testingHadi Fadlallah
 
Software process Models
Software process ModelsSoftware process Models
Software process ModelsSADEED AMEEN
 
Collaboration diagram- UML diagram
Collaboration diagram- UML diagram Collaboration diagram- UML diagram
Collaboration diagram- UML diagram Ramakant Soni
 

La actualidad más candente (20)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Software quality management standards
Software quality management standardsSoftware quality management standards
Software quality management standards
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Computer aided software engineering
Computer aided software engineeringComputer aided software engineering
Computer aided software engineering
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specification
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Requirement Elicitation Techniques
Requirement Elicitation TechniquesRequirement Elicitation Techniques
Requirement Elicitation Techniques
 
CASE tools and their effects on software quality
CASE tools and their effects on software qualityCASE tools and their effects on software quality
CASE tools and their effects on software quality
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design ppt
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
Use case modeling
Use case modelingUse case modeling
Use case modeling
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
 
Collaboration diagram- UML diagram
Collaboration diagram- UML diagram Collaboration diagram- UML diagram
Collaboration diagram- UML diagram
 
Design notation
Design notationDesign notation
Design notation
 

Similar a Basics of software engineering

Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)YamunaP6
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering Huda Alameen
 
Software Engineering Basics.pdf
Software Engineering Basics.pdfSoftware Engineering Basics.pdf
Software Engineering Basics.pdfPriyajit Sen
 
Software engineering study materials
Software engineering study materialsSoftware engineering study materials
Software engineering study materialssmruti sarangi
 
Software Process and Requirement
Software Process and RequirementSoftware Process and Requirement
Software Process and Requirementcricket2ime
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1Badar Waseer
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxethiouniverse
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )eshtiyak
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1Samura Daniel
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxKalpna Saharan
 
Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering OverviewPrachi Sasankar
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Managementswatisinghal
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineeringsmumbahelp
 

Similar a Basics of software engineering (20)

Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering
 
Se lec 3
Se lec 3Se lec 3
Se lec 3
 
SE UNIT-1 Revised.pdf
SE UNIT-1 Revised.pdfSE UNIT-1 Revised.pdf
SE UNIT-1 Revised.pdf
 
Software Engineering Basics.pdf
Software Engineering Basics.pdfSoftware Engineering Basics.pdf
Software Engineering Basics.pdf
 
SE-Unit I.pptx
SE-Unit I.pptxSE-Unit I.pptx
SE-Unit I.pptx
 
Software engineering study materials
Software engineering study materialsSoftware engineering study materials
Software engineering study materials
 
Software Process and Requirement
Software Process and RequirementSoftware Process and Requirement
Software Process and Requirement
 
SE notes by k. adisesha
SE notes by k. adiseshaSE notes by k. adisesha
SE notes by k. adisesha
 
SE-Lecture-2.pptx
SE-Lecture-2.pptxSE-Lecture-2.pptx
SE-Lecture-2.pptx
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptx
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptx
 
Chapter 2.pptx
Chapter 2.pptxChapter 2.pptx
Chapter 2.pptx
 
Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering Overview
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Management
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineering
 
San se unit
San se unitSan se unit
San se unit
 

Último

cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 

Último (20)

cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 

Basics of software engineering

  • 1. An Introduction to Software Engineering By: M. B Suratkar, Dept. of Computer Science Bangurnagar Degree College, Dandeli www.bndc.co.in
  • 2. Lecture 1 Objectives: 1. To identify the scope and necessity of software engineering 2. To know the terms of software, software engineering and to explain why it is important 3. To know the terms of software product and the attributes of good software 4. To know the Software process model,
  • 3. Introduction: The main objective of software engineering is to produce software products. Software Engineering is concerned with the methods, tools and techniques which are needed to develop and managing the process of creating and evolving the software products. Software engineering is an engineering approach for software development. Various methodologies and guidelines adopted to develop the software. A small program can be written without using software engineering principles. But if one wants to develop a large software product, then software engineering principles are essential to achieve a good quality software cost effectively. Introduction
  • 5. Why software engineering? 1) In the late 1960’s hardware price were falling but software price rising. 2) Many software projects failed. 3) Large software project required large development 4) Many software project late and over budget. 5) Complicity of software project is increased. 6) Demand for new software on the market.
  • 6. 1. To acquire skills to develop large programs. 2. Ability to solve complex programming problems. 3. Learn techniques of specification design. 4. Higher productivity. 5. Better quality programmers. Why study software engineering?
  • 7. • Computer programs and associated documentation such as requirements, design models and user manuals. • Software products may be developed for a particular customer or may be developed for a general market. What is software?
  • 8. 1. Generic - developed to be sold to a range of different customers e.g. PC software such as Excel or Word. 2. Bespoke (custom) - developed for a single customer according to their specification. New software can be created by developing new programs, configuring generic software systems or reusing existing software. Software products
  • 10. Difference between system engineering and system engineering • System engineering is concerned with all aspects of computer-based systems [CBSE] development including hardware, software and process engineering. Software engineering is part of this process concerned with developing the software infrastructure, control, applications and databases in the system. • System Engineers are involved in system specification, architectural design, integration and deployment.
  • 11. Program & Engineering Program Engineering 1) Small project. 2) You 3) One product. 4) Cheap 5) Few sequential changes. 1) large product 2) team 3) family of product 4) costly 5) Many parallel changes.
  • 12. What is Software process ? The software process is the set of activities and associated results which produce a software product. These activities are mostly carried out by software engineers. CASE tools may be used to help with some process activities. There are four fundamental process activities which are common to all software processes. The activities are: 1. Software spacification - what the system should do and its development constraints 2. Software development - production of the software system 3. Software validation - checking that the software is what the customer wants 4. Software evolution - changing the software in response to changing customer needs
  • 13. What are software process attributes or characteristics Process characteristics Description 1. Understandability To what extent is the process defined and how easy is it understand the process definition 2. Visibility Making process visible 3. Supportability Process activities must be supported by CASE tools 4. Acceptability Acceptable by engineers and responsible for producing software product 5. Reliability Process errors are avoided 6. Robustness Process continue in spite of unexpected problems 7. Maintainability Process evolve to reflect changing organisational requirements/improvements 8. Rapidity How fast can the process of the delivering a system from a given specification be completed?
  • 14. Software processes are complex and involve a very large number of activities. Like product, processes, requirements specification, software design, software implementation, software testing etc. following software process models is used for practical systems development. 1) Waterfall model 2) Evolutionary development model 3) Bohemia’s spiral model SOFTWARE PROCESS MODEL
  • 15. WATERFALL MODEL This model offers the sequential development process. Because of the cascade from one phase to another this model is called as waterfall model. (Software life cycle)
  • 16. 1. Requirements: During this phase research is being conducted which includes brainstorming about the software, what it is going to be and what purpose is it going to fulfil. In this phase system user study system’s services, constraints and goals.
  • 17. 2. System and software design: If the first phase gets successfully completed and a well thought out plan for the software development then the next step involves formulating the basic design of the software on paper. This phase involves representing the software system functions in a form that may be transformed into one or more executable programs.
  • 18. 3. Implementation: During this stage, the software design is realized as a set of programs or program unit. In this phase the source code of the programs is written. Unit test involves verifying that each unit meets its specification.
  • 19. 4. Integration/system testing: The individual programs units or programs are integrated and tested as a complete system to ensure that all the software requirements. After testing, the software system is delivered to the customer. The company puts it in use after the system has been successfully tested.
  • 20. 5. Operation and maintenance: this is the longest life cycle phase. The system is installed and put into practical use. Maintenance involves correcting errors which were not discovered in earlier stages of the life cycle. Improving the implementation of system units and enhancing the system services as new requirements are discovered.
  • 21. CONCLUSION OF WATERFALL MODEL : • Stages overlap and feed information to each other. • During design problems with requirements are identified; • During coding, design problems are found. • The software process model but involves a sequences of iterations of the development activities. • Modifications are necessary for the software