SlideShare a Scribd company logo
Lecture: Dealing with challenges (technical)
Chris Douce, 22 July 2013 (14.00 – 14.50)
Dealing with the practical issues
Photo Sarah G (Creative Commons)
Why is software so hard?
Photo by Honda news (Creative Commons)
Why is software so hard?
Photo by Honda news (Creative Commons)
Agile principles
• Customer satisfaction by rapid delivery of useful software
• Welcome changing requirements, even late in development
• Working software is delivered frequently (weeks rather than months)
• Working software is the principal measure of progress
• Sustainable development, able to maintain a constant pace
• Close, daily cooperation between business people and developers
• Face-to-face conversation is the best form of communication (co-location)
• Projects are built around motivated individuals, who should be trusted
• Continuous attention to technical excellence and good design
• Simplicity —the art of maximizing the amount of work not done—is essential
• Self-organizing teams
• Regular adaptation to changing circumstances
Source: wikipedia
Agile and Extreme programming
Agile and Extreme programming
Agile and Extreme programming
Development as craft
Play
Play
• Tools and development environments
• Sample code and software
• Prototypes
• Similar products
• Different products: same vendor, different vendors
• Explore the boundaries of the possible
• Give yourself some time… It’s okay!
• Is fundamentally important…
Version control
• Manual control
• Software support
• Integrated with environment
Version control
Acknowledgements: Wikipedia
Configuration management
Choosing what to implement
• Identify the key functions
• Decide on what is out of scope (horizontal/vertical prototyping)
• Choose how far you’re going to go
• Understand what you can do
• Understand what you might need help with
• Prototypes = expression of idea + skills
Software testing
• Usability testing
• Accessibility testing
• Function testing
• Module testing
• Integration testing
• Condition testing
• Performance testing
• Security testing
• Unit testing
• Acceptance testing
• Test harnesses
• Test driven development
Software testing
• Usability testing
• Accessibility testing
• Function testing
• Module testing
• Integration testing
• Condition testing
• Performance testing
• Security testing
• Unit testing
• Acceptance testing
• Test harnesses
• Test driven development
Software testing
function foo() { … }
function bar() { … }
function bez() { … }
function fooBar() { … }
function barFoo() { … }
…
…
…
function testFoo() { … }
function testBar() { … }
function testBez() { … }
function testFooBar() { … }
function testBarFoo() { … }
…
…
…
Key: Practicality
Chris’s tips
• Don’t try to do everything: be realistic
• If you think you’re going crazy, take a break: have a walk
• Find the time to play, this is finding the time to learn
• Find the time to read and study the work of others
• Be prepared to have your assumptions challenged
• Break hard stuff down into small pieces
• Write test code to experiment
• Projects extend to the amount of time available: beware!
• Listen
• Be humble
Chris’s anti-tips
• Give one person all the coding responsibility
• When coding, ignore what your team says
• Don’t talk to each other
• Ignore the external world; it’s a distraction
• Don’t write anything down; forget your assumptions
• Solve a coding problem that has already been solved
• Make quick decisions
• Don’t ask questions
• Always be prepared to shout
• Assume you can do everything
Challenges
• Project
• People
• Technology
• Software isn’t about technology; it’s all about people
Summary
• Agile methods
• Play, tools and testing
• Revisiting the challenges
• Tips
• Tomorrow: expanding our horizons
Lecture: Dealing with challenges (technical)
Chris Douce, 22 July 2013 (14.00 – 14.50)

More Related Content

Viewers also liked

Янгол-охоронець для бійця
Янгол-охоронець для бійцяЯнгол-охоронець для бійця
Янгол-охоронець для бійця
Anthony Ivaniuk
 
Historia del facebook
Historia del facebookHistoria del facebook
Historia del facebook
jesus david machado orrego
 
Stitches December 2015
Stitches December 2015Stitches December 2015
Stitches December 2015Jay Busselle
 
Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...
Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...
Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...
Anthemis Group
 
Virginia drogodependencia
Virginia drogodependenciaVirginia drogodependencia
Virginia drogodependencia
Virginia Duarte
 
Максім Багдановіч дзіўная зорка беларускай паэзіі
Максім Багдановіч дзіўная зорка беларускай паэзііМаксім Багдановіч дзіўная зорка беларускай паэзіі
Максім Багдановіч дзіўная зорка беларускай паэзіі
ADL94
 
Ukraine Global Scholars presentation
Ukraine Global Scholars presentationUkraine Global Scholars presentation
Ukraine Global Scholars presentation
Misha Lemesh
 
Paper Cup PROMOTION - Creative Below the Line (BTL) Advertisment
Paper Cup PROMOTION - Creative Below the Line (BTL) AdvertismentPaper Cup PROMOTION - Creative Below the Line (BTL) Advertisment
Paper Cup PROMOTION - Creative Below the Line (BTL) Advertisment
Sunil Saha Director Redplum India Pvt Ltd
 
CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA ¿CÓMO E...
CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA  ¿CÓMO E...CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA  ¿CÓMO E...
CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA ¿CÓMO E...
Coach Nuevo Liderazgo
 

Viewers also liked (10)

Янгол-охоронець для бійця
Янгол-охоронець для бійцяЯнгол-охоронець для бійця
Янгол-охоронець для бійця
 
Historia del facebook
Historia del facebookHistoria del facebook
Historia del facebook
 
Stitches December 2015
Stitches December 2015Stitches December 2015
Stitches December 2015
 
Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...
Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...
Financial Inclusion Week - Anthemis Fellowship Brown Bag Lunch - 20th October...
 
Virginia drogodependencia
Virginia drogodependenciaVirginia drogodependencia
Virginia drogodependencia
 
Максім Багдановіч дзіўная зорка беларускай паэзіі
Максім Багдановіч дзіўная зорка беларускай паэзііМаксім Багдановіч дзіўная зорка беларускай паэзіі
Максім Багдановіч дзіўная зорка беларускай паэзіі
 
Ukraine Global Scholars presentation
Ukraine Global Scholars presentationUkraine Global Scholars presentation
Ukraine Global Scholars presentation
 
Paper Cup PROMOTION - Creative Below the Line (BTL) Advertisment
Paper Cup PROMOTION - Creative Below the Line (BTL) AdvertismentPaper Cup PROMOTION - Creative Below the Line (BTL) Advertisment
Paper Cup PROMOTION - Creative Below the Line (BTL) Advertisment
 
rajesh_resume
rajesh_resumerajesh_resume
rajesh_resume
 
CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA ¿CÓMO E...
CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA  ¿CÓMO E...CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA  ¿CÓMO E...
CÓMO INFLUYE LA INTELIGENCIA EMOCIONAL EN LA PROFESIÓN DE ENFERMERÍA ¿CÓMO E...
 

Similar to Dealing with challenges (technical)

Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
UXPA International
 
It's XP, Stupid
It's XP, StupidIt's XP, Stupid
It's XP, Stupid
Mike Harris
 
Agile
AgileAgile
Agile
Komal2525
 
Transferring Software Testing Tools to Practice
Transferring Software Testing Tools to PracticeTransferring Software Testing Tools to Practice
Transferring Software Testing Tools to Practice
Tao Xie
 
TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)
Nacho Cougil
 
Extreme Programming (XP): Revisted
Extreme Programming (XP): RevistedExtreme Programming (XP): Revisted
Extreme Programming (XP): Revisted
Mike Harris
 
Enterprise PHP
Enterprise PHPEnterprise PHP
Enterprise PHP
Mohammad Emran Hasan
 
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
ssusercaf6c1
 
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
Nacho Cougil
 
ICS3211_lecture 9_2022.pdf
ICS3211_lecture 9_2022.pdfICS3211_lecture 9_2022.pdf
ICS3211_lecture 9_2022.pdf
Vanessa Camilleri
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
UserTesting
 
TDD - Seriously, try it! - Bucarest Tech Week
TDD - Seriously, try it! - Bucarest Tech WeekTDD - Seriously, try it! - Bucarest Tech Week
TDD - Seriously, try it! - Bucarest Tech Week
Nacho Cougil
 
UX Research in an Agile World
UX Research in an Agile WorldUX Research in an Agile World
UX Research in an Agile WorldHirajaved10
 
Introduction to Bdd and cucumber
Introduction to Bdd and cucumberIntroduction to Bdd and cucumber
Introduction to Bdd and cucumber
Nibu Baby
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
Software Park Thailand
 
ICS3211 Lecture 9
ICS3211 Lecture 9ICS3211 Lecture 9
ICS3211 Lecture 9
Vanessa Camilleri
 
Open.source.innovation.20070624
Open.source.innovation.20070624Open.source.innovation.20070624
Open.source.innovation.20070624Vu Hung Nguyen
 
Lean Mean & Agile 2009
Lean Mean & Agile 2009Lean Mean & Agile 2009
Lean Mean & Agile 2009
Harold Shinsato
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
UXPA International
 
Agile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for DevelopersAgile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for Developers
Matt Cowell
 

Similar to Dealing with challenges (technical) (20)

Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
It's XP, Stupid
It's XP, StupidIt's XP, Stupid
It's XP, Stupid
 
Agile
AgileAgile
Agile
 
Transferring Software Testing Tools to Practice
Transferring Software Testing Tools to PracticeTransferring Software Testing Tools to Practice
Transferring Software Testing Tools to Practice
 
TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)
 
Extreme Programming (XP): Revisted
Extreme Programming (XP): RevistedExtreme Programming (XP): Revisted
Extreme Programming (XP): Revisted
 
Enterprise PHP
Enterprise PHPEnterprise PHP
Enterprise PHP
 
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
 
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
 
ICS3211_lecture 9_2022.pdf
ICS3211_lecture 9_2022.pdfICS3211_lecture 9_2022.pdf
ICS3211_lecture 9_2022.pdf
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 
TDD - Seriously, try it! - Bucarest Tech Week
TDD - Seriously, try it! - Bucarest Tech WeekTDD - Seriously, try it! - Bucarest Tech Week
TDD - Seriously, try it! - Bucarest Tech Week
 
UX Research in an Agile World
UX Research in an Agile WorldUX Research in an Agile World
UX Research in an Agile World
 
Introduction to Bdd and cucumber
Introduction to Bdd and cucumberIntroduction to Bdd and cucumber
Introduction to Bdd and cucumber
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
ICS3211 Lecture 9
ICS3211 Lecture 9ICS3211 Lecture 9
ICS3211 Lecture 9
 
Open.source.innovation.20070624
Open.source.innovation.20070624Open.source.innovation.20070624
Open.source.innovation.20070624
 
Lean Mean & Agile 2009
Lean Mean & Agile 2009Lean Mean & Agile 2009
Lean Mean & Agile 2009
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
 
Agile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for DevelopersAgile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for Developers
 

More from European Innovation Academy

Fundraising - Angela Lee
Fundraising - Angela LeeFundraising - Angela Lee
Fundraising - Angela Lee
European Innovation Academy
 
EIA Pitch Keynote_Dirk Lehmann.pptx
EIA Pitch Keynote_Dirk Lehmann.pptxEIA Pitch Keynote_Dirk Lehmann.pptx
EIA Pitch Keynote_Dirk Lehmann.pptx
European Innovation Academy
 
Workshop - Crafting a Pitch Deck - Tomas Caeiro.pptx
Workshop - Crafting a Pitch Deck - Tomas Caeiro.pptxWorkshop - Crafting a Pitch Deck - Tomas Caeiro.pptx
Workshop - Crafting a Pitch Deck - Tomas Caeiro.pptx
European Innovation Academy
 
EIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptx
EIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptxEIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptx
EIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptx
European Innovation Academy
 
Business Models - Angela Lee.pptx
Business Models - Angela Lee.pptxBusiness Models - Angela Lee.pptx
Business Models - Angela Lee.pptx
European Innovation Academy
 
Kristi - Sales Keynote 28.07.23
Kristi - Sales Keynote 28.07.23Kristi - Sales Keynote 28.07.23
Kristi - Sales Keynote 28.07.23
European Innovation Academy
 
Zero-budget-marketing_EIA_230723.pptx.pptx
Zero-budget-marketing_EIA_230723.pptx.pptxZero-budget-marketing_EIA_230723.pptx.pptx
Zero-budget-marketing_EIA_230723.pptx.pptx
European Innovation Academy
 
Do's and Don't of Corporate.pdf
Do's and Don't of Corporate.pdfDo's and Don't of Corporate.pdf
Do's and Don't of Corporate.pdf
European Innovation Academy
 
Keynote SEO for StartUps from Kristof Tomasz.pptx
Keynote SEO for StartUps from Kristof Tomasz.pptxKeynote SEO for StartUps from Kristof Tomasz.pptx
Keynote SEO for StartUps from Kristof Tomasz.pptx
European Innovation Academy
 
Landing pages Gilles.pptx
Landing pages Gilles.pptxLanding pages Gilles.pptx
Landing pages Gilles.pptx
European Innovation Academy
 
Neuroscience in marketing.pptx
Neuroscience in marketing.pptxNeuroscience in marketing.pptx
Neuroscience in marketing.pptx
European Innovation Academy
 
26.07_Marketing Tools ( IN AI ERA).pptx.pdf
26.07_Marketing Tools ( IN AI ERA).pptx.pdf26.07_Marketing Tools ( IN AI ERA).pptx.pdf
26.07_Marketing Tools ( IN AI ERA).pptx.pdf
European Innovation Academy
 
What is marketing_EIA.pptx
What is marketing_EIA.pptxWhat is marketing_EIA.pptx
What is marketing_EIA.pptx
European Innovation Academy
 
Growth-mindset-growth-hacking_EIA-Portugal_pptx.pptx
Growth-mindset-growth-hacking_EIA-Portugal_pptx.pptxGrowth-mindset-growth-hacking_EIA-Portugal_pptx.pptx
Growth-mindset-growth-hacking_EIA-Portugal_pptx.pptx
European Innovation Academy
 
PMF_EIA23 by Giles DC
PMF_EIA23 by Giles DCPMF_EIA23 by Giles DC
PMF_EIA23 by Giles DC
European Innovation Academy
 
Show Me the Money_ Unveiling the Secrets of Revenue Models - ZT (1).pptx
Show Me the Money_  Unveiling the Secrets of Revenue Models - ZT (1).pptxShow Me the Money_  Unveiling the Secrets of Revenue Models - ZT (1).pptx
Show Me the Money_ Unveiling the Secrets of Revenue Models - ZT (1).pptx
European Innovation Academy
 
Product-market- fit__Gilles DC_EIA23.pptx
Product-market- fit__Gilles DC_EIA23.pptxProduct-market- fit__Gilles DC_EIA23.pptx
Product-market- fit__Gilles DC_EIA23.pptx
European Innovation Academy
 
"Building a Successful Team" - Jorim
"Building a Successful Team" - Jorim"Building a Successful Team" - Jorim
"Building a Successful Team" - Jorim
European Innovation Academy
 
"FALL in LOVE with the Problem, not the solution" by Anna de Stefano
"FALL in LOVE with the Problem, not the solution" by Anna de Stefano "FALL in LOVE with the Problem, not the solution" by Anna de Stefano
"FALL in LOVE with the Problem, not the solution" by Anna de Stefano
European Innovation Academy
 
Design Thinking Stages - Kaarel Mikkin
Design Thinking Stages - Kaarel Mikkin Design Thinking Stages - Kaarel Mikkin
Design Thinking Stages - Kaarel Mikkin
European Innovation Academy
 

More from European Innovation Academy (20)

Fundraising - Angela Lee
Fundraising - Angela LeeFundraising - Angela Lee
Fundraising - Angela Lee
 
EIA Pitch Keynote_Dirk Lehmann.pptx
EIA Pitch Keynote_Dirk Lehmann.pptxEIA Pitch Keynote_Dirk Lehmann.pptx
EIA Pitch Keynote_Dirk Lehmann.pptx
 
Workshop - Crafting a Pitch Deck - Tomas Caeiro.pptx
Workshop - Crafting a Pitch Deck - Tomas Caeiro.pptxWorkshop - Crafting a Pitch Deck - Tomas Caeiro.pptx
Workshop - Crafting a Pitch Deck - Tomas Caeiro.pptx
 
EIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptx
EIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptxEIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptx
EIA - Startup Financials - Daniel Vila Boa - 2023-07-31.pptx
 
Business Models - Angela Lee.pptx
Business Models - Angela Lee.pptxBusiness Models - Angela Lee.pptx
Business Models - Angela Lee.pptx
 
Kristi - Sales Keynote 28.07.23
Kristi - Sales Keynote 28.07.23Kristi - Sales Keynote 28.07.23
Kristi - Sales Keynote 28.07.23
 
Zero-budget-marketing_EIA_230723.pptx.pptx
Zero-budget-marketing_EIA_230723.pptx.pptxZero-budget-marketing_EIA_230723.pptx.pptx
Zero-budget-marketing_EIA_230723.pptx.pptx
 
Do's and Don't of Corporate.pdf
Do's and Don't of Corporate.pdfDo's and Don't of Corporate.pdf
Do's and Don't of Corporate.pdf
 
Keynote SEO for StartUps from Kristof Tomasz.pptx
Keynote SEO for StartUps from Kristof Tomasz.pptxKeynote SEO for StartUps from Kristof Tomasz.pptx
Keynote SEO for StartUps from Kristof Tomasz.pptx
 
Landing pages Gilles.pptx
Landing pages Gilles.pptxLanding pages Gilles.pptx
Landing pages Gilles.pptx
 
Neuroscience in marketing.pptx
Neuroscience in marketing.pptxNeuroscience in marketing.pptx
Neuroscience in marketing.pptx
 
26.07_Marketing Tools ( IN AI ERA).pptx.pdf
26.07_Marketing Tools ( IN AI ERA).pptx.pdf26.07_Marketing Tools ( IN AI ERA).pptx.pdf
26.07_Marketing Tools ( IN AI ERA).pptx.pdf
 
What is marketing_EIA.pptx
What is marketing_EIA.pptxWhat is marketing_EIA.pptx
What is marketing_EIA.pptx
 
Growth-mindset-growth-hacking_EIA-Portugal_pptx.pptx
Growth-mindset-growth-hacking_EIA-Portugal_pptx.pptxGrowth-mindset-growth-hacking_EIA-Portugal_pptx.pptx
Growth-mindset-growth-hacking_EIA-Portugal_pptx.pptx
 
PMF_EIA23 by Giles DC
PMF_EIA23 by Giles DCPMF_EIA23 by Giles DC
PMF_EIA23 by Giles DC
 
Show Me the Money_ Unveiling the Secrets of Revenue Models - ZT (1).pptx
Show Me the Money_  Unveiling the Secrets of Revenue Models - ZT (1).pptxShow Me the Money_  Unveiling the Secrets of Revenue Models - ZT (1).pptx
Show Me the Money_ Unveiling the Secrets of Revenue Models - ZT (1).pptx
 
Product-market- fit__Gilles DC_EIA23.pptx
Product-market- fit__Gilles DC_EIA23.pptxProduct-market- fit__Gilles DC_EIA23.pptx
Product-market- fit__Gilles DC_EIA23.pptx
 
"Building a Successful Team" - Jorim
"Building a Successful Team" - Jorim"Building a Successful Team" - Jorim
"Building a Successful Team" - Jorim
 
"FALL in LOVE with the Problem, not the solution" by Anna de Stefano
"FALL in LOVE with the Problem, not the solution" by Anna de Stefano "FALL in LOVE with the Problem, not the solution" by Anna de Stefano
"FALL in LOVE with the Problem, not the solution" by Anna de Stefano
 
Design Thinking Stages - Kaarel Mikkin
Design Thinking Stages - Kaarel Mikkin Design Thinking Stages - Kaarel Mikkin
Design Thinking Stages - Kaarel Mikkin
 

Recently uploaded

zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 

Recently uploaded (20)

zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 

Dealing with challenges (technical)

  • 1. Lecture: Dealing with challenges (technical) Chris Douce, 22 July 2013 (14.00 – 14.50)
  • 2.
  • 3.
  • 4. Dealing with the practical issues Photo Sarah G (Creative Commons)
  • 5. Why is software so hard? Photo by Honda news (Creative Commons)
  • 6. Why is software so hard? Photo by Honda news (Creative Commons)
  • 7. Agile principles • Customer satisfaction by rapid delivery of useful software • Welcome changing requirements, even late in development • Working software is delivered frequently (weeks rather than months) • Working software is the principal measure of progress • Sustainable development, able to maintain a constant pace • Close, daily cooperation between business people and developers • Face-to-face conversation is the best form of communication (co-location) • Projects are built around motivated individuals, who should be trusted • Continuous attention to technical excellence and good design • Simplicity —the art of maximizing the amount of work not done—is essential • Self-organizing teams • Regular adaptation to changing circumstances Source: wikipedia
  • 8. Agile and Extreme programming
  • 9. Agile and Extreme programming
  • 10. Agile and Extreme programming
  • 12. Play
  • 13. Play • Tools and development environments • Sample code and software • Prototypes • Similar products • Different products: same vendor, different vendors • Explore the boundaries of the possible • Give yourself some time… It’s okay! • Is fundamentally important…
  • 14. Version control • Manual control • Software support • Integrated with environment
  • 17. Choosing what to implement • Identify the key functions • Decide on what is out of scope (horizontal/vertical prototyping) • Choose how far you’re going to go • Understand what you can do • Understand what you might need help with • Prototypes = expression of idea + skills
  • 18. Software testing • Usability testing • Accessibility testing • Function testing • Module testing • Integration testing • Condition testing • Performance testing • Security testing • Unit testing • Acceptance testing • Test harnesses • Test driven development
  • 19. Software testing • Usability testing • Accessibility testing • Function testing • Module testing • Integration testing • Condition testing • Performance testing • Security testing • Unit testing • Acceptance testing • Test harnesses • Test driven development
  • 20. Software testing function foo() { … } function bar() { … } function bez() { … } function fooBar() { … } function barFoo() { … } … … … function testFoo() { … } function testBar() { … } function testBez() { … } function testFooBar() { … } function testBarFoo() { … } … … … Key: Practicality
  • 21. Chris’s tips • Don’t try to do everything: be realistic • If you think you’re going crazy, take a break: have a walk • Find the time to play, this is finding the time to learn • Find the time to read and study the work of others • Be prepared to have your assumptions challenged • Break hard stuff down into small pieces • Write test code to experiment • Projects extend to the amount of time available: beware! • Listen • Be humble
  • 22. Chris’s anti-tips • Give one person all the coding responsibility • When coding, ignore what your team says • Don’t talk to each other • Ignore the external world; it’s a distraction • Don’t write anything down; forget your assumptions • Solve a coding problem that has already been solved • Make quick decisions • Don’t ask questions • Always be prepared to shout • Assume you can do everything
  • 23. Challenges • Project • People • Technology • Software isn’t about technology; it’s all about people
  • 24. Summary • Agile methods • Play, tools and testing • Revisiting the challenges • Tips • Tomorrow: expanding our horizons
  • 25. Lecture: Dealing with challenges (technical) Chris Douce, 22 July 2013 (14.00 – 14.50)

Editor's Notes

  1. Acknowledgement: miguelavg If things are going wrong
  2. Acknowlegement: Federico Maggi Go for a walk!
  3. How to manage code Has anyone heard of configuration management? Version control? How do we deal with the software systems that we’re dealing with? Also how to create code – looking at examples
  4. Picture of a factory
  5. Waterfall.
  6. Wikipedia
  7. This is an approach to make things easier People having meetings standing up, pair programming, sharing through a whiteboard. (Photo of people standing up)
  8. Acknowledgement: Imbertti
  9. Acknowledgement: Imbertti
  10. Acknowledgement: Canadian government Takes time. Is an art as well as a science . Raw materials is the code… Tools. But the tools keep changing .
  11. Acknowledgement: Wikipedia I understand that you might have already had some exposure to working with Lego?
  12. But harder to justify to management! Examples – looking at code – about how to use libraries…
  13. Acknowledgements: Wikipedia Manual control – example of making a slip, accidentally deleting a working version.
  14. Acknowledgements: Wikipedia From the subversion page. Tags can be related to version numbers
  15. Creative commons acknowledgement: doegox Picture of a spice rack. Ingredients go into a system. Choose the wrong kind of spice, it can ruin a meal.
  16. Cognitive psychologists have this term called metacognition – which is our thinking about our thinking. If you don’t think you’re understanding something, go back and play. Process of creating a prototype represents the creation of the skills.
  17. I’m going to get quite excited at this point… and you’re all going to have to forgive me – but there is a serious point… Accessibility testing: legislation Test harness Incrementally build up… It’s okay to write test code User testing is going to be covered in the next presentation Disconnect the engine of the software from the interface – what is it that you’re testing? Are you testing usability… Keeping of bits; complexity lies within the connections.
  18. xUnit testing, used in Agile teams
  19. Indulge me at this point – hard won experience.
  20. Recapping of some of the challenges, and connecting back the challenges that were presented or explored during the first workshop. Example from Vint Cerf talking about the earlier days. NPL Scratch the surface of a technology and you always find something about people underneath. We’re considering users and developers.
  21. Recap of the main issues.