You are on page 1of 3

1.

Explain what is meant by a data-centered view of computing and why this is


advantageous?
Answer:

In data-centered architecture, the data is centralized and accessed frequently by other


components, which modify data. The main purpose of this style is to achieve integrality
of data. The components access a shared data structure and are relatively independent, in
that, they interact only through the data store.

Advantages:

Provides data integrity, backup and restore features. Provides scalability and reusability of


agents as they do not have direct communication with each other. Reduces overhead of
transient data between software components.

2. Explain why we want to think about and design a system in terms of black boxes
and interfaces?

Answer:

 In science, computing, and engineering, a black box is a device, system, or object which can
be viewed in terms of its inputs and outputs, without any knowledge of its internal workings.
Black box testing involves testing a system with no prior knowledge of its internal
workings. A tester provides an input, and observes the output generated by the system
under test. .Black box testing is a powerful testing technique because it exercises a system
end-to-end.

3. Why do we want to think about nouns when we try to describe the objects of our
design?

Answer:
Typograph. “Design” is often used as an adjective to describe the aesthetics of objects and
forms. That is a well-designed document. “Design” is also frequently used as a noun when
referring to certain commodities, objects or forms.

“Design” is often used as an adjective to describe the aesthetics of objects and forms. – That
is a well-designed document. “Design” is also frequently used as a noun when referring to
certain commodities, objects or forms. – I like that design.

4. Why do we want to think about verbs when we try to describe the interfaces of
objects in our design? What entity carries out the verbs or the actions in OOD?

Answer:

Typograph. “Design” is often used as an adjective to describe the aesthetics of objects and
forms.
The verb to design expresses the process of developing a design. ... In some cases, the direct
construction of an object without an explicit prior plan (such as in craftwork, some
engineering, coding, and graphic design) may also be considered to be a design activity.

5. What are instance variables?

Answer:
The variables that the object contains are called instance variables. For example, if the
PlayerData class, as defined above, is used to create an object, then that object is
an instance of the PlayerData class, and name and age are instance variables in the object.

Instance Variable With Example In JAVA. An instance variable is a variable defined in


a class (i.e. a member variable) in which each instantiated object of the class has a separate
copy, or instance. An instance variable is similar to a class variable. Instance variables belong
to an instance of a class

6. Why do we want to separate the concerns of "what" vs. "how"?

Answer:

At its essence, Separation of concerns is about order. The overall goal of separation of


concerns is to establish a well-organized system where each part fulfills a meaningful and
intuitive role while maximizing its ability to adapt to change.

In computer science, separation of concerns (SoC) is a design principle for separating a


computer program into distinct sections such that each section addresses a separate concern.
A concern is a set of information that affects the code of a computer program.

7. If we design our software correctly and we've taken into consideration


separation of concerns, is it then possible to change the internals of an object's
methods and NOT impact the users of our objects? Please explain.

Answer:
At its essence, Separation of concerns is about order. The overall goal of separation of
concerns is to establish a well-organized system where each part fulfills a meaningful and
intuitive role while maximizing its ability to adapt to change.

8. Provide your understanding of encapsulation and why you should consider this
in your software design and approach.
Answer:
In object-oriented computer programming languages, the notion of encapsulation refers to
the bundling of data, along with the methods that operate on that data, into a single
unit. ... Encapsulation can be used to hide both data members and data functions or methods
associated with an instantiated class or object.
Encapsulation helps with software changes. The accessible interface of a class can remain
the same, while the implementation of the attributes and methods can change. Outsiders using
the class, do not need to care how the implementation actually works behind the interface.

You might also like