Showing posts with label Quality Assurance. Show all posts
Showing posts with label Quality Assurance. Show all posts

Thursday, August 2, 2012

Test Case Development

Today’s organizations rely heavily on information technology (IT) systems and are exposed to every kind of information flooding into the business world. Besides, there are reports of faulty systems and their associated problems, resulting in inconvenience, misinformation, loss of information etc. Like any other service or commodity used by us, the importance of quality is beyond question and software quality is no exception and needs to be addressed seriously. Software failures can be dangerous, costly and sometimes even result in loss of lives. Therefore, software development should always be accompanied by comprehensive & thorough testing to detect software failures and prevent faults from flowing through the final production system. In order to do an effective testing, an effective test case lays a very good foundation

Image Credit : Google


A test case is a set of conditions or variables under which a tester will determine whether an application or software system is working correctly or not. The mechanism for determining whether a software program or system has passed or failed such a test is known as a test result. A test case is usually a single step, or occasionally a sequence of steps, to test the correct behavior/functionalities, features of an application. An expected result or expected outcome is usually given.

A test case is developed at a minimum for each business case from a functional viewpoint. There may be one or more uses cases per requirement.  There may be a need to write test cases for non-functional requirements. In effect one requirement may have many test cases, which map to it. A top down approach will be used in the development of test cases.

Additional information that may be included in while creating a test case document are:

  • Test Case Identifier

  • Test Case Name

  • Priority

  • Creator

  • Date of creation

  • Mapping to Requirement Number

  • Test Type (Regression / BVT/ Deployment / Installation etc)

  • Automation Flag

  • Test Script ID

  • Overview, Scope and Objective of Test Case

  • Pre-requisites

  • Test Case Steps

  • Input Specifications

  • Expected Result and Actual Result.

  • Pass/fail

  • Remarks

These steps can be stored in a word document, excel spreadsheet, database or tools such as Quality Center etc. A Important and commonly missed test cases are the conditions of negative testing. This is to determine that end users, cannot compromise applications and data that are created and handled by the applications. Functionality testing is designed to ensure that  applications do what they are supposed  to  do,  whereas  the  purpose  of  negative  testing  is  to  check  that applications do not do what they are not supposed to do.

To conclude, a test Case documents the functionality to be tested. The most time consuming part in the test case is creating the test data to test the case and modifying the cases when the system changes. Once the tests are done by testers, end-users or clients of the system test their own test case to ensure the developed system meets the requirements specified in the contract. The testers understanding of the system/business and proper documentation/testing of positive/negative test cases will result in a WIN WIN situation for all the stakeholders. .

what is involved in writing a proposal for a web solution



If you are an entrepreneur/freelancer, then setting up fancy website might be easy. But making more money by designing website needs another skill. That is the ability to express to prospective clients through a business proposal. A common scenario employed by employers looking for designers is to advertize on a website/newspaper or send out Request for proposal to prospective candidates.  In such case, the best way you can respond is by writing a detailed business proposal.

Image Credit : Google




The Web site design proposals should highlight the competencies/experiences of the designer and also the differentiation factor i.e USP (Universal Selling Point) compared to other applicants. The simplest proposal answer the basic questions such as the cost, time to build, past design examples, testimonials etc.  Depending on the expertise of prospective clients, it is possible that they might be looking for response in an email rather than a formalized document. Irrespective of the type of response, here are some basic information that should be part of each proposal



Company Name

This is an overview section that gives information about your company. You can mention your company mission, vision and core team. The major purpose of this section is to speak in few words positive points of the company that will remain in the mind of prospective client



Scope of Work and Deliverables

In this section you highlight your understanding of the clients requirements and the details of  how you will achieve the design requested. You can also have separate sections such as Preliminary Research, Web Design, Database Design, Front End Programming, Quality Assurance etc to explain the detailed step in which the final product will be built. i.e Each Project phase can be highlighted. This section can be helpful in highlighting your expertise as well as any assumptions that you are making while detailing the steps.



Fees

Here you state the cost that the clients need to pay for the work that you will be doing. Payment can be either based on project phases or upfront fees etc. It is advisable to state it clearly.



Estimated Delivery Date

You should indicate the timeline for completing each phase of the project and the deliverables in each phase.  It is possible that you might need some data from customer such as client company image etc. Any impact due to the missed deadline from the customer should be highlighted so that all stakeholders are clear on the impact.

Past Clients

In this section you can specify your experience with previous client. Testimonials or URL link to show your expertise will be helpful

Once you have put in the above information, you can highlight to clients the possible next steps and give him your contact information on which you can be reachable for any further queries. You can even schedule a meeting to discuss any further questions or clarifications after their initial review.



All the above sections, though look easy based on title, it might actually be not so. Before filling any of the above section, you need do your homework. Some of the points which can be considered for doing the pre-work are

Research the Client and their Requirements

You should be able to demonstrate that that you understand the client needs properly through your proposal.  Research the Client and their business needs well. Most of this information should be available on client website or through net. Remember competitors will also be doing the same so if possible go an extra mile and brainstorm.

State the Capabilities in Clear and Concise Way

Be specific on how you can solve the client’s problem so that client will make fewer assumptions and feel more secure about the proposal.


Summarizing the above proposal writing steps in a single line - The purpose of your web solution proposal is to show the prospective client that you understand their needs and then convince them that you are the best choice for the job.