IPA IP 2021 Question 41

A question IPA Japan published in 令和3年度 ITパスポート試験 公開問題 問41, translated into English. ITPEC is based on the same exams.

Which of the following is an appropriate technique that aims to improve the productivity of software development by turning software into components and reusing it through the use of concepts such as classes and inheritance?

Explanation

Object orientation — classes and inheritance are the defining concepts of object orientation, which builds software from reusable components.

In object orientation, data and the procedures that act on it are encapsulated together in objects. A class is the template from which objects are made, and inheritance lets a new class (a subclass) take over the attributes and methods of an existing class (its superclass) and add or change only what differs. Classes thus become components that other programs can reuse, and inheritance reuses existing code instead of writing it again, which raises the productivity of development.

Answer (a)

Why not others:

  • •(b) Structuring — divides a system into functions top-down and builds programs from the three control structures (sequence, selection, iteration); it has no classes or inheritance
  • •(c) Process-oriented approach — designs a system around its business processes, the flow of processing, with data designed afterwards to serve each process; it is not built on classes and inheritance
  • •(d) Prototyping — builds a trial model early to confirm requirements with users; it is a development model, not a way of turning software into reusable components

Key rule: Class, instance, encapsulation, inheritance and polymorphism are the vocabulary of object orientation; reuse through classes and inheritance points to it.

Software Development Management Techniques · AI-written, may contain errors

This question comes from the past questions IPA Japan publishes, translated into English by ITPEC Practice. ITPEC Practice is an independent study tool and is not affiliated with IPA or ITPEC. See the original paper (PDF) or Report an issue.