Page 234 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 234
Principles of Software Engineering
Notes derived from the requirements of the system, the end result is just enough code to have the
software work as required.
Test driven development is the NASA Project Mercury in the 1960’s.
Any unmanaged change to the code may be the cause of an undesired side
effect in the designed model.
Self Assessment Questions
1. ...................... is the development of a system in a series of partial products throughout the
project timescale.
(a) Incremental delivery (b) Increment
(c) Incremental development (d) None of these
2. A major effect of .......................is to elicit requests for change, mainly from users.
(a) Evolutionary delivery (b) Increment test
(c) Incremental build (d) Incremental life cycle
3. ………………..has frequently been used in the development of large systems, and is a step
in the right direction.
(a) Increment test (b) Evolutionary delivery
(c) Incremental builds (d) Phased development
4. TDD is basically composed of the steps:
(a) Writing a test that defines how a small part of the software should behave.
(b) Simple, incremental development
(c) Simpler development process
(d) Constant regression testing
5. Encapsulation and modularity are not help managing the chaos of software development.
(a) True (b) False
11.3 Pair Programming
Pair programming refers to the practice whereby two programmers work together at one
computer, collaborating on the similar design, algorithm, code, or test. The couple is made
up of a driver, who actively types at the computer or records a design; and a navigator, who
watches the work of the driver and carefully identifies problems, asks clarifying questions, and
makes suggestions. Both are also continuous brainstorming associates. Pair programming has
been shown to have many of the benefits of reviews while also eliminating the programmer’s
distaste for reviews so that at least one form of review is actually performed.
Pair programming is a method of programming in which two programmers work side-by-
side at one computer, continuously collaborating on the same design, algorithm, code, or test.
In industry, the practice of pair programming has been shown to improve product quality,
improve team spirit, aid in knowledge management, and reduce product risk. In education,
pair programming also improves student morale, helps students to be more successful, and
228 LOVELY PROFESSIONAL UNIVERSITY