0% found this document useful (0 votes)
21 views39 pages

Lecture 01 Intro SE

Uploaded by

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

Lecture 01 Intro SE

Uploaded by

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

1

SE 2101 Software
Engineering

Lecture no. 1

2
Today’s Agenda

 My Introduction
 Your Introduction
 Course Information
 Lecture 1 - Introduction to Software
Engineering
About Myself

1. Name: Anam Amjad

2. Qualification: MS in Software Engineering


from NUST

3. Experience: Joined SS-CASE-IT in 2022

4. Email: [email protected]

5. Student Visiting Hours: Tuesday 09:00 -10:00 am


Introduce Yourself

1. Your Good Name?

2. Which city do you belong to?

3. Previous qualification and marks?

4. Any expectations from this course?

5. Are you Freelancing?


~ You are a Marvel ~
Each second we live is a new and unique moment of
the universe, a moment that will never be again…
And what do we teach our children?
We teach them that two and two make four, and that Paris is
the capital of France. When will we also teach them what they are?
We should say to each of them:
Do you know what you are? You are a marvel.
You are unique. In all the years that have passed, there has never
been
another child like you. Your legs, your arms,
your clever fingers, the way you move.
You may become a Shakespeare, a Michelangelo, a Beethoven.
You have the capacity for anything.
Yes, you are a marvel. And when you grow up, can you then
harm another who is, like you, a marvel?
You must work – we must all work – to make the world
worthy of its children.
Pablo Casals (1876-1973)
Class Ethics

1. Be on time for class


2. Pay attention in class. Ask questions.
3. Be prepared to answer questions in class
(Revise Previous lectures).
4. No use of gadgets during a class
5. Be respectful towards teachers and colleagues
Course Management

 Lectures and assignments will be uploaded on


the Canvas
 Link: https://canvas.instructure.com/enroll/CKTKNT.
 Alternatively, sign up
at https://canvas.instructure.com/register and use the
following join code: CKTKNT

8
Course Evaluation

 Credit Hours: 3+0


 Assignments 15%
 Quiz 10%
 Mid-term 30%
 Final exam 45%
Course Learning
Outcomes
1. Describe the various software engineering processes and
activities to the software development.
2. Apply the design modelling techniques to the medium-sized
software.
3. Apply software quality assurance and testing principles to
medium-sized software systems.
4. Identify key principles and common methods for software
project management such as scheduling, size estimation,
cost estimation, and risk analysis.
Course Contents
 Nature of the Software
 Software Process Models
 Agile Development
 Requirements Engineering
 Software Design, UML
 Software Architecture
 Implementation
 Software Testing and Quality Assurance
 Software Evolution
 Software Project Management

11
Recommended Books

1. Software Engineering, A Practitioner’s


Approach, Pressman R. S.& Maxim B. R., 7th
Edition, McGraw-Hill, 2015.
2. Software Engineering, Sommerville I., 10th
Edition, Pearson Inc., 2014

12
SE 2101 Software
Engineering

Lecture no. 1

13
Outline

 Motivation
 Nature of Software
 What is Software & its Importance
 What is Software Engineering
 Software Process
 Software Myths

Recommended Text Book;


Rogers and Pressman

14
Software can have a
huge impact on any
aspect of society.

15
Where can we find the
software?

16
Some popular ones...

17
Some popular ones...

18
Some popular ones...

19
Conclusion

Software is
Everywhere!

20
Software Crisis
 About US$250 billions spent per year in the
US on application development
 Out of this, about US$140 billions wasted
due to the projects getting abandoned or
reworked; this in turn because of not
following best practices and standards

Ref: Standish Group, 1996

21
Problems in Software
Development
 Software products:
 Fail to meet user requirements (London

Ambulance System)
 Hard to Extend/Improve

 Bad Documentation

 Bad Quality

 More time & Cost than expected

22
23
Ariane 5 Flight 501
 Cause: Design errors in the system
 https://www.youtube.com/watch?
v=W3YJeoYgozw

24
A Good Software Engineer
Avoids Problem

A clever person solves a problem,


A wise person avoids it!
Albert Einstein

25
Solution

SOFTWARE ENGINEERING

26
What is Software?

 Software consists of
1. Instructions (computer programs) that
when executed provides desired function
and performance,
2. Data structures that enable the programs
to adequately manipulate information, and
3. Documents that describe the operation
and use of the programs.

27
What is Engineering?
Engineering is the application of science and math to solve
problems. Engineers figure out how things work and find
practical uses for scientific discoveries.

https://www.livescience.com/47499-what-is-engineering.html

28
What is Software
Engineering?
 A discipline whose aim is the production of
quality software, delivered on time, within
budget, and satisfying users' needs. (Stephen
R. Schach, Software Engineering, 2ed.)
 Software engineering is concerned with the
theories, methods and tools for developing,
managing and evolving software products. (I.
Sommerville, 6ed.)

29
Casting the Term
 The field of software engineering was born in
NATO Conferences, 1968 in response to
chronic failures of large software projects to
meet schedule and budget constraints
 Since then, term became popular because
software is getting more and more important
to industry and business but the “software
crisis” still persists.

30
Types of Software
Software is mainly divided into two categories:
1. System software
 Systems software includes the programs that are dedicated to
managing the computer itself, such as the operating system.

2.Application software
 Application software, or simply applications, are often called
productivity programs or end-user programs because they
enable the user to complete tasks, such as creating
documents, specific to the task it is designed e.g. word
processing software
 More examples?

31
Software Process

32
Software Process

 Communication
 Planning
 Modeling
 Implementation
 Deployment

33
Software Process

 Communication: Before any technical work can


commence, it is critically important to
communicate and collaborate with the customer
(and other stakeholders).
 The intent is to understand stakeholders’
objectives for the project and to gather
requirements that help define software features
and functions.

34
Software Process

 Planning: A software project is a complicated


journey, and the planning activity creates a “map”
that helps guide the team as it makes the journey.
 The map—called a software project plan—defines
the software engineering work by describing the
technical tasks to be conducted, the risks that are
likely, the resources that will be required, the work
products to be produced, and a work schedule.

35
Software Process

 Modelling: A software engineer creates


models to better understand software
requirements and the design that will achieve
those requirements.

36
Software Process

 Construction: This activity combines code


generation (either manual or automated) and
the testing that is required to uncover errors
in the code.

37
Software Process

 Deployment: The software (as a complete


entity or as a partially completed increment)
is delivered to the customer who evaluates
the delivered product and provides feedback
based on the evaluation

38
The End.

39

You might also like