SlideShare a Scribd company logo
Art of creating good software
Prasad Narasimhan – Technical
Architect
System Definition
• More attention and listening has to go in creating
the system.
• How to properly listen and understand is an art
• How Henry Ford came with a design of Car when
everyone was thinking of a Cart pulled by Horses.
• When we define the system we need to think
that system evolves incrementally has to be
thought about.
Business users world
• Business users think system as means of doing
business.
• Some time typewriter may be best fit than a
laptop.
• Need to think in their terms, no one knows
the long tail story what we develop once
developed and introduced into market the
system takes its own avatar which founder
may not even think off but try to justify.
Putting Square peg in round hole
• Business defines what’s the tool is supposed
to do.
• Not the technology like Social , Media,
Analytics & Cloud defining how the business
application should look applying the
advancement in this technology.
Big Picture
• System Blueprint has become a Holy grail every
architect including the technical architect and
application architect needs to know it.
• The application is not a silo it interfaces with
other systems since data flows, process flows and
all the applications communicate no more silos
• Understand the Big Picture even when a small
one is done it helps in integration, reusability and
maintainability
Where IT can complement
• Once an Architect is Technology agnostic, who has
used the technologies in solving the problems.
• Once Architect able to make representation of business
patterns into Technical patterns and visualize system.
• Based on Visualized system comes with Gaps in terms
of data flows, interaction, technical fitments, look from
multiple dimensions is something missed.
• 70 % accuracy at this stage is great if the system can be
created with minor alterations , some new interfaces
can be plugged , it can be extended its good.
Now its IT table
• Architecture style and pattern selection should
evolve based on business need not on the
expertise of architect or the one which is famous
in market.
• Architecture Traceability should cover all the
business features with the third dimensional
mapping to Non Functional Requirements
• Schematic representation of Data model, system
model, context, Framework (comprising of
design patterns) should be well defined
Architectural & Design Patterns
• Since we are reusing time tested Design patterns
that should be properly assembled in
Architectural patterns mapping to Business
Features covering the NFR’s
• E.g. In Insurance – Policy Management, claims
Management, Underwriting , Banking – Payment,
Mortgage. This has predefined set of flows and
matching data consumption which could be very
easily compartmentalized by design patterns
• Change in system would be extension of patterns
Analytics and its impact
• Previously system used to dump their data
into tables without much consideration how
its going to be used and table metadata is not
much bothered about.
• Information Governance should be
continuously monitoring what goes in is right
if not only Garbage out. Hence this takes a
great significance now.
Architectural Views
• 4 + 1 views would a nice place to start with
since it helps us in understanding & validating
from the view points of Logical correctness,
Physical implementation and infrastructure
capability.
• If the application is going to be part of SOA
system nice to mention how it fits in SOA
Blueprint which area and how it would be
connected
Design Views
• Architectural view if it could be used to
generate the Design model such as class &
sequence diagrams some Industry best tools
help us doing it. This help us in not missing
anything
• In absence of Factoring or conversion of
legacy system if there could be a inventory
mapping to all the Architectural mapping to
design elements it would be very ideal.
Big Ball of Mud
• As System evolves and design changes and rapid
incremental changes comes in the design
inventory , architecture blue print not referred.
• Addition of features are done based on code
analysis and where the scope of object is
available for making changes violating
– Single Responsibility principle
– Liskow substitution principle and others
We have huge technical debt which makes the
monolithic system difficult to change and maintain.
To be continued
• I am just sharing my experience in industry I
have not touched on coding, testing and other
areas intentionally would like to continue this
journey of sharing my knowledge as an
Architect.

More Related Content

Viewers also liked

Trasteatuz
TrasteatuzTrasteatuz
TrasteatuzAster
 
animals y
animals yanimals y
animals y
sokoban
 
Marius Romila Romanian Photograph Adf
Marius Romila Romanian Photograph AdfMarius Romila Romanian Photograph Adf
Marius Romila Romanian Photograph Adfsokoban
 
Super tren
Super trenSuper tren
Super tren
sokoban
 
Tian Lei and his research, the user experience
Tian Lei and his research, the user experienceTian Lei and his research, the user experience
Tian Lei and his research, the user experienceteemo
 
Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013
Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013
Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013
Vincenzo D'Aguanno
 
Pieter and Ian FLL part 2
Pieter and Ian FLL part 2Pieter and Ian FLL part 2
Pieter and Ian FLL part 2bezier
 
Software engineering at the speed of technology
Software engineering at the speed of technologySoftware engineering at the speed of technology
Software engineering at the speed of technology
Prasad Narasimhan
 
Arte latinoamericano
Arte latinoamericanoArte latinoamericano
Arte latinoamericanojuan paez
 
Challenges in adapting predictive analytics
Challenges  in  adapting  predictive  analyticsChallenges  in  adapting  predictive  analytics
Challenges in adapting predictive analytics
Prasad Narasimhan
 
Popi becomes law briefing slides
Popi becomes law briefing slidesPopi becomes law briefing slides
Popi becomes law briefing slides
Paul Jacobson
 
No child shall go hungry
No child shall go hungryNo child shall go hungry
No child shall go hungry
sokoban
 
Presentation – Mobile Show Africa 2012
Presentation – Mobile Show Africa 2012Presentation – Mobile Show Africa 2012
Presentation – Mobile Show Africa 2012
Paul Jacobson
 
2014년 5월 온라인 미디어 광고 동향
2014년 5월 온라인 미디어 광고 동향2014년 5월 온라인 미디어 광고 동향
2014년 5월 온라인 미디어 광고 동향
Taboola
 
Nature 1201168419135319 4
Nature 1201168419135319 4Nature 1201168419135319 4
Nature 1201168419135319 4steveyip
 
Imagini deosebite din Antarctica
Imagini deosebite din AntarcticaImagini deosebite din Antarctica
Imagini deosebite din Antarcticasokoban
 
First Floor
First FloorFirst Floor
First Floorbezier
 

Viewers also liked (20)

Trasteatuz
TrasteatuzTrasteatuz
Trasteatuz
 
animals y
animals yanimals y
animals y
 
Switch To Flex
Switch To FlexSwitch To Flex
Switch To Flex
 
Marius Romila Romanian Photograph Adf
Marius Romila Romanian Photograph AdfMarius Romila Romanian Photograph Adf
Marius Romila Romanian Photograph Adf
 
Super tren
Super trenSuper tren
Super tren
 
Tian Lei and his research, the user experience
Tian Lei and his research, the user experienceTian Lei and his research, the user experience
Tian Lei and his research, the user experience
 
Game Unit
Game UnitGame Unit
Game Unit
 
Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013
Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013
Settimana Internazionale dell'Accesso Aperto, 21 - 27 ottobre 2013
 
Pieter and Ian FLL part 2
Pieter and Ian FLL part 2Pieter and Ian FLL part 2
Pieter and Ian FLL part 2
 
Software engineering at the speed of technology
Software engineering at the speed of technologySoftware engineering at the speed of technology
Software engineering at the speed of technology
 
Arte latinoamericano
Arte latinoamericanoArte latinoamericano
Arte latinoamericano
 
Challenges in adapting predictive analytics
Challenges  in  adapting  predictive  analyticsChallenges  in  adapting  predictive  analytics
Challenges in adapting predictive analytics
 
Popi becomes law briefing slides
Popi becomes law briefing slidesPopi becomes law briefing slides
Popi becomes law briefing slides
 
No child shall go hungry
No child shall go hungryNo child shall go hungry
No child shall go hungry
 
Mbchb mobile uni of leeds june2012
Mbchb mobile uni of leeds june2012Mbchb mobile uni of leeds june2012
Mbchb mobile uni of leeds june2012
 
Presentation – Mobile Show Africa 2012
Presentation – Mobile Show Africa 2012Presentation – Mobile Show Africa 2012
Presentation – Mobile Show Africa 2012
 
2014년 5월 온라인 미디어 광고 동향
2014년 5월 온라인 미디어 광고 동향2014년 5월 온라인 미디어 광고 동향
2014년 5월 온라인 미디어 광고 동향
 
Nature 1201168419135319 4
Nature 1201168419135319 4Nature 1201168419135319 4
Nature 1201168419135319 4
 
Imagini deosebite din Antarctica
Imagini deosebite din AntarcticaImagini deosebite din Antarctica
Imagini deosebite din Antarctica
 
First Floor
First FloorFirst Floor
First Floor
 

Similar to Art of creating good software

IndEA.pptx
IndEA.pptxIndEA.pptx
IndEA.pptx
Prashant Singh
 
A Brief Introduction to Enterprise Architecture
A Brief Introduction to  Enterprise Architecture A Brief Introduction to  Enterprise Architecture
A Brief Introduction to Enterprise Architecture
Daljit Banger
 
Supporting material for my Webinar to the ACS - June2017
Supporting material for my Webinar to the ACS - June2017Supporting material for my Webinar to the ACS - June2017
Supporting material for my Webinar to the ACS - June2017
Daljit Banger
 
EA Consolidated Slides from Q1-Q2 (2015)
EA Consolidated Slides from Q1-Q2 (2015) EA Consolidated Slides from Q1-Q2 (2015)
EA Consolidated Slides from Q1-Q2 (2015)
Daljit Banger
 
Cloud Enablement Engine Role Definition and Mapping
Cloud Enablement Engine Role Definition and MappingCloud Enablement Engine Role Definition and Mapping
Cloud Enablement Engine Role Definition and Mapping
Tom Laszewski
 
Enterprise Architecture - An Introduction from the Real World
Enterprise Architecture - An Introduction from the Real World Enterprise Architecture - An Introduction from the Real World
Enterprise Architecture - An Introduction from the Real World
Daljit Banger
 
Chapter01.ppt
Chapter01.pptChapter01.ppt
Chapter01.ppt
SangeethaVal
 
An introduction to architecture and architects
An introduction to architecture and architectsAn introduction to architecture and architects
An introduction to architecture and architects
wweinmeyer79
 
Chapter01
Chapter01Chapter01
Chapter01
Muhammad Ahad
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and Rhapsody
Martin Owen
 
A WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENT
A WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENTA WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENT
A WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENTThallapaka Mahendra reddy
 
11.ppt
11.ppt11.ppt
11.ppt
JP Chicano
 
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...
NUS-ISS
 
Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2
Jim Brisson
 
Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?
Jeff Jakubiak
 
Practical Enterprise Architecture in Medium-size Corporation using TOGAF
Practical Enterprise Architecture in Medium-size Corporation using TOGAFPractical Enterprise Architecture in Medium-size Corporation using TOGAF
Practical Enterprise Architecture in Medium-size Corporation using TOGAF
Michael Sukachev
 
Are You an Accidental or Intentional Architect?
Are You an Accidental or Intentional Architect?Are You an Accidental or Intentional Architect?
Are You an Accidental or Intentional Architect?
iasaglobal
 
Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)
Robert Haines
 

Similar to Art of creating good software (20)

IndEA.pptx
IndEA.pptxIndEA.pptx
IndEA.pptx
 
A Brief Introduction to Enterprise Architecture
A Brief Introduction to  Enterprise Architecture A Brief Introduction to  Enterprise Architecture
A Brief Introduction to Enterprise Architecture
 
Supporting material for my Webinar to the ACS - June2017
Supporting material for my Webinar to the ACS - June2017Supporting material for my Webinar to the ACS - June2017
Supporting material for my Webinar to the ACS - June2017
 
EA Consolidated Slides from Q1-Q2 (2015)
EA Consolidated Slides from Q1-Q2 (2015) EA Consolidated Slides from Q1-Q2 (2015)
EA Consolidated Slides from Q1-Q2 (2015)
 
Cloud Enablement Engine Role Definition and Mapping
Cloud Enablement Engine Role Definition and MappingCloud Enablement Engine Role Definition and Mapping
Cloud Enablement Engine Role Definition and Mapping
 
Enterprise Architecture - An Introduction from the Real World
Enterprise Architecture - An Introduction from the Real World Enterprise Architecture - An Introduction from the Real World
Enterprise Architecture - An Introduction from the Real World
 
Chapter01.ppt
Chapter01.pptChapter01.ppt
Chapter01.ppt
 
An introduction to architecture and architects
An introduction to architecture and architectsAn introduction to architecture and architects
An introduction to architecture and architects
 
Chapter01
Chapter01Chapter01
Chapter01
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and Rhapsody
 
A WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENT
A WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENTA WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENT
A WEB BASED MANUFACTURING SERVICE SYSTEM FOR RAPID PRODUCT DEVELOPEMENT
 
Chapter01
Chapter01Chapter01
Chapter01
 
11.ppt
11.ppt11.ppt
11.ppt
 
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...
Agile Architecture – Enabling the Organisation’s Successful Digital-Agile Tra...
 
Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2
 
Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?
 
Practical Enterprise Architecture in Medium-size Corporation using TOGAF
Practical Enterprise Architecture in Medium-size Corporation using TOGAFPractical Enterprise Architecture in Medium-size Corporation using TOGAF
Practical Enterprise Architecture in Medium-size Corporation using TOGAF
 
At2012 bengaluru architecturein_agileworld_shreemand
At2012 bengaluru architecturein_agileworld_shreemandAt2012 bengaluru architecturein_agileworld_shreemand
At2012 bengaluru architecturein_agileworld_shreemand
 
Are You an Accidental or Intentional Architect?
Are You an Accidental or Intentional Architect?Are You an Accidental or Intentional Architect?
Are You an Accidental or Intentional Architect?
 
Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)
 

More from Prasad Narasimhan

Analytics
AnalyticsAnalytics
Technology needs to be disruptive
Technology needs to be disruptiveTechnology needs to be disruptive
Technology needs to be disruptive
Prasad Narasimhan
 
Riseof technology
Riseof technologyRiseof technology
Riseof technology
Prasad Narasimhan
 
Information as commodity
Information as commodityInformation as commodity
Information as commodity
Prasad Narasimhan
 
Data visualization representation of Analytics data
Data visualization representation of Analytics  dataData visualization representation of Analytics  data
Data visualization representation of Analytics data
Prasad Narasimhan
 
Internet of things & predictive analytics
Internet of things & predictive analyticsInternet of things & predictive analytics
Internet of things & predictive analytics
Prasad Narasimhan
 
Application of predictive analytics
Application of predictive analyticsApplication of predictive analytics
Application of predictive analytics
Prasad Narasimhan
 
Predictive analytics in marketing
Predictive analytics in marketingPredictive analytics in marketing
Predictive analytics in marketingPrasad Narasimhan
 
Predictive analytics in financial service
Predictive analytics in financial servicePredictive analytics in financial service
Predictive analytics in financial servicePrasad Narasimhan
 
Predictive analytics in health insurance
Predictive analytics in health insurancePredictive analytics in health insurance
Predictive analytics in health insurance
Prasad Narasimhan
 
3D printing
3D printing3D printing
3D printing
Prasad Narasimhan
 
360 degree view of architect
360 degree view  of architect360 degree view  of architect
360 degree view of architect
Prasad Narasimhan
 
Where business meet’s IT
Where business meet’s ITWhere business meet’s IT
Where business meet’s IT
Prasad Narasimhan
 
Information + insight = action
Information + insight = actionInformation + insight = action
Information + insight = action
Prasad Narasimhan
 
Become a software technical architect
Become a software technical architectBecome a software technical architect
Become a software technical architect
Prasad Narasimhan
 
What is happening in Information Technology
What is happening in Information TechnologyWhat is happening in Information Technology
What is happening in Information Technology
Prasad Narasimhan
 
Html5 (looks ready for everything)
Html5 (looks ready for  everything)Html5 (looks ready for  everything)
Html5 (looks ready for everything)
Prasad Narasimhan
 
What gets into Software code after some time
What gets into Software code  after some timeWhat gets into Software code  after some time
What gets into Software code after some time
Prasad Narasimhan
 

More from Prasad Narasimhan (20)

Single Page Application
Single Page ApplicationSingle Page Application
Single Page Application
 
Analytics
AnalyticsAnalytics
Analytics
 
Technology needs to be disruptive
Technology needs to be disruptiveTechnology needs to be disruptive
Technology needs to be disruptive
 
Riseof technology
Riseof technologyRiseof technology
Riseof technology
 
Information as commodity
Information as commodityInformation as commodity
Information as commodity
 
Data visualization representation of Analytics data
Data visualization representation of Analytics  dataData visualization representation of Analytics  data
Data visualization representation of Analytics data
 
Internet of things & predictive analytics
Internet of things & predictive analyticsInternet of things & predictive analytics
Internet of things & predictive analytics
 
Application of predictive analytics
Application of predictive analyticsApplication of predictive analytics
Application of predictive analytics
 
Predictive analytics in marketing
Predictive analytics in marketingPredictive analytics in marketing
Predictive analytics in marketing
 
Predictive analytics in financial service
Predictive analytics in financial servicePredictive analytics in financial service
Predictive analytics in financial service
 
Predictive analytics in health insurance
Predictive analytics in health insurancePredictive analytics in health insurance
Predictive analytics in health insurance
 
3D printing
3D printing3D printing
3D printing
 
Internet of things
Internet of thingsInternet of things
Internet of things
 
360 degree view of architect
360 degree view  of architect360 degree view  of architect
360 degree view of architect
 
Where business meet’s IT
Where business meet’s ITWhere business meet’s IT
Where business meet’s IT
 
Information + insight = action
Information + insight = actionInformation + insight = action
Information + insight = action
 
Become a software technical architect
Become a software technical architectBecome a software technical architect
Become a software technical architect
 
What is happening in Information Technology
What is happening in Information TechnologyWhat is happening in Information Technology
What is happening in Information Technology
 
Html5 (looks ready for everything)
Html5 (looks ready for  everything)Html5 (looks ready for  everything)
Html5 (looks ready for everything)
 
What gets into Software code after some time
What gets into Software code  after some timeWhat gets into Software code  after some time
What gets into Software code after some time
 

Recently uploaded

Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 

Recently uploaded (20)

Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 

Art of creating good software

  • 1. Art of creating good software Prasad Narasimhan – Technical Architect
  • 2. System Definition • More attention and listening has to go in creating the system. • How to properly listen and understand is an art • How Henry Ford came with a design of Car when everyone was thinking of a Cart pulled by Horses. • When we define the system we need to think that system evolves incrementally has to be thought about.
  • 3. Business users world • Business users think system as means of doing business. • Some time typewriter may be best fit than a laptop. • Need to think in their terms, no one knows the long tail story what we develop once developed and introduced into market the system takes its own avatar which founder may not even think off but try to justify.
  • 4. Putting Square peg in round hole • Business defines what’s the tool is supposed to do. • Not the technology like Social , Media, Analytics & Cloud defining how the business application should look applying the advancement in this technology.
  • 5. Big Picture • System Blueprint has become a Holy grail every architect including the technical architect and application architect needs to know it. • The application is not a silo it interfaces with other systems since data flows, process flows and all the applications communicate no more silos • Understand the Big Picture even when a small one is done it helps in integration, reusability and maintainability
  • 6. Where IT can complement • Once an Architect is Technology agnostic, who has used the technologies in solving the problems. • Once Architect able to make representation of business patterns into Technical patterns and visualize system. • Based on Visualized system comes with Gaps in terms of data flows, interaction, technical fitments, look from multiple dimensions is something missed. • 70 % accuracy at this stage is great if the system can be created with minor alterations , some new interfaces can be plugged , it can be extended its good.
  • 7. Now its IT table • Architecture style and pattern selection should evolve based on business need not on the expertise of architect or the one which is famous in market. • Architecture Traceability should cover all the business features with the third dimensional mapping to Non Functional Requirements • Schematic representation of Data model, system model, context, Framework (comprising of design patterns) should be well defined
  • 8. Architectural & Design Patterns • Since we are reusing time tested Design patterns that should be properly assembled in Architectural patterns mapping to Business Features covering the NFR’s • E.g. In Insurance – Policy Management, claims Management, Underwriting , Banking – Payment, Mortgage. This has predefined set of flows and matching data consumption which could be very easily compartmentalized by design patterns • Change in system would be extension of patterns
  • 9. Analytics and its impact • Previously system used to dump their data into tables without much consideration how its going to be used and table metadata is not much bothered about. • Information Governance should be continuously monitoring what goes in is right if not only Garbage out. Hence this takes a great significance now.
  • 10. Architectural Views • 4 + 1 views would a nice place to start with since it helps us in understanding & validating from the view points of Logical correctness, Physical implementation and infrastructure capability. • If the application is going to be part of SOA system nice to mention how it fits in SOA Blueprint which area and how it would be connected
  • 11. Design Views • Architectural view if it could be used to generate the Design model such as class & sequence diagrams some Industry best tools help us doing it. This help us in not missing anything • In absence of Factoring or conversion of legacy system if there could be a inventory mapping to all the Architectural mapping to design elements it would be very ideal.
  • 12. Big Ball of Mud • As System evolves and design changes and rapid incremental changes comes in the design inventory , architecture blue print not referred. • Addition of features are done based on code analysis and where the scope of object is available for making changes violating – Single Responsibility principle – Liskow substitution principle and others We have huge technical debt which makes the monolithic system difficult to change and maintain.
  • 13. To be continued • I am just sharing my experience in industry I have not touched on coding, testing and other areas intentionally would like to continue this journey of sharing my knowledge as an Architect.