SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
DESCENDING FROM THE ARCHITECT'S
IVORY TOWER
ANDREW RENDELL, PRINCIPAL CONSULTANT
INTRODUCTION
 MANY ORGANISATIONS HAVE LONG HISTORY OF WATERFALL
 DEVELOPMENT

 YEARS OF REFINEMENT HAVE PRODUCED TECHNIQUES FOR
 TECHNICAL ARCHITECTURE WHICH CONTRADICT AGILE
 IDEALS

 HOW DO YOU FULFIL THE ROLE OF TECHNICAL ARCHITECT IN
 SUCH AN ORGANISATION AND MAINTAIN THE AGILITY WHICH
 ALLOWS YOU TO DELIVER SOFTWARE?

 EXAMINED THROUGH THE EXPERIENCE OF A REAL WORLD
 PROJECT
ORGANISATIONAL CONTEXT

 T-MOBILE INTERNATIONAL MOBILE PORTALS AND CONTENT
 DELIVERY GROUP

 DELIVERS MOBILE APPLICATIONS WHICH DRIVE DATA USAGE
 ACROSS THE T-MOBILE NETWORK

 DEVELOPED THEIR EXPECTATIONS OF THE TECHNICAL
 ARCHITECT ROLE OVER SEVERAL YEARS
BROAD DEFINITION OF ARCHITECT

 IN THE CONTEXT OF THIS GROUP

 WIDE REMIT ACROSS SEVERAL PROJECTS

 END TO END TECHNICAL RESPONSIBILITY (I.E. IF IT DOES NOT
 WORK, YOU HAVE FAILED)

 DELIVERY OF CONSISTENTLY EFFICIENT SOLUTION WHICH IS
 FIT FOR PURPOSE
MY EXPERIENCE ON WATERFALL PROJECTS

 TECHNICAL ARCHITECT IS DISCOURAGED FROM TAKING
 HANDS ON APPROACH

 ROLE CLOSELY COUPLED WITH REVIEW OF DESIGN
 DOCUMENTATION

 IN FACT – BECOMES PRIMARY TOOL FOR ARCHITECTURAL
 QUALITY CONTROL

 DEVELOPMENT PROCESS STRUCTURED AROUND REVIEW
 QUALITY GATES
WATERFALL MAKES YOU INEFFECTIVE

CONVENTIONAL DOCUMENT REVIEW BASED APPROACH:

  ISOLATES THE ARCHITECT FROM THE TECHNICAL
  IMPLEMENTATION THEY ARE RESPONSIBLE FOR

  REDUCES THEIR ABILITY TO SUCCEED BY TAKING THEM AWAY
  FROM THE TECHNOLOGY WHICH MADE THEM GREAT
  CANDIDATES FOR THE ARCHITECT ROLE IN THE FIRST PLACE

  SUPPORTS THE FALLACY THAT THE TECHNICAL ARCHITECT IS
  THE ALL KNOWING CENTRE OF THE TECHNICAL UNIVERSE
TOWER SYNDROME
                  Broad View




         SAFETY




                  The Architects
                   Ivory Tower




                                   DEVELOPERS
WHAT DOES THIS LEAD TO?

 ARCHITECT DISENFRANCHISED
    A WASTE OF YEARS OF LEARNING AND EXPERIENCE


 POORLY REGARDED BY IMPLEMENTERS
    A DABBLER
    POORLY INFORMED
    AN IMPEDIMENT TO PROGRESS
    AVOID THEIR ATTENTION AT ALL COSTS!
ORGANISATIONS STILL HAVE THE SAME REQUIREMENT //
LOGICAL CAREER PROGRESSION FOR TECHNICIANS



DO ARCHITECTS HAVE A
ROLE IN AGILE?

                                  YES!
HOW CAN THE ROLE BE DELIVERED WITHOUT
ASCENDING THE TOWER?
BACKGROUND TO PROJECT
 SUMMER 2007 NEW PORTAL APPLICATION DEVELOPED

 CONDENSED TIME SCALES

 HIGH PROFILE

 UNUSUALLY HIGH RISK FOR THE ORGANISATION

 TACTICAL AGILE ADOPTION REQUIRED TO DELIVER

 PROJECT SUCCEEDS AND DELIVERS ON TIME

 FURTHER ADOPTION NOT ONLY POSSIBLE BUT HIGHLY
 DESIRABLE
POST LAUNCH HANDOVER
 DOUBTS THAT TOO MUCH OF THE OLD PROCESSES HAD BEEN
 DISCARDED

 WAS THE TEAM CREATING A MAINTENANCE NIGHTMARE
 THROUGH LACK OF DOCUMENTATION?

 HOW TO KEEP DELIVERING AT RAPID PACE WITH
 INCREASING SCOPE?
SCALING THE TEAM
 INCREASE HEADCOUNT
 TWO TEAMS
 DIFFERENT MANAGERS
 DIFFERENT LOCATIONS
 LITTLE INTERACTION AT INDIVIDUAL LEVEL
 SILOS FORM
 BEGAN TO DELIVER RAPIDLY




                BUT …
… ARCHITECTURAL BAD SMELLS

 DIVERGING CODE STYLES

 PREVIOUSLY COMMONLY APPLIED PATTERNS OVERLOOKED

 UNPREDICTABLE AND INCONSISTENT BEHAVIOUR

 TECHNICAL DEBT RISING DANGEROUSLY
INCREASING CODE BASE AND COMPLEXITY
RATE OF CHANGE
WHY WAS THE ARCHITECT INEFFECTIVE?
 ARCHITECT REMAINED ON THE CRITICAL PATH FOR ONE
 TEAMS DEVELOPMENT

 SAME EXPECTED VELOCITY AS ANY OTHER DEVELOPER

 DELIVERABLES ACTUALLY INCREASED

 REMIT WELL UNDERSTOOD

 MECHANISMS FOR FULFILLING THAT REMIT NOT
 WELL UNDERSTOOD
PROBLEMS RECOGNISED // OPPORTUNITY PRESENTS ITSELF TO MAKE
CHANGES // REORGANISATION OF TECHNICAL GOVERNANCE // NEED TO
SCALE EFFECTIVELY




REDEFINING THE
APPROACH
TECHNIQUES EMPLOYED
 A SELECTION OF THE TECHNIQUES EMPLOYED
  STRUCTURING THE APPLICATION TO PROMOTE GOOD GOVERNANCE

  DOCUMENTATION THAT IS 'GOOD ENOUGH‘

  KEY TOOL: TESTING

  REFLECTING ON CODE STRUCTURE

  PROVIDING DIRECTION AND RIGOROUS CHECKPOINTS

  DELEGATION
STRUCTURING OF APPLICATION

 PROMOTE GOOD GOVERNANCE THROUGH PHYSICAL
 ARCHITECTURE

 ANALOGOUS TO TDDS 'DETESTABLE CODE‘
  WORTH RESTRUCTURING CODE ONLY TO MAKE IT EASY TO TEST
  WORTH RESTRUCTURING APPLICATION ONLY TO IMPROVE TECHNICAL
  GOVERNANCE


 CONTENTIOUS
  SEEMED LIKE THE WRONG MOTIVATION
  EMOTIONAL RESPONSE: COSTS TOO MUCH
STRUCTURING OF APPLICATION
 WHY INCREASE COMPLEXITY / SIZE OF MONOLITH?

 COST TO RESTRUCTURE LOW

 SMALLER, MORE MANAGEABLE DEPLOYMENT UNITS
STRUCTURING OF APPLICATION
 TEAMS DECOUPLED STRUCTURE MIRRORED APPLICATION

 SILOS RECREATED, BUT
       Clean interfaces
       Easy to police
       Freedom to innovate
       Not license to disrupt

 OPERATIONS TEAM SUPPORTIVE

 MASSIVE SAVING IN TEST

 PROBABLY SAVED THE PROJECT

 SIMPLER STRUCTURE WAS EASIER TO GOVEN
DOCUMENTATION THAT IS 'GOOD ENOUGH'
  DETERMINED NOT TO EXPEND VALUABLE EFFORT ON
  DOCUMENTATION WHICH HAS NO CLEAR USE

  WHERE DOCUMENTATION IS REQUIRED IT MUST BE FIT FOR
  PURPOSE, NOT A TICK IN BOX

  VALUABLE DOCUMENTS FOR THIS PROJECT
      Web service API specification
      Use case documentation
DOCUMENTATION THAT
IS 'GOOD ENOUGH'
  DISCARDED DETAILED DESIGN
  DOC


OLD APPROACH
  MANDATED DETAILED DESIGN
  DOCUMENT PER MODULE
  SIGNIFICANT OVERHEAD
  HOW WAS IT ACTUALLY USED?
DOCUMENTATION THAT
IS 'GOOD ENOUGH'
 NEW APPROACH
   KEY AREAS IDENTIFIED BY
   ARCHITECT AND TEAM
   WHITE BOARD SESSIONS
   CAPTURED WITH DIGITAL
   CAMERAS AND UPLOADED TO
   WIKI
   WIKI PAGES ON SPECIFIC
   TOPICS
   GIVES ARCHITECT THE
   REQUIRED VISIBILITY
DOCUMENTATION THAT
IS 'GOOD ENOUGH'
  SOME AREAS JUSTIFIED MORE
  FORMAL CAPTURE
     ADDED TO SPRINT BACKLOG
     KEEPS COST VISIBLE

  USED UML TOOL

  CENTRALISED, VERSION
  CONTROLLED

  GENERATED DOCUMENTATION
  SETS FROM TOOL
CONTENTION

 WIDER ORGANISATION STILL DOCUMENT CENTRIC

 NEW APPROACH CONTENTIOUS, ESPECIALLY WHEN
 INTERACTING WITH THAT WIDER ORGANISATION

 SECURITY AUDIT PERFORMED ON PROJECT

 NEGATIVE PRECONCEPTIONS ABOUT AGILE

 ARCHITECT ABLE TO SUPPLY DOCUMENTS GENERATED FROM
 REPOSITORY

 AT LEAST AS RIGOROUS AS CONVENTIONAL PEERS
TESTING: THE KEY TOOL

 TDD KEY DEVELOPER TOOL
       SUBJECT OF AGILE 2008 PRESENTATION


 AUTOMATED TESTS MAIN MECHANISM FOR ENSURING
 QUALITY
       EMPIRICAL EVIDENCE


 AS OPPOSED TO ABSTRACT VIEW OF DESIGN TO BE REALISED

 JUSTIFY THEIR HIGH COST
TEST CONSUMERS AND CLASSIFICATION

       DEVELOPERS                       BUSINESS
                                     STAKEHOLDERS

                      LOAD
    UNIT TESTS
                      TESTS
                                USE CASE
                                TESTS
                 ACCEPTANCE
                 TESTS




                         ARCHITECT
TESTING

 COST OF TDD IS INITIALLY HIGH

 COST OF WRITING USE CASE TESTS IS HIGH AND IMPACTS

 SOME KEY INDIVIDUALS
     WE FAILED TO CREATE THEM QUICKLY ENOUGH
     DELAY DIMINISHED VALUE

 COST OF BEING INVOLVED IN LOAD TESTING HIGH AND
 CREATED SCHEDULING CONFLICTS

 NOTHING ELSE CAN PROVIDE SAME CONFIDENCE LEVELS

 JUST REMEMBER: NOTHING IS FOOLPROOF!
REFLECTING ON CODE STRUCTURE
 DEVELOPMENT PRIORITIES AND PATTERNS HAD BEEN
 COMMUNICATED

 NOT ALWAYS FOLLOWED!

 USE EARLY CODE REVIEW TO CATCH PROBLEMS

 DRIVEN BY ARCHITECT AND PROJECT TECHNICAL LEAD, NOT A
 TEAM ACTIVITY INITIALLY

 PRACTICAL EXERCISE
       Used Eclipse code navigation facilities
       Used UML reverse engineering
       Unit tests exercised code
REFLECTING ON CODE STRUCTURE
 EXERCISE PRODUCED LIST OF CORRECTIONS

 ARCHITECT ANNOTATED CODE WITH FIXME AND TODO

 UML DIAGRAMS FROM REVERSE ENGINEERING EXPORT TO
 WIKI

 HAVING A FORMAL DIAGRAM SOMEHOW MADE THE PROCESS
 'MORE SIGNIFICANT'!

 FED INTO RETROSPECTIVE
POSITIVE OUTCOMES
 ARCHITECT GAINS CONFIDENCE IN TEAM

 ISSUES CORRECTED EARLY

 DEVELOPERS CONFIDENCE BOOSTED
     POSITIVE FEEDBACK
     KNOW ARE INTERPRETING GUIDELINES AS INTENDED
     REPORTED IN RETROSPECTIVE

 ARCHITECT BECOMES FAMILIAR WITH CODE

 THE SOURCE IS NO LONGER AN OPAQUE ARTEFACT
PRACTICAL ISSUES
 PROHIBITIVE COST

 ONLY EXECUTED HANDFUL OF TIMES PER PROJECT

 IDENTIFYING WHERE TO INVEST TIME IN REVIEW
     ALLOW DEVELOPERS TO NOMINATE 'CLEVEREST CODE‘

 MORE COST EFFECTIVE SOLUTIONS
     DEVELOPER DRIVEN WHITE BOARD SESSIONS
     SAME OBJECTIVES
     COST DISTRIBUTED AMONGST TEAM
     LESS USEFUL – MORE ABSTRACTION, ERODE COMMON OWNERSHIP
DIRECTIONS AND CHECKPOINTS
 DIRECTION
     DEVELOPER PRINCIPLES ON WIKI


 CHECKPOINT
     ARCHITECTURE CHECK LIST


 NOT GENERIC – VERY APPLICATION SPECIFIC
ARCHITECTURE CHECKPOINT
 UNLIKE CONVENTIONAL CHECKPOINTS I HAVE EXPERIENCED

 SIMILAR TO CODE REVIEW IN THAT BASED AROUND
 WORKSTATION

 QUESTION AND ANSWER STYLE
    NOT ALL SIMPLE YES / NO
    AIM TO STIMULATE FURTHER INVESTIGATION
EXERPT FROM CHECKPOINT
COSTS AND BENEFITS
COSTS AND BENEFITS
 EXPOSED SOME SHOW STOPPERS

 DEMONSTRATED RIGOUR TO EXTERNAL OBSERVERS

 DOCUMENTED EMPIRICAL EVIDENCE

 BROUGHT ARCHITECT AND PROJECT LEAD CLOSER TO CODE

 HIGH COST IN TIME FROM KEY TEAM MEMBERS

 SCHEDULING DIFFICULT, OFTEN DELAYED WHICH INCREASED
 RISK

 NOT FOOL PROOF TOOLS, BUT VERY POWERFUL
DELEGATION
 ARCHITECTS VALUE HORIZONTAL OVER VERTICAL SCALABILITY

 SAME PATTERN CAN BE APPLIED TO DEVELOPMENT TEAMS

 ARCHITECT MUST DELEGATE

 QUALITY OF TEAM IS PARAMOUNT
DELEGATION: BUILDING THE TEAM
 ANTI-PATTERN
     INTERVIEWS WHERE SELECTION IS BASED ON EMOTIONAL
     RESPONSE
     INTERVIEWER POST RATIONALISES DECISION

 USE EMPIRICAL EVIDENCE INSTEAD

 CASE STUDY DRIVEN INTERVIEWS DEVELOPED

 SPECIFIC, NOT GENERIC, TO ROLE AND PROJECT

 WHITE BOARD SESSIONS TO TALK THROUGH A DESIGN

 USE ECLIPSE AND MAVEN TO DEMONSTRATE TDD ETC.
DELEGATION



IVORY TOWER ARCHITECTS
SEEM TO CONCENTRATE
ON TECHNOLOGY NOT
PEOPLE WHICH IMPEDES
THEIR ABILITY TO SCALE
THEIR DEVELOPMENT
CAPACITY
CONCLUSIONS
CONCLUSIONS
 DOCUMENTATION AS A TOOL FOR TECHNICAL GOVERNANCE
 IS NOT AN EFFECTIVE STRATEGY

 ARCHITECT MUST REDUCE THEIR ISOLATION THROUGH
 INVOLVEMENT IN THE HIGH VALUE TECHNICAL ACTIVITIES

 AUTOMATED, ACCESSIBLE TESTS ARE THE ARCHITECT'S BEST
 TOOL

 ARCHITECT CANNOT BE A FULL TIME DEVELOPER
CONCLUSIONS
 ACTIVITIES THAT MAKE THE DEVELOPERS AWARE THAT THE
 ARCHITECT IS CLOSE TO THE SOURCE INCREASES COMMON
 OWNERSHIP AND INVIGORATES HIGH STANDARDS

 SOFT SKILLS CAN BE AS IMPORTANT AS TECHNICAL ACUMEN

 THE BEST TECHNIQUES CANNOT ALWAYS BE APPLIED, TARGET
 THE MOST IMPORTANT AREAS AND APPLY CHEAPER METHODS
 ELSEWHERE
http://www.valtech.co.uk

http://blog.valtech.co.uk

http://twitter.com/valtech

Mais conteúdo relacionado

Mais procurados

Projects to Impact- Operationalizing Work from the Center
Projects to Impact- Operationalizing Work from the CenterProjects to Impact- Operationalizing Work from the Center
Projects to Impact- Operationalizing Work from the CenterMITRE ATT&CK
 
SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?Jonathan Sinclair
 
Strategies for Managing OT Cybersecurity Risk
Strategies for Managing OT Cybersecurity RiskStrategies for Managing OT Cybersecurity Risk
Strategies for Managing OT Cybersecurity RiskMighty Guides, Inc.
 
Mitre ATT&CK Kullanarak Etkin Saldırı Tespiti
Mitre ATT&CK Kullanarak Etkin Saldırı TespitiMitre ATT&CK Kullanarak Etkin Saldırı Tespiti
Mitre ATT&CK Kullanarak Etkin Saldırı TespitiBGA Cyber Security
 
Workshop 101 - Penetration testing & Vulnerability assessment system
Workshop 101 - Penetration testing & Vulnerability assessment systemWorkshop 101 - Penetration testing & Vulnerability assessment system
Workshop 101 - Penetration testing & Vulnerability assessment systemDan H
 
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...MITRE - ATT&CKcon
 
How to contribute to OpenStack
How to contribute to OpenStackHow to contribute to OpenStack
How to contribute to OpenStackOpsta
 
Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?
Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?
Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?BGA Cyber Security
 
Software Architecture Views and Viewpoints
Software Architecture Views and ViewpointsSoftware Architecture Views and Viewpoints
Software Architecture Views and ViewpointsHenry Muccini
 
6 Steps for Operationalizing Threat Intelligence
6 Steps for Operationalizing Threat Intelligence6 Steps for Operationalizing Threat Intelligence
6 Steps for Operationalizing Threat IntelligenceSirius
 
The Next Generation of Security Operations Centre (SOC)
The Next Generation of Security Operations Centre (SOC)The Next Generation of Security Operations Centre (SOC)
The Next Generation of Security Operations Centre (SOC)PECB
 
OT Security Architecture & Resilience: Designing for Security Success
OT Security Architecture & Resilience:  Designing for Security SuccessOT Security Architecture & Resilience:  Designing for Security Success
OT Security Architecture & Resilience: Designing for Security Successaccenture
 
Cybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdf
Cybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdfCybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdf
Cybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdfssuser7b150d
 
How to build a cyber threat intelligence program
How to build a cyber threat intelligence programHow to build a cyber threat intelligence program
How to build a cyber threat intelligence programMark Arena
 
Metasploit
MetasploitMetasploit
Metasploithenelpj
 
Threat Intelligence Workshop
Threat Intelligence WorkshopThreat Intelligence Workshop
Threat Intelligence WorkshopPriyanka Aash
 
Threat Intelligence & Threat research Sources
Threat Intelligence & Threat research SourcesThreat Intelligence & Threat research Sources
Threat Intelligence & Threat research SourcesLearningwithRayYT
 

Mais procurados (20)

Projects to Impact- Operationalizing Work from the Center
Projects to Impact- Operationalizing Work from the CenterProjects to Impact- Operationalizing Work from the Center
Projects to Impact- Operationalizing Work from the Center
 
SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?
 
Strategies for Managing OT Cybersecurity Risk
Strategies for Managing OT Cybersecurity RiskStrategies for Managing OT Cybersecurity Risk
Strategies for Managing OT Cybersecurity Risk
 
Mitre ATT&CK Kullanarak Etkin Saldırı Tespiti
Mitre ATT&CK Kullanarak Etkin Saldırı TespitiMitre ATT&CK Kullanarak Etkin Saldırı Tespiti
Mitre ATT&CK Kullanarak Etkin Saldırı Tespiti
 
Workshop 101 - Penetration testing & Vulnerability assessment system
Workshop 101 - Penetration testing & Vulnerability assessment systemWorkshop 101 - Penetration testing & Vulnerability assessment system
Workshop 101 - Penetration testing & Vulnerability assessment system
 
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
 
How to contribute to OpenStack
How to contribute to OpenStackHow to contribute to OpenStack
How to contribute to OpenStack
 
Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?
Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?
Some Tatbikatları ve SIEM Testleri İçin Siber Saldırıları Nasıl Optimize Ederiz?
 
ICS security
ICS securityICS security
ICS security
 
Software Architecture Views and Viewpoints
Software Architecture Views and ViewpointsSoftware Architecture Views and Viewpoints
Software Architecture Views and Viewpoints
 
6 Steps for Operationalizing Threat Intelligence
6 Steps for Operationalizing Threat Intelligence6 Steps for Operationalizing Threat Intelligence
6 Steps for Operationalizing Threat Intelligence
 
The Next Generation of Security Operations Centre (SOC)
The Next Generation of Security Operations Centre (SOC)The Next Generation of Security Operations Centre (SOC)
The Next Generation of Security Operations Centre (SOC)
 
OT Security Architecture & Resilience: Designing for Security Success
OT Security Architecture & Resilience:  Designing for Security SuccessOT Security Architecture & Resilience:  Designing for Security Success
OT Security Architecture & Resilience: Designing for Security Success
 
Securing SCADA
Securing SCADA Securing SCADA
Securing SCADA
 
Cybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdf
Cybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdfCybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdf
Cybersecurity Capability Maturity Model Self-Evaluation Report Jan 27 2023.pdf
 
How to build a cyber threat intelligence program
How to build a cyber threat intelligence programHow to build a cyber threat intelligence program
How to build a cyber threat intelligence program
 
Metasploit
MetasploitMetasploit
Metasploit
 
Threat Intelligence Workshop
Threat Intelligence WorkshopThreat Intelligence Workshop
Threat Intelligence Workshop
 
Threat Intelligence & Threat research Sources
Threat Intelligence & Threat research SourcesThreat Intelligence & Threat research Sources
Threat Intelligence & Threat research Sources
 
Global Cyber Threat Intelligence
Global Cyber Threat IntelligenceGlobal Cyber Threat Intelligence
Global Cyber Threat Intelligence
 

Destaque

INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOPINTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOPAmit Midha
 
Introduction to Software Architecture
Introduction to Software ArchitectureIntroduction to Software Architecture
Introduction to Software ArchitectureYuriy Guts
 
Architecture in an Agile World
Architecture in an Agile WorldArchitecture in an Agile World
Architecture in an Agile WorldDon McGreal
 
Does Agile Enterprise Architecture = Agile + Enterprise Architecture?
Does Agile Enterprise Architecture = Agile + Enterprise Architecture?Does Agile Enterprise Architecture = Agile + Enterprise Architecture?
Does Agile Enterprise Architecture = Agile + Enterprise Architecture?Jason Bloomberg
 
Software architecture in an agile environment
Software architecture in an agile environmentSoftware architecture in an agile environment
Software architecture in an agile environmentRaffaele Garofalo
 
Cloud application architecture with sql azure and windows azure
Cloud application architecture with sql azure and windows azureCloud application architecture with sql azure and windows azure
Cloud application architecture with sql azure and windows azureEduardo Castro
 
Cloud computing simple ppt
Cloud computing simple pptCloud computing simple ppt
Cloud computing simple pptAgarwaljay
 

Destaque (8)

INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOPINTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
 
Introduction to Software Architecture
Introduction to Software ArchitectureIntroduction to Software Architecture
Introduction to Software Architecture
 
Architecture in an Agile World
Architecture in an Agile WorldArchitecture in an Agile World
Architecture in an Agile World
 
Does Agile Enterprise Architecture = Agile + Enterprise Architecture?
Does Agile Enterprise Architecture = Agile + Enterprise Architecture?Does Agile Enterprise Architecture = Agile + Enterprise Architecture?
Does Agile Enterprise Architecture = Agile + Enterprise Architecture?
 
The Modern Software Architect
The Modern Software ArchitectThe Modern Software Architect
The Modern Software Architect
 
Software architecture in an agile environment
Software architecture in an agile environmentSoftware architecture in an agile environment
Software architecture in an agile environment
 
Cloud application architecture with sql azure and windows azure
Cloud application architecture with sql azure and windows azureCloud application architecture with sql azure and windows azure
Cloud application architecture with sql azure and windows azure
 
Cloud computing simple ppt
Cloud computing simple pptCloud computing simple ppt
Cloud computing simple ppt
 

Semelhante a Descending from the architect's ivory tower

Agile Methods Experience Report by Andrew Rendell, Valtech
Agile Methods Experience Report by Andrew Rendell, ValtechAgile Methods Experience Report by Andrew Rendell, Valtech
Agile Methods Experience Report by Andrew Rendell, ValtechValtech UK
 
Agile Relevance in the age of Continuous Everything ....
Agile Relevance in the age of Continuous Everything ....Agile Relevance in the age of Continuous Everything ....
Agile Relevance in the age of Continuous Everything ....Eturnti Consulting Pvt Ltd
 
Agile adoption in a waterfall environment
Agile adoption in a waterfall environmentAgile adoption in a waterfall environment
Agile adoption in a waterfall environmentValtech UK
 
Thinking In Cloud Native
Thinking In Cloud NativeThinking In Cloud Native
Thinking In Cloud NativeAshish Patel
 
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)Jorge Hidalgo
 
OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...
OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...
OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...FINOS
 
API Architecture
API ArchitectureAPI Architecture
API ArchitectureRyan Kolak
 
1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)
1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)
1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)JiWoon Yi
 
DevSecOps in the Cloud from the Lens of a Well-Architected Framework.pptx
DevSecOps in the Cloud from the Lens of a  Well-Architected Framework.pptxDevSecOps in the Cloud from the Lens of a  Well-Architected Framework.pptx
DevSecOps in the Cloud from the Lens of a Well-Architected Framework.pptxTurja Narayan Chaudhuri
 
Release Engineering Downstream of an OpenStack Project
Release Engineering Downstream of an OpenStack ProjectRelease Engineering Downstream of an OpenStack Project
Release Engineering Downstream of an OpenStack ProjectRainya Mosher
 
02 architectures in_context
02 architectures in_context02 architectures in_context
02 architectures in_contextMajong DevJfu
 
The evolution of agile development process
The evolution of agile development processThe evolution of agile development process
The evolution of agile development processDavid Tzemach
 
CWIN17 london becoming cloud native part 2 - guy martin docker
CWIN17 london   becoming cloud native part 2 - guy martin dockerCWIN17 london   becoming cloud native part 2 - guy martin docker
CWIN17 london becoming cloud native part 2 - guy martin dockerCapgemini
 
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...OpenStack
 
Agile or DevOps? What is Your Calling for Custom Software Development?
Agile or DevOps? What is Your Calling for Custom Software Development?Agile or DevOps? What is Your Calling for Custom Software Development?
Agile or DevOps? What is Your Calling for Custom Software Development?Jai Mehta
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureHironori Washizaki
 
Strategic technology roadmap for space x
Strategic technology roadmap for space xStrategic technology roadmap for space x
Strategic technology roadmap for space xCarles Debart
 
Chris Wiese Resume
Chris Wiese ResumeChris Wiese Resume
Chris Wiese ResumeChris Wiese
 

Semelhante a Descending from the architect's ivory tower (20)

Agile Methods Experience Report by Andrew Rendell, Valtech
Agile Methods Experience Report by Andrew Rendell, ValtechAgile Methods Experience Report by Andrew Rendell, Valtech
Agile Methods Experience Report by Andrew Rendell, Valtech
 
Marc perillo
Marc perilloMarc perillo
Marc perillo
 
Agile Relevance in the age of Continuous Everything ....
Agile Relevance in the age of Continuous Everything ....Agile Relevance in the age of Continuous Everything ....
Agile Relevance in the age of Continuous Everything ....
 
Agile adoption in a waterfall environment
Agile adoption in a waterfall environmentAgile adoption in a waterfall environment
Agile adoption in a waterfall environment
 
Thinking In Cloud Native
Thinking In Cloud NativeThinking In Cloud Native
Thinking In Cloud Native
 
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
 
OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...
OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...
OSSF 2018 - Alessandro Petroni of Red Hat - Supporting Innovation and Stabili...
 
API Architecture
API ArchitectureAPI Architecture
API Architecture
 
1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)
1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)
1 건설사업관리의 새로운 프론티어 adesh jain회장(ipma)
 
DevSecOps in the Cloud from the Lens of a Well-Architected Framework.pptx
DevSecOps in the Cloud from the Lens of a  Well-Architected Framework.pptxDevSecOps in the Cloud from the Lens of a  Well-Architected Framework.pptx
DevSecOps in the Cloud from the Lens of a Well-Architected Framework.pptx
 
2 Process
2 Process2 Process
2 Process
 
Release Engineering Downstream of an OpenStack Project
Release Engineering Downstream of an OpenStack ProjectRelease Engineering Downstream of an OpenStack Project
Release Engineering Downstream of an OpenStack Project
 
02 architectures in_context
02 architectures in_context02 architectures in_context
02 architectures in_context
 
The evolution of agile development process
The evolution of agile development processThe evolution of agile development process
The evolution of agile development process
 
CWIN17 london becoming cloud native part 2 - guy martin docker
CWIN17 london   becoming cloud native part 2 - guy martin dockerCWIN17 london   becoming cloud native part 2 - guy martin docker
CWIN17 london becoming cloud native part 2 - guy martin docker
 
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
 
Agile or DevOps? What is Your Calling for Custom Software Development?
Agile or DevOps? What is Your Calling for Custom Software Development?Agile or DevOps? What is Your Calling for Custom Software Development?
Agile or DevOps? What is Your Calling for Custom Software Development?
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about Architecture
 
Strategic technology roadmap for space x
Strategic technology roadmap for space xStrategic technology roadmap for space x
Strategic technology roadmap for space x
 
Chris Wiese Resume
Chris Wiese ResumeChris Wiese Resume
Chris Wiese Resume
 

Mais de Valtech UK

Get to know your users using Lean UX
Get to know your users using Lean UXGet to know your users using Lean UX
Get to know your users using Lean UXValtech UK
 
The Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon BrownThe Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon BrownValtech UK
 
Get to know your users
Get to know your users Get to know your users
Get to know your users Valtech UK
 
LeanUX and Agile in the Public Sector
LeanUX and Agile in the Public SectorLeanUX and Agile in the Public Sector
LeanUX and Agile in the Public SectorValtech UK
 
Transforming nhs choices using agile and lean ux agile manc
Transforming nhs choices using agile and lean ux agile mancTransforming nhs choices using agile and lean ux agile manc
Transforming nhs choices using agile and lean ux agile mancValtech UK
 
Digital Inclusion in the Public Sector
Digital Inclusion in the Public SectorDigital Inclusion in the Public Sector
Digital Inclusion in the Public SectorValtech UK
 
Presentation compressed
Presentation compressedPresentation compressed
Presentation compressedValtech UK
 
The Mobile Landscape - Do you really need an app?
The Mobile Landscape - Do you really need an app?The Mobile Landscape - Do you really need an app?
The Mobile Landscape - Do you really need an app?Valtech UK
 
Modern Digital Design: The power of Responsive Design
Modern Digital Design: The power of Responsive DesignModern Digital Design: The power of Responsive Design
Modern Digital Design: The power of Responsive DesignValtech UK
 
White Paper: "Designing Around People"
White Paper: "Designing Around People" White Paper: "Designing Around People"
White Paper: "Designing Around People" Valtech UK
 
Simplifying Facebook: Designing Around People
Simplifying Facebook: Designing Around PeopleSimplifying Facebook: Designing Around People
Simplifying Facebook: Designing Around PeopleValtech UK
 
The mobile landscape - Do you really need an app?
The mobile landscape - Do you really need an app?The mobile landscape - Do you really need an app?
The mobile landscape - Do you really need an app?Valtech UK
 
An Introduction to Responsive Design
An Introduction to Responsive DesignAn Introduction to Responsive Design
An Introduction to Responsive DesignValtech UK
 
Customer case - IC companys
Customer case - IC companysCustomer case - IC companys
Customer case - IC companysValtech UK
 
Part 1: "Making Agile Work" Webinar Series: Inception
Part 1: "Making Agile Work" Webinar Series: InceptionPart 1: "Making Agile Work" Webinar Series: Inception
Part 1: "Making Agile Work" Webinar Series: InceptionValtech UK
 
Experience Report: FLIGHTGLOBAL.COM
Experience Report: FLIGHTGLOBAL.COMExperience Report: FLIGHTGLOBAL.COM
Experience Report: FLIGHTGLOBAL.COMValtech UK
 
Agile UX integration
Agile UX integrationAgile UX integration
Agile UX integrationValtech UK
 
Agile in highly regulated environments
Agile in highly regulated environmentsAgile in highly regulated environments
Agile in highly regulated environmentsValtech UK
 
Using CFD, SPC and Kanban on UK GOV IT projects
Using CFD, SPC and Kanban on UK GOV IT projects Using CFD, SPC and Kanban on UK GOV IT projects
Using CFD, SPC and Kanban on UK GOV IT projects Valtech UK
 
Adapting agile to the entreprise
Adapting agile to the entreprise Adapting agile to the entreprise
Adapting agile to the entreprise Valtech UK
 

Mais de Valtech UK (20)

Get to know your users using Lean UX
Get to know your users using Lean UXGet to know your users using Lean UX
Get to know your users using Lean UX
 
The Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon BrownThe Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon Brown
 
Get to know your users
Get to know your users Get to know your users
Get to know your users
 
LeanUX and Agile in the Public Sector
LeanUX and Agile in the Public SectorLeanUX and Agile in the Public Sector
LeanUX and Agile in the Public Sector
 
Transforming nhs choices using agile and lean ux agile manc
Transforming nhs choices using agile and lean ux agile mancTransforming nhs choices using agile and lean ux agile manc
Transforming nhs choices using agile and lean ux agile manc
 
Digital Inclusion in the Public Sector
Digital Inclusion in the Public SectorDigital Inclusion in the Public Sector
Digital Inclusion in the Public Sector
 
Presentation compressed
Presentation compressedPresentation compressed
Presentation compressed
 
The Mobile Landscape - Do you really need an app?
The Mobile Landscape - Do you really need an app?The Mobile Landscape - Do you really need an app?
The Mobile Landscape - Do you really need an app?
 
Modern Digital Design: The power of Responsive Design
Modern Digital Design: The power of Responsive DesignModern Digital Design: The power of Responsive Design
Modern Digital Design: The power of Responsive Design
 
White Paper: "Designing Around People"
White Paper: "Designing Around People" White Paper: "Designing Around People"
White Paper: "Designing Around People"
 
Simplifying Facebook: Designing Around People
Simplifying Facebook: Designing Around PeopleSimplifying Facebook: Designing Around People
Simplifying Facebook: Designing Around People
 
The mobile landscape - Do you really need an app?
The mobile landscape - Do you really need an app?The mobile landscape - Do you really need an app?
The mobile landscape - Do you really need an app?
 
An Introduction to Responsive Design
An Introduction to Responsive DesignAn Introduction to Responsive Design
An Introduction to Responsive Design
 
Customer case - IC companys
Customer case - IC companysCustomer case - IC companys
Customer case - IC companys
 
Part 1: "Making Agile Work" Webinar Series: Inception
Part 1: "Making Agile Work" Webinar Series: InceptionPart 1: "Making Agile Work" Webinar Series: Inception
Part 1: "Making Agile Work" Webinar Series: Inception
 
Experience Report: FLIGHTGLOBAL.COM
Experience Report: FLIGHTGLOBAL.COMExperience Report: FLIGHTGLOBAL.COM
Experience Report: FLIGHTGLOBAL.COM
 
Agile UX integration
Agile UX integrationAgile UX integration
Agile UX integration
 
Agile in highly regulated environments
Agile in highly regulated environmentsAgile in highly regulated environments
Agile in highly regulated environments
 
Using CFD, SPC and Kanban on UK GOV IT projects
Using CFD, SPC and Kanban on UK GOV IT projects Using CFD, SPC and Kanban on UK GOV IT projects
Using CFD, SPC and Kanban on UK GOV IT projects
 
Adapting agile to the entreprise
Adapting agile to the entreprise Adapting agile to the entreprise
Adapting agile to the entreprise
 

Último

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Último (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

Descending from the architect's ivory tower

  • 1. DESCENDING FROM THE ARCHITECT'S IVORY TOWER ANDREW RENDELL, PRINCIPAL CONSULTANT
  • 2. INTRODUCTION MANY ORGANISATIONS HAVE LONG HISTORY OF WATERFALL DEVELOPMENT YEARS OF REFINEMENT HAVE PRODUCED TECHNIQUES FOR TECHNICAL ARCHITECTURE WHICH CONTRADICT AGILE IDEALS HOW DO YOU FULFIL THE ROLE OF TECHNICAL ARCHITECT IN SUCH AN ORGANISATION AND MAINTAIN THE AGILITY WHICH ALLOWS YOU TO DELIVER SOFTWARE? EXAMINED THROUGH THE EXPERIENCE OF A REAL WORLD PROJECT
  • 3. ORGANISATIONAL CONTEXT T-MOBILE INTERNATIONAL MOBILE PORTALS AND CONTENT DELIVERY GROUP DELIVERS MOBILE APPLICATIONS WHICH DRIVE DATA USAGE ACROSS THE T-MOBILE NETWORK DEVELOPED THEIR EXPECTATIONS OF THE TECHNICAL ARCHITECT ROLE OVER SEVERAL YEARS
  • 4. BROAD DEFINITION OF ARCHITECT IN THE CONTEXT OF THIS GROUP WIDE REMIT ACROSS SEVERAL PROJECTS END TO END TECHNICAL RESPONSIBILITY (I.E. IF IT DOES NOT WORK, YOU HAVE FAILED) DELIVERY OF CONSISTENTLY EFFICIENT SOLUTION WHICH IS FIT FOR PURPOSE
  • 5. MY EXPERIENCE ON WATERFALL PROJECTS TECHNICAL ARCHITECT IS DISCOURAGED FROM TAKING HANDS ON APPROACH ROLE CLOSELY COUPLED WITH REVIEW OF DESIGN DOCUMENTATION IN FACT – BECOMES PRIMARY TOOL FOR ARCHITECTURAL QUALITY CONTROL DEVELOPMENT PROCESS STRUCTURED AROUND REVIEW QUALITY GATES
  • 6. WATERFALL MAKES YOU INEFFECTIVE CONVENTIONAL DOCUMENT REVIEW BASED APPROACH: ISOLATES THE ARCHITECT FROM THE TECHNICAL IMPLEMENTATION THEY ARE RESPONSIBLE FOR REDUCES THEIR ABILITY TO SUCCEED BY TAKING THEM AWAY FROM THE TECHNOLOGY WHICH MADE THEM GREAT CANDIDATES FOR THE ARCHITECT ROLE IN THE FIRST PLACE SUPPORTS THE FALLACY THAT THE TECHNICAL ARCHITECT IS THE ALL KNOWING CENTRE OF THE TECHNICAL UNIVERSE
  • 7. TOWER SYNDROME Broad View SAFETY The Architects Ivory Tower DEVELOPERS
  • 8. WHAT DOES THIS LEAD TO? ARCHITECT DISENFRANCHISED A WASTE OF YEARS OF LEARNING AND EXPERIENCE POORLY REGARDED BY IMPLEMENTERS A DABBLER POORLY INFORMED AN IMPEDIMENT TO PROGRESS AVOID THEIR ATTENTION AT ALL COSTS!
  • 9. ORGANISATIONS STILL HAVE THE SAME REQUIREMENT // LOGICAL CAREER PROGRESSION FOR TECHNICIANS DO ARCHITECTS HAVE A ROLE IN AGILE? YES!
  • 10. HOW CAN THE ROLE BE DELIVERED WITHOUT ASCENDING THE TOWER?
  • 11. BACKGROUND TO PROJECT SUMMER 2007 NEW PORTAL APPLICATION DEVELOPED CONDENSED TIME SCALES HIGH PROFILE UNUSUALLY HIGH RISK FOR THE ORGANISATION TACTICAL AGILE ADOPTION REQUIRED TO DELIVER PROJECT SUCCEEDS AND DELIVERS ON TIME FURTHER ADOPTION NOT ONLY POSSIBLE BUT HIGHLY DESIRABLE
  • 12. POST LAUNCH HANDOVER DOUBTS THAT TOO MUCH OF THE OLD PROCESSES HAD BEEN DISCARDED WAS THE TEAM CREATING A MAINTENANCE NIGHTMARE THROUGH LACK OF DOCUMENTATION? HOW TO KEEP DELIVERING AT RAPID PACE WITH INCREASING SCOPE?
  • 13. SCALING THE TEAM INCREASE HEADCOUNT TWO TEAMS DIFFERENT MANAGERS DIFFERENT LOCATIONS LITTLE INTERACTION AT INDIVIDUAL LEVEL SILOS FORM BEGAN TO DELIVER RAPIDLY BUT …
  • 14. … ARCHITECTURAL BAD SMELLS DIVERGING CODE STYLES PREVIOUSLY COMMONLY APPLIED PATTERNS OVERLOOKED UNPREDICTABLE AND INCONSISTENT BEHAVIOUR TECHNICAL DEBT RISING DANGEROUSLY
  • 15. INCREASING CODE BASE AND COMPLEXITY
  • 17. WHY WAS THE ARCHITECT INEFFECTIVE? ARCHITECT REMAINED ON THE CRITICAL PATH FOR ONE TEAMS DEVELOPMENT SAME EXPECTED VELOCITY AS ANY OTHER DEVELOPER DELIVERABLES ACTUALLY INCREASED REMIT WELL UNDERSTOOD MECHANISMS FOR FULFILLING THAT REMIT NOT WELL UNDERSTOOD
  • 18. PROBLEMS RECOGNISED // OPPORTUNITY PRESENTS ITSELF TO MAKE CHANGES // REORGANISATION OF TECHNICAL GOVERNANCE // NEED TO SCALE EFFECTIVELY REDEFINING THE APPROACH
  • 19. TECHNIQUES EMPLOYED A SELECTION OF THE TECHNIQUES EMPLOYED STRUCTURING THE APPLICATION TO PROMOTE GOOD GOVERNANCE DOCUMENTATION THAT IS 'GOOD ENOUGH‘ KEY TOOL: TESTING REFLECTING ON CODE STRUCTURE PROVIDING DIRECTION AND RIGOROUS CHECKPOINTS DELEGATION
  • 20. STRUCTURING OF APPLICATION PROMOTE GOOD GOVERNANCE THROUGH PHYSICAL ARCHITECTURE ANALOGOUS TO TDDS 'DETESTABLE CODE‘ WORTH RESTRUCTURING CODE ONLY TO MAKE IT EASY TO TEST WORTH RESTRUCTURING APPLICATION ONLY TO IMPROVE TECHNICAL GOVERNANCE CONTENTIOUS SEEMED LIKE THE WRONG MOTIVATION EMOTIONAL RESPONSE: COSTS TOO MUCH
  • 21. STRUCTURING OF APPLICATION WHY INCREASE COMPLEXITY / SIZE OF MONOLITH? COST TO RESTRUCTURE LOW SMALLER, MORE MANAGEABLE DEPLOYMENT UNITS
  • 22. STRUCTURING OF APPLICATION TEAMS DECOUPLED STRUCTURE MIRRORED APPLICATION SILOS RECREATED, BUT Clean interfaces Easy to police Freedom to innovate Not license to disrupt OPERATIONS TEAM SUPPORTIVE MASSIVE SAVING IN TEST PROBABLY SAVED THE PROJECT SIMPLER STRUCTURE WAS EASIER TO GOVEN
  • 23. DOCUMENTATION THAT IS 'GOOD ENOUGH' DETERMINED NOT TO EXPEND VALUABLE EFFORT ON DOCUMENTATION WHICH HAS NO CLEAR USE WHERE DOCUMENTATION IS REQUIRED IT MUST BE FIT FOR PURPOSE, NOT A TICK IN BOX VALUABLE DOCUMENTS FOR THIS PROJECT Web service API specification Use case documentation
  • 24. DOCUMENTATION THAT IS 'GOOD ENOUGH' DISCARDED DETAILED DESIGN DOC OLD APPROACH MANDATED DETAILED DESIGN DOCUMENT PER MODULE SIGNIFICANT OVERHEAD HOW WAS IT ACTUALLY USED?
  • 25. DOCUMENTATION THAT IS 'GOOD ENOUGH' NEW APPROACH KEY AREAS IDENTIFIED BY ARCHITECT AND TEAM WHITE BOARD SESSIONS CAPTURED WITH DIGITAL CAMERAS AND UPLOADED TO WIKI WIKI PAGES ON SPECIFIC TOPICS GIVES ARCHITECT THE REQUIRED VISIBILITY
  • 26. DOCUMENTATION THAT IS 'GOOD ENOUGH' SOME AREAS JUSTIFIED MORE FORMAL CAPTURE ADDED TO SPRINT BACKLOG KEEPS COST VISIBLE USED UML TOOL CENTRALISED, VERSION CONTROLLED GENERATED DOCUMENTATION SETS FROM TOOL
  • 27. CONTENTION WIDER ORGANISATION STILL DOCUMENT CENTRIC NEW APPROACH CONTENTIOUS, ESPECIALLY WHEN INTERACTING WITH THAT WIDER ORGANISATION SECURITY AUDIT PERFORMED ON PROJECT NEGATIVE PRECONCEPTIONS ABOUT AGILE ARCHITECT ABLE TO SUPPLY DOCUMENTS GENERATED FROM REPOSITORY AT LEAST AS RIGOROUS AS CONVENTIONAL PEERS
  • 28. TESTING: THE KEY TOOL TDD KEY DEVELOPER TOOL SUBJECT OF AGILE 2008 PRESENTATION AUTOMATED TESTS MAIN MECHANISM FOR ENSURING QUALITY EMPIRICAL EVIDENCE AS OPPOSED TO ABSTRACT VIEW OF DESIGN TO BE REALISED JUSTIFY THEIR HIGH COST
  • 29. TEST CONSUMERS AND CLASSIFICATION DEVELOPERS BUSINESS STAKEHOLDERS LOAD UNIT TESTS TESTS USE CASE TESTS ACCEPTANCE TESTS ARCHITECT
  • 30. TESTING COST OF TDD IS INITIALLY HIGH COST OF WRITING USE CASE TESTS IS HIGH AND IMPACTS SOME KEY INDIVIDUALS WE FAILED TO CREATE THEM QUICKLY ENOUGH DELAY DIMINISHED VALUE COST OF BEING INVOLVED IN LOAD TESTING HIGH AND CREATED SCHEDULING CONFLICTS NOTHING ELSE CAN PROVIDE SAME CONFIDENCE LEVELS JUST REMEMBER: NOTHING IS FOOLPROOF!
  • 31. REFLECTING ON CODE STRUCTURE DEVELOPMENT PRIORITIES AND PATTERNS HAD BEEN COMMUNICATED NOT ALWAYS FOLLOWED! USE EARLY CODE REVIEW TO CATCH PROBLEMS DRIVEN BY ARCHITECT AND PROJECT TECHNICAL LEAD, NOT A TEAM ACTIVITY INITIALLY PRACTICAL EXERCISE Used Eclipse code navigation facilities Used UML reverse engineering Unit tests exercised code
  • 32. REFLECTING ON CODE STRUCTURE EXERCISE PRODUCED LIST OF CORRECTIONS ARCHITECT ANNOTATED CODE WITH FIXME AND TODO UML DIAGRAMS FROM REVERSE ENGINEERING EXPORT TO WIKI HAVING A FORMAL DIAGRAM SOMEHOW MADE THE PROCESS 'MORE SIGNIFICANT'! FED INTO RETROSPECTIVE
  • 33.
  • 34. POSITIVE OUTCOMES ARCHITECT GAINS CONFIDENCE IN TEAM ISSUES CORRECTED EARLY DEVELOPERS CONFIDENCE BOOSTED POSITIVE FEEDBACK KNOW ARE INTERPRETING GUIDELINES AS INTENDED REPORTED IN RETROSPECTIVE ARCHITECT BECOMES FAMILIAR WITH CODE THE SOURCE IS NO LONGER AN OPAQUE ARTEFACT
  • 35. PRACTICAL ISSUES PROHIBITIVE COST ONLY EXECUTED HANDFUL OF TIMES PER PROJECT IDENTIFYING WHERE TO INVEST TIME IN REVIEW ALLOW DEVELOPERS TO NOMINATE 'CLEVEREST CODE‘ MORE COST EFFECTIVE SOLUTIONS DEVELOPER DRIVEN WHITE BOARD SESSIONS SAME OBJECTIVES COST DISTRIBUTED AMONGST TEAM LESS USEFUL – MORE ABSTRACTION, ERODE COMMON OWNERSHIP
  • 36. DIRECTIONS AND CHECKPOINTS DIRECTION DEVELOPER PRINCIPLES ON WIKI CHECKPOINT ARCHITECTURE CHECK LIST NOT GENERIC – VERY APPLICATION SPECIFIC
  • 37. ARCHITECTURE CHECKPOINT UNLIKE CONVENTIONAL CHECKPOINTS I HAVE EXPERIENCED SIMILAR TO CODE REVIEW IN THAT BASED AROUND WORKSTATION QUESTION AND ANSWER STYLE NOT ALL SIMPLE YES / NO AIM TO STIMULATE FURTHER INVESTIGATION
  • 40. COSTS AND BENEFITS EXPOSED SOME SHOW STOPPERS DEMONSTRATED RIGOUR TO EXTERNAL OBSERVERS DOCUMENTED EMPIRICAL EVIDENCE BROUGHT ARCHITECT AND PROJECT LEAD CLOSER TO CODE HIGH COST IN TIME FROM KEY TEAM MEMBERS SCHEDULING DIFFICULT, OFTEN DELAYED WHICH INCREASED RISK NOT FOOL PROOF TOOLS, BUT VERY POWERFUL
  • 41. DELEGATION ARCHITECTS VALUE HORIZONTAL OVER VERTICAL SCALABILITY SAME PATTERN CAN BE APPLIED TO DEVELOPMENT TEAMS ARCHITECT MUST DELEGATE QUALITY OF TEAM IS PARAMOUNT
  • 42. DELEGATION: BUILDING THE TEAM ANTI-PATTERN INTERVIEWS WHERE SELECTION IS BASED ON EMOTIONAL RESPONSE INTERVIEWER POST RATIONALISES DECISION USE EMPIRICAL EVIDENCE INSTEAD CASE STUDY DRIVEN INTERVIEWS DEVELOPED SPECIFIC, NOT GENERIC, TO ROLE AND PROJECT WHITE BOARD SESSIONS TO TALK THROUGH A DESIGN USE ECLIPSE AND MAVEN TO DEMONSTRATE TDD ETC.
  • 43. DELEGATION IVORY TOWER ARCHITECTS SEEM TO CONCENTRATE ON TECHNOLOGY NOT PEOPLE WHICH IMPEDES THEIR ABILITY TO SCALE THEIR DEVELOPMENT CAPACITY
  • 45. CONCLUSIONS DOCUMENTATION AS A TOOL FOR TECHNICAL GOVERNANCE IS NOT AN EFFECTIVE STRATEGY ARCHITECT MUST REDUCE THEIR ISOLATION THROUGH INVOLVEMENT IN THE HIGH VALUE TECHNICAL ACTIVITIES AUTOMATED, ACCESSIBLE TESTS ARE THE ARCHITECT'S BEST TOOL ARCHITECT CANNOT BE A FULL TIME DEVELOPER
  • 46. CONCLUSIONS ACTIVITIES THAT MAKE THE DEVELOPERS AWARE THAT THE ARCHITECT IS CLOSE TO THE SOURCE INCREASES COMMON OWNERSHIP AND INVIGORATES HIGH STANDARDS SOFT SKILLS CAN BE AS IMPORTANT AS TECHNICAL ACUMEN THE BEST TECHNIQUES CANNOT ALWAYS BE APPLIED, TARGET THE MOST IMPORTANT AREAS AND APPLY CHEAPER METHODS ELSEWHERE