Pair programming and quality assurance



Pair programming

One of the recommended approaches in the agile method ‘eXtreme Programming’ is called pair programming. In this technique, two programmers always work together in front of a single computer. The idea is that their constant interaction should stimulate good ideas and prevent errors. Whether this approach should be widely adopted is still being studied and debatedOne of the objectives of software engineering researchers has been to automate programming. There has been some success in this regard some tools now generate much of the code for you from models typically represented in UML. However, there will always be a need for some programming done by humans.

We assume that readers of this book have some object-oriented program- ming background. We will use Java for the example code in this book, and you will be asked to translate designs into programs so you can get a feel for the effects of various design decisions. If you know an object-oriented language other than Java (e.g. C++, C# or Smalltalk) it should not be difficult to learn enough Java to use the book effectively.

 

Quality assurance

Quality assurance (QA) encompasses all the processes needed to ensure that the quality objectives discussed in Section 1.5 are met. Quality assurance occurs throughout a project, and includes many activities, including the following:   Reviews and inspections. These are formal meetings organized to discuss requirements, designs or code to see if they are satisfactory.

 <!--[endif]-->Testing. This is the process of systematically executing the software to see if it behaves as expected.

Quality assurance is also often divided into validation, which is the process of determining whether the requirements will solve the customer’s problem, and verification, which is the process of making sure the requirements have been adhered to.

In various chapters, we present checklists that you can use to conduct reviews. Testing and some other aspects of quality.

 


Deployment

Deployment involves distributing and installing the software and any other components of the system such as databases, special hardware etc. It also involves managing the transition from any previous system

Uploaded Wed, 10-Feb-2021
Related Articles

Lesson meta keywords and meta description:



Bootstrap Example