SlideShare a Scribd company logo
1 of 42
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
S E C R E T S A U C E F O R S U S T A I N A B L E T E S T
A U T O M A T I O N F R A M E W O R K
Hina Sharma
Mamatha Venkatesh
Global Testing Retreat
#ATAGTR2023
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
A G E N D A
• What is Sustainability?
• How do we measure sustainability?
• Importance for green automation
framework
• Challenges with unsustainable
automation framework
• Analysis of test automation
framework
• Calculating carbon emissions
• Efficient coding practices
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
W H AT I S S U S TA I N A B I L I T Y ?
• Introduce Sustainability
• why Sustainability now?
• Which areas get impacted
due to unsustainable
environment
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
IBM Sustainability Software / © 2022 IBM Corporation
of CEOs see significant
demand from investors
for greater transparency
on sustainability
60%
of CEOs are confident
they'll achieve
sustainability goals
64%
of CEO expect
sustainability investments
to improve business
results in the next five
years
80%
4
S U S TA I N A B I L I T Y I S N ’ T J U S T
A B O U T C O M P L I A N C E , I T ’ S A N
O P P O R T U N I T Y T O I N N O VAT E , M A K E
A D I F F E R E N C E , A N D G R O W
Companies are increasingly aligning their efforts
with the UN’s Sustainable Development Goals (SDGs)
SOCIAL GOVERNANCE
ENVIRONMENTAL
E
Environmental
How a company performs
as a steward of nature
S
Social
How it manages relationships
with employees, suppliers,
customers, and the
communities where it operates
G
Governance
How a company is managed
by executive leadership
• Climate change efforts
• Deforestation
• Energy efficiency
• Waste management
• GHG emissions
• Water consumption
• Gender & diversity policies
• Human rights
• Exploitative practices
• Labor standards
• Data security
• Child labor
• Forced labor
• Board composition
• Executive compensation
• Bribery & corruption policies
• Discrimination & harassment
• Financial & accounting
transparency
• Employee relations & engagement:
• Worker health & safety
• Benefits & pay
• Workplace conditions
• Data privacy
• Customer satisfaction
• Community relations
• Business ethics
• Diversity & inclusivity
• Corporate citizenship
• Disaster response
• Stakeholder engagement
• Pollution
• Raw material sourcing
• Biodiversity practices
• Animal welfare
• Natural resource conservation
20. Dezember 2023, © 2022 IBM Corporation
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
Why
Now
?
Environmental
challenges
Create business risks
across the enterprise
Regulatory
Rising pressure to meet
evolving ESG goals and
solve social problems
Waste & emissions
20% of every dollar spent in manufacturing is wasted.
80% emissions coming from supply chain
7
Business performance
Strong performance on ESG issues
can improve top-line growth
Economic impact
$8T 2030. The cost of
climate policy for the
market to absorb
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
S T E P S T O W A R D S D E C A R B O N I Z AT I O N ! !
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
I T C A N R E D U C E E N E R G Y A N D
E N V I R O N M E N T A L I M P A C T B Y
O P T I M I Z I N G D A T A C E N T E R
A N D P U B L I C C L O U D
R E S O U R C E S .
9
20%
On-prem data centers
typically operate at
20-40% utilization.2
50%
Cloud users are
typically
overprovisioned by
30—50%.2
70%
Electricity accounts for as much as 70% of total data center
operating costs. 1
With rising energy costs, organizations are focused on
reducing energy usage.
Sustainability in an IT
operations context
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
IT Transformation: Taking steps to reduce the environmental
Carbon Emission on the platform
f(# of servers, total energy required to power
server, carbon intensity of energy sources)
fewer servers lesser power
Compute Storage
Design Principles , Green
Coding , Testing
Carbon
Emission of
the
workloads
Network
Sustainability
of
the
platform
Sustainability
of
the
workloads
Apply Green
Coding/testing principles
to Applications
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
G lobal Testing Retreat
#ATAGTR2023
GREEN CODING
Green coding is a coding
practice that aims to solve a
problem, while taking into
account the goal of reducing
energy consumption.
It’s a way of writing the code
that considers the energy
consumption and attempts to
reduce the same through
optimizing the resource
demand on physical servers &
systems.
Compute Network Storage
• Choice of programming language
• Language best practices
• Choice of algorithm
• Architecture Principles
• Design Patterns for Saving Energy
• Tools
• Green software engineering
principles
• Best practices
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
Automation
Framework
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
A U T O M AT I O N
E X E C U T I O N
Framework
Layer
Automation Test Suite
Get
Environmen
t
Connec
t to test
suite
Common
libraries
Reporting Lab
Default
Data
json
AUT
Base
Class
Test
data
json
Constant
s and
urls
Automati
on Test
Scripts
Initializ
e Class
Get
executio
n data
Us
er
User
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
C H A L L E N G E S W I T H U N - S U S T A I N A B L E F R A M E W O R K
Unsustainable Code
Unsustainable code refers to software that is inefficient, resource-intensive, or
poorly optimized, leading to negative environmental impacts.
Automation infrastructure or set of tools or code that is inefficient, difficult to
maintain, or fails to adapt to changing requirements.
Unsustainable Automation Framework
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
G R E E N A U T O M AT I O N F R A M E W O R K
A "green automation framework" refers to an environmentally sustainable and
efficient automation framework used in software development and testing.
A green automation framework helps
- write energy efficient code
- reduces resource usage
- write maintainable code
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
A N A LY S I S O F A T E S T F R A M E W O R K
We checked an automation framework for :
• Code sustainability
• Energy consumption
• Where we stand w.r.t the carbon emissions
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
C A R B O N E M I S S I O N S – A L L A L O N G
T H E W AY …
AUT DataCenter Database
Automation
Code
Storage
Compute
Nodes
Peripherals
CO2 CO2 CO2
CO2
CO2
CO2
CO2
Local Environment Product/Data Center Environment
CO2
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
• To calculate the energy consumption by Automation code, we have used
Python packages
CodeCarbon
• Installation:
pip install codecarbon
CO₂=Power_consumption(kilowatt-hours)*Carbon_Intensity(kg of CO₂/kilowatt-
hour)
C A L C U L AT I N G E N E R G Y
E M I S S I O N S ?
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
C A L C U L AT I N G C A R B O N E M I S S I O N S
• Carbon Footprint
• Energy Consumption / Power Consumption (kilowatt-hours)
• Carbon Intensity(kg of CO₂/kilowatt-hour)
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N O U T P U T
The below out is generated on running the code using
codecarbon
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
Add CodeCarbon statements to the existing code:
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
C O D E E X P E R I M E N T
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
from codecarbon import OfflineEmissionsTracker
tracker = OfflineEmissionsTracker(country_iso_code="CAN")
import requests
import time
tracker = OfflineEmissionsTracker(country_iso_code="CAN")
tracker.start()
def fetch_user_data(user_id):
# Simulate making an API call to JSONPlaceholder (replace with your actual API endpoint)
api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}"
response = requests.get(api_endpoint)
time.sleep(1) # Simulate some processing time
return response.json()
# List of user IDs to fetch
user_ids = [1, 2, 3]
# Repeat the API calls in a loop for 10,000 times
for _ in range(10000):
for user_id in user_ids:
user_data = fetch_user_data(user_id)
print(f"User data for user ID {user_id}: {user_data}")
# Make API calls using a loop
for user_id in user_ids:
user_data = fetch_user_data(user_id)
print(f"User data for user ID {user_id}: {user_data}")
tracker.stop()
L O O P S I N T H E C O D E :
Print user data for 3 ids using API calls
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N D ATA
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
import aiohttp
import asyncio
import time
async def fetch_user_data(session, user_id):
# Simulate making an API call to JSONPlaceholder (replace with your actual API endpoint)
api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}"
async with session.get(api_endpoint) as response:
return await response.json()
async def main():
user_ids = [1, 2, 3]
api_calls = 10000
async with aiohttp.ClientSession() as session:
tasks = [fetch_user_data(session, user_id) for _ in range(api_calls) for user_id in user_ids]
user_data_list = await asyncio.gather(*tasks)
# Print or process the collected user data as needed
for user_data in user_data_list:
print(f"User data: {user_data}")
start_time = time.time()
asyncio.run(main())
end_time = time.time()
print(f"Total execution time: {end_time - start_time} seconds")
R E D U N D A N T A P I C A L L S I N C O D E :
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N D ATA
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
O P T I M I Z E D A P I C A L L S
import requests
import time
from codecarbon import OfflineEmissionsTracker
tracker = OfflineEmissionsTracker(country_iso_code="CAN")
tracker.start()
def fetch_user_data(user_id):
api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}"
response = requests.get(api_endpoint)
time.sleep(1) # Simulate some processing time
return response.json()
# Make unnecessary API calls in a loop for different user IDs
for user_id in range(1, 11):
user_data = fetch_user_data(user_id)
print(f"User data for user ID {user_id}: {user_data}")
tracker.stop()
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N D ATA
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
import requests
import time
from codecarbon import OfflineEmissionsTracker
tracker = OfflineEmissionsTracker(country_iso_code="CAN")
tracker.start()
def fetch_user_data(user_id):
api_endpoint =
f"https://jsonplaceholder.typicode.com/users/{user_id}"
response = requests.get(api_endpoint)
time.sleep(1) # Simulate some processing time
return response.json()
# Keep track of fetched user IDs to avoid redundant API calls
fetched_user_ids = set()
# Make API calls only for unique user IDs
for user_id in range(1, 11):
if user_id not in fetched_user_ids:
user_data = fetch_user_data(user_id)
print(f"User data for user ID {user_id}: {user_data}")
fetched_user_ids.add(user_id)
tracker.stop()
U N U S E D O B J E C T S I N T H E C O D E
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N D ATA
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
U N U S E D
O B J E C T
S
from codecarbon import OfflineEmissionsTracker
tracker = OfflineEmissionsTracker(country_iso_code="CAN")
tracker.start()
import random
class ResourceIntensiveObject:
def __init__(self, identifier):
self.identifier = identifier
# Simulate resource-intensive initialization
self.data = [random.random() for _ in range(10**6)] # A list of 1 million random
numbers
def perform_action(self):
# Simulate some action on the object
return sum(self.data)
# Create a list of 5000 ResourceIntensiveObject instances
objects_list = [ResourceIntensiveObject(i) for i in range(5000)]
# Simulate some operations that only use a small subset of the created objects
used_objects = [obj for obj in objects_list if obj.identifier % 100 == 0]
# Perform actions on the used objects
for obj in used_objects:
result = obj.perform_action()
print(f"Action performed on object with identifier {obj.identifier}. Result: {result}")
tracker.stop()
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N D ATA
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
import random
from codecarbon import OfflineEmissionsTracker
tracker = OfflineEmissionsTracker(country_iso_code="CAN")
tracker.start()
class ResourceIntensiveObject:
def __init__(self, identifier):
self.identifier = identifier
# Simulate resource-intensive initialization
self.data = [random.random() for _ in range(10**6)] # A list of 1 million random numbers
def perform_action(self):
# Simulate some action on the object
return sum(self.data)
# Create a list of 5000 ResourceIntensiveObject instances
objects_list = [ResourceIntensiveObject(i) for i in range(5000)]
# Simulate some operations that only use a small subset of the created objects
used_objects = [obj for obj in objects_list if obj.identifier % 100 == 0]
# Perform actions on the used objects
for obj in used_objects:
result = obj.perform_action()
print(f"Action performed on object with identifier {obj.identifier}. Result: {result}")
tracker.stop()
O P T I M I Z E D
C O D E W I T H
R E L E VA N T
O B J E C T S
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
E N E R G Y C O N S U M P T I O N D ATA
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
O B S E R VAT I O N S
Code Inefficient code –
Energy
consumption
Optimized code -
Energy
consumption
% decrease
after
optimization
Loops in the
code
0.002838 kwh 0.000735 kwh - 74.18%
API Calls 0.000082 kwh 0.000077 kwh - 6.09 %
Unused
objects
0.001098 kwh 0.00946 kwh - 13.8 %
- Energy consumption decreased by significant amount after
optimizing the code.
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
• Using inefficient algorithms and loops
• Creating unnecessary objects
• Not using caching
• Not using compression
• Not optimizing the use of hardware resources
C O D I N G M A L P R A C T I C E S
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
A C C E P TA B L E C A R B O N E M I S S I O N S
0 emissions is ideal!
- There are no standards for software applications. The carbon emissions are calculated
based on overall end to end execution.
- Optimize your code to get the best possible efficiency
What you choose to measure will impact what you will optimise, and because of the
assumptions that need to be made when summarising, multiple metrics are better than one.
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
O U R A N A LY S I S
• Multiple hits to the server
• Multiple connections to the database to fetch the queries
• Lower polling times to fetch the status of deployments
• Deprecated methods still being used
Below were few reasons we have analyzed to as the reasons for high carbon
emissions
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
Design phase
Review phase
Execution phase
• - Defining requirements
• - Designing architecture
• - Planning for framework
• - Test suite/case planning
• - Review from energy consumption
perspective
• - Review from execution time
perspective
• - Review from resource perspective
• - Execution of code with energy
consumption in mind
• - Improve code for optimization
W H E R E D O E S I T S TA R T … .
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
R E D U C T I O N O P P O R T U N I T I E S
In addition to software maintenance, few other things that you can do to make your
automation framework more energy sustainable and green:
• The right coding language : If possible, choose for the greenest
language for coding your framework.
• Optimum use of resources: Ensure you are reserving/using what you need.
includes your virtual machines, compute nodes etc.
• Code optimization : Review your code in regular intervals. Find the culprits
loops, multiple hits to server, unused objects and keep cleaning it.
• Shift Left : Bugs cost heavily. The more you shift left, the less rounds of execution
thereby contribution to a greener environment.
• Cloud computing: Cloud computing can be a good way to reduce the energy
consumption of your automation framework. This is because cloud computing
providers typically use more energy-efficient hardware and software than on-
premises data centers.
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
Source: https://thenewstack.io
Normalized Global Results for Energy,
Time and Memory
E N E R G Y E F F I C I E N C Y O F P R O G R A M I N G
L A N G U A G E S
G lobal Testing Retreat
#ATAGTR2023
2, 3 & 8, 9 December 2023
Q&A

More Related Content

Similar to #Interactive Session by Hina Sharma and Mamatha Venkatesh, "Secret Sauce for Sustainable Test Automation Framework" at #ATAGTR2023.

Washington DC Case Study
Washington DC Case StudyWashington DC Case Study
Washington DC Case StudyMoiz Kapadia
 
apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan
apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan
apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan apidays
 
Shipment Time Prediction for Maritime Industry using Machine Learning
Shipment Time Prediction for Maritime Industry using Machine LearningShipment Time Prediction for Maritime Industry using Machine Learning
Shipment Time Prediction for Maritime Industry using Machine LearningIRJET Journal
 
Blockchain & Cloud-based, Digital Object Identifier System for better Environ...
Blockchain & Cloud-based, Digital Object Identifier System for better Environ...Blockchain & Cloud-based, Digital Object Identifier System for better Environ...
Blockchain & Cloud-based, Digital Object Identifier System for better Environ...IRJET Journal
 
Improve sustainability through energy insights - Infographic
Improve sustainability through energy insights - InfographicImprove sustainability through energy insights - Infographic
Improve sustainability through energy insights - InfographicPrincipled Technologies
 
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
#Interactive Session by Aniket Diwakar Kadukar and  Padimiti Vaidik Eswar Dat...#Interactive Session by Aniket Diwakar Kadukar and  Padimiti Vaidik Eswar Dat...
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...Agile Testing Alliance
 
Weather and Climate Data: Not Just for Meteorologists
Weather and Climate Data: Not Just for MeteorologistsWeather and Climate Data: Not Just for Meteorologists
Weather and Climate Data: Not Just for MeteorologistsMargriet Groenendijk
 
Green cloud computing
Green cloud computingGreen cloud computing
Green cloud computingShreyas Khare
 
Democratization of NOSQL Document-Database over Relational Database Comparati...
Democratization of NOSQL Document-Database over Relational Database Comparati...Democratization of NOSQL Document-Database over Relational Database Comparati...
Democratization of NOSQL Document-Database over Relational Database Comparati...IRJET Journal
 
Digital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the Tank
Digital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the TankDigital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the Tank
Digital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the TankIRJET Journal
 
Actionable Carbon Tracking and Analysis with the Neo4j Graph Data Platform
Actionable Carbon Tracking and Analysis with the Neo4j Graph Data PlatformActionable Carbon Tracking and Analysis with the Neo4j Graph Data Platform
Actionable Carbon Tracking and Analysis with the Neo4j Graph Data PlatformNeo4j
 
Impact of Window Energy Efficiency and How to Make Smart Choices
Impact of Window Energy Efficiency and How to Make Smart ChoicesImpact of Window Energy Efficiency and How to Make Smart Choices
Impact of Window Energy Efficiency and How to Make Smart ChoicesCenter for Energy and Environment
 
Green Computing for Internet of Things
Green Computing for Internet of ThingsGreen Computing for Internet of Things
Green Computing for Internet of ThingsIRJET Journal
 
Industry4.0 Oil & Gas - Exploration & Production / Upstream
Industry4.0 Oil & Gas - Exploration & Production / UpstreamIndustry4.0 Oil & Gas - Exploration & Production / Upstream
Industry4.0 Oil & Gas - Exploration & Production / UpstreamDrew Sparrow
 
Security and Trust in an Industrial Grid Project
Security and Trust in an Industrial Grid ProjectSecurity and Trust in an Industrial Grid Project
Security and Trust in an Industrial Grid ProjectAndreas Schreiber
 
5th International Conference : Angela Druckman
5th International Conference : Angela Druckman5th International Conference : Angela Druckman
5th International Conference : Angela Druckmanicarb
 
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Boris Adryan
 
Green indexes used in CAST to measure the energy consumption in code
Green indexes used in CAST to measure the energy consumption in codeGreen indexes used in CAST to measure the energy consumption in code
Green indexes used in CAST to measure the energy consumption in codeCAST
 

Similar to #Interactive Session by Hina Sharma and Mamatha Venkatesh, "Secret Sauce for Sustainable Test Automation Framework" at #ATAGTR2023. (20)

Washington DC Case Study
Washington DC Case StudyWashington DC Case Study
Washington DC Case Study
 
apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan
apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan
apidays Paris 2022 - The journey of Generali, Alexandre Chretien, Astrakhan
 
GE’s Industrial Data Lake Platform
GE’s Industrial Data Lake PlatformGE’s Industrial Data Lake Platform
GE’s Industrial Data Lake Platform
 
Shipment Time Prediction for Maritime Industry using Machine Learning
Shipment Time Prediction for Maritime Industry using Machine LearningShipment Time Prediction for Maritime Industry using Machine Learning
Shipment Time Prediction for Maritime Industry using Machine Learning
 
Blockchain & Cloud-based, Digital Object Identifier System for better Environ...
Blockchain & Cloud-based, Digital Object Identifier System for better Environ...Blockchain & Cloud-based, Digital Object Identifier System for better Environ...
Blockchain & Cloud-based, Digital Object Identifier System for better Environ...
 
Green computing 1 1
Green computing 1 1Green computing 1 1
Green computing 1 1
 
Improve sustainability through energy insights - Infographic
Improve sustainability through energy insights - InfographicImprove sustainability through energy insights - Infographic
Improve sustainability through energy insights - Infographic
 
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
#Interactive Session by Aniket Diwakar Kadukar and  Padimiti Vaidik Eswar Dat...#Interactive Session by Aniket Diwakar Kadukar and  Padimiti Vaidik Eswar Dat...
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
 
Weather and Climate Data: Not Just for Meteorologists
Weather and Climate Data: Not Just for MeteorologistsWeather and Climate Data: Not Just for Meteorologists
Weather and Climate Data: Not Just for Meteorologists
 
Green cloud computing
Green cloud computingGreen cloud computing
Green cloud computing
 
Democratization of NOSQL Document-Database over Relational Database Comparati...
Democratization of NOSQL Document-Database over Relational Database Comparati...Democratization of NOSQL Document-Database over Relational Database Comparati...
Democratization of NOSQL Document-Database over Relational Database Comparati...
 
Digital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the Tank
Digital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the TankDigital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the Tank
Digital Gasoline Indicator which Shows Accurate Fuel/Gasoline in the Tank
 
Actionable Carbon Tracking and Analysis with the Neo4j Graph Data Platform
Actionable Carbon Tracking and Analysis with the Neo4j Graph Data PlatformActionable Carbon Tracking and Analysis with the Neo4j Graph Data Platform
Actionable Carbon Tracking and Analysis with the Neo4j Graph Data Platform
 
Impact of Window Energy Efficiency and How to Make Smart Choices
Impact of Window Energy Efficiency and How to Make Smart ChoicesImpact of Window Energy Efficiency and How to Make Smart Choices
Impact of Window Energy Efficiency and How to Make Smart Choices
 
Green Computing for Internet of Things
Green Computing for Internet of ThingsGreen Computing for Internet of Things
Green Computing for Internet of Things
 
Industry4.0 Oil & Gas - Exploration & Production / Upstream
Industry4.0 Oil & Gas - Exploration & Production / UpstreamIndustry4.0 Oil & Gas - Exploration & Production / Upstream
Industry4.0 Oil & Gas - Exploration & Production / Upstream
 
Security and Trust in an Industrial Grid Project
Security and Trust in an Industrial Grid ProjectSecurity and Trust in an Industrial Grid Project
Security and Trust in an Industrial Grid Project
 
5th International Conference : Angela Druckman
5th International Conference : Angela Druckman5th International Conference : Angela Druckman
5th International Conference : Angela Druckman
 
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
 
Green indexes used in CAST to measure the energy consumption in code
Green indexes used in CAST to measure the energy consumption in codeGreen indexes used in CAST to measure the energy consumption in code
Green indexes used in CAST to measure the energy consumption in code
 

More from Agile Testing Alliance

#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...Agile Testing Alliance
 
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by  Ajay Balamurugadas, "Where Are The Real Testers In T...#Interactive Session by  Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...Agile Testing Alliance
 
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by  Jishnu Nambiar and  Mayur Ovhal, "Monitoring Web Per...#Interactive Session by  Jishnu Nambiar and  Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...Agile Testing Alliance
 
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...Agile Testing Alliance
 
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...Agile Testing Alliance
 
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.Agile Testing Alliance
 
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...Agile Testing Alliance
 
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...Agile Testing Alliance
 
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...Agile Testing Alliance
 
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...Agile Testing Alliance
 
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...Agile Testing Alliance
 
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...Agile Testing Alliance
 
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...Agile Testing Alliance
 
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Interactive Session by  Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...#Interactive Session by  Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...Agile Testing Alliance
 
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...Agile Testing Alliance
 
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.Agile Testing Alliance
 
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...Agile Testing Alliance
 
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...Agile Testing Alliance
 
#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...
#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...
#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...Agile Testing Alliance
 
#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...
#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...
#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...Agile Testing Alliance
 

More from Agile Testing Alliance (20)

#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
 
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by  Ajay Balamurugadas, "Where Are The Real Testers In T...#Interactive Session by  Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
 
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by  Jishnu Nambiar and  Mayur Ovhal, "Monitoring Web Per...#Interactive Session by  Jishnu Nambiar and  Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
 
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
 
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
 
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
 
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
 
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
 
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
 
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
 
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
 
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
 
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
 
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Interactive Session by  Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...#Interactive Session by  Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
 
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
 
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
 
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
 
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
 
#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...
#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...
#Interactive Session by Sumit Mundhada, "Observability in Software Testing" a...
 
#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...
#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...
#Interactive Session by Sujeet Kumar Maurya, "Performance engineering with AI...
 

Recently uploaded

Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
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
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Recently uploaded (20)

Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
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...
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
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
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

#Interactive Session by Hina Sharma and Mamatha Venkatesh, "Secret Sauce for Sustainable Test Automation Framework" at #ATAGTR2023.

  • 1. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 S E C R E T S A U C E F O R S U S T A I N A B L E T E S T A U T O M A T I O N F R A M E W O R K Hina Sharma Mamatha Venkatesh Global Testing Retreat #ATAGTR2023
  • 2. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 A G E N D A • What is Sustainability? • How do we measure sustainability? • Importance for green automation framework • Challenges with unsustainable automation framework • Analysis of test automation framework • Calculating carbon emissions • Efficient coding practices
  • 3. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 W H AT I S S U S TA I N A B I L I T Y ? • Introduce Sustainability • why Sustainability now? • Which areas get impacted due to unsustainable environment
  • 4. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 IBM Sustainability Software / © 2022 IBM Corporation of CEOs see significant demand from investors for greater transparency on sustainability 60% of CEOs are confident they'll achieve sustainability goals 64% of CEO expect sustainability investments to improve business results in the next five years 80% 4 S U S TA I N A B I L I T Y I S N ’ T J U S T A B O U T C O M P L I A N C E , I T ’ S A N O P P O R T U N I T Y T O I N N O VAT E , M A K E A D I F F E R E N C E , A N D G R O W
  • 5. Companies are increasingly aligning their efforts with the UN’s Sustainable Development Goals (SDGs) SOCIAL GOVERNANCE ENVIRONMENTAL E Environmental How a company performs as a steward of nature S Social How it manages relationships with employees, suppliers, customers, and the communities where it operates G Governance How a company is managed by executive leadership • Climate change efforts • Deforestation • Energy efficiency • Waste management • GHG emissions • Water consumption • Gender & diversity policies • Human rights • Exploitative practices • Labor standards • Data security • Child labor • Forced labor • Board composition • Executive compensation • Bribery & corruption policies • Discrimination & harassment • Financial & accounting transparency • Employee relations & engagement: • Worker health & safety • Benefits & pay • Workplace conditions • Data privacy • Customer satisfaction • Community relations • Business ethics • Diversity & inclusivity • Corporate citizenship • Disaster response • Stakeholder engagement • Pollution • Raw material sourcing • Biodiversity practices • Animal welfare • Natural resource conservation 20. Dezember 2023, © 2022 IBM Corporation
  • 6. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023
  • 7. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 Why Now ? Environmental challenges Create business risks across the enterprise Regulatory Rising pressure to meet evolving ESG goals and solve social problems Waste & emissions 20% of every dollar spent in manufacturing is wasted. 80% emissions coming from supply chain 7 Business performance Strong performance on ESG issues can improve top-line growth Economic impact $8T 2030. The cost of climate policy for the market to absorb
  • 8. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 S T E P S T O W A R D S D E C A R B O N I Z AT I O N ! !
  • 9. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 I T C A N R E D U C E E N E R G Y A N D E N V I R O N M E N T A L I M P A C T B Y O P T I M I Z I N G D A T A C E N T E R A N D P U B L I C C L O U D R E S O U R C E S . 9 20% On-prem data centers typically operate at 20-40% utilization.2 50% Cloud users are typically overprovisioned by 30—50%.2 70% Electricity accounts for as much as 70% of total data center operating costs. 1 With rising energy costs, organizations are focused on reducing energy usage. Sustainability in an IT operations context
  • 10. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 IT Transformation: Taking steps to reduce the environmental Carbon Emission on the platform f(# of servers, total energy required to power server, carbon intensity of energy sources) fewer servers lesser power Compute Storage Design Principles , Green Coding , Testing Carbon Emission of the workloads Network Sustainability of the platform Sustainability of the workloads Apply Green Coding/testing principles to Applications
  • 11. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 G lobal Testing Retreat #ATAGTR2023 GREEN CODING Green coding is a coding practice that aims to solve a problem, while taking into account the goal of reducing energy consumption. It’s a way of writing the code that considers the energy consumption and attempts to reduce the same through optimizing the resource demand on physical servers & systems. Compute Network Storage • Choice of programming language • Language best practices • Choice of algorithm • Architecture Principles • Design Patterns for Saving Energy • Tools • Green software engineering principles • Best practices
  • 12. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 Automation Framework
  • 13. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 A U T O M AT I O N E X E C U T I O N Framework Layer Automation Test Suite Get Environmen t Connec t to test suite Common libraries Reporting Lab Default Data json AUT Base Class Test data json Constant s and urls Automati on Test Scripts Initializ e Class Get executio n data Us er User
  • 14. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 C H A L L E N G E S W I T H U N - S U S T A I N A B L E F R A M E W O R K Unsustainable Code Unsustainable code refers to software that is inefficient, resource-intensive, or poorly optimized, leading to negative environmental impacts. Automation infrastructure or set of tools or code that is inefficient, difficult to maintain, or fails to adapt to changing requirements. Unsustainable Automation Framework
  • 15. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 G R E E N A U T O M AT I O N F R A M E W O R K A "green automation framework" refers to an environmentally sustainable and efficient automation framework used in software development and testing. A green automation framework helps - write energy efficient code - reduces resource usage - write maintainable code
  • 16. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 A N A LY S I S O F A T E S T F R A M E W O R K We checked an automation framework for : • Code sustainability • Energy consumption • Where we stand w.r.t the carbon emissions
  • 17. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 C A R B O N E M I S S I O N S – A L L A L O N G T H E W AY … AUT DataCenter Database Automation Code Storage Compute Nodes Peripherals CO2 CO2 CO2 CO2 CO2 CO2 CO2 Local Environment Product/Data Center Environment CO2
  • 18. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 • To calculate the energy consumption by Automation code, we have used Python packages CodeCarbon • Installation: pip install codecarbon CO₂=Power_consumption(kilowatt-hours)*Carbon_Intensity(kg of CO₂/kilowatt- hour) C A L C U L AT I N G E N E R G Y E M I S S I O N S ?
  • 19. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 C A L C U L AT I N G C A R B O N E M I S S I O N S • Carbon Footprint • Energy Consumption / Power Consumption (kilowatt-hours) • Carbon Intensity(kg of CO₂/kilowatt-hour)
  • 20. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N O U T P U T The below out is generated on running the code using codecarbon
  • 21. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 Add CodeCarbon statements to the existing code:
  • 22. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 C O D E E X P E R I M E N T
  • 23. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 from codecarbon import OfflineEmissionsTracker tracker = OfflineEmissionsTracker(country_iso_code="CAN") import requests import time tracker = OfflineEmissionsTracker(country_iso_code="CAN") tracker.start() def fetch_user_data(user_id): # Simulate making an API call to JSONPlaceholder (replace with your actual API endpoint) api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}" response = requests.get(api_endpoint) time.sleep(1) # Simulate some processing time return response.json() # List of user IDs to fetch user_ids = [1, 2, 3] # Repeat the API calls in a loop for 10,000 times for _ in range(10000): for user_id in user_ids: user_data = fetch_user_data(user_id) print(f"User data for user ID {user_id}: {user_data}") # Make API calls using a loop for user_id in user_ids: user_data = fetch_user_data(user_id) print(f"User data for user ID {user_id}: {user_data}") tracker.stop() L O O P S I N T H E C O D E : Print user data for 3 ids using API calls
  • 24. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N D ATA
  • 25. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 import aiohttp import asyncio import time async def fetch_user_data(session, user_id): # Simulate making an API call to JSONPlaceholder (replace with your actual API endpoint) api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}" async with session.get(api_endpoint) as response: return await response.json() async def main(): user_ids = [1, 2, 3] api_calls = 10000 async with aiohttp.ClientSession() as session: tasks = [fetch_user_data(session, user_id) for _ in range(api_calls) for user_id in user_ids] user_data_list = await asyncio.gather(*tasks) # Print or process the collected user data as needed for user_data in user_data_list: print(f"User data: {user_data}") start_time = time.time() asyncio.run(main()) end_time = time.time() print(f"Total execution time: {end_time - start_time} seconds") R E D U N D A N T A P I C A L L S I N C O D E :
  • 26. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N D ATA
  • 27. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 O P T I M I Z E D A P I C A L L S import requests import time from codecarbon import OfflineEmissionsTracker tracker = OfflineEmissionsTracker(country_iso_code="CAN") tracker.start() def fetch_user_data(user_id): api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}" response = requests.get(api_endpoint) time.sleep(1) # Simulate some processing time return response.json() # Make unnecessary API calls in a loop for different user IDs for user_id in range(1, 11): user_data = fetch_user_data(user_id) print(f"User data for user ID {user_id}: {user_data}") tracker.stop()
  • 28. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N D ATA
  • 29. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 import requests import time from codecarbon import OfflineEmissionsTracker tracker = OfflineEmissionsTracker(country_iso_code="CAN") tracker.start() def fetch_user_data(user_id): api_endpoint = f"https://jsonplaceholder.typicode.com/users/{user_id}" response = requests.get(api_endpoint) time.sleep(1) # Simulate some processing time return response.json() # Keep track of fetched user IDs to avoid redundant API calls fetched_user_ids = set() # Make API calls only for unique user IDs for user_id in range(1, 11): if user_id not in fetched_user_ids: user_data = fetch_user_data(user_id) print(f"User data for user ID {user_id}: {user_data}") fetched_user_ids.add(user_id) tracker.stop() U N U S E D O B J E C T S I N T H E C O D E
  • 30. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N D ATA
  • 31. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 U N U S E D O B J E C T S from codecarbon import OfflineEmissionsTracker tracker = OfflineEmissionsTracker(country_iso_code="CAN") tracker.start() import random class ResourceIntensiveObject: def __init__(self, identifier): self.identifier = identifier # Simulate resource-intensive initialization self.data = [random.random() for _ in range(10**6)] # A list of 1 million random numbers def perform_action(self): # Simulate some action on the object return sum(self.data) # Create a list of 5000 ResourceIntensiveObject instances objects_list = [ResourceIntensiveObject(i) for i in range(5000)] # Simulate some operations that only use a small subset of the created objects used_objects = [obj for obj in objects_list if obj.identifier % 100 == 0] # Perform actions on the used objects for obj in used_objects: result = obj.perform_action() print(f"Action performed on object with identifier {obj.identifier}. Result: {result}") tracker.stop()
  • 32. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N D ATA
  • 33. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 import random from codecarbon import OfflineEmissionsTracker tracker = OfflineEmissionsTracker(country_iso_code="CAN") tracker.start() class ResourceIntensiveObject: def __init__(self, identifier): self.identifier = identifier # Simulate resource-intensive initialization self.data = [random.random() for _ in range(10**6)] # A list of 1 million random numbers def perform_action(self): # Simulate some action on the object return sum(self.data) # Create a list of 5000 ResourceIntensiveObject instances objects_list = [ResourceIntensiveObject(i) for i in range(5000)] # Simulate some operations that only use a small subset of the created objects used_objects = [obj for obj in objects_list if obj.identifier % 100 == 0] # Perform actions on the used objects for obj in used_objects: result = obj.perform_action() print(f"Action performed on object with identifier {obj.identifier}. Result: {result}") tracker.stop() O P T I M I Z E D C O D E W I T H R E L E VA N T O B J E C T S
  • 34. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 E N E R G Y C O N S U M P T I O N D ATA
  • 35. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 O B S E R VAT I O N S Code Inefficient code – Energy consumption Optimized code - Energy consumption % decrease after optimization Loops in the code 0.002838 kwh 0.000735 kwh - 74.18% API Calls 0.000082 kwh 0.000077 kwh - 6.09 % Unused objects 0.001098 kwh 0.00946 kwh - 13.8 % - Energy consumption decreased by significant amount after optimizing the code.
  • 36. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 • Using inefficient algorithms and loops • Creating unnecessary objects • Not using caching • Not using compression • Not optimizing the use of hardware resources C O D I N G M A L P R A C T I C E S
  • 37. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 A C C E P TA B L E C A R B O N E M I S S I O N S 0 emissions is ideal! - There are no standards for software applications. The carbon emissions are calculated based on overall end to end execution. - Optimize your code to get the best possible efficiency What you choose to measure will impact what you will optimise, and because of the assumptions that need to be made when summarising, multiple metrics are better than one.
  • 38. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 O U R A N A LY S I S • Multiple hits to the server • Multiple connections to the database to fetch the queries • Lower polling times to fetch the status of deployments • Deprecated methods still being used Below were few reasons we have analyzed to as the reasons for high carbon emissions
  • 39. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 Design phase Review phase Execution phase • - Defining requirements • - Designing architecture • - Planning for framework • - Test suite/case planning • - Review from energy consumption perspective • - Review from execution time perspective • - Review from resource perspective • - Execution of code with energy consumption in mind • - Improve code for optimization W H E R E D O E S I T S TA R T … .
  • 40. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 R E D U C T I O N O P P O R T U N I T I E S In addition to software maintenance, few other things that you can do to make your automation framework more energy sustainable and green: • The right coding language : If possible, choose for the greenest language for coding your framework. • Optimum use of resources: Ensure you are reserving/using what you need. includes your virtual machines, compute nodes etc. • Code optimization : Review your code in regular intervals. Find the culprits loops, multiple hits to server, unused objects and keep cleaning it. • Shift Left : Bugs cost heavily. The more you shift left, the less rounds of execution thereby contribution to a greener environment. • Cloud computing: Cloud computing can be a good way to reduce the energy consumption of your automation framework. This is because cloud computing providers typically use more energy-efficient hardware and software than on- premises data centers.
  • 41. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 Source: https://thenewstack.io Normalized Global Results for Energy, Time and Memory E N E R G Y E F F I C I E N C Y O F P R O G R A M I N G L A N G U A G E S
  • 42. G lobal Testing Retreat #ATAGTR2023 2, 3 & 8, 9 December 2023 Q&A