SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
WHERE DO WE GO WRONG WITH NON FUNCTIONAL REQUIREMENTS? 
12thNovember 
v0.4 
http://www.practicalperformanceanalyst.com
–Things to note 
–Examples of Non Functional Requirements 
–Why are Non Functional Requirements important 
–What does experience tell us 
–Where traditionally have we gone wrong with Non Functional Requirements 
–Who is best placed to determine relevant Non Functional Requirements 
–What can you do to prevent things going pear shaped later in the SDLC 
–Q&A 
–Thanks for attending the session 
AGENDA
–Practical Performance Analyst is completely a volunteer driven effort. We welcome your contributions and donations which will help us support the on-going initiatives at Practical Performance Analyst. 
–We welcome opposing points of view. We request that you treat everyone on the call with respect and respect their points of view. Please take any personal discussions offline. 
–Please let us know if you are interested in helping out at Practical Performance Analyst. We’ve got a few open positions and can always do with some help. 
–We are always looking for speakers, if you are interested in sharing knowledge/case studies and becoming a presented, please let us know. 
–Please put yourself on mute through the session. Please feel free to ask relevant questions. If the presenter is busy answering a question please write a short note and give the presenter an opportunity to respond. 
THINGS TO NOTE
–Concurrency -The system should be able to sustain 1000 concurrent users at peak hours. Peak hours are defined as 0800-1000 and from 1600-1800. 
–Throughput -The system should be able to sustain 100 TPS at peak. Peak hours are defined as 0800- 1000 and from 1600-1800. 
–Availability -The system should be designed to be available 99.999% of the time. The system will be designed for 99.999% availability. 
–Utilization –The system should be designed such that system utilization across any of the tiers does not cross 60% at peak workload. Peak workload includes Concurrency, Throughput and Availability. 
EXAMPLES OF NON FUNCTIONAL REQUIREMENTS
Non Functional Requirements are essential to – 
–To determine the amount of Reliability, Availability, Performance, Security, Maintainability, etc. that needs to be built into the Application Architecture 
–To determine what business is ready to spend on Reliability, Availability, Performance, Security, Maintainability, etc. 
–To determine the resourcing required to meet the various Non Functional Requirements across the SDLC 
–To determine the tools and processes required to meet the various Non Functional Requirements across the SDLC 
–To be able to translate Non Functional Requirements to targets for Developers across the project 
–To be able to articulate performance and availability metrics that need to be validated during Performance /Stress Testing 
–To ensure that Business, IT, PMO, Developers, Architects, etc. are speaking the same language when it comes to performance of the platform being designed 
WHY ARE NON FUNCTIONAL REQUIREMENTS IMPORTANT
–Most project teams lack the ability to articulate expected system performance, reliability and availability since the program as a whole lacks documented Non Functional Requirements 
–Most Architects, Development and Test Leads we work with are unable to articulate what the program expects from a Non Functional standpoint 
–Ask the Architects, Development Leads, Developers and Testers what their definition of Performance, Reliability, Availability is and you’ll get four separate definitions 
–Lack of Non Functional Requirements leads to situations where Infrastructure teams find it challenging to determine the right amount of infrastructure capacity required for test/dev/prod environments 
–Lack of Non Functional Requirements leads to situations where Performance Testing teams struggle with articulating relevant test cases due to lack of agreed Non Functional Requirements 
–Lack of Non Functional Requirements leads to situations where IT is unable to agree with business on the exact go live criteria 
WHAT DOES EXPERIENCE TELL US
–Lack of breadth of Non Functional Requirements across the various business critical components 
–Lack of depth of Non Functional Requirements across the various business critical components 
–Lack of relevance of Non Functional Requirements to performance metrics that can be measured during testing 
–Lack of correlation of Non Functional Requirements to existing business workload metrics (for an application that exists in production) 
–Non Functional Requirements documented by the Performance Testing team when the application is nearing go live 
–Non Functional Requirements determined by the Performance Engineers in isolation from business & IT 
WHERE TRADITIONALLY HAVE WE GONE WRONG WITH NFR’S
Our view is that - 
–Performance Architects need to be in charge of the overall Performance Engineering strategy for a program 
–Performance Architects or Performance Leads need to work closely with the Architects, Development Leads, Test Leads, Business and IT on defining the overall Non Functional Requirements 
–Performance Architects need to be focused on the detail but also have visibility of the bigger picture. Non Functional Requirements require both depth and breadth across relevant system components 
–Performance Architects need to work closely with their counterparts across the SDLC 
•Architects –Understand system design and obtain input on Overall NFR’s and Tier wise NFR’s 
•Development Leads –Work with the Development Leads and translate Tier Wise NFR’s to module wise NFR’s 
•Test Leads –Work with Test Leads on translating NFR’s to relevant Performance Metrics that can be measured, analysed and compared 
•Support Leads –Work with Support Leads in understanding current system issues. Obtain workload details from existing system and design Workload models accordingly. 
•Business & IT –Work with Business & IT in shaping the relevant details for all NFR’s 
WHO IS BEST PLACED TO DETERMINE NON FUNCTIONAL REQUIREMENTS
–Define Non Functional Requirements Early on 
–Work with Business, IT and other relevant stake holders on nailing down overall program NFR’s 
–Translate NFR’s to relevant metrics for developers and testing teams 
–Lay down processes and metrics to track performance metrics across Development. Work with the Development teams on implementing the processes and tracking the relevant metrics. 
–Lay down processes and metrics to track performance metrics across Testing. Work with the Testing teams on implementing the processes and tracking the relevant metrics. 
–Design the Performance Engineering approach to include relevant Resources, Tools and Processes that help the program achieve the various goals from a Non Functional standpoint 
–Get Business, IT, Architects, Development leads and other relevant stakeholders to sign up to the relevant Non Functional Requirements 
WHAT CAN YOU DO TO PREVENT THINGS FROM GOING PEAR SHAPED
–We at Practical Performance Analyst would like to thank you for attending todays webcast 
–We value your input. Please take a minute and send us an email with your thoughts, input and feedback at trevor@practicalperformanceanalyst.com. 
–Please send us a list of topics that you would like us to include as part of our future webcasts 
–Practical Performance Analyst is completely a volunteer driven effort. We welcome your contributions and donations. 
–Please let us know if you are interested in helping out at Practical Performance Analyst. We’ve got a few open positions and can always do with some help. 
–Come work with us and help build a stronger global community of networked Performance Engineers 
THANKS FOR ATTENDING THE SESSION
THANK YOUTREVOR@PRACTICALPERFORMANCEANALYST.COM

Contenu connexe

Plus de Trevor Warren

Engineering Systems For The Cloud
Engineering Systems For The CloudEngineering Systems For The Cloud
Engineering Systems For The CloudTrevor Warren
 
Primer on enterprise_performance_maturity_v0.2
Primer on enterprise_performance_maturity_v0.2Primer on enterprise_performance_maturity_v0.2
Primer on enterprise_performance_maturity_v0.2Trevor Warren
 
Primer on application_performance_testing_v0.2
Primer on application_performance_testing_v0.2Primer on application_performance_testing_v0.2
Primer on application_performance_testing_v0.2Trevor Warren
 
Primer on workload_modelling_v0.2
Primer on workload_modelling_v0.2Primer on workload_modelling_v0.2
Primer on workload_modelling_v0.2Trevor Warren
 
Primer on application_performance_modelling_v0.1
Primer on application_performance_modelling_v0.1Primer on application_performance_modelling_v0.1
Primer on application_performance_modelling_v0.1Trevor Warren
 
Primer on performance_requirements_gathering_v0.3
Primer on performance_requirements_gathering_v0.3Primer on performance_requirements_gathering_v0.3
Primer on performance_requirements_gathering_v0.3Trevor Warren
 
What is performance_engineering_v0.2
What is performance_engineering_v0.2What is performance_engineering_v0.2
What is performance_engineering_v0.2Trevor Warren
 
What is our_mission_v0.2
What is our_mission_v0.2What is our_mission_v0.2
What is our_mission_v0.2Trevor Warren
 
Proactive performance management_what_is_all_about_v0.3
Proactive performance management_what_is_all_about_v0.3Proactive performance management_what_is_all_about_v0.3
Proactive performance management_what_is_all_about_v0.3Trevor Warren
 
Mistakes we make_and_howto_avoid_them_v0.12
Mistakes we make_and_howto_avoid_them_v0.12Mistakes we make_and_howto_avoid_them_v0.12
Mistakes we make_and_howto_avoid_them_v0.12Trevor Warren
 
CMG Australia Industry Day 2014
CMG Australia Industry Day 2014CMG Australia Industry Day 2014
CMG Australia Industry Day 2014Trevor Warren
 

Plus de Trevor Warren (11)

Engineering Systems For The Cloud
Engineering Systems For The CloudEngineering Systems For The Cloud
Engineering Systems For The Cloud
 
Primer on enterprise_performance_maturity_v0.2
Primer on enterprise_performance_maturity_v0.2Primer on enterprise_performance_maturity_v0.2
Primer on enterprise_performance_maturity_v0.2
 
Primer on application_performance_testing_v0.2
Primer on application_performance_testing_v0.2Primer on application_performance_testing_v0.2
Primer on application_performance_testing_v0.2
 
Primer on workload_modelling_v0.2
Primer on workload_modelling_v0.2Primer on workload_modelling_v0.2
Primer on workload_modelling_v0.2
 
Primer on application_performance_modelling_v0.1
Primer on application_performance_modelling_v0.1Primer on application_performance_modelling_v0.1
Primer on application_performance_modelling_v0.1
 
Primer on performance_requirements_gathering_v0.3
Primer on performance_requirements_gathering_v0.3Primer on performance_requirements_gathering_v0.3
Primer on performance_requirements_gathering_v0.3
 
What is performance_engineering_v0.2
What is performance_engineering_v0.2What is performance_engineering_v0.2
What is performance_engineering_v0.2
 
What is our_mission_v0.2
What is our_mission_v0.2What is our_mission_v0.2
What is our_mission_v0.2
 
Proactive performance management_what_is_all_about_v0.3
Proactive performance management_what_is_all_about_v0.3Proactive performance management_what_is_all_about_v0.3
Proactive performance management_what_is_all_about_v0.3
 
Mistakes we make_and_howto_avoid_them_v0.12
Mistakes we make_and_howto_avoid_them_v0.12Mistakes we make_and_howto_avoid_them_v0.12
Mistakes we make_and_howto_avoid_them_v0.12
 
CMG Australia Industry Day 2014
CMG Australia Industry Day 2014CMG Australia Industry Day 2014
CMG Australia Industry Day 2014
 

Dernier

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 

Dernier (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 

Where do we_go_wrong_with_non_functional_requirements_v0.4

  • 1. WHERE DO WE GO WRONG WITH NON FUNCTIONAL REQUIREMENTS? 12thNovember v0.4 http://www.practicalperformanceanalyst.com
  • 2. –Things to note –Examples of Non Functional Requirements –Why are Non Functional Requirements important –What does experience tell us –Where traditionally have we gone wrong with Non Functional Requirements –Who is best placed to determine relevant Non Functional Requirements –What can you do to prevent things going pear shaped later in the SDLC –Q&A –Thanks for attending the session AGENDA
  • 3. –Practical Performance Analyst is completely a volunteer driven effort. We welcome your contributions and donations which will help us support the on-going initiatives at Practical Performance Analyst. –We welcome opposing points of view. We request that you treat everyone on the call with respect and respect their points of view. Please take any personal discussions offline. –Please let us know if you are interested in helping out at Practical Performance Analyst. We’ve got a few open positions and can always do with some help. –We are always looking for speakers, if you are interested in sharing knowledge/case studies and becoming a presented, please let us know. –Please put yourself on mute through the session. Please feel free to ask relevant questions. If the presenter is busy answering a question please write a short note and give the presenter an opportunity to respond. THINGS TO NOTE
  • 4. –Concurrency -The system should be able to sustain 1000 concurrent users at peak hours. Peak hours are defined as 0800-1000 and from 1600-1800. –Throughput -The system should be able to sustain 100 TPS at peak. Peak hours are defined as 0800- 1000 and from 1600-1800. –Availability -The system should be designed to be available 99.999% of the time. The system will be designed for 99.999% availability. –Utilization –The system should be designed such that system utilization across any of the tiers does not cross 60% at peak workload. Peak workload includes Concurrency, Throughput and Availability. EXAMPLES OF NON FUNCTIONAL REQUIREMENTS
  • 5. Non Functional Requirements are essential to – –To determine the amount of Reliability, Availability, Performance, Security, Maintainability, etc. that needs to be built into the Application Architecture –To determine what business is ready to spend on Reliability, Availability, Performance, Security, Maintainability, etc. –To determine the resourcing required to meet the various Non Functional Requirements across the SDLC –To determine the tools and processes required to meet the various Non Functional Requirements across the SDLC –To be able to translate Non Functional Requirements to targets for Developers across the project –To be able to articulate performance and availability metrics that need to be validated during Performance /Stress Testing –To ensure that Business, IT, PMO, Developers, Architects, etc. are speaking the same language when it comes to performance of the platform being designed WHY ARE NON FUNCTIONAL REQUIREMENTS IMPORTANT
  • 6. –Most project teams lack the ability to articulate expected system performance, reliability and availability since the program as a whole lacks documented Non Functional Requirements –Most Architects, Development and Test Leads we work with are unable to articulate what the program expects from a Non Functional standpoint –Ask the Architects, Development Leads, Developers and Testers what their definition of Performance, Reliability, Availability is and you’ll get four separate definitions –Lack of Non Functional Requirements leads to situations where Infrastructure teams find it challenging to determine the right amount of infrastructure capacity required for test/dev/prod environments –Lack of Non Functional Requirements leads to situations where Performance Testing teams struggle with articulating relevant test cases due to lack of agreed Non Functional Requirements –Lack of Non Functional Requirements leads to situations where IT is unable to agree with business on the exact go live criteria WHAT DOES EXPERIENCE TELL US
  • 7. –Lack of breadth of Non Functional Requirements across the various business critical components –Lack of depth of Non Functional Requirements across the various business critical components –Lack of relevance of Non Functional Requirements to performance metrics that can be measured during testing –Lack of correlation of Non Functional Requirements to existing business workload metrics (for an application that exists in production) –Non Functional Requirements documented by the Performance Testing team when the application is nearing go live –Non Functional Requirements determined by the Performance Engineers in isolation from business & IT WHERE TRADITIONALLY HAVE WE GONE WRONG WITH NFR’S
  • 8. Our view is that - –Performance Architects need to be in charge of the overall Performance Engineering strategy for a program –Performance Architects or Performance Leads need to work closely with the Architects, Development Leads, Test Leads, Business and IT on defining the overall Non Functional Requirements –Performance Architects need to be focused on the detail but also have visibility of the bigger picture. Non Functional Requirements require both depth and breadth across relevant system components –Performance Architects need to work closely with their counterparts across the SDLC •Architects –Understand system design and obtain input on Overall NFR’s and Tier wise NFR’s •Development Leads –Work with the Development Leads and translate Tier Wise NFR’s to module wise NFR’s •Test Leads –Work with Test Leads on translating NFR’s to relevant Performance Metrics that can be measured, analysed and compared •Support Leads –Work with Support Leads in understanding current system issues. Obtain workload details from existing system and design Workload models accordingly. •Business & IT –Work with Business & IT in shaping the relevant details for all NFR’s WHO IS BEST PLACED TO DETERMINE NON FUNCTIONAL REQUIREMENTS
  • 9. –Define Non Functional Requirements Early on –Work with Business, IT and other relevant stake holders on nailing down overall program NFR’s –Translate NFR’s to relevant metrics for developers and testing teams –Lay down processes and metrics to track performance metrics across Development. Work with the Development teams on implementing the processes and tracking the relevant metrics. –Lay down processes and metrics to track performance metrics across Testing. Work with the Testing teams on implementing the processes and tracking the relevant metrics. –Design the Performance Engineering approach to include relevant Resources, Tools and Processes that help the program achieve the various goals from a Non Functional standpoint –Get Business, IT, Architects, Development leads and other relevant stakeholders to sign up to the relevant Non Functional Requirements WHAT CAN YOU DO TO PREVENT THINGS FROM GOING PEAR SHAPED
  • 10. –We at Practical Performance Analyst would like to thank you for attending todays webcast –We value your input. Please take a minute and send us an email with your thoughts, input and feedback at trevor@practicalperformanceanalyst.com. –Please send us a list of topics that you would like us to include as part of our future webcasts –Practical Performance Analyst is completely a volunteer driven effort. We welcome your contributions and donations. –Please let us know if you are interested in helping out at Practical Performance Analyst. We’ve got a few open positions and can always do with some help. –Come work with us and help build a stronger global community of networked Performance Engineers THANKS FOR ATTENDING THE SESSION