Friday, January 10, 2025

Caution! Know This Before You Prompt For Your Testing


My Fellow Test Engineers,


If you are using Gen AI and LLMs as an aid to do better work, yeah, we should be exploring it.  I have no second thoughts in it.

Are you giving anything bounded by NDA to Gen AI models and LLMs?
  • Like a part of software requirement, video, an image, code or anything that hints what the system is?
    • That is, is this part of your prompt text which you are giving to the Gen AI model(s) and other LLMs?  If so, do exercise the below questions:
      1. Do my organization and its business see any threat and risk from me for doing so?
      2. Does it violate the NDA (Non-Disclosure Agreement)? If yes, how will I be impacted and prosecuted by the employer's business and organization?
      3. Will I be terminated from my job or contract for doing this?
      4. Will I have to face the legal consequences?

I tell you, for today's LLMs, it is sufficient to have gist of requirement or code or video or an image to isolate one's request. From there, it can monitor fairly better with additional anticipation.


My questions:

  1. How would you trust the models behind?
  2. Do you know how it is observing especially when you use your business identity to login and prompt?
  3. Though you have customized the LLM's model and it is in within your environment, how do you know it is not connecting to its vendor environment and updating the gist?

Let us leverage the prompt engineering, Gen AI and associated LLMs. But, be aware and conscious of what we are giving out!


Also, be aware of what you tell to fellow test engineers. Not all Test Engineers or SDETs think of the consequences; instead just blindly mimic or follow what is being done or said to do by trying and using it.


Let us think about what we are passing to community by just saying to use prompts for --  to write test cases for this given requirement; read the given requirement and give a test design and strategy; review the code snippet and more.  Such loose and vague messages can be harmful if it is blindly followed!

By prompting the text and calling it out as prompt engineering, we might be giving out what we are not supposed to in the context of our employer's work. Caution!


Tuesday, January 7, 2025

Is Software Testing a Cost to Business?


How quick one gets to have the awareness of the cost and value in the trade, it will be of help.  I consistently exercise the below questions in my practice.

  • What are the Values added from my work to the business?
    • How do I benefit from this?
  • What are the Values removed from my work to the business?
    • What does it bring to me?
  • Who is not getting benefited from the Values I'm adding and why?
    • What are the loses and its impact?
    • What are the benefits and gains we are losing?
  • Who is getting benefitted from the Values I'm adding and why?
    • What are the benefits and gains we are making?
  • What are the Costs added from my work to the business?
    • What are the impacts?
    • How does it impact me?
    • How does it benefit me?
  • What are the Costs removed from my work to the business?
    • How does it benefit me and what do I gain?
    • How does it benefit the business and others?  What do they gain?
  • Who are all experiencing the Costs from my work and why?
    • What are the pains from these costs?
  • Who are not having any Costs from my work and why?
    • Do they need anything from my work and its value add?

This exercise will help me to know the expectations of stakeholders and business. I align myself to deliver the expectations as I exercise these questions.  

The cost and value from my software test engineering work will have impact and influences my growth with the benefits that I will make.



Is Software Testing a Cost to Business?


I witness the discussion which says testing is a cost in software engineering business.  But, I do not hear the same statement on development.  This made me to think, why?

Here are my understanding on thinking over it for now.
  1. Software development is not about just programming.
    1. When said development it includes every teams and their work.
    2. Programming and Testing are parallel activities in the software engineering which helps each other.
    3. If testing is a cost, then for sure, programming is also a cost!  It is an associated activity.
  2. In business, every activity and investment on them is a cost in multiple ways.
    1. These are evaluated costs and being taken for a purpose in expectation of returns.
  3. Have I come across anyone saying Automation in Testing is a cost, like I hear for testing?
    1. It is seen as investment and necessity. Why?
      1. May be, because, in a belief if [once] automated, that is sufficient enough it goes on for itself without human intervention.
      2. If this is the thought, do you think we are doing it wrong?
  4. Have I seen the discussion and statements which concludes testing for performance and security is cost?
    1. If yes, how?
    2. If no, why these two are not seen as cost?
  5. Serving and well maintained engineering system is a trade-off
    1. I see, we engineers and business choose what to trade-off
      1. This decision can be on logical and non-logical basis; but, there will be a trade-off
      2. Each trade-off has costs and values
      3. What should I trade-off in the software test engineering and why?
      4. What should I trade-off in the software engineering that we are doing as a business?  Why?
  6. When one is offered a offer letter from a business, there is a CTC mention.
    1. CTC means Cost to Business
      1. Programmer has a CTC
      2. Tester has a CTC
      3. Every others in different teams have a CTC including the CxOs
      4. We all [and our job] are cost to a business, who can add value and get the high returns


To end for now, I learn, everything and anything business picks up is a cost.  Because, there is an investment on it.  If there is no investment, is there anything happening or progressing and changing?

I do not want to get into discussions which says software testing is a cost.  I see such discussion is lacking in understanding the software engineering and intrinsic for first.  Software Development is not all about programming; the programming is one small part of it.

There are different teams that work together in collaboration to develop and consistently delivering the usable software systems.  In this process, everything in software engineering business is an invested and evaluated cost in the interest of returns and values that are expected.

It is time to know and ask "What way of testing and its outcome is a cost?" than saying and listening to -- 'testing is a cost', which is nonsensical.  This holds good for any activity in software engineering.  

Any serving engineering marvel is a calculated and evaluated trade-off.