0% found this document useful (0 votes)
7 views

Lecture 2 - Introduction-Simp

Uploaded by

furkanozek6
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Lecture 2 - Introduction-Simp

Uploaded by

furkanozek6
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

1

>

Software Engineering

Dr. Anıl Koyuncu


> Introduction

➢ A short history
➢ What is software engineering?
➢ Software disasters
➢ How do we develop software

-2-
> History of SW Development

➢ 1950’s: engineer software like hardware


• ENIAC was the world’s first general-purpose electronic, digital computer

-3 -
> History of SW Development

➢ 1950’s: engineer software like hardware


• UNIVAC I, the world’s first open market commercial computer

-4 -
> History of SW Development 1950’s

➢ Applications
➢ Economics
➢ Professional Societies
➢ Processes

-5 -
The SAGE Software Development Process
> - (Benington, 1956)
OPERATIONAL PLAN

MACHINE SPECIFICATIONS OPERATIONAL SPECIFICATIONS

PROGRAM SPECIFICATIONS

CODING SPECIFICATIONS

CODING

PARAMETER TESTING (SPECIFICATIONS)

ASSEMBLY TESTING (SPECIFICATIONS)

SHAKEDOWN

SYSTEM EVALUATION

6
> History of SW Development

➢ 1960’s Antithesis: Software Is Not Like Hardware

IBM
S/360

-7 -
> History of SW Development 1960’s

➢ Development of Software
➢ Better tools
➢ For-profit software
➢ Large, mission-oriented applications.
➢ Departments of Computer Science
➢ Programmer shortage

-8 -
> Software Crisis

➢ The software crisis was the name given to the difficulties


encountered in developing large, complex systems in the 1960s.
➢ Problems?

-9 -
> Birth of Software Engineering

➢ Purpose: to look for a solution to software crisis

➢ In 1968 at NATO Conference

➢ “software engineering” term

- 10 -
> Moore’s “Law”

- 11 -
> Large-Organization HW/SW Cost Trends

100

80
Hardware
% of 60
total cost
40 Software
20

0
1955 1970 1985
Year

12
>

13
> Boehm’s View of Software Engineering Evolution

Plan- Software
Engineer Compliance
Theses Driven Value-Add Integrated
Software Formality,
Software Sw-Systems
like Many defects Waterfall
Maturity COTS Engineering
Hardware
Models
Soft
SysE
Process Overhead
Value-Based
Risk-Based
Productivity; Methods;
Agile/Plan
Reuse; Risk Mgmt. Collaboration; Autonomy; Bio-
Syntheses -Driven
Objects; Domain Engr. Global Computing
Scalability, Hybrids;
Peopleware Development;
Risk Mgmt. Model-Driven
Enterprise
Development
Architectures

Scalability
Prototyping Global
Systems
Software of
Differences, Systems
Engineer Software
Agile
Antitheses Shortages as Craft
Methods
Time to Market,
Rapid Change

1950's 1960's 1970's 1980's 1990's 2000's 2010's

- 14 -
>
More History
Barry Boehm
Work
• software development
process modelling
• software requirements engineering
• software architectures
• software metrics and cost models
• software engineering environments
knowledge-based software engineering

- 15 -
>
More History
Frederick P. Brooks

https://youtu.be/StN49re9Nq8

- 16 -
>
More History
Margaret Hamilton

https://youtu.be/ZbVOF0Uk5lU

- 17 -
>
More History
Brian Randell

https://youtu.be/YdEGNpbD8FY

- 18 -
Computers today …
> everywhere

- 19 -
>

- 20 -
> Why Software Fails?

➢ Classroom comments?

- 21 -
>

• https://www.youtube.com/embed/L0C1hYCY8lQ?start=8&end=98

- 22 -
> Ariane 5 Failure

- 23 -
> Year 2000 (Y2K) problem

- 24 -
> IT failure at Heathrow & Gatwick

- 25 -
>

- 26 -
> CrowdStrike outage

https://www.youtube.com/embed/H9RSeDUdkCA?start=0&end=250

- 27 -
Why Software Projects Fail
> - Average overrun: 89.9% on cost, 121% on schedule, with 61% of content

- 28 -
>

- 29 -
> What is a software project?

Projects are a balance of three dimensions, with the goal of


producing a successful deliverable

Features & Quality

SOFTWARE
DELIVERABLE

Time Resources
“Good, fast, cheap … choose two”
> Software Engineering

➢ A systematic, disciplined, quantifiable approach to the production


and maintenance of software
• on time
• on budget
• with acceptable performance
• with correct operation.

- 31 -
> What is Software Engineering?

- 32 -
> What is software engineering?

➢ Software engineering is a discipline.


> What is Software Engineering?

➢ More than just


writing code

- 34 -
> What is software engineering?

➢ Creating software using diverse practices from various fields


> Ties to many fields

➢ computer science
➢ business/management
➢ economics/marketing
➢ communication
➢ law
➢ sociology
➢ political science
➢ psychology
➢ art
> What is software engineering?

➢ Teams create value for customers under constraints


> What is software engineering?
> Questions?

39
>

40

You might also like