Ir para o conteúdo principal
Milhares de questões atuais de concursos.

Questões de Concurso – Aprova Concursos

Milhares de questões com o conteúdo atualizado para você praticar e chegar ao dia da prova preparado!


Exibir questões com:
Não exibir questões:
Minhas questões:
Filtros aplicados:

Dica: Caso encontre poucas questões de uma prova específica, filtre pela banca organizadora do concurso que você deseja prestar.

Folha de respostas:

  • 1
    • a
    • b
    • c
    • d
    • e
  • 2
    • a
    • b
    • c
    • d
    • e
  • 3
    • a
    • b
    • c
    • d
    • e

Text 3A7AAA

Software architecture is a complex topic. Due to its

complexity, our profession has produced a variety of definitions,

each more or less useful depending on your point of view. Here is

a definition from my first book, Journey of the Software

Professional: "A system architecture defines the basic "structure"

of the system (e.g., the high level modules comprising the major

functions of the system, the management and distribution of data,

the kind and style of its user interface, what platform(s) will it run

on and so forth)".

This definition is pretty consistent with many others.

However, it lacks some important elements, such as specific

technology choices and the required capabilities of the desired

system. A colleague of mine, Myron Ahn, created the following

definition of software architecture. It is a bit more expansive and

covers a bit more ground than my original: "Software architecture

is the sum of the nontrivial modules, processes, and data of the

system, their structure and exact relationships to each other, how

they can be and are expected to be extended and modified, and on

which technologies they depend, from which one can deduce the

exact capabilities and flexibilities of the system, and from which

one can form a plan for the implementation or modification of the

system".

We could extend these definitions from the technical point

of view, but this wouldn't provide a lot of value. More than any

other aspect of the system, architecture deals with the "big picture".

The real key to understanding it is to adopt this big picture.

Moreover, while these definitions are useful, they are far too

simplistic to take into account the full set of forces that shape, and

are shaped by, an architecture. In truth, I doubt that any single

definition of software architecture will ever capture all of what we

believe to be important.

Luke Hohmann. Defining software architecture. In: Beyond

software architecture: creating and sustaining winning

solutions. Boston: Addison-Wesley, 2003, p. 1-2 (adapted)

The author of text 3A7AAA concludes that

Text 3A7AAA

Software architecture is a complex topic. Due to its

complexity, our profession has produced a variety of definitions,

each more or less useful depending on your point of view. Here is

a definition from my first book, Journey of the Software

Professional: “A system architecture defines the basic “structure"

of the system (e.g., the high level modules comprising the major

functions of the system, the management and distribution of data,

the kind and style of its user interface, what platform(s) will it run

on and so forth)".

This definition is pretty consistent with many others.

However, it lacks some important elements, such as specific

technology choices and the required capabilities of the desired

system. A colleague of mine, Myron Ahn, created the following

definition of software architecture. It is a bit more expansive and

covers a bit more ground than my original: “Software architecture

is the sum of the nontrivial modules, processes, and data of the

system, their structure and exact relationships to each other, how

they can be and are expected to be extended and modified, and on

which technologies they depend, from which one can deduce the

exact capabilities and flexibilities of the system, and from which

one can form a plan for the implementation or modification of the

system".

We could extend these definitions from the technical point

of view, but this wouldn't provide a lot of value. More than any

other aspect of the system, architecture deals with the “big picture".

The real key to understanding it is to adopt this big picture.

Moreover, while these definitions are useful, they are far too

simplistic to take into account the full set of forces that shape, and

are shaped by, an architecture. In truth, I doubt that any single

definition of software architecture will ever capture all of what we

believe to be important.

Luke Hohmann. Defining software architecture. In: Beyond

software architecture: creating and sustaining winning

solutions. Boston: Addison-Wesley, 2003, p. 1-2 (adapted)

About the definition for software architecture, text 3A7AAA

shows that

Text 3A7AAA

Software architecture is a complex topic. Due to its

complexity, our profession has produced a variety of definitions,

each more or less useful depending on your point of view. Here is

a definition from my first book, Journey of the Software

Professional: "A system architecture defines the basic "structure"

of the system (e.g., the high level modules comprising the major

functions of the system, the management and distribution of data,

the kind and style of its user interface, what platform(s) will it run

on and so forth)".

This definition is pretty consistent with many others.

However, it lacks some important elements, such as specific

technology choices and the required capabilities of the desired

system. A colleague of mine, Myron Ahn, created the following

definition of software architecture. It is a bit more expansive and

covers a bit more ground than my original: "Software architecture

is the sum of the nontrivial modules, processes, and data of the

system, their structure and exact relationships to each other, how

they can be and are expected to be extended and modified, and on

which technologies they depend, from which one can deduce the

exact capabilities and flexibilities of the system, and from which

one can form a plan for the implementation or modification of the

system".

We could extend these definitions from the technical point

of view, but this wouldn't provide a lot of value. More than any

other aspect of the system, architecture deals with the "big picture".

The real key to understanding it is to adopt this big picture.

Moreover, while these definitions are useful, they are far too

simplistic to take into account the full set of forces that shape, and

are shaped by, an architecture. In truth, I doubt that any single

definition of software architecture will ever capture all of what we

believe to be important.

Luke Hohmann. Defining software architecture. In: Beyond

software architecture: creating and sustaining winning

solutions. Boston: Addison-Wesley, 2003, p. 1-2 (adapted)

In the first line of text 3A7AAA, the expression “Due to" could

be correctly replaced by

© Aprova Concursos - Al. Dr. Carlos de Carvalho, 1482 - Curitiba, PR - 0800 727 6282