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

Software Engineering Fundamentals Csc2073 (3 CRH 3 Theory 0 Lab)

This document provides an overview of a software engineering fundamentals course taught by Dr. Muhammad Adeel at National Textile University. It outlines the course agenda, introduces the instructor, discusses rules and expectations for students, describes the sessional marks distribution including assignments, quizzes and projects. It also lists recommended textbooks and provides a high-level outline of the course content which will cover software engineering processes, requirements engineering, architecture and design, and testing and quality assurance. Examples are given of past software failures to illustrate the need for proper software engineering practices.

Uploaded by

Lorra Lassan
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
99 views

Software Engineering Fundamentals Csc2073 (3 CRH 3 Theory 0 Lab)

This document provides an overview of a software engineering fundamentals course taught by Dr. Muhammad Adeel at National Textile University. It outlines the course agenda, introduces the instructor, discusses rules and expectations for students, describes the sessional marks distribution including assignments, quizzes and projects. It also lists recommended textbooks and provides a high-level outline of the course content which will cover software engineering processes, requirements engineering, architecture and design, and testing and quality assurance. Examples are given of past software failures to illustrate the need for proper software engineering practices.

Uploaded by

Lorra Lassan
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 29

Software Engineering Fundamentals

CSC2073
(3 CrH = 3 Theory 0 Lab)
Lecture No. 01
Dr. Muhammad Adeel
Department of Computer Science
National Textile University

[email protected]
Agenda – What will you Learn Today?

Introduction to the Need for Software


Course Engineering

2 Software Engineering - CSC2073


Introduction to Course

3 Software Engineering - CSC2073


About Me

 Dr. Muhammad Adeel


PhD (Computer Science)
National Textile University

 Assistant Professor @ Department


of Computer Science, National
Textile University, Pakistan
 Serving NTU since March 2008

4 Software Engineering - CSC2073


Rules and Regulations to get Success
1. Pray 5 times a day if you are Muslim and with Jamaat
in Masjid if you are male.
2. Don’t tell a lie.
3. Don’t cheat
4. Massage the feet of your beloved parents daily with
their permission.
5. Confirm you have 2 pens/pencils, ring binding
register, desktop computer/laptop (fully charged)
and USB before one hour of starting of the class
6. Don’t be late. Join class 2 or 3 minutes before.
5 Software Engineering - CSC2073
Rules and Regulations to get Success …
7. Must prepare slides before every lecture and study the
same topic from book at least once (or twice is good).
8. Revise all prepared previous slides at week-end.
9. Don’t wait for due date and time for your assignments,
rather complete and submit them well before and start
working on assignments from the day when you will be
assigned.
10. Be 100% regular because lectures are linked like a chain,
if one part of the chain is broken, then it is not called
chain.
11. Daily read the above rules and tick the followed rule by
putting date
6 Software Engineering - CSC2073
Sessional Marks Distribution

 Assignments + Quizzes + Viva 15


 Course Projects 15

7 Software Engineering - CSC2073


Course Projects

 Consists of THREE team members


 Each team will consist of different software
engineering roles
 The project should be team-work / team effort
 Submissions through modules
 Deadlines for each modules will be
announced in lectures
 You have to submit a complete working
software
 Final presentations will be held in last week

8 Software Engineering - CSC2073


Course Projects

Role

Team Lead
Requirement Engineer
Software Designer
Software Tester
Software Developer

9 Software Engineering - CSC2073


Text Books

 Software Engineering (10th


Edition)
Ian Sommerville

 Software Engineering: A
Practitioner's Approach (7th
Edition)
Roger Pressman

10 Software Engineering - CSC2073


Text Books

 Essentials of Software
Engineering (4th Edition)
Frank Tsui, Orlando Karam,
Barbara Bernal

11 Software Engineering - CSC2073


Course Outline

 The course is divided into FOUR areas

Software Software
Engineer Requirement
Processes Engineering

Software Software
Architecture Testing &
& Design SQA

12 Software Engineering - CSC2073


Course Outline

Software Requirement Software


Architecture
Engineering s Testing &
& Design
Processes Engineering SQA
Software Architecture and Its
Software Process Models Functional Requirements Software Testing Process
Benefits
Benefits

Process
Process Models
Models and
and Selection
Selection of
of Architecture
Architecture Software
Software Verification
Verification &
&
Practical Implications Non-Functional Styles Validation
Requirements
Requirements
Cost & Benefit Analysis Of
Black
Black Box
Box Testing
Testing
Waterfall
Waterfall Model
Model Well
Well Know
Know Architectural
Architectural Techniques
Techniques
Style
Style
Analysis
Analysis Modeling
Modeling
Object Oriented Design White Box Testing
Evolutionary Models
Techniques
Techniques && Methods
Methods Techniques
Techniques

Scenario-Based
Scenario-Based Modeling
Modeling
Acceptable
Acceptable Software
Software Quality
Quality
Incremental models Domain Model
Attributes

Flow-Oriented
Flow-Oriented Modeling
Modeling Software
Software Quality
Quality Assurances
Assurances
Agile
Agile Methodologies
Methodologies Behavioral
Behavioral Modeling
Modeling Imperatives
Imperatives

13 Software Requirements Engineering - CSC3070


Need Software Engineering?

14 Software Engineering - CSC2073


Need Software Engineering?

NASA: Mariner Failure


 A bug in the flight software for the Mariner-1
 The rocket to divert from its intended path
 Mission control destroys the rocket over the
Atlantic Ocean
 The investigation discovers that a formula
written on paper in pencil was improperly
transcribed

15 Software Engineering – CSC2073


Need Software Engineering?

Korean Airliner Crash


 KAL-801 got accident
 Killed 225 out of 254 aboard
 A software design problem was discovered in
barometric altimetry in Ground Proximity
Warning System (GPWS)

16 Software Engineering – CSC2073


Need Software Engineering?

Air-Traffic Control System in LA Airport


 In September 2004, the controllers lost
contact with the planes when the main voice
communications system shut down
unexpectedly
 The outage disrupted about 800 flights across
the country

17 Software Engineering – CSC2073


Need Software Engineering?

Tesco iPad pricing disaster


 In March 2012, Apple iPads worth £650 got
priced at £49.99
 Tesco cancelled the sale and did not respond
to these orders, resulting in dissatisfaction
with the customers

18 Software Engineering – CSC2073


Need Software Engineering?

Glitch Releases US Prisoners Early


 In December 2015, a glitch caused more than
3,200 US prisoners to be released early
 The software calculates a prisoner's sentence
depending on good/bad behavior
 It is estimated that on average prisoners were
released 49 days early

19 Software Engineering - CSC2073


Need Software Engineering?

Nest Thermostat Freeze


 In January 2016, the Nest 'smart' thermostat
(owned by Google) was hit with a software
glitch which left users out in the cold
 A software update went wrong, forcing the
device's batteries to drain and leaving it
unable to control temperature

20 Software Engineering – CSC2073


Need Software Engineering?

Leeds Pathology IT crash


 In September 2016, Leeds Teaching
Hospitals NHS Trust witnessed a pathology IT
crash that resulted in a delay of operations for
almost 132 patients
 Holds a budget of a £1 billion and employs
over 16,000 staff, serves 780,000 people in
the city and provides expert care for 5.4
million patients

21 Software Engineering – CSC2073


Need Software Engineering?

Software Security Flaws Revealed in OLA’s


Mobile App
 Ola, India’s largest taxi aggregator faced
major security flaws within their system
 The software bugs detected helped basic
programmers to enjoy unlimited free rides at
the expense of Ola and users

22 Software Engineering – CSC2073


Need Software Engineering?

Nissan’s recall
 For over 2 years Nissan recalled over a
million cars due to a software glitch in the
airbag sensory detectors
 The affected cars were unable to assess
whether an adult was seated in the car’s
passenger seat and consequently would not
inflate the airbags in case of a crisis

23 Software Engineering – CSC2073


Need Software Engineering?

24 Software Engineering - CSC2073


Problems in Software Development

The final software does not fulfill the needs of


the customer
Hard to extend and improve: if you want to add a
functionality later its mission impossible

Bad Documentation

Bad Quality: Frequent errors, hard to use, ...

More time and costs than expected

25 Software Engineering – CSC2073


Problems in Software Development

26 Software Engineering – CSC2073


Conclusion

 Programming is NOT enough!

 It is not enough to do your best: you must Know


what to do, and THEN do your best.
W. Edwards Deming

 A clever person solves a problem.


 A wise person avoids it.
Albert Einstein

27 Software Engineering - CSC2073


Recap

 Introduction to the Course

 Need for Software Engineering

28 Software Engineering - CSC2073


Questions

29 Software Engineering - CSC2073

You might also like