SlideShare a Scribd company logo
1 of 35
Nimble Framework
- Software
architecture &
design in agile era
Tushar Jain
Tushar Jain
Name
Tushar Jain
Current Location
Silicon Valley,
CA, USA
People & Software
Expertise
Quick Description
Agile, Lean, and
Software Architecture
Contact point
http://agileanswer.blogspot.com
tusjain@gmail.com
@tjain
We will be talking about
How to create
software architecture
in an agile
environment?
Tushar Jain
We will NOT be talking about
• What is a good software architecture?
• Technologies
Tushar Jain
Tushar Jain
Tushar Jain
Move Fast
Tushar Jain
Principles
Pushpagiri:http://webhoststar.blogspot.com
Tushar Jain
Principles
• Simplicity of system with current and
immediate future function and non-functional
requirement.
• Intellectually Relaxed: Things/concept must be understood by a large
community.
• Stackable: Things must be able to act as building blocks in a larger and/or
a complex system.
• Predictable/Reliable: Things must be highly predictable and reliable to
ensure consistency.
• High Performance or value/cost: Value delivered and cost incurred (in
terms of money, time and intellectual stress) must be sufficiently high to
make it attractive
Tushar Jain
Principles
• Collective ownership of architecture, design,
code and other artifacts
• Software is a result of human interactions and shared
understanding
• Never commit unless you know why
• Should address uncertainty, not justify procrastination
Tushar Jain
Principles
• Evolution does not cease
• Today’s best practice is tomorrow’s technical debt
• We as human beings do not have luxury of time as evolution in
the biological world have. To overcome time handicap, directed
evolution is preferred.
• No one escapes curse of entropy unless
directed efforts
• Technical debt is a reality
• Due to dynamic nature of the environment efforts are needed to
direct evolution but not everything is in control
Tushar Jain
Principles
• Reasoning over rituals
• Every rituals must have foundation in reasoning
• Over the time period rituals drift away from reasoning
• Software is not the end in itself, it’s just a
mean for business objectives
• Software is there to help the business to run; operating
software is not the business
Tushar Jain
Thought
Layers
Nalanda: https://en.wikipedia.org/wiki/Nalanda
Tushar Jain
Can we follow a set of
processes to create software
architecture?
Tushar Jain
Can we follow a set process
to create software
architecture?
Why?
Every one is
different
Then?
No
Processes
Guidelines
but
I like to call these
guidelines as
thought layers
• Thought Layer 1: Framework
• Thought Layer 2: Techniques
• Thought Layer 3: Patterns
Work need to be
performed by foot soldiers
not by ivory tower
politicians & managers
Thought Layer 1: Framework
• Align yourself with enterprise /product
family architecture/enterprise guidelines
• Get hold of product vision
• Get hold of user story map
• Get hold of any learning, historical data,
any thing which can help you to make
better decisions
Thought Layer 2: Techniques
• Make big technology decisions
• Architectural pattern: Microservice, event,
pipe, etc.
• AppServer
• Persistent layer (RDBMS, No SQL, etc.)
• Libraries (Log4j or JavaLogging)
• Definition of Done
• Definition of prototype, walking skeleton,
MVP, technical debt, spike, etc.
DevTeam makes decisions, other teams may guide and
help
Thought Layer 3: Patterns
• Coding guidelines
• Design guidelines
• Design patterns to avoid
• Sample working code
DevTeam makes decisions, other teams may guide and
help
This is BUFD
NO
Revisit the decisions on
continuous
basis taken in each
thought layer
continual
• Starting of every sprint
• Starting of every release cycle
• When ever you feel it is appropriate
When to revisit?
Tools
Taxila: https://en.wikipedia.org/wiki/Taxila
Obesity Matrix
• To find reasoning in architectural decisions
• It is set of one table and a two
dimensional matrix.
• It should be prepared in two scenarios:
• To choose one or more architectural option/s to
implement a feature
• To visualize architectural decisions across
product’s features
Tushar Jain
Obesity Matrix
Tushar Jain
Obesity Matrix
Tushar Jain
Cynefin framework
Tushar Jain
Cynefin framework
Tushar Jain
???
Vikramaśīla: https://en.wikipedia.org/wiki/Vikramashila
Tushar Jain
Contact me
tusjain@gmail.com
@tjain
Blog
http://agileanswer.blogspot.com

More Related Content

Viewers also liked

Intro to ETW Tracing and OSVR
Intro to ETW Tracing and OSVRIntro to ETW Tracing and OSVR
Intro to ETW Tracing and OSVRRyan A. Pavlik
 
Overview of entity framework by software outsourcing company india
Overview of entity framework by software outsourcing company indiaOverview of entity framework by software outsourcing company india
Overview of entity framework by software outsourcing company indiaJignesh Aakoliya
 
Process Design on Prabandhan Framework
Process Design on Prabandhan FrameworkProcess Design on Prabandhan Framework
Process Design on Prabandhan FrameworkAnil Mande
 
Nimble framework
Nimble frameworkNimble framework
Nimble frameworktusjain
 
Framework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users GroupFramework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users Groupbrada
 
Framework for the analysis and design of encryption strategies based on d...
Framework for the analysis and design of encryption strategies     based on d...Framework for the analysis and design of encryption strategies     based on d...
Framework for the analysis and design of encryption strategies based on d...darg0001
 
Domain Driven Design Framework
Domain Driven Design FrameworkDomain Driven Design Framework
Domain Driven Design FrameworkBien Hoang
 
E learning analysis and design framework
E learning analysis and design frameworkE learning analysis and design framework
E learning analysis and design frameworkEric Kluijfhout
 
Software Engineering - 02. Framework
Software Engineering - 02. FrameworkSoftware Engineering - 02. Framework
Software Engineering - 02. FrameworkArry Arman
 
Design Frameworks for Analysis and Synthesis of Complex Systems
Design Frameworks for Analysis and Synthesis of Complex SystemsDesign Frameworks for Analysis and Synthesis of Complex Systems
Design Frameworks for Analysis and Synthesis of Complex Systemsdrjanroodt
 
Software Frameworks for Music Information Retrieval
Software Frameworks for Music Information RetrievalSoftware Frameworks for Music Information Retrieval
Software Frameworks for Music Information RetrievalXavier Amatriain
 
Teaching requirements analysis REET 2014 at RE2014
Teaching requirements analysis REET 2014 at RE2014Teaching requirements analysis REET 2014 at RE2014
Teaching requirements analysis REET 2014 at RE2014Luisa Mich
 
Software architecture in an agile environment
Software architecture in an agile environmentSoftware architecture in an agile environment
Software architecture in an agile environmentRaffaele Garofalo
 
How UI Framework improves design process
How UI Framework improves design processHow UI Framework improves design process
How UI Framework improves design processMarian Mota
 
Web Form Design (Web Visions 2009)
Web Form Design (Web Visions 2009)Web Form Design (Web Visions 2009)
Web Form Design (Web Visions 2009)Christopher Schmitt
 

Viewers also liked (16)

Intro to ETW Tracing and OSVR
Intro to ETW Tracing and OSVRIntro to ETW Tracing and OSVR
Intro to ETW Tracing and OSVR
 
Overview of entity framework by software outsourcing company india
Overview of entity framework by software outsourcing company indiaOverview of entity framework by software outsourcing company india
Overview of entity framework by software outsourcing company india
 
Process Design on Prabandhan Framework
Process Design on Prabandhan FrameworkProcess Design on Prabandhan Framework
Process Design on Prabandhan Framework
 
Nimble framework
Nimble frameworkNimble framework
Nimble framework
 
Framework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users GroupFramework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users Group
 
Framework for the analysis and design of encryption strategies based on d...
Framework for the analysis and design of encryption strategies     based on d...Framework for the analysis and design of encryption strategies     based on d...
Framework for the analysis and design of encryption strategies based on d...
 
Domain Driven Design Framework
Domain Driven Design FrameworkDomain Driven Design Framework
Domain Driven Design Framework
 
DRE REPORT- 2014 (1)
DRE REPORT- 2014 (1)DRE REPORT- 2014 (1)
DRE REPORT- 2014 (1)
 
E learning analysis and design framework
E learning analysis and design frameworkE learning analysis and design framework
E learning analysis and design framework
 
Software Engineering - 02. Framework
Software Engineering - 02. FrameworkSoftware Engineering - 02. Framework
Software Engineering - 02. Framework
 
Design Frameworks for Analysis and Synthesis of Complex Systems
Design Frameworks for Analysis and Synthesis of Complex SystemsDesign Frameworks for Analysis and Synthesis of Complex Systems
Design Frameworks for Analysis and Synthesis of Complex Systems
 
Software Frameworks for Music Information Retrieval
Software Frameworks for Music Information RetrievalSoftware Frameworks for Music Information Retrieval
Software Frameworks for Music Information Retrieval
 
Teaching requirements analysis REET 2014 at RE2014
Teaching requirements analysis REET 2014 at RE2014Teaching requirements analysis REET 2014 at RE2014
Teaching requirements analysis REET 2014 at RE2014
 
Software architecture in an agile environment
Software architecture in an agile environmentSoftware architecture in an agile environment
Software architecture in an agile environment
 
How UI Framework improves design process
How UI Framework improves design processHow UI Framework improves design process
How UI Framework improves design process
 
Web Form Design (Web Visions 2009)
Web Form Design (Web Visions 2009)Web Form Design (Web Visions 2009)
Web Form Design (Web Visions 2009)
 

Similar to Nimble Framework - Software architecture and design in agile era

Road to rockstar system analyst
Road to rockstar system analystRoad to rockstar system analyst
Road to rockstar system analystMizno Kruge
 
Agile Content Development and the IXIASOFT DITA CMS
Agile Content Development and the IXIASOFT DITA CMSAgile Content Development and the IXIASOFT DITA CMS
Agile Content Development and the IXIASOFT DITA CMSIXIASOFT
 
Holistic Product Development
Holistic Product DevelopmentHolistic Product Development
Holistic Product DevelopmentGary Pedretti
 
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...Andy Talbot
 
Data Governance: Why, What & How
Data Governance: Why, What & HowData Governance: Why, What & How
Data Governance: Why, What & HowSenturus
 
The Analysis Part of Integration Projects
The Analysis Part of Integration ProjectsThe Analysis Part of Integration Projects
The Analysis Part of Integration ProjectsBizTalk360
 
Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!
Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!
Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!Cprime
 
Building SharePoint Enterprise Platforms - Off the beaten path
Building SharePoint Enterprise Platforms - Off the beaten pathBuilding SharePoint Enterprise Platforms - Off the beaten path
Building SharePoint Enterprise Platforms - Off the beaten pathAndy Talbot
 
Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...
Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...
Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...Atlassian
 
Cyber Scotland Connect: What is Security Engineering?
Cyber Scotland Connect: What is Security Engineering?Cyber Scotland Connect: What is Security Engineering?
Cyber Scotland Connect: What is Security Engineering?Harry McLaren
 
2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance
2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance
2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with GovernanceDon Donais
 
Why We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsWhy We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsRebecca Wirfs-Brock
 
Building enterprise platforms - off the beaten path - SharePoint User Group U...
Building enterprise platforms - off the beaten path - SharePoint User Group U...Building enterprise platforms - off the beaten path - SharePoint User Group U...
Building enterprise platforms - off the beaten path - SharePoint User Group U...Andy Talbot
 
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...Scrum Bangalore
 
Lightweight Documentation: An Agile Approach
Lightweight Documentation: An Agile ApproachLightweight Documentation: An Agile Approach
Lightweight Documentation: An Agile ApproachStephen Ritchie
 
Getting Started with Architecture Decision Records
Getting Started with Architecture Decision RecordsGetting Started with Architecture Decision Records
Getting Started with Architecture Decision RecordsMichael Keeling
 
SharePoint 2013 Migration - Your 5 Rules for Success
SharePoint 2013 Migration  - Your 5 Rules for SuccessSharePoint 2013 Migration  - Your 5 Rules for Success
SharePoint 2013 Migration - Your 5 Rules for SuccessChristian Buckley
 
Techniques to build, engage and manage your intranet project
Techniques to build, engage and manage your intranet projectTechniques to build, engage and manage your intranet project
Techniques to build, engage and manage your intranet projectRebecca Jackson
 
Understanding SharePoint Roles
Understanding SharePoint RolesUnderstanding SharePoint Roles
Understanding SharePoint RolesWes Preston
 

Similar to Nimble Framework - Software architecture and design in agile era (20)

Road to rockstar system analyst
Road to rockstar system analystRoad to rockstar system analyst
Road to rockstar system analyst
 
Agile Content Development and the IXIASOFT DITA CMS
Agile Content Development and the IXIASOFT DITA CMSAgile Content Development and the IXIASOFT DITA CMS
Agile Content Development and the IXIASOFT DITA CMS
 
Holistic Product Development
Holistic Product DevelopmentHolistic Product Development
Holistic Product Development
 
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
Building SharePoint Enterprise Platforms - Off the beaten path - SharePoint S...
 
Data Governance: Why, What & How
Data Governance: Why, What & HowData Governance: Why, What & How
Data Governance: Why, What & How
 
The Analysis Part of Integration Projects
The Analysis Part of Integration ProjectsThe Analysis Part of Integration Projects
The Analysis Part of Integration Projects
 
Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!
Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!
Atlassian Based DevOps Command Center: Adding Opsgenie to the Powerful Mix!
 
Building SharePoint Enterprise Platforms - Off the beaten path
Building SharePoint Enterprise Platforms - Off the beaten pathBuilding SharePoint Enterprise Platforms - Off the beaten path
Building SharePoint Enterprise Platforms - Off the beaten path
 
Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...
Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...
Sprinting Ahead – How RunKeeper Uses Atlassian Tools in a Fast-Paced Agile Wo...
 
Cyber Scotland Connect: What is Security Engineering?
Cyber Scotland Connect: What is Security Engineering?Cyber Scotland Connect: What is Security Engineering?
Cyber Scotland Connect: What is Security Engineering?
 
2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance
2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance
2012 MN Gov IT Symposium - Get Away from SharPoint Nightmares with Governance
 
Why We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsWhy We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile Projects
 
Building enterprise platforms - off the beaten path - SharePoint User Group U...
Building enterprise platforms - off the beaten path - SharePoint User Group U...Building enterprise platforms - off the beaten path - SharePoint User Group U...
Building enterprise platforms - off the beaten path - SharePoint User Group U...
 
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
 
Lightweight Documentation: An Agile Approach
Lightweight Documentation: An Agile ApproachLightweight Documentation: An Agile Approach
Lightweight Documentation: An Agile Approach
 
L16 Documenting Software
L16 Documenting SoftwareL16 Documenting Software
L16 Documenting Software
 
Getting Started with Architecture Decision Records
Getting Started with Architecture Decision RecordsGetting Started with Architecture Decision Records
Getting Started with Architecture Decision Records
 
SharePoint 2013 Migration - Your 5 Rules for Success
SharePoint 2013 Migration  - Your 5 Rules for SuccessSharePoint 2013 Migration  - Your 5 Rules for Success
SharePoint 2013 Migration - Your 5 Rules for Success
 
Techniques to build, engage and manage your intranet project
Techniques to build, engage and manage your intranet projectTechniques to build, engage and manage your intranet project
Techniques to build, engage and manage your intranet project
 
Understanding SharePoint Roles
Understanding SharePoint RolesUnderstanding SharePoint Roles
Understanding SharePoint Roles
 

Nimble Framework - Software architecture and design in agile era