lectures: monday 2 – 3 pm in wgb g08 wednesday 11 – 12 noon in wgb g02 desk exercises for...

19
Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer: Dr Eoin Healy [email protected] Room G62 WGB Assessment: Final Written Exam: 80% Continuous Assessment: 20% CS3500 Software Engineering

Upload: shavonne-tyler

Post on 17-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

Lectures:

Monday 2 – 3 pm in WGB G08

Wednesday 11 – 12 noon in WGB G02

Desk exercises for Continuous Assessment work (not scheduled) – no labs

Lecturer: Dr Eoin Healy

[email protected]

Room G62 WGB

Assessment:

Final Written Exam: 80%

Continuous Assessment: 20%

CS3500Software Engineering

Page 2: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Accessing the Notes

http://csa6.ucc.ie/moodle/

Page 3: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:
Page 4: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:
Page 5: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:
Page 6: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

Identify the difficulties inherent in developing large pieces of software;

Use the appropriate criteria to select a development model for a particular software application;

Apply acquired techniques to elicit and model user requirements;

Identify and apply appropriate validation and verification methods for

testing during the software development process.

Understand how to apply project management techniques to facilitate the software development process;

CS3500 Software Engineering

Learning Objectives

Page 7: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

The notes provided for this course are just that – notes!

You should add to the information in these notes by reading further on the points identified and stressed here.

Use the Boole Library!

Use Google!

Useful Web resources:

http://www.rspa.com/spi/#process(Roger Pressman’s website)

http://www.wepapers.com/Papers/51064/Notes_for_Software_Engineering

http://mail.svce.ac.in/~uvarajan/cn.html(based on Pressman’s “Software Engineering – A Practitioner’s Approach)

http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/(Ian Sommerville)

Page 8: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

A Note on Note-taking

These notes will be provided online to allow you to focus on the sense and meaning of the material during lectures.

BUT! The people who will do well in this (and other modules)

are those who will take notes of key words, key pointsand themes/topics I emphasise.

Page 9: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

A Note on Note-taking

These notes will be provided online to allow you to focus on the sense and meaning of the material during lectures.

BUT! The people who will do well in this module (and others)

are those who will take notes of key words, key pointsand themes/topics I emphasise.

And the people who will NOT do well in this module (and others) are those who might assume that I am providing online notes so that you can rest and do nothing!

Page 10: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

“A discipline whose aim is the production of fault-free software, delivered on-time and within budget, that satisfies the user’s needs. Furthermore, the software must be easy to modify when the user’s needs change.” [Schach]

(Note: This is intended as an explanation and not as a strict definition that should be memorised!)

An essential starting point is to understand thatsoftware engineering is most definitely not another term for programming.

What is Software Engineering?

Page 11: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

The role of software as a driving force of world economiesis very visible. A software-driven internet has spawned itsown trillion (Euro, £ or $) economy.

Software profoundly effects our everyday lives – our cars,phones, TV’s, household appliances (washing machines, microwaves etc), access to news, access to e-commerce areall dependent on the operation of reliable software.

The Impact of Software

Page 12: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Electricity power stations fail, but far less frequently thanMicrosoft Windows and other operating systems.

Bridges collapse but much less often than do software financial accounting systems.

In the belief that software design, implementation and development could be put on the same footing as traditionalengineering disciplines, a NATO study group in 1967 coined the term “software engineering”.

The group’s motivation was what they identified as the symptoms of a software crisis:

unacceptably low software quality

cost over-runs

Deadline overruns

Some Historical Facts

Page 13: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

The Software Crisis:

Today, 40 years later, the same problems (symptoms)effect the whole software industry. Stephen Schach has suggested that it should be renamed as a software depression rather than a crisis in view of its long duration and the poor outlook for improvement.

Page 14: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Why a Depression?

It was an over-simplification to equate the problems and the techniques of engineering physical structures with those of building good software.

Page 15: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Why a Depression?

It was an over-simplification to equate the problems and the techniques of engineering physical structures with those of building good software.

When a bridge collapses it is usually re-designed and rebuiltbut When an op system crashes it may be possible to reboot it or tweak the code sufficiently to make it “work” (tempting!)

Fault tolerance is more easily predicted when building physical structures than when building complex software systems which interact with one another

Maintenance of physical structures relies on painting, crack repair, road resurfacing, window replacement etc (simplification here)but

Maintenance of a software system can involve the addition of many new components, creating interfaces with other systems, or converting a single user local system into a multi-user distributed one

Page 16: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Signs of the Software Crisis:

Software unreliability

Schedule delays &

consequent cost over-runs

Software inflexibility

High cost of modifying software

User “unfriendliness”

Security flaws(increasingly important with distributed and web-based systems involving e-commerce)

Page 17: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Specific Examples of the Software Crisis:

Surveys in late 1990’s in U.S. showed SD&M1 costs running at around 10% of GDP

Demand for software predicted to grow by about 900% per decade

Demand for developers increasing by 12% per year but actual numbers growing by just 4%

Worldwide, staff turnovers as high as 20% per year, especially during periods of economic prosperity

Estimated that major software development projects suffer from as high as 25% cancellation rate due to unacceptable delays and poor specifications (net result = failure to meet user requirements)

1 SD&M = Software development and maintenance

Page 18: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

What Happens to Software Systems?

A survey of software projects commissioned by the U.S.Government, 1990 - 1996

“used”

Page 19: Lectures: Monday 2 – 3 pm in WGB G08 Wednesday 11 – 12 noon in WGB G02 Desk exercises for Continuous Assessment work (not scheduled) – no labs Lecturer:

CS3500 Software Engineering

Irish Examples of the Software Crisis:

Right through from 2000 to the present there have been examples of software development over-runs within State-sponsored projects:

A forest management system had jumped in cost from €5.3 million to €15 million

The Garda (Police) “Pulse” system was up from €30 to €70 million by 2005. Still not complete and present costs are unknown.

Health Service Executive. Abandoned and dis-credited PPARS (Personnel and Pay Related System) cost over €160 million due to a whole range of issues including gross incompetence. (Take time to Google this)

Failte Ireland’s (Tourism) Gulliver system - cost/time over-runs due to dysfunctional system

Social Welfare IT system inadequate to cope with capacity