SlideShare a Scribd company logo
1 of 33
Software Development In 21 st  Century
www.henryjacob.com www.designdrivendevelopment.org www.arrkgroup.com
Deadlines Poor Estimation Requirement Changes Immature Architecture and Design No Domain Knowledge Assumption Bad Code Quality No Documentation Death March It’s not my code-Attitude Inadequate Testing
We are not alone
41.1% of projects will be cancelled before completion 52% of projects will cost 189% of their original estimate Projects completed will contain 42% of the original proposed features and functions  The average schedule overrun is 222% of the original time estimate
“ Mythical Man Month”  -Fred Brooks  Manager of OS/360 5000 Man-Years Effort
The practices of the software engineering community have changed very little over the last 30 years, and the mistakes being made then are still being made today.
What missed in most of cases is  REALITY
Deadlines: More Software projects have gone haywire for lack of calendar time than for all other causes combined – Brooks Can we change deadlines? NO (In most cases)
Poor Estimation Assumes nothing will go wrong Large project has many smaller tasks Hard to know all in advance Hard to estimate accurately Gutless estimating Some tasks can’t be sped up Dependencies often make tasks sequential Most measures confuse effort with progress People and months are not interchangeable Not all hours devoted to project
Requirement Changes: "Writing software that fully meets its specifications is like walking on water. The former is easy only if the later is frozen, otherwise it’s near impossible."
Ours is a world where people don't know what they want. The only time you can really find the best problem definition is after you found the solution -De Bono Perception about the problem changes, sometimes the problem itself.
Architecture: Black Hole Incompleteness and inconsistencies of our ideas become clear only during implementation We can’t travel in two boats at the same time. Focus changes from Architecture to Application Delivery. Architecture requirements can be identified only when application matures.
We can’t build architecture.  it evolves.
No Domain Knowledge Assumption
Bad Code Quality: Complex, unstructured, scattered and unnecessary code blocks, huge amount of codes  Inevitable shifts in requirements and added functionality. Lack of code reviews. Lack of programming skills. Programs evolves, grows and... dies if not taken care of
No Documentation: Use cases, Design Documents, Class Diagrams, HLD, etc. How useful these documents? Software is the document
Death March: People are designed to dissatisfied Technology Trap Lack of motivation There is no such thing as a boring project. There are only boring executions. - Irene Etzkorn
It’s not my code-Attitude: Fear of touching another programmer's code as a factor in slowing down many projects.  -Kent Beck
Testing : Only 30% of tests are planned Impossible to test every aspect of code, manually.
Mediocre Approach : Only leaders can lead.
Deadlines are inevitable  Everything will take its time Requirements changes (always) We can’t build architecture. it evolves.  Programs evolves, grows and... dies if not taken care of Software is the document Impossible to test every aspect of the code, manually  Only leaders can lead
[object Object],[object Object],[object Object],[object Object]
Scope Feedback Simplicity Test Driven Continuous Integration Refactoring Revamping Empowered Team
Feedback: Small Releases  Shorter Iterations  Stand-up Meetings Code Review – (Design Pair | Pair Programming) Automated Tests
Dream Phase: Product Definition, Behavior Engineering, Base Interaction Design  Release Plan  Iteration Plan Base Architecture: Extract Architecture Story – Estimate – Scope - Iteration Plan [Refactor] - Design – Test - Code – Refactor Continuous Test and Integration Feedback – Standup, Iteration - Release
Business Requirements  Stabilizing the Architecture  Usability Engineering
Standard Component Framework, MVC or any Variant Utilities and Support Component Exception Handling Strategy  Transaction  Persistence Frameworks Data Concurrency Control  Folder Structure and Build Processes Strategy User Mgmt, Control Flow Internalization
Building great software is easy: build a great team and they'll make the software for you.
Customer/Proxy Customer User Architect Project Lead Super Programmers Programmers Interaction Designer  Team Coordinators
Small Teams 40 Hrs Per Week Environment
Chemical engineers learned long ago that a process that works in the laboratory cannot be implemented in a factory in one step. An intermediate step called the  pilot plant  is necessary.... In most [software] projects, the first system is barely usable. It may be too slow, too big, awkward to use, or all three.   There is no alternative but to start again , smarting but smarter, and build a redesigned version in which these problems are solved.... Delivering the throwaway to customers buys time, but it does so only at the cost of agony for the user, distraction for the builders while they do the redesign, and a bad reputation for the product that the best redesign will find hard to live down. Hence,  plan to throw one away; you will, anyhow .
“ If Microsoft is good at anything, it’s avoiding the trap of worrying about criticism. Microsoft fails constantly. They’re eviscerated in public for lousy products. Yet they persist, through version after version, until they get something good enough. Then they leverage the power they’ve gained in other markets to enforce their standard.”  - Seth Godin in Zooming

More Related Content

What's hot

SAD07 - Project Management
SAD07 - Project ManagementSAD07 - Project Management
SAD07 - Project ManagementMichael Heron
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...Hayim Makabee
 
The error of their ways
The error of their waysThe error of their ways
The error of their waysScott Nimrod
 
Mythical Man Month Essays on Software Engineering
Mythical Man Month Essays on Software EngineeringMythical Man Month Essays on Software Engineering
Mythical Man Month Essays on Software Engineeringmustafa sarac
 
Pair Programming (2014)
Pair Programming (2014)Pair Programming (2014)
Pair Programming (2014)Peter Kofler
 
The error of their ways
The error of their waysThe error of their ways
The error of their waysScott Nimrod
 
No Silver Bullet - Essence and Accidents of Software Engineering
No Silver Bullet - Essence and Accidents of Software EngineeringNo Silver Bullet - Essence and Accidents of Software Engineering
No Silver Bullet - Essence and Accidents of Software EngineeringAditi Abhang
 
ADUF - Adaptable Design Up Front
ADUF -  Adaptable Design Up FrontADUF -  Adaptable Design Up Front
ADUF - Adaptable Design Up FrontHayim Makabee
 
Agile and Agile methods: what is the most important to understand to succeed
Agile and Agile methods: what is the most important to understand to succeedAgile and Agile methods: what is the most important to understand to succeed
Agile and Agile methods: what is the most important to understand to succeedVaidas Adomauskas
 
Introducing Pair Programming
Introducing Pair ProgrammingIntroducing Pair Programming
Introducing Pair ProgrammingSteven Smith
 
Software Craftsmanship vs Software Engineering (Lightning Talk)
Software Craftsmanship vs Software Engineering (Lightning Talk)Software Craftsmanship vs Software Engineering (Lightning Talk)
Software Craftsmanship vs Software Engineering (Lightning Talk)Andy Maleh
 
The Mythical Man Month
The Mythical Man MonthThe Mythical Man Month
The Mythical Man MonthMr Cracker
 
Best Practices - Software Engineering
Best Practices - Software EngineeringBest Practices - Software Engineering
Best Practices - Software Engineering3Quill Softwares
 
Growing Developer Community One Pull Request At a Time
Growing Developer Community One Pull Request At a TimeGrowing Developer Community One Pull Request At a Time
Growing Developer Community One Pull Request At a TimeAlex Bulankou
 
Reducing Time Spent On Requirements
Reducing Time Spent On RequirementsReducing Time Spent On Requirements
Reducing Time Spent On RequirementsByron Workman
 
Why care about technical debt?
Why care about technical debt?Why care about technical debt?
Why care about technical debt?Tushar Sharma
 
Pair programming demystified
Pair programming demystifiedPair programming demystified
Pair programming demystifiedMarek Kirejczyk
 

What's hot (20)

SAD07 - Project Management
SAD07 - Project ManagementSAD07 - Project Management
SAD07 - Project Management
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...
 
Demystify DevOps
Demystify DevOpsDemystify DevOps
Demystify DevOps
 
The error of their ways
The error of their waysThe error of their ways
The error of their ways
 
Mythical Man Month Essays on Software Engineering
Mythical Man Month Essays on Software EngineeringMythical Man Month Essays on Software Engineering
Mythical Man Month Essays on Software Engineering
 
Pair Programming (2014)
Pair Programming (2014)Pair Programming (2014)
Pair Programming (2014)
 
The error of their ways
The error of their waysThe error of their ways
The error of their ways
 
No Silver Bullet - Essence and Accidents of Software Engineering
No Silver Bullet - Essence and Accidents of Software EngineeringNo Silver Bullet - Essence and Accidents of Software Engineering
No Silver Bullet - Essence and Accidents of Software Engineering
 
Mythical Man-Month
Mythical Man-MonthMythical Man-Month
Mythical Man-Month
 
ADUF - Adaptable Design Up Front
ADUF -  Adaptable Design Up FrontADUF -  Adaptable Design Up Front
ADUF - Adaptable Design Up Front
 
Agile and Agile methods: what is the most important to understand to succeed
Agile and Agile methods: what is the most important to understand to succeedAgile and Agile methods: what is the most important to understand to succeed
Agile and Agile methods: what is the most important to understand to succeed
 
Introducing Pair Programming
Introducing Pair ProgrammingIntroducing Pair Programming
Introducing Pair Programming
 
Software Craftsmanship vs Software Engineering (Lightning Talk)
Software Craftsmanship vs Software Engineering (Lightning Talk)Software Craftsmanship vs Software Engineering (Lightning Talk)
Software Craftsmanship vs Software Engineering (Lightning Talk)
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
The Mythical Man Month
The Mythical Man MonthThe Mythical Man Month
The Mythical Man Month
 
Best Practices - Software Engineering
Best Practices - Software EngineeringBest Practices - Software Engineering
Best Practices - Software Engineering
 
Growing Developer Community One Pull Request At a Time
Growing Developer Community One Pull Request At a TimeGrowing Developer Community One Pull Request At a Time
Growing Developer Community One Pull Request At a Time
 
Reducing Time Spent On Requirements
Reducing Time Spent On RequirementsReducing Time Spent On Requirements
Reducing Time Spent On Requirements
 
Why care about technical debt?
Why care about technical debt?Why care about technical debt?
Why care about technical debt?
 
Pair programming demystified
Pair programming demystifiedPair programming demystified
Pair programming demystified
 

Viewers also liked

Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...
Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...
Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...KZ KZ
 
Educational Leadership for Teachers and Educators
Educational Leadership for Teachers and EducatorsEducational Leadership for Teachers and Educators
Educational Leadership for Teachers and EducatorsTimothy Wooi
 
Educational Leadership - The Importance of Leadership and Management to Educa...
Educational Leadership - The Importance of Leadership and Management to Educa...Educational Leadership - The Importance of Leadership and Management to Educa...
Educational Leadership - The Importance of Leadership and Management to Educa...polchan
 
21st Century School Leadership
21st Century School Leadership21st Century School Leadership
21st Century School Leadershipsdwjsw5
 
Educational-leadership
Educational-leadershipEducational-leadership
Educational-leadershipAbdul Majid
 

Viewers also liked (10)

Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...
Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...
Meningkatkan Pengurusan Pencerapan Pengajaran dan Pembelajaran Abad 21 Melalu...
 
Tugas fisika
Tugas fisikaTugas fisika
Tugas fisika
 
Pembangunan insan
Pembangunan insanPembangunan insan
Pembangunan insan
 
Kepimpinan
KepimpinanKepimpinan
Kepimpinan
 
Educational Leadership for Teachers and Educators
Educational Leadership for Teachers and EducatorsEducational Leadership for Teachers and Educators
Educational Leadership for Teachers and Educators
 
Educational Leadership - The Importance of Leadership and Management to Educa...
Educational Leadership - The Importance of Leadership and Management to Educa...Educational Leadership - The Importance of Leadership and Management to Educa...
Educational Leadership - The Importance of Leadership and Management to Educa...
 
21st Century School Leadership
21st Century School Leadership21st Century School Leadership
21st Century School Leadership
 
Educational Leadership
Educational LeadershipEducational Leadership
Educational Leadership
 
Educational-leadership
Educational-leadershipEducational-leadership
Educational-leadership
 
Transformasi lorentz
Transformasi lorentzTransformasi lorentz
Transformasi lorentz
 

Similar to Software Development in 21st Century

No silver bullet summary (paper)
No silver bullet summary (paper)No silver bullet summary (paper)
No silver bullet summary (paper)shakeel khan
 
SW Engineering Management
SW Engineering ManagementSW Engineering Management
SW Engineering ManagementRobert Sayegh
 
Agile software development
Agile software development Agile software development
Agile software development saurabh goel
 
Why Is Managing Software So Hard?
Why Is Managing Software So Hard?Why Is Managing Software So Hard?
Why Is Managing Software So Hard?Michael Lamont
 
Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...Alejandro S.
 
Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)Jkumararaja
 
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...WrushabhShirsat3
 
SDA 01.pptx
SDA 01.pptxSDA 01.pptx
SDA 01.pptxJuttG6
 
Software Architecture: How Much Design?
Software Architecture: How Much Design?Software Architecture: How Much Design?
Software Architecture: How Much Design?Òscar Vilaplana
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cardsTudor Girba
 
Agilelessons scanagile-final 2013
Agilelessons scanagile-final 2013Agilelessons scanagile-final 2013
Agilelessons scanagile-final 2013lokori
 
Secrets of going codeless - How to build enterprise apps without coding
Secrets of going codeless - How to build enterprise apps without codingSecrets of going codeless - How to build enterprise apps without coding
Secrets of going codeless - How to build enterprise apps without codingNewton Day Uploads
 
SCA in an Agile World | June 2010
SCA in an Agile World | June 2010SCA in an Agile World | June 2010
SCA in an Agile World | June 2010Klocwork
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingUtkarsh Khare
 

Similar to Software Development in 21st Century (20)

No silver bullet summary (paper)
No silver bullet summary (paper)No silver bullet summary (paper)
No silver bullet summary (paper)
 
SW Engineering Management
SW Engineering ManagementSW Engineering Management
SW Engineering Management
 
Agile software development
Agile software development Agile software development
Agile software development
 
Why Is Managing Software So Hard?
Why Is Managing Software So Hard?Why Is Managing Software So Hard?
Why Is Managing Software So Hard?
 
Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...Case Study: Practical tools and strategies for tackling legacy practices and ...
Case Study: Practical tools and strategies for tackling legacy practices and ...
 
lecture 1-5.pdf
lecture 1-5.pdflecture 1-5.pdf
lecture 1-5.pdf
 
Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)
 
Poor Man's Kanban
Poor Man's KanbanPoor Man's Kanban
Poor Man's Kanban
 
The Modern Software Architect
The Modern Software ArchitectThe Modern Software Architect
The Modern Software Architect
 
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
 
SDA 01.pptx
SDA 01.pptxSDA 01.pptx
SDA 01.pptx
 
Software Architecture: How Much Design?
Software Architecture: How Much Design?Software Architecture: How Much Design?
Software Architecture: How Much Design?
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cards
 
Agilelessons scanagile-final 2013
Agilelessons scanagile-final 2013Agilelessons scanagile-final 2013
Agilelessons scanagile-final 2013
 
Secrets of going codeless - How to build enterprise apps without coding
Secrets of going codeless - How to build enterprise apps without codingSecrets of going codeless - How to build enterprise apps without coding
Secrets of going codeless - How to build enterprise apps without coding
 
2011_esc.pdf
2011_esc.pdf2011_esc.pdf
2011_esc.pdf
 
Unit 1.ppt
Unit 1.pptUnit 1.ppt
Unit 1.ppt
 
Software process model
Software process modelSoftware process model
Software process model
 
SCA in an Agile World | June 2010
SCA in an Agile World | June 2010SCA in an Agile World | June 2010
SCA in an Agile World | June 2010
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 

More from Henry Jacob

Agile and Simpson
Agile and SimpsonAgile and Simpson
Agile and SimpsonHenry Jacob
 
Flavours of agile
Flavours of agileFlavours of agile
Flavours of agileHenry Jacob
 
Technology trends 2015
Technology trends 2015Technology trends 2015
Technology trends 2015Henry Jacob
 
Think tablet first
Think tablet firstThink tablet first
Think tablet firstHenry Jacob
 
Dragon rider and emerging technologies
Dragon rider and emerging technologiesDragon rider and emerging technologies
Dragon rider and emerging technologiesHenry Jacob
 
Impact of new technologies
Impact of new technologiesImpact of new technologies
Impact of new technologiesHenry Jacob
 
World Usability Day 2010
World Usability Day 2010World Usability Day 2010
World Usability Day 2010Henry Jacob
 
Hike The Rockies
Hike The RockiesHike The Rockies
Hike The RockiesHenry Jacob
 
How I Sold Linux
How  I  Sold  LinuxHow  I  Sold  Linux
How I Sold LinuxHenry Jacob
 
User Centered Interaction Design In Agile Environment
User Centered Interaction Design In Agile EnvironmentUser Centered Interaction Design In Agile Environment
User Centered Interaction Design In Agile EnvironmentHenry Jacob
 
Art Of Designing - How To Create User Stories
Art Of Designing - How To Create User StoriesArt Of Designing - How To Create User Stories
Art Of Designing - How To Create User StoriesHenry Jacob
 
D3 Introduction Agile India Pune 2005
D3 Introduction   Agile India   Pune 2005D3 Introduction   Agile India   Pune 2005
D3 Introduction Agile India Pune 2005Henry Jacob
 
D3 Design By Games Agile India Pune 2005
D3 Design By Games   Agile India   Pune 2005D3 Design By Games   Agile India   Pune 2005
D3 Design By Games Agile India Pune 2005Henry Jacob
 
Technology Trends 2010
Technology Trends 2010Technology Trends 2010
Technology Trends 2010Henry Jacob
 
Attack Of The Clouds
Attack Of The CloudsAttack Of The Clouds
Attack Of The CloudsHenry Jacob
 
Groovy Grails Hallelujah
Groovy  Grails  HallelujahGroovy  Grails  Hallelujah
Groovy Grails HallelujahHenry Jacob
 
Agile In 5 Minutes
Agile In 5 MinutesAgile In 5 Minutes
Agile In 5 MinutesHenry Jacob
 
Craftsmanship: The Meaning of Life
Craftsmanship: The Meaning of LifeCraftsmanship: The Meaning of Life
Craftsmanship: The Meaning of LifeHenry Jacob
 
Design Driven Development
Design Driven DevelopmentDesign Driven Development
Design Driven DevelopmentHenry Jacob
 
Wanna Be An Architect?
Wanna Be An  Architect?Wanna Be An  Architect?
Wanna Be An Architect?Henry Jacob
 

More from Henry Jacob (20)

Agile and Simpson
Agile and SimpsonAgile and Simpson
Agile and Simpson
 
Flavours of agile
Flavours of agileFlavours of agile
Flavours of agile
 
Technology trends 2015
Technology trends 2015Technology trends 2015
Technology trends 2015
 
Think tablet first
Think tablet firstThink tablet first
Think tablet first
 
Dragon rider and emerging technologies
Dragon rider and emerging technologiesDragon rider and emerging technologies
Dragon rider and emerging technologies
 
Impact of new technologies
Impact of new technologiesImpact of new technologies
Impact of new technologies
 
World Usability Day 2010
World Usability Day 2010World Usability Day 2010
World Usability Day 2010
 
Hike The Rockies
Hike The RockiesHike The Rockies
Hike The Rockies
 
How I Sold Linux
How  I  Sold  LinuxHow  I  Sold  Linux
How I Sold Linux
 
User Centered Interaction Design In Agile Environment
User Centered Interaction Design In Agile EnvironmentUser Centered Interaction Design In Agile Environment
User Centered Interaction Design In Agile Environment
 
Art Of Designing - How To Create User Stories
Art Of Designing - How To Create User StoriesArt Of Designing - How To Create User Stories
Art Of Designing - How To Create User Stories
 
D3 Introduction Agile India Pune 2005
D3 Introduction   Agile India   Pune 2005D3 Introduction   Agile India   Pune 2005
D3 Introduction Agile India Pune 2005
 
D3 Design By Games Agile India Pune 2005
D3 Design By Games   Agile India   Pune 2005D3 Design By Games   Agile India   Pune 2005
D3 Design By Games Agile India Pune 2005
 
Technology Trends 2010
Technology Trends 2010Technology Trends 2010
Technology Trends 2010
 
Attack Of The Clouds
Attack Of The CloudsAttack Of The Clouds
Attack Of The Clouds
 
Groovy Grails Hallelujah
Groovy  Grails  HallelujahGroovy  Grails  Hallelujah
Groovy Grails Hallelujah
 
Agile In 5 Minutes
Agile In 5 MinutesAgile In 5 Minutes
Agile In 5 Minutes
 
Craftsmanship: The Meaning of Life
Craftsmanship: The Meaning of LifeCraftsmanship: The Meaning of Life
Craftsmanship: The Meaning of Life
 
Design Driven Development
Design Driven DevelopmentDesign Driven Development
Design Driven Development
 
Wanna Be An Architect?
Wanna Be An  Architect?Wanna Be An  Architect?
Wanna Be An Architect?
 

Recently uploaded

PB Project 1: Exploring Your Personal Brand
PB Project 1: Exploring Your Personal BrandPB Project 1: Exploring Your Personal Brand
PB Project 1: Exploring Your Personal BrandSharisaBethune
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607dollysharma2066
 
8447779800, Low rate Call girls in Dwarka mor Delhi NCR
8447779800, Low rate Call girls in Dwarka mor Delhi NCR8447779800, Low rate Call girls in Dwarka mor Delhi NCR
8447779800, Low rate Call girls in Dwarka mor Delhi NCRashishs7044
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdfShaun Heinrichs
 
Investment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy CheruiyotInvestment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy Cheruiyotictsugar
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCRashishs7044
 
Memorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMMemorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMVoces Mineras
 
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCRashishs7044
 
Call Girls Contact Number Andheri 9920874524
Call Girls Contact Number Andheri 9920874524Call Girls Contact Number Andheri 9920874524
Call Girls Contact Number Andheri 9920874524najka9823
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03DallasHaselhorst
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Anamaria Contreras
 
Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Peter Ward
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024Adnet Communications
 
Financial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptxFinancial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptxsaniyaimamuddin
 
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deckPitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deckHajeJanKamps
 
PSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationPSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationAnamaria Contreras
 
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptxThe-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptxmbikashkanyari
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Riya Pathan
 

Recently uploaded (20)

PB Project 1: Exploring Your Personal Brand
PB Project 1: Exploring Your Personal BrandPB Project 1: Exploring Your Personal Brand
PB Project 1: Exploring Your Personal Brand
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
 
8447779800, Low rate Call girls in Dwarka mor Delhi NCR
8447779800, Low rate Call girls in Dwarka mor Delhi NCR8447779800, Low rate Call girls in Dwarka mor Delhi NCR
8447779800, Low rate Call girls in Dwarka mor Delhi NCR
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf
 
Investment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy CheruiyotInvestment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy Cheruiyot
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
 
Memorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMMemorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQM
 
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
 
Call Girls Contact Number Andheri 9920874524
Call Girls Contact Number Andheri 9920874524Call Girls Contact Number Andheri 9920874524
Call Girls Contact Number Andheri 9920874524
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.
 
Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024
 
Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)
 
Financial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptxFinancial-Statement-Analysis-of-Coca-cola-Company.pptx
Financial-Statement-Analysis-of-Coca-cola-Company.pptx
 
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deckPitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
 
Corporate Profile 47Billion Information Technology
Corporate Profile 47Billion Information TechnologyCorporate Profile 47Billion Information Technology
Corporate Profile 47Billion Information Technology
 
PSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationPSCC - Capability Statement Presentation
PSCC - Capability Statement Presentation
 
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptxThe-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737
 

Software Development in 21st Century

  • 1. Software Development In 21 st Century
  • 3. Deadlines Poor Estimation Requirement Changes Immature Architecture and Design No Domain Knowledge Assumption Bad Code Quality No Documentation Death March It’s not my code-Attitude Inadequate Testing
  • 4. We are not alone
  • 5. 41.1% of projects will be cancelled before completion 52% of projects will cost 189% of their original estimate Projects completed will contain 42% of the original proposed features and functions The average schedule overrun is 222% of the original time estimate
  • 6. “ Mythical Man Month” -Fred Brooks Manager of OS/360 5000 Man-Years Effort
  • 7. The practices of the software engineering community have changed very little over the last 30 years, and the mistakes being made then are still being made today.
  • 8. What missed in most of cases is REALITY
  • 9. Deadlines: More Software projects have gone haywire for lack of calendar time than for all other causes combined – Brooks Can we change deadlines? NO (In most cases)
  • 10. Poor Estimation Assumes nothing will go wrong Large project has many smaller tasks Hard to know all in advance Hard to estimate accurately Gutless estimating Some tasks can’t be sped up Dependencies often make tasks sequential Most measures confuse effort with progress People and months are not interchangeable Not all hours devoted to project
  • 11. Requirement Changes: "Writing software that fully meets its specifications is like walking on water. The former is easy only if the later is frozen, otherwise it’s near impossible."
  • 12. Ours is a world where people don't know what they want. The only time you can really find the best problem definition is after you found the solution -De Bono Perception about the problem changes, sometimes the problem itself.
  • 13. Architecture: Black Hole Incompleteness and inconsistencies of our ideas become clear only during implementation We can’t travel in two boats at the same time. Focus changes from Architecture to Application Delivery. Architecture requirements can be identified only when application matures.
  • 14. We can’t build architecture. it evolves.
  • 15. No Domain Knowledge Assumption
  • 16. Bad Code Quality: Complex, unstructured, scattered and unnecessary code blocks, huge amount of codes Inevitable shifts in requirements and added functionality. Lack of code reviews. Lack of programming skills. Programs evolves, grows and... dies if not taken care of
  • 17. No Documentation: Use cases, Design Documents, Class Diagrams, HLD, etc. How useful these documents? Software is the document
  • 18. Death March: People are designed to dissatisfied Technology Trap Lack of motivation There is no such thing as a boring project. There are only boring executions. - Irene Etzkorn
  • 19. It’s not my code-Attitude: Fear of touching another programmer's code as a factor in slowing down many projects. -Kent Beck
  • 20. Testing : Only 30% of tests are planned Impossible to test every aspect of code, manually.
  • 21. Mediocre Approach : Only leaders can lead.
  • 22. Deadlines are inevitable Everything will take its time Requirements changes (always) We can’t build architecture. it evolves. Programs evolves, grows and... dies if not taken care of Software is the document Impossible to test every aspect of the code, manually Only leaders can lead
  • 23.
  • 24. Scope Feedback Simplicity Test Driven Continuous Integration Refactoring Revamping Empowered Team
  • 25. Feedback: Small Releases Shorter Iterations Stand-up Meetings Code Review – (Design Pair | Pair Programming) Automated Tests
  • 26. Dream Phase: Product Definition, Behavior Engineering, Base Interaction Design Release Plan Iteration Plan Base Architecture: Extract Architecture Story – Estimate – Scope - Iteration Plan [Refactor] - Design – Test - Code – Refactor Continuous Test and Integration Feedback – Standup, Iteration - Release
  • 27. Business Requirements  Stabilizing the Architecture  Usability Engineering
  • 28. Standard Component Framework, MVC or any Variant Utilities and Support Component Exception Handling Strategy Transaction Persistence Frameworks Data Concurrency Control Folder Structure and Build Processes Strategy User Mgmt, Control Flow Internalization
  • 29. Building great software is easy: build a great team and they'll make the software for you.
  • 30. Customer/Proxy Customer User Architect Project Lead Super Programmers Programmers Interaction Designer Team Coordinators
  • 31. Small Teams 40 Hrs Per Week Environment
  • 32. Chemical engineers learned long ago that a process that works in the laboratory cannot be implemented in a factory in one step. An intermediate step called the pilot plant is necessary.... In most [software] projects, the first system is barely usable. It may be too slow, too big, awkward to use, or all three. There is no alternative but to start again , smarting but smarter, and build a redesigned version in which these problems are solved.... Delivering the throwaway to customers buys time, but it does so only at the cost of agony for the user, distraction for the builders while they do the redesign, and a bad reputation for the product that the best redesign will find hard to live down. Hence, plan to throw one away; you will, anyhow .
  • 33. “ If Microsoft is good at anything, it’s avoiding the trap of worrying about criticism. Microsoft fails constantly. They’re eviscerated in public for lousy products. Yet they persist, through version after version, until they get something good enough. Then they leverage the power they’ve gained in other markets to enforce their standard.” - Seth Godin in Zooming