Software Engineering principles and practices

okmanjunatha23cse 101 views 25 slides Sep 17, 2024
Slide 1
Slide 1 of 25
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25

About This Presentation

Software Engineering


Slide Content

Department of Collegiate and Technical Education
Week 1 :Software Engineering
20CS44P: Software Engineering Principles and Practices
( IV Semester)
Computer Science and Engineering
Session 1
1Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices

Importance Software Engineering
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01
TOOLS PRODUCT
RAW MATERIAL
SKILL / ART
+

Course Outcomes: At the end of the Course, the student will be able
to learn:
CO-01Typical software development life cycle (SDLC), list and differentiate the various SDLC models
along with identifying where each model could be beneficial when applied.
CO-02Demonstrate the application of design thinking as a process, explain how it helps in
requirement engineering and mitigate risks.
CO-03Study a given application requirement, create user stories, draw the appropriate UML diagram and
validate to ensure user story/UML diagram meet with the given requirement.
CO-04Document standard test procedures and test cases for a given requirement to ensure the software
gives the desired results for which it is built.
Session :01

Today's Topics
 Definition of Software Engineering.
 Need of Software Engineering.
 Software development paradigms.
 Software Product Types
 Characteristics of good software.
 
 
4Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Definition of Software Engineering
It is an engineering approach on a software development of systematic application.
The term software engineering is the product of two words, software and engineering.
Software consists of carefully-organized instructions and code written by developers on
any of various particular computer languages.
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Definition of Software Engineering Contd…
Engineering is the application of scientific and practical knowledge to invent, design,
build, maintain, and improve frameworks, processes etc.
Software Engineering is an engineering branch related to the evolution of software
product using well-defined scientific principles, techniques, and procedures.
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Software Engineering
Session :01
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices

Need of Software Engineering
Large software - It is easier to build a wall than to a house or building, likewise, as the
size of software become large, engineering has to step to give it a scientific process.
Scalability- If the software process were not based on scientific and engineering
concepts, it would be easier to re-create new software than to scale an existing one.
Cost- As hardware industry has shown its skills and huge manufacturing has lower
down the price of computer and electronic hardware.
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
SEP&P-20CS44P Session :01

Need of Software Engineering contd…
Dynamic Nature: The always growing and adapting nature of software hugely depends
upon the environment in which the user works. If the nature of software is always
changing, new enhancements need to be done in the existing one. This is where software
engineering plays a good role.
Quality Management: Better process of software development provides better and
quality software product.
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
SEP&P-20CS44P Session :01

Need of Software Engineering contd..
Software paradigms: Software paradigms refer to the methods and steps, which are
taken while designing the software. There are many methods proposed and are in work
today. These can be combined into various categories, though each of them is
contained in one another
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
SEP&P-20CS44P Session :01

Software Development Paradigms
Software paradigms refer to the methods and steps, which are taken while designing the
software. There are many methods proposed and are in work today, but we need to see
where in the software engineering these paradigms stand.
These can be combined into various categories, though each of them is contained in one
another
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Software Development Paradigm
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01
This Paradigm is known as software engineering paradigms where all the engineering concepts
pertaining to the development of software are applied.
 It includes various researches and requirement gathering which helps the software product to build.
 It consists of :
* Requirement gathering
* Software design
* Programming
 

Software Design Paradigm
This paradigm is a part of Software Development .
It includes:
* Design
* Maintenance
* Programming
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Programming Paradigm
This paradigm is closely related to the programming aspect of software
development.
This includes :
* Coding
* Testing
* Integration
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Software Development Paradigm
Software Development Paradigm types: A few of software development paradigms
or process models are defined as follows:
1.Waterfall model
2.Iterative model
3.Spiral model

Software Development Paradigm Contd…
1.Waterfall Model
Waterfall model is the simplest model of software development paradigm.
It says the all the phases of SDLC will function one after another in linear manner.

Software Development Paradigm Contd…
2.Iterative model
This model leads the software development process in iterations.
It projects the process of development in cyclic manner repeating every step after every cycle of
SDLC process.

Software Development Paradigm Contd…
3.Spiral Model
Spiral model is a combination of both, iterative model and one of the SDLC model.
It can be seen as if you choose one SDLC model and combine it with cyclic process
(iterative model).

Software Product Types
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01
S.No. Generic software product development Custom software development
1.
The generic software development is
done for developing a general purpose
software.
Customer software development is
done to develop a software product as
per the needs of particular customer.
2.
In this development process, the
software developers have to depict the
end-users specifications.
In this development process, the the
end-user requirements can be
aggregated by communicating by
them.
3.
From designing and marketing
perspective, this type of development
is very difficult.
This development does not require
marketing, because it is developed for
appropriate group of users.
4.
Large number of users may be using
this kind of software.
This type of software is used by
limited number of users.
5.
Quality of the product is not a
preference for generic software.
Quality is the main criterion in
customer software product. Best
quality of the product is focused for
customer or company.
6.
Development team controls the process
of generic software development.
Customer determines the process of
software development in this type of
product.
7.
Generally the software developed is
economical. There may be some
hidden costs such as installation and
implementation cost.
Software product is of high cost as the
particular product for customer is
developed.
8.
Example of generic software product
development is Word-editing software.
Inventory control and management
system are examples of customer
software development.

Characteristics of Good Software
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Characteristics of Good Software contd..
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01
1.Operational: In operational categories, the factors that decide the software performance in
operations.
It can be measured on:
●Budget
●Usability
●Efficiency
●Correctness
●Functionality
●Dependability
●Security
●Safety

Characteristics of Good Software contd..
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01
2.Transitional: When the software is moved from one platform to another, the factors
deciding the software quality:
Portability
Interoperability
Reusability
Adaptability

Characteristics of Good Software contd..
3.Maintenance: In this category all factors are included that describes about how
well a software has the capabilities to maintain itself in the ever changing
environment:
Modularity
Maintainability
Flexibility
Scalability
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

References
Agile Software Development, principles, patterns and practices by Robert Martin
Art of agile development by James Shore & Shane Warden
Software-Engineering-9th-Edition-by-Ian-Sommerville
Becoming Agile..in an imperfect world by Greg Smith, Ahmed Sidky
scaledagileframework.com
Continuous Delivery Principles | Atlassian
www.agilealliance.org/
www.udemy.com
www. tutorialride.com
www.interaction-design.org/
www.digite.com
Computer Science & Engineering – 20CS44P – Software Engineering Principles & Practices
Session :01

Chairperson
Smt. USHA D
142-Government Women’s Polytechnic, Ramanagar
Moderator
Smt Sunandadevi V. K
109- Government Polytechnic, Kalaburgi
Subject Rewiever
Smt Banashankaramma F.L
152- Government Polytechnic, Bagalkote
Content Developers
1. Smt Farheen Jahan Aara
141- 142-Government Women’s Polytechnic, Kalaburgi
2. Shri Prakash M 114- Government Polytechnic, Karawar
3. Smt Sharanamma N 162- Government Polytechnic, Joida
4. Smt Chandrakala 165- Government Polytechnic,Karatgi
5. Shri Sharath 135- Government Residential Women’s Polytechnic, Shimoga
6. Smt Yashodha 155- Government Polytechnic, Turvekere
7. Shri.Praveen .K.B 170- Government Polytechnic Harihar
Thank You
Tags