+ All Categories
Home > Documents > What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can...

What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can...

Date post: 22-May-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
18
What you don’t know (but should) about QA in Software Development
Transcript
Page 1: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

What you don’t know (but should) about QA in Software Development

Page 2: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

CONTENTSWhat you don’t know, but should, about QA in Software Development

1. Misconceptions About Agile QA Software Development That Can Cost You

2. How QA Focused Software Development Improves Your ROI

3. How to Integrate a QA Mindset Into Agile Software Development

4. Benefits to Outsourcing Your Agile Quality Assurance Development

Use Tiempo for your QA Software Development

3

3

7

11

14

17

Page 3: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

Your software is important. Development takes real time and effort, but the benefits of having a successful product far outweigh the stresses and worries that accompany it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook we will outline why an agile QA process is a crucial and necessary element for your businesses’ software development.

What you don’t know

but should, about QA in

Software Development

Page 4: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

3 Misconceptions About Agile QA Software Development That Can Cost You

Agile software development is a set of principles that allows cross-functional teams to develop software requirements and solutions for collaboration. It’s characterized by a flexible, rapid response to change and encourages adaptive planning, early delivery and continuous improvement. These principles don’t require a specific methodology, although many techniques in software development are described as “agile.”

Agile development originated as a result of discussions on lightweight development methods. The Manifesto for Agile Software Development, which was published in 2001, promotes the interaction between individuals over tools and processes. It also values responding to change more than simply following a plan and collaboration with customers more than contract negotiations.

Agile testing follows the principles of agile software development to deliver the business value required by the customer. This strategy integrates testing with coding, rather than the traditional approach of implementing testing as a separate phase of software development. Coding and testing are performed interactively incrementally on a particular feature until it provides sufficient value to be released to production. Agile testing relies upon the participation of all members of a cross functional team along with testers who provide special expertise. Testers rely on specification by example to develop test cases, and all team members are encouraged to work at a pace they can sustain indefinitely.

Agile testing is a relatively new discipline in software development, so a number of misconceptions still persist regarding its use. These misconceptions include the following:

• Agile quality assurance (QA) isn’t needed in software development

• In-house agile QA teams are essential

• Agile QA doesn’t affect products

3

Page 5: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

MISCONCEPTION 1:YOU DON’T NEED QA TESTING IN YOUR DEVELOPMENTIt’s easy to believe that software is ready for release when it appears to work perfectly on the development platform. However, this view overlooks the fact that commercial software must be compatible with many combinations of hardware and software. For example, each version of Internet Explorer (IE) has significant differences, requiring browser software to be independently tested against each version.

The increasing rate of technological advancement means that most QA testing is now performed to ensure compatibility with new technology rather than legacy systems. For example, the Capgemini World Quality Report 2015–16 found that 52 percent of QA budgets were devoted to new IT such as the

Internet of Things (IOT), mobile devices and social media. This study also found that QA accounted an average of 18 percent of an organization’s total IT budget in 2012; 23 percent in 2013; and 26 percent in 2014. Furthermore, the Capgemini report expects that figure to increase to 29 percent by 2017.

Business cycles are also becoming shorter and more dynamic, which makes agile testing even more advantageous for software development firms. Traditional software development performs testing at the end of the project, which often results in a shortened testing phase due to an approaching deadline. Agile testing can therefore produce a more robust end product with more thorough testing. The integration of developers and testers means that bugs are easier to fix in agile development, since testers can report bugs and evaluate fixes immediately. Software developers can also deliver products more quickly, since bugs can be fixed before they become tightly integrated into the code.

Page 6: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

MISCONCEPTION 2:YOU MUST HAVE AN IN-HOUSE QA TESTING TEAMThe traditional method of performing quality assurance involves multiple in-house teams of testers who do exhaustive manual and automated testing. This approach can be effective when you’re releasing a new version of software every six months. However, today’s business environment requires much shorter deployment cycles. For example, major developers like Amazon, Google and Facebook now update their software many times each day, which would be virtually impossible with in-house QA.

The primary problem with in-house QA is that it can’t keep up with the deployment cycles that most businesses need to remain competitive. The sequential approach of traditional QA necessarily results in a slower response time for fixes. For example, an Internet application routinely requires the sign-up process to be tested with multiple browsers such as IE8, IE9 and IE10. Increasing the

size of an in-house QA team provides very little return for this process since this strategy only provides a linear increase in throughput.

Several software developers have offered their views on this issue to Software Magazine. Nikhil Kaul, product manager at SmartBear, observes that the tester’s role changes dramatically in agile development. He says, “Testers must be willing and flexible to participate in different phases of [the] SDLC, right from working with developers when the code is written.” He adds that agile testing suggests rapid process to deliver a new product with quality. Shravanthi Alimilli, product marketing manager at Progress, discusses the great need for collaboration and communication in agile testing. She says that agile developers should think more like testers, and testers should think more like developers. This process involves developers checking their code for errors more often and testers engaging in the creative process of software development more fully.

The primary problem with in-house QA is that it can’t keep up with the deployment cycles that most businesses need to remain competitive.

5

Page 7: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

MISCONCEPTION 3:QA DOESN’T DIRECTLY AFFECT YOUR PRODUCTSMany software developers believe that agile QA doesn’t directly affect the end product. However, this technique reduces both the development time and the number of errors in the final product. Developers are also more likely to use product managers (PMs) as technical resources in an agile world, resulting in PMs spending more time on tactical activities.

Many PMs are just now moving toward an agile methodology, although software developers have been using it for years. An agile approach toward product management encourages greater collaboration between developers and customers, including more face-to-face communication. It also delivers code more frequently and manages the backlog of user requirements more effectively to reduce changes to the code. Furthermore, agile product management provides more opportunities for improvement in product management.

An agile approach to product development doesn’t require a particular methodology, so each team tunes its processes to create a method unique to that environment. These methods include both organization philosophies and development strategies that result in new ways of creating a product. The integration of agile approaches into existing systems generally involves mapping these new concepts to traditional solutions.

Development teams require a voice with the customers when an organization adopts agile methods. This primarily includes a prioritized list of user requirements, although an understanding of market problems is helpful for product developers in an agile environment. Agile production methods also encourage the role of a product owner (PO), which is distinct from the PM. The two roles may appear similar, but the PO’s primary duties are to provide the development team with customer and market information.

6

Page 8: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

How QA Focused Software Development Improves Your ROI

Modern society’s dependence on software requires it to be as reliable as possible. However, software is developed by fallible humans, inevitably resulting in software with bugs. Ironically, one solution to identifying bugs is to use more software. The software development process has an increasing need for quality assurance (QA) tools, which may be grouped into several categories. For example, QA tools may enable developers to work together more effectively or examine source code for problems. Other tools may help project managers to prioritize fixes by quantifying variables for fixing a particular bug such as programmer productivity, code quality and cost effectiveness.

Daniel Sabbah, general manager of IBM’s Rational Software unit, says “[software development tools] really have gotten much better over the years.” “However, their impact is difficult for most users to notice, compared to the more obvious impact of improvements in processing speed, storage capacity and network speed.” Sabbah adds that the software industry may require several years to adopt new tools, whereas manufacturers typically adopt hardware improvements much more quickly.

However, according to Capers Jones at Software Productivity Research, new code still contains an average of five bugs per feature. He adds that only 85 percent of these bugs are eliminated before the software is implemented. These statistics don’t indicate if the software does anything useful, accomplishes its task within a required timeframe or benefits a business.

The CHAOS Report produced by the Standish Group also suggests that software quality is improving. This report found that 35 percent of the software projects started in 2006 were completed on time and on budget, compared to only 16 percent in 1994. The number of software projects that failed completely in 2006 was 31 percent, compared to 19 percent in 1994.

Software development tools really have gotten much better over the years. However, their impact is difficult for most users to notice.Daniel Sabbath GM of Rational Software unit at IBM

7

Page 9: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

AUTOMATIONC-level executives prefer automated software testing because it results in the development of higher quality software in less time and for a lower cost. However, the specific return on investment (ROI) can be difficult to predict as it requires consideration of a number of capital and operational expenditures. For example, the cost of automatic testing include the tools themselves, implementation, execution and maintenance.

The cost of the tools is dependent upon the platform and its available technologies, but relatively straightforward once you make your selection. This cost may even be zero, if you use open-source tools. However, these tools don’t always address an organization’s automation requirements. Some outsourcing providers of quality assurance software include tool costs in their fee structure, making this an operational rather than a capital expenditure.

The resources needed to develop, implement and maintain automated testing is more difficult to calculate, according to GlobalNow IT. One complicating factor is the practice of cutting testing short due to time constraints, which can significantly reduce the ROI of software testing. The cost of developing test cases and data shouldn’t be considered as part of the investment in automated QA tools, as these tasks must be performed whether testing is performed manually or automatically.

Automated QA software provides intangible benefits such as greater quality since it executes all of the tests each time that QA is performed on the software. Enhancements can also be delivered more quickly due to the reduction in cycle time for QA testing. Furthermore, automated testing avoids the time compression that frequently occurs in manual QA testing due to complications in the development process. This time compression usually results in a reduction of test coverage, virtually guaranteeing an increase in production defects. Assigning a specific cost to these intangible benefits may be impractical, although they still reduce the ROI period.

8

Page 10: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

TESTINGSoftware testers have a different focus than that of developers. Developers are motivated to demonstrate that their applications work, while testers are motivated to demonstrate an application’s weaknesses. For example, software testers at Redgate describe themselves as tenacious, thorough and uncompromising. Software testing may therefore require twice as much time as development, which can create a bottleneck in production when developers must wait for the test team to report their results. Testing is also time consuming because many aspects of software testing are labor-intensive even when using automated tools. These activities include the following:

• Setting up the test environment

• Developing test cases

• Writing test scripts

• Developing running load tests

• Writing bug reports

However, agile software development can minimize the testing bottleneck through careful management of the dynamic between developers and testers. This development methodology relies on collaboration between cross-functional teams and encourages a flexible, rapid response to change.

David Atkinson, Head of Product Strategy at Red Gate Software, has noted that software testing often involves going “beyond [what is] sensible” by ensuring the software doesn’t break under extreme conditions. Testers often find at least one bug for every ten lines of source code, so prioritization is a routine part of the QA process. This process can be challenging since the difficulty in fixing a bug is often unrelated to its effect. For example, a bug that has a major effect on the system may be trivial to identify and resolve, while an apparently minor bug may require an unexpectedly large amount of time to fix.

Organizations tend to avoid adequate software testing due to the significant capital expenditure typically involved. A full appreciation of the ROI that testing provides requires careful consideration of factors such as the business impact of selling substandard products. This impact may take many forms such as a reduction in future sales, loss of reputation and more work for support staff.

These two teams can be integrated to ensure that products are fully functional before they’re released.

9

Page 11: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

OUTSOURCINGSoftware must be updated regularly to respond to customer needs. This continuous development cycle means that software providers are improving current products while also developing new ones. This scenario often causes quality to suffer because companies don’t have the resources needed to perform a full round of QA before shipping a product.

Outsourcing QA can improve ROI in a number of ways, according to iBeta. These include finding bugs in a product that goes to market in minimal working order before consumers find them. In-house QA teams are more likely to make mistakes when under pressure to complete testing by a tight deadline. An outsourced team can reduce this pressure by taking on some of the work.

A company is also more likely to make production deadlines when the in-house QA team is augmented by an outsourced team. These two teams can be integrated to ensure that products are fully functional before they’re released. Outsourced QA also provides the in-house team with more time for innovation. A development team that’s constantly behind schedule has little time for developing new features for their products.

Uncovering better ways of developing software by doing it and helping others do it. Mission Statement Manifesto for Agile Software Development

10

Page 12: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

How to Integrate a QA Mindset Into Agile Software Development

Agile software development is an approach to software development that uses cross-functional teams to gather requirements and devise solutions to those requirements through collaboration. It also upholds principles such as adaptive planning, continuous improvement and early delivery. An agile approach isn’t a specific methodology in itself, although developers often refer to agile methods. The Manifesto for Agile Software Development was published in 2001, which formalizes the principles of agile software development. Its mission, as stated, is “uncovering better ways of developing software by doing it and helping others do it.”

The delivery of working software is the most important measure of performance in agile development, as opposed to the delivery of documents. Motivation and self-organization are important characteristics, and pair programming and co-location are common practices for agile methods. Agile methods also acknowledge that developers can never fully gather user requirements at the beginning of the software development cycle, so continuous collaboration is essential for agile approaches. These approaches also focus on continuous development and rapid response to change.

Agile methods were originally used for non-critical projects, which initially prevented developers from using them in industrial sectors such as automotive, financial, medical, nuclear and pharmaceutical. However, several initiatives have begun to adapt agile methods for these critical domains to the value of these methods. The 2013 8th Annual State of Agile Survey includes responses from organizations that have adopted agile. Seventy-three percent of these respondents said that an agile approach reduced the completion time of the project.

Eighty-seven percent of the respondents believe that such an approach increases productivity, while 92 percent indicated that agile allowed them to manage changes in priorities more effectively.

The use of cross-functional teams in agile development means that quality assurance (QA) personnel are an integral part of the development effort. This characteristic requires the development team to have a QA mindset from the beginning of the project. Project managers may accomplish this task in several ways, including the use of robust collaboration tools, daily scrum meetings and team building activities.

COLLABORATION TOOLSAgile methods typically use stories to define software requirements, which are similar to the use case descriptions that object-oriented development uses. A sprint is a short period of time in agile development, during which the team is committed to a specific goal. Adding a story to a sprint already in progress violates agile principles since it disrupts the workflow.

Page 13: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

A well-defined process is a major step in obtaining the collaboration required by an agile approach, but key tools are also needed to take collaboration to the next level. For example, modern software development routinely uses tools to manage bugs and stories in a structured manner. The Quality Assurance team members in mature organizations typically use test case management tools to automate unit and integration testing.

However, these tools often lack the integration and cross-referencing required by the cross-functional teams in agile development. For example, a QA team member runs automated testing and generates reports on the discovered issues, while other team members remain unaware of those issues. This disconnect between tools can lead to poor quality, and the lack of traceability can make the collaboration process unnecessarily complex. Fortunately, a few simple practices can ensure the entire development team remains aware of the current state of the project regardless of their individual locations.

Developers should add references to sections of the code to which they performed unit testing. Similarly, QA team members should add references to each test case (TC) on the TC management tool, along with a bug report for each story. QA should also add references to the story in the requirements management system to complete the cross referencing between unit and integration testing.

DAILY SCRUM MEETINGSDaily scrum meetings are essential for integrating QA into agile software development. Scrum is an incremental, iterative framework for managing agile software development projects, although it’s vital for this framework to prevent changes to a sprint already in progress. As Ilan Goldstein says in his blog post Sprint issues – when sprints turn into crawls, “Scrum certainly provides provision to change product backlog priorities mid-project; however, this needs to occur between sprints and not during them.”

The development team holds a scrum, also known as a stand-up, each day that a sprint is in progress. The scrum has specific guidelines to ensure that it complies with agile principles. For example, all team members should be prepared for the scrum, although anyone is welcome to participate. The scrum should take place at the same time and place each day. It starts on time even if team members are missing and should be limited to 15 minutes.

• Each team member should answer the following three questions during the scrum:

• What did I do yesterday to help the development team meet its sprint goal?

12

Page 14: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

Scrum certainly provides provision to change product backlog priorities mid-project; however, this needs to occur between sprints and not during them.Ilan Goldstein Author of Scrum Shortcuts without Cutting Corners

• What will I do today to help the development team meet its sprint goal?

• Do I know of any impediment that prevents the development team from meeting its sprint goal?

The scrum leader, or master, should capture impediments to the sprint goal and display them on the scrum board. A designated person should work toward a resolution for each impediment outside of the daily scrum. The scrum shouldn’t include detailed discussions.

TEAM-BUILDING ACTIVITIESThe cross-functional nature of an agile development team means that the team members have different levels of experience, professional expertise and job skills. This disparity typically results in a group of people who don’t initially function well as a team, even in an organization where everyone essentially gets along. This problem results from a natural tendency to stereotype individuals with different beliefs and simply assume that they’re being difficult.

The key to improving the team members’ interoperability is to break down their “us vs. them” mentality, according to stackoverflow. Team-building exercises should provide participants with the opportunity to build common experiences together. This process typically involves dividing the team into four to six members, ensuring that they’re well-mixed. People who normally work together should be in separate groups, and each group should include individuals with different job functions. The goal of this strategy is to increase the interactions among people who normally don’t communicate with each other.

The participants in a team-building exercise must also buy into it if these exercises are to succeed. This requirement means that you must address the inevitable skepticism before beginning the exercise. Tell the participants what you’re attempting to achieve and why you’re attempting to achieve it. However, you must also be prepared for negative feedback or even hostility if the exercise fails to meet its goals.

13

Page 15: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

Benefits to Outsourcing Your Agile Quality Assurance Development

Agile software development is a set of principles for developing software that evolved from concepts introduced during the late 1980s and early 1990s. However, it wasn’t formalized until the Manifesto for Agile Software Development was published in 2001. An agile approach allows software requirements and their solutions to evolve through collaboration between cross-functional teams. It also promotes early delivery and continuous improvement. Additional hallmarks of these principles include adaptive planning and a rapid response to changes in requirements.

Agile software development doesn’t require developers to use a particular methodology, although developers often consider certain methods to be “agile.” It typically breaks tasks into small increments known as sprints, which require minimal planning and don’t directly involve long-term planning. Sprints have short time frames known as time boxes that usually last from one to four weeks. A cross-functional team performs all of the tasks in a sprint, including gathering requirements, design, development and testing. This team often demonstrates a working product to the stakeholders at the end of each sprint.

The key to improving the team members’ interoperability is to break down their “us vs. them” mentality, according to stackoverflow. Team-building exercises should provide participants with the opportunity to build common experiences together.

14

Page 16: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

A sprint doesn’t need to provide the functionality needed to warrant a market release; it just needs to produce a release with minimal bugs. Multiple sprints are typically required to release each new feature. The primary benefits of an agile approach are to minimize the overall risk of the project and allow developers to adapt to change quickly. Scott Ambler, Practice Leader for Agile Development at IBM, discussed the benefits of agile development in detail during an interview with TechRepublic. He said, “The major benefits come from a greater focus of quality, discipline, working closely with business stakeholders and on delivering working software on a regular basis.”

RAPID RESPONSE TO CHANGESoftware requirements can change overnight in today’s business. A company’s explosive growth may require a dramatic increase in the software’s scope, or a new regulation may require the software to have additional features. New technologies such as enhancements to mobile devices may also necessitate increases to the software’s functionality. These modifications tend to be highly disruptive to traditional methods of developing software such as waterfall development because developers must repeat each step of the process to accommodate a change. Agile development can accommodate changes more easily by adding them in the next sprint, thus reducing the duplication of effort.

The ability of an agile approach to handle the rapid technological changes often allows the project to remain viable when it would otherwise die prematurely. Mike Cohn, author of Agile Estimating and Planning, says, “An agile team is focused on business priorities and adapts quickly to emerging customer needs.”

The major benefits come from a greater focus of quality, discipline, working closely with business stakeholders and on delivering working software on a regular basis.Scott Ambler Practice Leader for Agile Development at IBM

15

Page 17: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

An agile team is focused on business priorities and adapts quickly to emerging customer needs.Mike Cohn Author: Agile Estimating and Planning

The continuous integration of stakeholders in agile development allows customers to follow the project’s progress on a daily basis as requirements are changed or added. This practice is becoming more practical in nearshore agile software development due to technological developments such as Internet protocol (VoIP) software and wikis.

Waterfall development typically involves little contact between the users and developers from the finalization a project requires to approval testing. This gap is often six months for a large project, during which the users will have little idea about whether the project is being developed according to specifications. This development model allows little time for adjustments, which must be made shortly before the project’s completion.

Nearshore agile software development means that developers and users are in similar time zones. Users can review the product at the end of each sprint, often in the form of demonstrations that show a particular functionality or user experience. Developers can then incorporate any needed changes during the next sprint.

REDUCED RISKWaterfall development typically incurs various forms of risk throughout the project’s lifetime. Users often wonder if the project will be delivered on time or if it will meet the specified requirements. Agile development minimizes these risks by regularly providing users with tangible evidence that the software will perform as expected. The sprint reviews also provide opportunities for users to prioritize features, allowing them to maximize the software’s business value.

The use of a series of sprints to develop a large project also allows the client to control the cost of each sprint. The ability to understand the approximate cost of each feature also helps the client to prioritize feature requests and predict the availability of each feature. Clients may also begin testing a feature before the project is completed in cases with sufficient justification.

Robert C. Martin states that 80 percent of software development is maintenance in his 2008 book Clean

Page 18: What you don’t know (but should) about QA in Software ... · it. At times, Quality Assurance can seem like an extra expense of resources that you don’t have, but in this ebook

Code. He adds that bad practices in the development of the original code directly result in a dramatic increase in the resources needed to maintain it, including time and money. Poor code may even necessitate the redesign of the entire application. Agile development also reduces risk by working with a proven design that allows developers to reduce an application’s load time more quickly and effectively. It also tends to create a scalable architecture that can easily handle sudden increases in the number of users.

HIGHER QUALITYClients typically find that agile development provides them with a higher-quality product since breaking a large project into sprints allows the development team to focus on creating and testing the code for a specific feature. The 2011 CHAOS report from the Standish Group reports that software projects are three times more likely to succeed when they use an agile process as compared to waterfall development. This report showed that the chances of a project succeeding with waterfall development were only 14 percent, compared to 42 percent for agile development. The probability of an outright failure was 29 percent for

waterfall development and only nine percent for agile development.

Continuous quality assurance is also a defining characteristic of agile methods since they integrate adaptation and inspection of the delivery process. They also include periodic project reflections, which are meetings that facilitate the reflection that normally occurs on a project’s successes and failures. Project reflections also discuss any new tools or techniques that have been applied since the last reflection. Agile methods also include daily standup meetings that allow team members to continuously exchange information and fine-tune improvements.

The regular feedback that developers receive from users after each sprint allows them to improve existing features and incorporate the lessons learned into future features. The use of sprints lets team members maintain their focus on one feature at a time without becoming lost in the big picture. It also allows them to perform quality assurance on each step independently of the others, so they can quickly identify and fix bugs before they can create future problems. Furthermore, agile methods improve software by increasing the collaboration between developers and clients.

RELY ON TIEMPO FOR YOUR QA SOFTWARE DEVELOPMENTWe at Tiempo Development believe that our work culture allows us to exceed our client’s expectations by developing innovative software solutions. Our team members openly collaborate with each other to rapidly adapt to changes in user requirements. We have over 10 years of experience in developing complex business requirements. Contact us today to learn more about the Tiempo Development approach to creating high-quality software.

17


Recommended