1. SE___Lecture_01__Introduction_.ppt

Embed Size (px)

Citation preview

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    1/20

    Introduction toSoftware Engineering

    7th January 2013

    Lecture 01-02

    Prof. Partha Pratim Das

    http://www.dak.iitkgp.ernet.in/
  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    2/20

    SOFTWARE ENGINEERING

    Soft Construction

    03-Jan-2012 Introduction to Software Engineering 2

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    3/20

    Engineering:Skills of Construction

    Civil Engineering

    Construction of Buildings

    Mechanical Engineering Construction of Automobiles

    Electrical Engineering

    Construction of Power Plants

    Software Engineering

    Development of Software

    03-Jan-2012 Introduction to Software Engineering 3

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    4/20

    What Software Engineering isNOT!

    Programming

    Data Structures

    Algorithms

    Design

    Testing

    Deployment

    Maintenance

    Construction!

    03-Jan-2012 Introduction to Software Engineering 4

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    5/20

    Evolution of Domains

    Bridge Construction

    Medicine

    Airplanes Software Development

    03-Jan-2012 Introduction to Software Engineering 5

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    6/20

    Bridge Construction

    Early Wood, Stone

    Then Iron, Steel

    Concrete Bridges

    Constructing a bridge is different frominnovating a bridge (with new materialfor instance) for the first time

    Engineers use well established metricsto design bridges they do not innovateat this stage

    03-Jan-2012 Introduction to Software Engineering 6

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    7/20

    MedicineHealth was thought to be restored by

    purging, starving, vomiting or bloodletting

    Surgeons and barbers specialized in thispractice

    Widely practiced in 18th & 19th century

    Declared quackery by 1900

    Infection control

    Survived surgery, died out of infection Germ theory and sterility came only in late

    1800s (Lister)

    Current rate of infection < 2.5%

    03-Jan-2012 Introduction to Software Engineering 7

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    8/20

    Airplanes

    400 BC Chinese fly kite aspiringhumans to fly

    For centuries, we tried to fly like

    birds disastrous

    Steam powered, hot air

    Gliders, single man

    Engine powered 1903 Wright brothers first flight 12

    seconds, 120 feet,10 feet altitude

    03-Jan-2012 Introduction to Software Engineering 8

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    9/20

    Software

    Relatively nascent field in comparison

    Machines are getting faster or more

    powerful Are we getting better in delivering

    software applications though?

    03-Jan-2012 Introduction to Software Engineering 9

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    10/20

    Success (or Lack thereof)

    How successful are we in developingsoftware?

    Less than 10% of software projects

    succeed! Criteria for success?

    On time,

    Within budget,

    Feature complete,

    Works (failure free)

    Why is it so hard to get this right?03-Jan-2012 Introduction to Software Engineering 10

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    11/20

    Change In Projects

    Changes From Requirements

    Customers Learn from the Solution

    Business Environment and Conditions Change

    Business Processes are Re-engineered

    Changes From Technology

    Tools/Platform Release New Versions

    Actual Tool/Platform Capabilities May Vary from Plans

    Changes From People Interactions are Complex

    Individual Behavior is Unpredictable

    03-Jan-2012 11Introduction to Software Engineering

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    12/20

    Software Engineering

    Whats Engineering?

    the application of science andmathematics by which the properties of

    matter and the sources of energy in natureare made useful to people

    the design and manufacture of complexproducts

    03-Jan-2012 Introduction to Software Engineering 12

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    13/20

    Software Engineering

    If software engineering like manufacturingor designing a manufacturing plant?

    Is it like making another cell phone or making

    of cell phones (took 37 years forcommercialization)?

    Manufacturing is predictive

    You can measure and control quality, quantity

    Designing a manufacturing plant iscreative/innovative

    03-Jan-2012 Introduction to Software Engineering 13

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    14/20

    Software Engineering

    Most software development isinnovative process rather thanpredictive manufacturing

    Requires great deal of innovation,interaction / communication

    03-Jan-2012 Introduction to Software Engineering 14

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    15/20

    Course: Software Engineering

    We demystify software construction andlearn the good practices

    03-Jan-2012 Introduction to Software Engineering 15

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    16/20

    MAJOR THEMES IN SE

    Course Agenda

    03-Jan-2012 Introduction to Software Engineering 16

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    17/20

    03-Jan-2012 Introduction to Software Engineering 17

    Agenda

    Software as a product

    Clients and their needs

    Quality

    Requirements and specification

    Usability

    Evolution

    Software design

    Software architecture

    Object-oriented design

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    18/20

    03-Jan-2012 Introduction to Software Engineering 18

    Agenda

    Software Processes

    Coding

    Reading

    Review

    Source Management

    Debugging

    Testing

    Reliability

    Verification

    Documentation

    Quality

    Maintenance

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    19/20

    03-Jan-2012 Introduction to Software Engineering 19

    Agenda

    Project management

    Personnel management

    Economic, legal, and social factors

    Standards

  • 7/29/2019 1. SE___Lecture_01__Introduction_.ppt

    20/20

    Thank You