SlideShare a Scribd company logo
1 of 30
Download to read offline
Object Oriented
Software Engineering
Yoseph K, Instructor
yosefkrs@outlook.com
Office Hours: Monday - Saturday
1
Lecture One
Introduction to Software Engineering
´Software Engineering Concepts
´Scope and Principles
´Software Life cycle
2
Software Engineering
´ Software engineering is a discipline whose aim is the production of fault-
free software, delivered on time and within budget, that satisfies the
client’s need.
´ It is process of solving customers’ problems by the systematic
development and evolution of large, high- quality software systems within
cost, time and other constraints.
è The software must be easy to modify when the user’s needs change.
3
Software
´ Software consists of not just code in machine-readable form but also all
the documentation that is an intrinsic component of every project.
´ The specification document
´ The design document
´ Legal and accounting documents of all kinds
´ The software project management plan and other management
documents
´ All types of manuals.
4
People: Three Parties Involved
´ Client: The client is the individual who wants a product to be built
(developed).
´ Developers: The developers are the members of a team responsible
for building that product.
´ User: The user is the person or persons on whose behalf the client has
commissionedthe product and who will utilize the software.
5
Ethics in Software Engineering:
´ Software engineers shall
q Act consistently with public interest
q Act in the best interests of their clients
q Develop and maintain with the highest standards possible
q Maintain integrity and independence
q Promote an ethical approach in management
q Advance the integrity and reputation of the profession
q Be fair and supportive to colleagues
q Participate in lifelong learning
6
Software Development Life Cycle (SDLC)
´ The Software Development Life Cycle (SDLC) is a framework
for describing the phases involved in developing and
maintaining information systems. It has two types of process
v Sequential (Classic, Waterfall)
v Evolutionary (Iterative, spiral)
´ Typical SDLC phases include planning, analysis, design,
implementation, and support.
7
What is SDLC?
— SDLC is a process followed for a software project, within a software
organization.
— It consists of a detailed plan describing how to develop, maintain, replace
and alter or enhance specific software.
— The life cycle defines a methodology for improving the quality of software
and the overall development process.
— A typical Software Development Life Cycle consists of the following stages
q Planning and Requirement Analysis
q Defining Requirements
q Designing the Product Architecture
q Building or Developing the Product
q Testing the Product
q Deployment in the Market and Maintenance
8
9
SDLC Models
— There are various software development life cycle models defined and
designed which are followedduring the software development process.
— Each process model follows a Series of steps unique to its type to ensure
success in the process of software development.
— Following are the most important and popular SDLC models followedin
the industry
qWaterfall Model
qIterative Model
qSpiral Model
qV-Model
10
SDLC - Waterfall Model
´ The Waterfall Model was the first Process Model to be introduced. It is also
referred to as a linear-sequentiallife cycle model.
´ It is very simple to understand and use.
´ In a waterfall model, each phase must be completed before the next
phase can begin and there is no overlapping in the phases.
´ The Waterfall model is the earliest SDLC approach that was used for
software development.
´ The waterfall Model illustrates the software development process in a linear
sequential flow. This means that any phase in the development process
begins only if the previous phase is complete. In this waterfall model, the
phases do not overlap.
11
Waterfall Model - Design
— In "The Waterfall" approach, the whole process of software development is
divided into separate phases.
— In this Waterfall model, typically, the outcome of one phase acts as the
input for the next phase sequentially.
— The sequential phases in Waterfall model are -
q Requirement Gathering and analysis
q System Design
q Implementation
q Integration and Testing
q Deployment of system
q Maintenance
— All these phases are cascaded to each other in which progress is seen as
flowing steadily downwards (waterfall) through the phases.
12
13
Waterfall Model - Advantages
Some of the basic advantages in waterfall models are:-
q Simple and easy to understand and use
q Easy to manage due to the rigidity of the model. Each
phase has specific deliverables and a review process.
q Phases are processed and completed one at a time.
q Works well for smaller projects where requirements are
very well understood.
q Clearly defined stages.
q Well understood milestones.
q Easy to arrange tasks.
q Process and results are well documented.
14
Waterfall Model - Disadvantages
The major disadvantages of the Waterfall Model are as follows:-
q Once an application is in the testing stage, it’s very difficult to go
back and change something that was not well-thought out in the
concept stage.
q High amounts of risk and uncertainty.
q Not a good model for complex and object-oriented projects.
q Poor model for long and ongoing projects.
q Not suitable for the projects where requirements are at a moderate to
high risk of changing. So, risk and uncertainty is high with this process
model.
q It is difficult to measure progress within stages.
q Cannot accommodate changing requirements.
q Adjusting scope during the life cycle can end a project.
15
SDLC – Iterative / Incremental Model
´ The iterative process starts with a simple implementation of a small set of
the software requirements and iteratively enhances the evolving versions
until the complete system is implemented and ready to be deployed.
´ An iterative life cycle model does not attempt to start with a full
specification of requirements.
´ This process is repeated, producing a new version of the software at the
end of each iteration of the model.
´ The development begins by specifying and implementing just part of the
software, which is then reviewed to identify further requirements.
16
Iterative Model - Design
´ Iterative process starts with a simple implementation of a subset of the
software requirements and iteratively enhances the evolving versions until
the full system is implemented.
´ At each iteration, design modifications are made and new functional
capabilities are added.
´ The basic idea behind this method is to develop a system through repeated
cycles (iterative) and in smaller portions at a time (incremental).
´ During software development, more than one iteration of the software
development cycle may be in progress at the same time.
17
18
Iterative Model - Pros and Cons
´ The advantages of the Iterative and Incremental SDLC
Model are as follows:-
q Parallel development can be planned.
q Less costly to change the scope/requirements.
q Easier to manage risk - High risk part is done first
q Risk analysis is better
q Testing and debugging during smaller iteration is easy.
q It supports changing requirements.
q Progress can be measured.
q Some working functionality can be developed quickly
and early in the life cycle.
19
continue
— The disadvantages of the Iterative and Incremental SDLC
Model are as follows :-
q More resources may be required.
q More management attention is required.
q Not suitable for smaller projects.
q Highly skilled resources are required for risk
analysis
q Projects progress is highly dependent upon the
risk analysis phase.
q Defining increments may require definition of the
complete system.
q System architecture or design issues may arise
20
SDLC - Spiral Model
— The spiral model combines the idea of iterative development with the
systematic, controlled aspects of the waterfall model.
— Spiral model is a combination of iterative development process model and
sequential linear development model
— It allows incremental releases of the product or incremental refinement
through each iteration around the spiral.
— The spiral model has four phases. A software project repeatedly passes
through these phases in iterations called Spirals.
q Identification
q Design
q Construction
q Evaluation
21
22
Spiral Model - Pros and Cons
The advantages of the Spiral SDLC Model are as follows −
q It allows elements of the product to be added in,
when they become available or known.
q Allows extensive use of prototypes.
q Users see the system early
q Requirements can be captured more accurately.
q Changing requirements can be accommodated.
q Development can be divided into smaller parts
q Risky parts can be developed earlier which helps in
better risk management.
23
continue
The disadvantages of the Spiral SDLC Model are as follows −
q Management is more complex.
q End of the project may not be known early.
q Process is complex
q Spiral may go on indefinitely.
q Large number of intermediate stages requires
excessive documentation.
q Not suitable for small or low risk projects and could
be expensive for small projects.
24
SDLC - V-Model
´ The execution of processes happens in a sequential manner in a V-shape.
´ It is also known as Verification and Validation model.
´ The V-Model is an extension of the waterfall model and is based on the
association of a testing phase for each corresponding development stage.
´ For every single phase in the development cycle, there is a directly
associated testing phase.
´ This is a highly-disciplinedmodel and the next phase starts only after
completion of the previous phase.
25
26
V-Model - Design
´ Under the V-Model, the corresponding testing phase of the development
phase is planned in parallel.
´ there are Verification phases on one side of the ‘V’ and Validation phases
on the other side. The Coding Phase joins the two sides of the V-Model.
´ The verification and validation phases are joined in a coding phase.
´ Some of the verification phase are:- requirement analysis, system design,
architecture and module designs.
´ Some of the validation phases are:- unit testing, integration testing, system
testing and acceptance testing.
´ The coding phase is performed based on the coding guidelines and
standards. The code goes through numerous code reviews
27
V-Model - Pros and Cons
— The advantages of the V-Model method are as follows
q highly-disciplinedmodel and Phases are completed one at a
time.
q Works well for smaller projects where requirements are very well
understood.
q Simple and easy to understand and use.
q Easy to manage due to the rigidity of the model.
q Each phase has specific deliverables and a review process.
28
continue
— The disadvantages of the V-Model method are as follows −
q Not a good model for complex and object-oriented projects.
q Poor model for long and ongoing projects.
q Once an application is in the testing stage, it is difficult to go
back and change a functionality.
q Not suitable for the projects where requirements are at a
moderate to high risk of changing.
q High risk and uncertainty.
29
Lecture One Review Question
Q1. Briefly Explain the difference between software and software engineering?
Q2. List at least four ethics of software engineering?
Q3. Explain the stages of software development life cycle?
Q4. For the following SDLC models, explain the pros and cons:
´Waterfall model
´Iterative models
´Spiral model
´V-model
30

More Related Content

Similar to Lecture 1 OOSE.pdf

Software Process Model.ppt
Software Process Model.pptSoftware Process Model.ppt
Software Process Model.pptSasiR18
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSuresh Koujalagi
 
Software development life cycle.
Software development life cycle.Software development life cycle.
Software development life cycle.RishavChandel1
 
Lesson 2 introduction in computing
Lesson 2 introduction in computingLesson 2 introduction in computing
Lesson 2 introduction in computingProfessor Thor
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSaravanan Manoharan
 
Software Development Life Cycle - SDLC
Software Development Life Cycle - SDLCSoftware Development Life Cycle - SDLC
Software Development Life Cycle - SDLCANKUR-BA
 
software development life cycle(SDLC)
software development life cycle(SDLC)software development life cycle(SDLC)
software development life cycle(SDLC)sanoop s
 
Session 03 - SDLC
Session 03 - SDLCSession 03 - SDLC
Session 03 - SDLCPoojaLQA
 
SDLC (Software development life Cycle)
SDLC (Software development life Cycle)SDLC (Software development life Cycle)
SDLC (Software development life Cycle)PrithvirajChauhan61
 
Lecture 02 - Development Methodologies.pptx
Lecture 02 - Development Methodologies.pptxLecture 02 - Development Methodologies.pptx
Lecture 02 - Development Methodologies.pptxelham706227
 

Similar to Lecture 1 OOSE.pdf (20)

SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
 
Software Process Model.ppt
Software Process Model.pptSoftware Process Model.ppt
Software Process Model.ppt
 
Process Models
Process ModelsProcess Models
Process Models
 
Process Models
Process ModelsProcess Models
Process Models
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
 
Software development life cycle.
Software development life cycle.Software development life cycle.
Software development life cycle.
 
Lesson 2 introduction in computing
Lesson 2 introduction in computingLesson 2 introduction in computing
Lesson 2 introduction in computing
 
Waterfall model in SDLC
Waterfall model in SDLCWaterfall model in SDLC
Waterfall model in SDLC
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
 
SDLC
SDLCSDLC
SDLC
 
SDLC
SDLCSDLC
SDLC
 
Software Development Life Cycle - SDLC
Software Development Life Cycle - SDLCSoftware Development Life Cycle - SDLC
Software Development Life Cycle - SDLC
 
SDLC
SDLCSDLC
SDLC
 
SDLC
SDLCSDLC
SDLC
 
software development life cycle(SDLC)
software development life cycle(SDLC)software development life cycle(SDLC)
software development life cycle(SDLC)
 
Session 03 - SDLC
Session 03 - SDLCSession 03 - SDLC
Session 03 - SDLC
 
Assignment
AssignmentAssignment
Assignment
 
SDLC (Software development life Cycle)
SDLC (Software development life Cycle)SDLC (Software development life Cycle)
SDLC (Software development life Cycle)
 
Lecture 02 - Development Methodologies.pptx
Lecture 02 - Development Methodologies.pptxLecture 02 - Development Methodologies.pptx
Lecture 02 - Development Methodologies.pptx
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 

More from amanuel236786

CH-2.2 Developing Project Charter and Baseline Project Plan.ppt
CH-2.2 Developing Project Charter and Baseline Project Plan.pptCH-2.2 Developing Project Charter and Baseline Project Plan.ppt
CH-2.2 Developing Project Charter and Baseline Project Plan.pptamanuel236786
 
CH-2.1 Conceptualizing and Initializing the IT Project.ppt
CH-2.1 Conceptualizing and Initializing the IT Project.pptCH-2.1 Conceptualizing and Initializing the IT Project.ppt
CH-2.1 Conceptualizing and Initializing the IT Project.pptamanuel236786
 
CH 3- The Human Side of Project Management.ppt
CH 3- The Human Side of Project Management.pptCH 3- The Human Side of Project Management.ppt
CH 3- The Human Side of Project Management.pptamanuel236786
 
Chapter 4 Product and Service Design.pptx
Chapter 4 Product and Service Design.pptxChapter 4 Product and Service Design.pptx
Chapter 4 Product and Service Design.pptxamanuel236786
 
Chapter 4 Product and Service Design.ppt
Chapter 4 Product and Service Design.pptChapter 4 Product and Service Design.ppt
Chapter 4 Product and Service Design.pptamanuel236786
 
CH-1 Introduction to OM.ppt
CH-1 Introduction to OM.pptCH-1 Introduction to OM.ppt
CH-1 Introduction to OM.pptamanuel236786
 
CH 3 Quality management and Control.pptx
CH 3 Quality management and Control.pptxCH 3 Quality management and Control.pptx
CH 3 Quality management and Control.pptxamanuel236786
 
CH 3 Quality management and Control.ppt
CH 3 Quality management and Control.pptCH 3 Quality management and Control.ppt
CH 3 Quality management and Control.pptamanuel236786
 
CH 2 Operations Strategy New 2013.pptx
CH 2 Operations Strategy New 2013.pptxCH 2 Operations Strategy New 2013.pptx
CH 2 Operations Strategy New 2013.pptxamanuel236786
 
Chapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptx
Chapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptxChapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptx
Chapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptxamanuel236786
 
Chapter-7 Job Design and Work Measurement Final.pptx
Chapter-7 Job Design and Work Measurement Final.pptxChapter-7 Job Design and Work Measurement Final.pptx
Chapter-7 Job Design and Work Measurement Final.pptxamanuel236786
 
CHAPTER-6 Facility Location and Layout 1.pptx
CHAPTER-6 Facility Location and Layout 1.pptxCHAPTER-6 Facility Location and Layout 1.pptx
CHAPTER-6 Facility Location and Layout 1.pptxamanuel236786
 
Chapter-5 Process Selection New.pptx
Chapter-5 Process Selection New.pptxChapter-5 Process Selection New.pptx
Chapter-5 Process Selection New.pptxamanuel236786
 
Chapter-4 Product and Service Design.pptx
Chapter-4 Product and Service Design.pptxChapter-4 Product and Service Design.pptx
Chapter-4 Product and Service Design.pptxamanuel236786
 
CH-3 Quality management and Control.pptx
CH-3 Quality management and Control.pptxCH-3 Quality management and Control.pptx
CH-3 Quality management and Control.pptxamanuel236786
 
CH-2 Operations Strategy.pptx
CH-2 Operations Strategy.pptxCH-2 Operations Strategy.pptx
CH-2 Operations Strategy.pptxamanuel236786
 
CH-1 Introduction to OM.pptx
CH-1 Introduction to OM.pptxCH-1 Introduction to OM.pptx
CH-1 Introduction to OM.pptxamanuel236786
 

More from amanuel236786 (20)

Chapter 5(five).pdf
Chapter 5(five).pdfChapter 5(five).pdf
Chapter 5(five).pdf
 
CH-2.2 Developing Project Charter and Baseline Project Plan.ppt
CH-2.2 Developing Project Charter and Baseline Project Plan.pptCH-2.2 Developing Project Charter and Baseline Project Plan.ppt
CH-2.2 Developing Project Charter and Baseline Project Plan.ppt
 
CH-2.1 Conceptualizing and Initializing the IT Project.ppt
CH-2.1 Conceptualizing and Initializing the IT Project.pptCH-2.1 Conceptualizing and Initializing the IT Project.ppt
CH-2.1 Conceptualizing and Initializing the IT Project.ppt
 
CH 3- The Human Side of Project Management.ppt
CH 3- The Human Side of Project Management.pptCH 3- The Human Side of Project Management.ppt
CH 3- The Human Side of Project Management.ppt
 
Chapter 4 Product and Service Design.pptx
Chapter 4 Product and Service Design.pptxChapter 4 Product and Service Design.pptx
Chapter 4 Product and Service Design.pptx
 
Chapter 4 Product and Service Design.ppt
Chapter 4 Product and Service Design.pptChapter 4 Product and Service Design.ppt
Chapter 4 Product and Service Design.ppt
 
CH-1 Introduction to OM.ppt
CH-1 Introduction to OM.pptCH-1 Introduction to OM.ppt
CH-1 Introduction to OM.ppt
 
CH 3 Quality management and Control.pptx
CH 3 Quality management and Control.pptxCH 3 Quality management and Control.pptx
CH 3 Quality management and Control.pptx
 
CH 3 Quality management and Control.ppt
CH 3 Quality management and Control.pptCH 3 Quality management and Control.ppt
CH 3 Quality management and Control.ppt
 
CH 2 Operations Strategy New 2013.pptx
CH 2 Operations Strategy New 2013.pptxCH 2 Operations Strategy New 2013.pptx
CH 2 Operations Strategy New 2013.pptx
 
Chapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptx
Chapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptxChapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptx
Chapter-8 Capacity Planning, Aggregate Planning and Scheduling.pptx
 
Chapter-7 Job Design and Work Measurement Final.pptx
Chapter-7 Job Design and Work Measurement Final.pptxChapter-7 Job Design and Work Measurement Final.pptx
Chapter-7 Job Design and Work Measurement Final.pptx
 
CHAPTER-6 Facility Location and Layout 1.pptx
CHAPTER-6 Facility Location and Layout 1.pptxCHAPTER-6 Facility Location and Layout 1.pptx
CHAPTER-6 Facility Location and Layout 1.pptx
 
Chapter-5 Process Selection New.pptx
Chapter-5 Process Selection New.pptxChapter-5 Process Selection New.pptx
Chapter-5 Process Selection New.pptx
 
Chapter-4 Product and Service Design.pptx
Chapter-4 Product and Service Design.pptxChapter-4 Product and Service Design.pptx
Chapter-4 Product and Service Design.pptx
 
CH-3 Quality management and Control.pptx
CH-3 Quality management and Control.pptxCH-3 Quality management and Control.pptx
CH-3 Quality management and Control.pptx
 
CH-2 Operations Strategy.pptx
CH-2 Operations Strategy.pptxCH-2 Operations Strategy.pptx
CH-2 Operations Strategy.pptx
 
CH-1 Introduction to OM.pptx
CH-1 Introduction to OM.pptxCH-1 Introduction to OM.pptx
CH-1 Introduction to OM.pptx
 
uml.pptx
uml.pptxuml.pptx
uml.pptx
 
Chapter 2.ppt
Chapter 2.pptChapter 2.ppt
Chapter 2.ppt
 

Recently uploaded

Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room servicediscovermytutordmt
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 

Recently uploaded (20)

Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 

Lecture 1 OOSE.pdf

  • 1. Object Oriented Software Engineering Yoseph K, Instructor yosefkrs@outlook.com Office Hours: Monday - Saturday 1
  • 2. Lecture One Introduction to Software Engineering ´Software Engineering Concepts ´Scope and Principles ´Software Life cycle 2
  • 3. Software Engineering ´ Software engineering is a discipline whose aim is the production of fault- free software, delivered on time and within budget, that satisfies the client’s need. ´ It is process of solving customers’ problems by the systematic development and evolution of large, high- quality software systems within cost, time and other constraints. è The software must be easy to modify when the user’s needs change. 3
  • 4. Software ´ Software consists of not just code in machine-readable form but also all the documentation that is an intrinsic component of every project. ´ The specification document ´ The design document ´ Legal and accounting documents of all kinds ´ The software project management plan and other management documents ´ All types of manuals. 4
  • 5. People: Three Parties Involved ´ Client: The client is the individual who wants a product to be built (developed). ´ Developers: The developers are the members of a team responsible for building that product. ´ User: The user is the person or persons on whose behalf the client has commissionedthe product and who will utilize the software. 5
  • 6. Ethics in Software Engineering: ´ Software engineers shall q Act consistently with public interest q Act in the best interests of their clients q Develop and maintain with the highest standards possible q Maintain integrity and independence q Promote an ethical approach in management q Advance the integrity and reputation of the profession q Be fair and supportive to colleagues q Participate in lifelong learning 6
  • 7. Software Development Life Cycle (SDLC) ´ The Software Development Life Cycle (SDLC) is a framework for describing the phases involved in developing and maintaining information systems. It has two types of process v Sequential (Classic, Waterfall) v Evolutionary (Iterative, spiral) ´ Typical SDLC phases include planning, analysis, design, implementation, and support. 7
  • 8. What is SDLC? — SDLC is a process followed for a software project, within a software organization. — It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. — The life cycle defines a methodology for improving the quality of software and the overall development process. — A typical Software Development Life Cycle consists of the following stages q Planning and Requirement Analysis q Defining Requirements q Designing the Product Architecture q Building or Developing the Product q Testing the Product q Deployment in the Market and Maintenance 8
  • 9. 9
  • 10. SDLC Models — There are various software development life cycle models defined and designed which are followedduring the software development process. — Each process model follows a Series of steps unique to its type to ensure success in the process of software development. — Following are the most important and popular SDLC models followedin the industry qWaterfall Model qIterative Model qSpiral Model qV-Model 10
  • 11. SDLC - Waterfall Model ´ The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear-sequentiallife cycle model. ´ It is very simple to understand and use. ´ In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases. ´ The Waterfall model is the earliest SDLC approach that was used for software development. ´ The waterfall Model illustrates the software development process in a linear sequential flow. This means that any phase in the development process begins only if the previous phase is complete. In this waterfall model, the phases do not overlap. 11
  • 12. Waterfall Model - Design — In "The Waterfall" approach, the whole process of software development is divided into separate phases. — In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially. — The sequential phases in Waterfall model are - q Requirement Gathering and analysis q System Design q Implementation q Integration and Testing q Deployment of system q Maintenance — All these phases are cascaded to each other in which progress is seen as flowing steadily downwards (waterfall) through the phases. 12
  • 13. 13
  • 14. Waterfall Model - Advantages Some of the basic advantages in waterfall models are:- q Simple and easy to understand and use q Easy to manage due to the rigidity of the model. Each phase has specific deliverables and a review process. q Phases are processed and completed one at a time. q Works well for smaller projects where requirements are very well understood. q Clearly defined stages. q Well understood milestones. q Easy to arrange tasks. q Process and results are well documented. 14
  • 15. Waterfall Model - Disadvantages The major disadvantages of the Waterfall Model are as follows:- q Once an application is in the testing stage, it’s very difficult to go back and change something that was not well-thought out in the concept stage. q High amounts of risk and uncertainty. q Not a good model for complex and object-oriented projects. q Poor model for long and ongoing projects. q Not suitable for the projects where requirements are at a moderate to high risk of changing. So, risk and uncertainty is high with this process model. q It is difficult to measure progress within stages. q Cannot accommodate changing requirements. q Adjusting scope during the life cycle can end a project. 15
  • 16. SDLC – Iterative / Incremental Model ´ The iterative process starts with a simple implementation of a small set of the software requirements and iteratively enhances the evolving versions until the complete system is implemented and ready to be deployed. ´ An iterative life cycle model does not attempt to start with a full specification of requirements. ´ This process is repeated, producing a new version of the software at the end of each iteration of the model. ´ The development begins by specifying and implementing just part of the software, which is then reviewed to identify further requirements. 16
  • 17. Iterative Model - Design ´ Iterative process starts with a simple implementation of a subset of the software requirements and iteratively enhances the evolving versions until the full system is implemented. ´ At each iteration, design modifications are made and new functional capabilities are added. ´ The basic idea behind this method is to develop a system through repeated cycles (iterative) and in smaller portions at a time (incremental). ´ During software development, more than one iteration of the software development cycle may be in progress at the same time. 17
  • 18. 18
  • 19. Iterative Model - Pros and Cons ´ The advantages of the Iterative and Incremental SDLC Model are as follows:- q Parallel development can be planned. q Less costly to change the scope/requirements. q Easier to manage risk - High risk part is done first q Risk analysis is better q Testing and debugging during smaller iteration is easy. q It supports changing requirements. q Progress can be measured. q Some working functionality can be developed quickly and early in the life cycle. 19
  • 20. continue — The disadvantages of the Iterative and Incremental SDLC Model are as follows :- q More resources may be required. q More management attention is required. q Not suitable for smaller projects. q Highly skilled resources are required for risk analysis q Projects progress is highly dependent upon the risk analysis phase. q Defining increments may require definition of the complete system. q System architecture or design issues may arise 20
  • 21. SDLC - Spiral Model — The spiral model combines the idea of iterative development with the systematic, controlled aspects of the waterfall model. — Spiral model is a combination of iterative development process model and sequential linear development model — It allows incremental releases of the product or incremental refinement through each iteration around the spiral. — The spiral model has four phases. A software project repeatedly passes through these phases in iterations called Spirals. q Identification q Design q Construction q Evaluation 21
  • 22. 22
  • 23. Spiral Model - Pros and Cons The advantages of the Spiral SDLC Model are as follows − q It allows elements of the product to be added in, when they become available or known. q Allows extensive use of prototypes. q Users see the system early q Requirements can be captured more accurately. q Changing requirements can be accommodated. q Development can be divided into smaller parts q Risky parts can be developed earlier which helps in better risk management. 23
  • 24. continue The disadvantages of the Spiral SDLC Model are as follows − q Management is more complex. q End of the project may not be known early. q Process is complex q Spiral may go on indefinitely. q Large number of intermediate stages requires excessive documentation. q Not suitable for small or low risk projects and could be expensive for small projects. 24
  • 25. SDLC - V-Model ´ The execution of processes happens in a sequential manner in a V-shape. ´ It is also known as Verification and Validation model. ´ The V-Model is an extension of the waterfall model and is based on the association of a testing phase for each corresponding development stage. ´ For every single phase in the development cycle, there is a directly associated testing phase. ´ This is a highly-disciplinedmodel and the next phase starts only after completion of the previous phase. 25
  • 26. 26
  • 27. V-Model - Design ´ Under the V-Model, the corresponding testing phase of the development phase is planned in parallel. ´ there are Verification phases on one side of the ‘V’ and Validation phases on the other side. The Coding Phase joins the two sides of the V-Model. ´ The verification and validation phases are joined in a coding phase. ´ Some of the verification phase are:- requirement analysis, system design, architecture and module designs. ´ Some of the validation phases are:- unit testing, integration testing, system testing and acceptance testing. ´ The coding phase is performed based on the coding guidelines and standards. The code goes through numerous code reviews 27
  • 28. V-Model - Pros and Cons — The advantages of the V-Model method are as follows q highly-disciplinedmodel and Phases are completed one at a time. q Works well for smaller projects where requirements are very well understood. q Simple and easy to understand and use. q Easy to manage due to the rigidity of the model. q Each phase has specific deliverables and a review process. 28
  • 29. continue — The disadvantages of the V-Model method are as follows − q Not a good model for complex and object-oriented projects. q Poor model for long and ongoing projects. q Once an application is in the testing stage, it is difficult to go back and change a functionality. q Not suitable for the projects where requirements are at a moderate to high risk of changing. q High risk and uncertainty. 29
  • 30. Lecture One Review Question Q1. Briefly Explain the difference between software and software engineering? Q2. List at least four ethics of software engineering? Q3. Explain the stages of software development life cycle? Q4. For the following SDLC models, explain the pros and cons: ´Waterfall model ´Iterative models ´Spiral model ´V-model 30