Unit 05 Flashcards

1
Q

action-oriented model

A

A software model in which the actions carried out by processors are central.

As opposed to an object-oriented model where objects are central.
Or a data-oriented model where data is central.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

addressing

A

Identifying a particular computer on the internet using either a symbolic address or a numeric address.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

application programming interface (API)

A

An interface provided by a computer system or program library. Services specified in a computer system/library can be made available to, and called on by, computer programs. The software that provides the functionality described by an API is said to be an implementation of the API.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

application server

A

A server dedicated to running a number of applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

asynchronous message passing

A

A form of communication in which the sending and receiving processes do not have to be at their synchronisation points at the same time. This form of message passing requires a buffer in order to store messages in the case of the receiving process not being ready to receive the message.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

BitTorrent protocol

A

A protocol for file sharing among peers (in peer-to-peer systems), where a large data file is divided into smaller parts that are distributed among the peers. The peers cooperate by sharing the parts they have received with other peers, such that eventually all peers have all the parts of the original file.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

blocking

A

When invoking methods, or calling procedures, a process is said to be blocked for the duration of the method call.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

business logic

A

Refers to the logic that embodies business rules rather than the view/presentation or storage of data. Typically, this would be the calculations and processes appropriate for the business.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

caching

A

A technique of temporarily storing frequently accessed data in a special area to reduce the time required to gain access to the data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

client–server

A

A software architecture style in which asymmetric roles are assigned to two collaborating processes. One process, the server, plays the role of a service provider which waits passively for the arrival of a request. The other, the client, issues specific requests to the server and awaits its response.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

component model

A

Definition of standards for the implementation, documentation and deployment of components. Examples of such models are the Java EE framework, EJB and CORBA.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

data partitioning

A

Dividing the data resources of a system and storing them on several servers which are distributed. Each server is responsible for maintaining its own partition.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

data replication

A

Duplication of data and the storing of data on several servers such that multiple backup copies exist.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

data-oriented model

A

A software model in which the focus is on data, and where actions are triggered as a result of data being exchanged.

See also action-oriented model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

deployment

A

The placing or installing of software on a target system so that it is ready to run. This process typically involves some configuration steps to tailor the software to the specific organisation, users, or application domain – for example, to specify location-specific information, such as a list of local users permitted to access the software, and the name of the local database.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

distributed object paradigm

A

An extension of the object-oriented paradigm to a distributed setting, in which local objects and remote objects are treated in the same way and have the same capabilities.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

distribution transparent

A

The requirement that users can remain unaware of some of the complexities of operating in a distributed setting.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

event/notification model

A

A model in which an object can generate certain events, and when such an event occurs, it publishes a notification. The notification can be picked up by the objects that subscribed to this event.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

fault tolerance

A

The ability of a system to respond gracefully to an unexpected hardware or software failure. By ‘gracefully’ we mean that if a system’s operating quality decreases at all due to a failure, the decrease is proportional to the severity of the failure. This is in contrast to a naively designed system in which even a small failure can cause total breakdown.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

heterogeneity

A

Programs running on different computers with different operating systems, data representations and programming languages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

heterogeneous middleware

A

Middleware in which no assumptions are made about a shared language or whether all parties are running on the same platform. CORBA is a heterogeneous form of middleware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

homogeneous middleware

A

Middleware in which all parties are assumed to be implemented in the same language and running on the same platform. For example, Remote Method Invocation is a homogeneous form of middleware, in that it assumes that the whole system runs within the Java Virtual Machine environment and that one single programming language (Java) is used throughout.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

interface (component/system)

A

Used to refer to the commands or operations (methods), including their syntax and semantics, that a software system or component provides to the clients of the system. Through the interface, the software entity presents methods for external communication, and the interface allows the entity to be internally modified without affecting the way outside entities interact with it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Internet Protocol (IP) address

A

The numeric address of a device on the internet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

layer (of software)

A

A layer of software in which implementation details are hidden and where the functionality of the layer can be invoked through a well-defined interface.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

leeching

A

A term used to describe the behaviour of those peers in a peer-to-peer system that cause a drain on the overall system – they wish to benefit only from the system and do not participate in helping other peers.

27
Q

legacy system

A

A software system that is still required because it meets some useful purpose for an organisation. It is not considered to be replaceable and so is maintained, usually on a restricted budget.

28
Q

load balancing

A

Balancing the load (the amount of work) in order to avoid having one component doing all the work, while other components remain idle.

29
Q

local object

A

An object whose methods can be invoked only by a local process.

30
Q

local process

A

A process that runs on the machine on which the objects it is dealing with reside.

31
Q

marshalling

A

The process of taking a collection of data items and assembling them into a form (such as a byte stream) suitable for transmission in a message.

32
Q

messaging system paradigm

A

A form of middleware in which messages are not sent directly from client to server, but go via the messaging system, which acts as the intermediary. The intermediary then looks after the message from that point onwards.

Also known as message-oriented middleware (MOM) or the message queuing system.

An example is the Java Message Service (JMS).

33
Q

middleware

A

In a distributed system, the software that interfaces between a client and a specific operating system. It provides a common interface for clients and allows clients to use the same system calls, no matter what operating system is in use.

34
Q

multicast

A

A means of communication whereby the sender sends a message once to a group of receivers who have previously registered to receive such messages.

35
Q

object request broker (ORB)

A

Middleware that sits between the client and the objects the client wishes to invoke. The ORB is responsible for locating each object and communicating the client’s request to the object. The object carries out the request and replies.

36
Q

Open Systems Interconnection (OSI) model

A

A layered, abstract description for the design of communication and network protocols.

37
Q

orphan

A

A remote procedure call whose client (i.e. the node making the call) crashes after the request has been sent.

38
Q

paradigm

A

A model, example or pattern, especially an outstandingly clear or typical example or archetype.

39
Q

peer-to-peer (P2P)

A

A distributed system architecture where each computer has similar capabilities and responsibilities – each can act as a server as well as a client.

40
Q

performance

A

A measurement of how well a system deals with its workload, usually expressed in terms of its responsiveness to users and the throughput of work.

41
Q

port

A

A numbered conduit into a host on the internet, which allows a client to request a particular kind of service and allows a server to listen for particular kinds of request on a specific port.

For example, port 80 is normally used to access a web server.

42
Q

procedure call

A

When a procedure is called, the code associated with the procedure is executed, and once this is finished and any necessary data has been returned, the execution of the main program continues with the next statement. This is similar to a method invocation.

43
Q

proxy server

A

A server that acts as an intermediary between clients and other servers.

44
Q

publish/subscribe messaging model

A

A communication model in which an object that generates events publishes the type of event it makes available for observation by other objects; and objects that want to receive notifications subscribe to events that are of interest to them.

45
Q

Remote Method Invocation (RMI)

A

A form of middleware, the Java version of remote procedure calling. With RMI, methods can be invoked on objects whether they are local or are remote from the invoking client.

46
Q

remote procedure call (RPC)

A

A call to a procedure located on a machine that is different from the machine from which the call is sent.

47
Q

remote process

A

A process running on a different machine from (but connected to) the one on which the object it is dealing with resides.

48
Q

responsiveness

A

The speed at which a response is generated.

49
Q

scalability

A

The ability of a system to scale (shrink or grow) in order to support larger or smaller volumes of data and more or fewer users.

50
Q

ServerSocket

A

A type of object used by a server program in a client–server application. The object has the role of waiting for a client and returning a connection socket once the connection with this client is established.

51
Q

single point of failure

A

The part of a system that can cause the whole system to go down when a failure occurs in this particular part.

52
Q

socket

A

An abstraction for each of the two sides of the connection between the client and server. It is identified by a combination of port and host name, and provides the facilities (e.g. input and output streams) to enable data to be transferred between client and server. In Java these are implemented with the Socket class.

53
Q

software architecture

A

A software architecture is concerned with the structures of the system. These structures comprise software elements, the main properties of those elements and the relationships between them.

54
Q

software component

A

An independent software unit that can be composed with other components to create a software system. Each component has a well-defined interface through which the services of the component can be invoked, while shielding its implementation details.

55
Q

swarm

A

A group of connected peers working together in a peer-to-peer system.

56
Q

synchronous message passing

A

A form of communication in which the sender waits (i.e. it is blocked) until it receives a response from the receiver.

See also asynchronous message passing.

57
Q

thick client

A

Complex client software that carries out significant processing on the client machine in a client–server system.

58
Q

thin client

A

In a client–server system, a simple client with very limited functionality, mainly limited to display and communication – for example, a web browser.

59
Q

throughput

A

The rate at which computational work is done.

60
Q

tier

A

The common functionality of computer processes or components at a very high conceptual level.

61
Q

timeout

A

The expiry of a preset time interval causing a thread to stop running because it has used its allocated execution time.

62
Q

two-tier model

A

A software architecture consisting of a database tier and a client applications tier.

63
Q

unicast

A

The sending of information to a single destination.

64
Q

unmarshalling

A

The process of extracting a data structure from a series of bytes.