Virtual University of Pakistan Study forum !
GDB Topic: A software house received a project to develop an application for military use. Most important part of application is its flexibility to accommodate time to time change in requirements. Main objective of application is to keep record and activities for military vehicles which are land and air based. Land vehicles include tanks (can fire from its gun, provide protection to its crew, can move over any surface), scout cars (provide off road mobility, can fire from machine guns) and military trucks (transport cargos). Air vehicles have two categories: One which can fly without pilot i-e unmanned aerial vehicle (UAV) and the others operated by pilots. UAV include highly sophisticated drones (bombing, remotely controlled flight or through embedded software). Air vehicles operated by pilots are fighting falcon (air-air combat role, can attack missile air- surface), helicopters (transportation, hover and land over any surface) and airplanes (transportation of goods and...
Inheritance is the way to go because composition is used for objects that have a has-a relationship to each other. A car has-a metal frame, has-an engine, and has-a transmission. A personal computer has-a CPU, a motherboard, and other components. You have-a head, a body, some limbs, which in this case is irrelevant to the given situation. So in order to achieve the following requirements the developer will have to use inheritance technique. First the developer should inherit properties of tanks and military trucks from land vehicles category and after that should pickup properties of a UAV from air vehicle category for a control system like drones.