comp 2007 r j walters. comp 2007 - 1 introduction try to place this course in context a bit of...
TRANSCRIPT
COMP 2007
R J Walters
COMP 2007 - 1
Introduction
Try to place this course in context A bit of history “Engineering”?
COMP 2007 - 1
Software Engineering:Who cares?
I do Its what this course is about I don’t really trust the way we make
software these days It should lead to better software (I’m being paid to)
COMP 2007 - 1
Who cares?
You do You need it to pass this course You need it for the group project, and
your own project next year It’s what real developers get paid to do It might help you get a job I’ll be marking some of this course and
COMP 2012
COMP 2007 - 1
What Am I talking about?
Compare Software with Hardware
Characteristics of the activity of building Software It is new It isn’t constrained by the “real world” It can be very big (complex)
COMP 2007 - 1
Where are we now?
Clever systems are everywhere Many of them are a bit suspect Describing the way we build
software as Engineering is still stretching things a bit
COMP 2007 - 1
How did we get into this mess?
Initial concentration on hardware Complacency Tolerance
Crisis? What crisis?
COMP 2007 - 1
Where have we been? Rats nest
Machine language and assembler The flow-chart and the goto
Structured programming Modules, dataflow, SSADM, Jackson
(JSD) and all the rest Objects
Java, UML
COMP 2007 - 1
A few asides
“Proprietary” methods Formal methods Extreme programming Prototyping
Component based systems
COMP 2007 - 1
Where will it end?
OO might be it Or it might not
Engineering software is what we ought to be doing
COMP 2007 - 1
Engineering? Build things in such a way that we know:
It will do the job and how reliable it will be
How much it will cost and how long it will take to make
What we did and how to make another (better) one
COMP 2007 - 1
Engineering? There is more to Software Engineering
than the programming paradigm Requirements and Specification Design Testing Maintenance Documentation Process Standards?
COMP 2007 - 1
To sum up
Software Engineering is something we have to worry about
It is more than the programming language we use
It is what enables teams to build big systems
We don’t have all the answers
COMP 2007 - 1
Questions?
Suggested reading Your UML reference Software Engineering, 7th Edition,
Ian Sommerville Software Engineering: A Practitioner's
Approach, Roger Pressman
COMP 2007 - 1