Why a startup should plan to generate a Testing Strategy from day one of the application building and not wait until they have completed 1.0?
Most startups seem to think that the testing function comes later in the project, rather after 1.0 is released. However, they seem to miss the fundamental point that ensuring quality goes hand in hand with the development function.
Why do you think people don't realize the importance of testing from day one?
You could look at testing from multiple angles, for example, technical implementation, use case assumptions or market-product fit. Depending on what kind of product you are building, the timing to do testing may vary and QA may have different meanings. If your product is web-based or a mobile app, consider the minimum viable product strategy. You can find a lot of resources and advice around MVP that help people to understand the importance of testing early. Agile is not just a concept, it is the way startups learn and grow. However consider carefully not to make testing a process burden but a source of motivation because we all like to do the right things and enjoy aha moments.
Having a great customer experience is critical for phase 1 on application development or we can say wao experience. Testing ensures that we are building the right product as well as finds any loop holes during initial or other phases. Test team can be the bridge between the development and product/ end-users. If a startup goes live with a broken product that most likely will discourage the potential customers to become loyal users. Also, traceability is critical in the dynamic era of IT for a product development project and test/validation team can ensure that is in place from day 1. Without this, controlling the product quality would be zero.
Thank you all who took your time to answer my question. I will be meeting a few startups\entrepreneurs in the coming days and wish to explain them the importance of a Testing effort from the early part of building the product. Hence, wanted to understand the reasons, in general, for not paying so much attention.
I draw, from the answers, a few points that would be relevant for my discussion:
1. Lack of knowledge about QA and Testing - this is true, most startups are kicked off by people who are from technical background and hence are ignorant of the testing methodologies
2. 'We can test ourselves' - this attitude of developers can be true only to a certain extent; the product experiences the problems once it moves out of the developers' hands. Hence, I would say, 'let the experts do it'
3. We don't have a budget - Most startups tend to have a budget, though very tight, for the programming effort but they quote the excuse of the budget when it comes to testing
4. Product is still evolving - completely agree and probably the only valid reason why the testing effort could be postponed. However, I feel the testing should still happen since it is going to open several issues (like usability - end-user's perspective) in the initial stages itself. This will atleast remind people of putting up a good front-end of the application and make the product impressive for everyone.
There can be several more - however, I would also focus on the instances when they built a product without testing properly and problems they had to face subsequently
Above all, I would emphasize that the testing adds a great value to the product, if carried on from day one of the product building and can do it on a low and affordable budget
Thanks all, again for sharing your views.
sometimes people under estimate the importance of good test strategy. Even a good build can break anytime new code are added or refactoring is done. Every build should go through integration tests with final build being checked for system tests.
Let's do a step back and look at the whole situation from a side. I can destinguish several scenarios. The truth I beleive is somewhere around.
1) Say, there is a startup at phase 0.1. At that phase they approximately understand what they want to build, but not 100% sure about intended audience expectations. In another words they don't know yet if they are developing a "right" product. So, they can't "validate" the product before they release at least something. Do we really beleive it's worth bothering with Testing Strategy when there is a much more significant problem to solve first?
2) Sure, they can "verify" the product against requirements they have so far. And they probably do it. They might not have a test department and do cross testing by developers. Will it be a bad approach? We still remember their goal so far is to release at least something and ensure that the Market needs it at all.
3) They may have limited budget and all draft versions may be not perfect. If it appears the Market doesn't need that product at all, they had already spent lots of time polishing v0.1 for no reason.
What I'm trying to say is: sometimes they don't plan because they don't have enough experience and simply don't know how and why to plan. But! It easily can be thier strictly planned approach. You never now it untill talk to the team.
It good to go with Agile, execute your projects deliverable in small increments with minimal planning, rather than long-term planning. Quality become Team‟s responsibility rather then the QA dept.Agile methods in contrast to traditional ones produce completely developed and tested features at frequent intervals of 2-4 weeks. Iterative approaches mean we can trade features for time instead of sacrificing quality.
Testing should be based around user experience. Every business has customers and they are the ones purchasing it so you should test and fix things around them. Most successful companies build products and services around what the users want. testing should be the same way to create a truly amazing product.
Ravi is also correct, people learn really bad habits in college. As a college student who has a job I see a lot of things can hurt students by the time they will get a job. In the end, testing should be a top priority and nothing is ever complete because it can always be improved and things always change.
In order to identify major tasks and challenges it is critical to have a test strategy from the very beginning.
If one does not have a test strategy from the very beginning, the impression is that they are trusting things would work out. Chances are that the developer trusts the work he is doing is perfect. Or may think that he will check once the development is complete so that all the issues cant be sort out together. They may ignore the fact that testing in the initial stages may not lead to the successive issues.
"There is no perfection without keeping a doubt".