No Silver Bullet - Essence and Accident in Software Engineering - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

No Silver Bullet - Essence and Accident in Software Engineering

Description:

No Silver Bullet - Essence and Accident in Software Engineering By: R. Adam Mead Software Construction Essential Tasks Exploiting the mass market to avoid ... – PowerPoint PPT presentation

Number of Views:278
Avg rating:3.0/5.0
Slides: 12
Provided by: RAdam9
Category:

less

Transcript and Presenter's Notes

Title: No Silver Bullet - Essence and Accident in Software Engineering


1
No Silver Bullet - Essence and Accident in
Software Engineering
  • By R. Adam Mead

2
Software Construction Essential Tasks
  • Exploiting the mass market to avoid constructing
    what can be bought.
  • Using rapid prototyping as part of a planned
    iteration in establishing software requirements.
  • Growing Software organically, adding more and
    more function to systems as they are run, used
    and tested.
  • Identifying and developing the great conceptual
    designers of the rising generation.

3
Does It Have to Be Hard? - Essential Difficulties
  • Observe that it is not software process that are
    so slow it is that hardware progress are so fast.
  • The essence of a software entity is a construct
    of interlocking concepts data sets,
    relationships among data items, algorithms, and
    invocations of functions.

4
Complexity
  • Software is more complex for their size then an
    others human construction.
  • Many problems of developing software products
    derive from this essential complexity and its
    nonlinear increases with size.
  • The increase in size makes communication among
    team members hard.
  • Problem are product flaws, cost overruns,
    schedule delays.
  • Are not only technical problems, management
    problems too.

5
Conformity
  • Conformity comes from the fact that all new
    software must conform to the way things where
    done in the past, because it is hard to change
    everyone.
  • Main reason software must conform is that it is
    new on the scene.

6
Changeability
  • Being able to change something after it has been
    constructed is a new concept.
  • Software must be able to change, and the
    complexity of the systems becomes harder to
    follow.
  • All successful software gets changed.
  • Successful software also survives beyond the
    normal life of the machine vehicle for which it
    is first written for.

7
Invisibility
  • Software has no 3-D way on which it can be laid
    out.
  • Software does not have one map or graph, it will
    have multiple maps and graphs.
  • Software has data flow charts, time sequence
    graphs, and other types of things.
  • Communication becomes hard because each person my
    see it a different way.

8
Past Breakthroughs Solved Accidental Difficulties
  • High-Level Languages
  • Time-Sharing

9
High-level Languages
  • The most powerful thing to happen to software
    development ever.
  • It allows that some types on data structures,
    operation, classes etc, to be used by any
    machine.
  • Programmers dont have to develop software for
    individual machines.

10
Time-Sharing
  • Most observers credit the time-sharing
    improvement to better programmers, and better
    programming languages.
  • Programs run faster because of the high-level
    languages.
  • Do not have to accommodate for machine language
    anymore.

11
Hopes for the Silver
  • Object-oriented programming
  • Artificial Intelligence
  • Expert Systems
  • Automatic programming
  • Graphics programming
Write a Comment
User Comments (0)
About PowerShow.com