SlideShare a Scribd company logo
1 of 42
Download to read offline
Five Best Practices for
Software Development
Projects
by Ehis Ojielu
https://by.dialexa.com/five-best-practices-for-the-ideal-software-
development-project
Dialexa
We are on a mission to make every
company a great technology company.
We work with organizations to define and
execute digital transformation strategies to
improve business operations and customer
experiences. Our services include:
• Multi-Year Technology Roadmap
• Platform Engineering
• User Experience Design
• Custom Software Development
• Hardware Prototyping /IoT
Is there an "ideal software
development project," and, if
so, what are steps you should
take to achieve this ideal state?
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
There are strict guidelines and best practices for different
software development methodologies such as scrum or extreme
programming,
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
but I have come to the
realization that it's not always
possible – or wise – to strictly
follow these processes.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
It doesn’t imply that we don’t strive
to accurately implement these
methods; we just need to stay
flexible. 
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
As part of this flexibility, we should think about overall
structures that make a project successful and how consistency
and coherence can improve your odds of achieving the "ideal."
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Because there
isn't a "playbook"
on the
components of
the ideal
software
development
project,
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
we pulled together some of our most
tried and true best practices that make
software development projects at Dialexa
work better:
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
1. CODE SIMPLICITY
Strive to keep your code simple.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Although my job in many cases was
to be both UX and visual designer,
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Code simplicity is an idea that
came from Max Kanat-Alexander,
a software developer at Google
and Community Lead and Release
Manager of the Bugzilla project. 
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
The idea is to reduce unnecessary
complexity in software development.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
The code simplicity movement
goes hand in hand with other
software principles such as DRY
(Don’t Repeat Yourself),
introduced in the book The
Pragmatic Programmer, and YAGNI
(You Aren’t Gonna Need It), a
mantra in agile development.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
2. TESTING
Continuously test from end to end.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Initially I was a skeptic of Test Driven Development (TDD)
as it seemed too prescriptive. 
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Over time, I have
realized that TDD
gives you more
confidence
regarding your
code quality.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
On the other hand, Behavior Driven Development (BDD)
allows you to learn the features and requirements directly
from the customer and that alignment translates into code
that is closer to the users’ needs. Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Full integration testing ensures
that all components are working
together as expected and
increases code coverage.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
3. CODE COHERENCE
Keep it consistent across your team.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
When working with a
team, it's important to
have a consistent style
guide for your codebase.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
If you have a
codebase where
you  CAN  tell who
wrote a particular
file then there isn’t
consistency
between authors.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
There are many tools to
enforce consistent style;
here are three we like:
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
1. JSCS
(Javascript
Style
Checker) is a
JavaScript
linter which
also has a great
formatter.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
2. ESLint is an extremely configurable linter and has
gained a lot of popularity in the community.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
3. Editorconfig is a
tool to enable
consistency between
the many editors and
IDE’s that your
developers use.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
4. CODE REVIEWS
Don’t be shy, allow someone
to check your code!
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Everyone makes
mistakes. An attitude
which allows you to
acknowledge
imperfections is the
first step to investing
your trust in a code
review.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Having a colleague
read over your pull
requests before
merging is a good
way to ensure final
code quality. 
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Code reviews help reduce bugs in the product – that's the
bottom line - so give up that idea of perfection.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
“The Code
Review
Mindset" is a
great article on
the importance
of code reviews.

Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
5. ESTIMATION
Set your time and budget expectations realistically.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
A realistic budget
keeps your software
project from feeling
too much pressure.
With agile methods,
this enables the
scope to flex more
easily as the project
progresses, but an
estimate that is truly
off can cause
problems in quality,
morale and output.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Estimation can be quite tricky – as it's hard to find a happy balance between being
realistic and sandbagging when there are so many unknowns. 
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Rest assured,
better estimation
comes with
experience, and
there are many
tools available to
assist with
software
development
project coding
estimates.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Here is a
good list 
to start.

Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
In reality, the “ideal software development project” may never exist!
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Each project has its own characteristics, flaws, joys, sorrows,
dreams, features, users, bugs, codebases, test cases and many
other components.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Hopefully these
concepts make your
projects more consistent
and coherent.
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
When in doubt, share your
knowledge, encourage
trust among your
development team, stay
positive, and remember -
you will ship!
Get the full write up of this slideshare at https://by.dialexa.com/
five-best-practices-for-the-ideal-software-development-project
Learn more about how Dialexa improves the
software development process, including our
approach to the new product development
process here.
PROPERTY OF DIALEXA LLC ©2017 - CONFIDENTIAL & PROPRIETARY
Thank You
Doug Platts
VP of Marketing
doug@dialexa.com
If you are looking to undertake a
digital transformation initiative,
contact Dialexa today and see how
we can help make your company a
great technology company.
Get the full write up of this slideshare at
https://by.dialexa.com/five-best-practices-for-
the-ideal-software-development-project

More Related Content

More from Dialexa

The Next Step to Build Better APIs — Consistent Data Structure
The Next Step to Build Better APIs — Consistent Data StructureThe Next Step to Build Better APIs — Consistent Data Structure
The Next Step to Build Better APIs — Consistent Data StructureDialexa
 
Tools and Resources for New Product Development: The Discovery Phase
Tools and Resources for New Product Development: The Discovery PhaseTools and Resources for New Product Development: The Discovery Phase
Tools and Resources for New Product Development: The Discovery PhaseDialexa
 
Humanizing Machine Learning - Real-World Applications
Humanizing Machine Learning - Real-World ApplicationsHumanizing Machine Learning - Real-World Applications
Humanizing Machine Learning - Real-World ApplicationsDialexa
 
It’s About More than Pixels: Redefining "Designer"
It’s About More than Pixels: Redefining "Designer"It’s About More than Pixels: Redefining "Designer"
It’s About More than Pixels: Redefining "Designer"Dialexa
 
4 External Forces Accelerating the Smart City Model
4 External Forces Accelerating the Smart City Model4 External Forces Accelerating the Smart City Model
4 External Forces Accelerating the Smart City ModelDialexa
 
Your Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B DisruptionYour Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B DisruptionDialexa
 
Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...
Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...
Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...Dialexa
 
Does Your Technology Roadmap Have a Financial Roadmap?
Does Your Technology Roadmap Have a Financial Roadmap?Does Your Technology Roadmap Have a Financial Roadmap?
Does Your Technology Roadmap Have a Financial Roadmap?Dialexa
 
Current State Analysis—More Important than You Think for Building a Technolog...
Current State Analysis—More Important than You Think for Building a Technolog...Current State Analysis—More Important than You Think for Building a Technolog...
Current State Analysis—More Important than You Think for Building a Technolog...Dialexa
 
Lean Design Research - Why There’s No Excuse Wasting Money on Bad Products A...
Lean Design Research - Why There’s No Excuse Wasting  Money on Bad Products A...Lean Design Research - Why There’s No Excuse Wasting  Money on Bad Products A...
Lean Design Research - Why There’s No Excuse Wasting Money on Bad Products A...Dialexa
 
Minimum Testable Features—A Different Approach to Agile Software Development
Minimum Testable Features—A Different Approach to Agile Software DevelopmentMinimum Testable Features—A Different Approach to Agile Software Development
Minimum Testable Features—A Different Approach to Agile Software DevelopmentDialexa
 
Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...
Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...
Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...Dialexa
 
The Minimum Loveable Product: Go Beyond the Minimum Viable Product
The Minimum Loveable Product: Go Beyond the Minimum Viable ProductThe Minimum Loveable Product: Go Beyond the Minimum Viable Product
The Minimum Loveable Product: Go Beyond the Minimum Viable ProductDialexa
 
Digital Enterprise Show: Transforming The Marketing Organization in the Digit...
Digital Enterprise Show: Transforming The Marketing Organization in the Digit...Digital Enterprise Show: Transforming The Marketing Organization in the Digit...
Digital Enterprise Show: Transforming The Marketing Organization in the Digit...Dialexa
 

More from Dialexa (14)

The Next Step to Build Better APIs — Consistent Data Structure
The Next Step to Build Better APIs — Consistent Data StructureThe Next Step to Build Better APIs — Consistent Data Structure
The Next Step to Build Better APIs — Consistent Data Structure
 
Tools and Resources for New Product Development: The Discovery Phase
Tools and Resources for New Product Development: The Discovery PhaseTools and Resources for New Product Development: The Discovery Phase
Tools and Resources for New Product Development: The Discovery Phase
 
Humanizing Machine Learning - Real-World Applications
Humanizing Machine Learning - Real-World ApplicationsHumanizing Machine Learning - Real-World Applications
Humanizing Machine Learning - Real-World Applications
 
It’s About More than Pixels: Redefining "Designer"
It’s About More than Pixels: Redefining "Designer"It’s About More than Pixels: Redefining "Designer"
It’s About More than Pixels: Redefining "Designer"
 
4 External Forces Accelerating the Smart City Model
4 External Forces Accelerating the Smart City Model4 External Forces Accelerating the Smart City Model
4 External Forces Accelerating the Smart City Model
 
Your Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B DisruptionYour Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B Disruption
 
Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...
Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...
Organizational Challenges CIOs Face as Companies Change Rapidly—And What to D...
 
Does Your Technology Roadmap Have a Financial Roadmap?
Does Your Technology Roadmap Have a Financial Roadmap?Does Your Technology Roadmap Have a Financial Roadmap?
Does Your Technology Roadmap Have a Financial Roadmap?
 
Current State Analysis—More Important than You Think for Building a Technolog...
Current State Analysis—More Important than You Think for Building a Technolog...Current State Analysis—More Important than You Think for Building a Technolog...
Current State Analysis—More Important than You Think for Building a Technolog...
 
Lean Design Research - Why There’s No Excuse Wasting Money on Bad Products A...
Lean Design Research - Why There’s No Excuse Wasting  Money on Bad Products A...Lean Design Research - Why There’s No Excuse Wasting  Money on Bad Products A...
Lean Design Research - Why There’s No Excuse Wasting Money on Bad Products A...
 
Minimum Testable Features—A Different Approach to Agile Software Development
Minimum Testable Features—A Different Approach to Agile Software DevelopmentMinimum Testable Features—A Different Approach to Agile Software Development
Minimum Testable Features—A Different Approach to Agile Software Development
 
Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...
Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...
Minimum Viable Bureaucracy- A Practical Approach to Scaling Agile Project Man...
 
The Minimum Loveable Product: Go Beyond the Minimum Viable Product
The Minimum Loveable Product: Go Beyond the Minimum Viable ProductThe Minimum Loveable Product: Go Beyond the Minimum Viable Product
The Minimum Loveable Product: Go Beyond the Minimum Viable Product
 
Digital Enterprise Show: Transforming The Marketing Organization in the Digit...
Digital Enterprise Show: Transforming The Marketing Organization in the Digit...Digital Enterprise Show: Transforming The Marketing Organization in the Digit...
Digital Enterprise Show: Transforming The Marketing Organization in the Digit...
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 

Recently uploaded (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

Five Best Practices for Software Development Projects

  • 1. Five Best Practices for Software Development Projects by Ehis Ojielu https://by.dialexa.com/five-best-practices-for-the-ideal-software- development-project
  • 2. Dialexa We are on a mission to make every company a great technology company. We work with organizations to define and execute digital transformation strategies to improve business operations and customer experiences. Our services include: • Multi-Year Technology Roadmap • Platform Engineering • User Experience Design • Custom Software Development • Hardware Prototyping /IoT
  • 3. Is there an "ideal software development project," and, if so, what are steps you should take to achieve this ideal state? Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 4. There are strict guidelines and best practices for different software development methodologies such as scrum or extreme programming, Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 5. but I have come to the realization that it's not always possible – or wise – to strictly follow these processes. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 6. It doesn’t imply that we don’t strive to accurately implement these methods; we just need to stay flexible.  Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 7. As part of this flexibility, we should think about overall structures that make a project successful and how consistency and coherence can improve your odds of achieving the "ideal." Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 8. Because there isn't a "playbook" on the components of the ideal software development project, Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 9. we pulled together some of our most tried and true best practices that make software development projects at Dialexa work better: Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 10. 1. CODE SIMPLICITY Strive to keep your code simple. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 11. Although my job in many cases was to be both UX and visual designer, Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 12. Code simplicity is an idea that came from Max Kanat-Alexander, a software developer at Google and Community Lead and Release Manager of the Bugzilla project.  Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 13. The idea is to reduce unnecessary complexity in software development. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 14. The code simplicity movement goes hand in hand with other software principles such as DRY (Don’t Repeat Yourself), introduced in the book The Pragmatic Programmer, and YAGNI (You Aren’t Gonna Need It), a mantra in agile development. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 15. 2. TESTING Continuously test from end to end. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 16. Initially I was a skeptic of Test Driven Development (TDD) as it seemed too prescriptive.  Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 17. Over time, I have realized that TDD gives you more confidence regarding your code quality. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 18. On the other hand, Behavior Driven Development (BDD) allows you to learn the features and requirements directly from the customer and that alignment translates into code that is closer to the users’ needs. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 19. Full integration testing ensures that all components are working together as expected and increases code coverage. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 20. 3. CODE COHERENCE Keep it consistent across your team. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 21. When working with a team, it's important to have a consistent style guide for your codebase. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 22. If you have a codebase where you  CAN  tell who wrote a particular file then there isn’t consistency between authors. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 23. There are many tools to enforce consistent style; here are three we like: Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 24. 1. JSCS (Javascript Style Checker) is a JavaScript linter which also has a great formatter. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 25. 2. ESLint is an extremely configurable linter and has gained a lot of popularity in the community. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 26. 3. Editorconfig is a tool to enable consistency between the many editors and IDE’s that your developers use. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 27. 4. CODE REVIEWS Don’t be shy, allow someone to check your code! Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 28. Everyone makes mistakes. An attitude which allows you to acknowledge imperfections is the first step to investing your trust in a code review. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 29. Having a colleague read over your pull requests before merging is a good way to ensure final code quality.  Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 30. Code reviews help reduce bugs in the product – that's the bottom line - so give up that idea of perfection. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 31. “The Code Review Mindset" is a great article on the importance of code reviews.
 Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 32. 5. ESTIMATION Set your time and budget expectations realistically. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 33. A realistic budget keeps your software project from feeling too much pressure. With agile methods, this enables the scope to flex more easily as the project progresses, but an estimate that is truly off can cause problems in quality, morale and output. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 34. Estimation can be quite tricky – as it's hard to find a happy balance between being realistic and sandbagging when there are so many unknowns.  Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 35. Rest assured, better estimation comes with experience, and there are many tools available to assist with software development project coding estimates. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 36. Here is a good list  to start.
 Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 37. In reality, the “ideal software development project” may never exist! Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 38. Each project has its own characteristics, flaws, joys, sorrows, dreams, features, users, bugs, codebases, test cases and many other components. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 39. Hopefully these concepts make your projects more consistent and coherent. Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 40. When in doubt, share your knowledge, encourage trust among your development team, stay positive, and remember - you will ship! Get the full write up of this slideshare at https://by.dialexa.com/ five-best-practices-for-the-ideal-software-development-project
  • 41. Learn more about how Dialexa improves the software development process, including our approach to the new product development process here.
  • 42. PROPERTY OF DIALEXA LLC ©2017 - CONFIDENTIAL & PROPRIETARY Thank You Doug Platts VP of Marketing doug@dialexa.com If you are looking to undertake a digital transformation initiative, contact Dialexa today and see how we can help make your company a great technology company. Get the full write up of this slideshare at https://by.dialexa.com/five-best-practices-for- the-ideal-software-development-project