CGS2545 Chapter 9

Terms for Chapter

Application partitioning - The process of assigning portions of application code to client or server partitions after it is written, in order to achieve better performance and interoperability (ability of a component to function on different platforms).

Application program interface (API) - Sets of routines that an application program uses to direct the performance of procedures by the computer's operating system.

Client/server systems - A networked computing model that distributes processes between clients and servers, which supply the requested services. In a database system, the database generally resides on a server that processes the DBMS. The clients may process the application systems or request services from another server that holds the application programs.

Database server - A computer that is responsible for database storage, access, and processing in a client/server environment. Some people also use this term to describe a two-tier client/server environment.

Event-driven - Nonprocedural programming that detects an event when it occurs and generates an appropriate response to that event.

Fat client - A client PC that is responsible for processing presentation logic, extensive application and business rules logic, and many DBMS functions.

File server - A device that manages file operations and is shared by each of the client PCs attached to a LAN.

Massively parallel processing (MPP)/shared nothing architecture - Massively parallel processing systems where each CPU has its own dedicated memory.

Middleware - Software that allows an application to interoperate with other software without requiring the user to understand and code the low-level operations necessary to achieve interoperability.

Open database connectivity (ODBC) standard - An application programming interface that provides a common language for application programs to access and process SQL databases independent of the particular RDBMS that is accessed.

Query-by-Example (QBE) - A direct manipulation database language that uses a graphical approach to query construction.

Stored procedure - A module of code, usually written in a proprietary language such as Oracle's PL/SQL or Sybase's Transact-SQL, that implements application logic or a business rule and is stored on the server, where it runs when it is called.

Symmetric multiprocessing (SMP) - A parallel processing architecture where the processors share a common shared memory.

Thin client - A PC configured for handling user interfaces and some application processing, usually with no or limited local data storage.

Three-tiered architecture - A client/server configuration that includes three layers: a client layer and two server layers. While the nature of the server layers differs, a common configuration contains an application server.

Visual Basic for Applications (VBA) - The programming language that accompanies Access 2000.

Back to the Top


Questions from Companion Website

Multiple Choice

1. This application logic component is responsible for data processing logic, business rules logic, and data management logic.
Correct answer : Processing logic component
Correct - This includes data validation, coding of business rules, and determining data necessary for processing transactions or queries.
* Incorrect: :
Presentation logic component
Storage logic component
Input/output logic component

2. Which is NOT a limitation of using file servers on a LAN?
Correct answer : File servers must be powerful
Correct - File servers do not need to be very powerful or have much RAM since they do little work.
* Incorrect: :
High network traffic load
Client PCs must be powerful
Client application programs must manage shared database integrity

3. Which is NOT an advantage of stored procedures?
Correct answer : Fatter client and thinner database server
Correct - Advantages include a decrease in network traffic, improved security and data integrity, a THINNER client and FATTER database server.
* Incorrect: :
Decrease in network traffic
Improved security
Improved data integrity

4. A PC configured for handling user interfaces and some application processing, usually with no or limited local data storage.
Correct answer : Thin client
Correct - The use of Internet browsers on clients for accessing the Web is an example of thin client architecture.
* Incorrect: :
Fat Client
File server
Database server

5. The software that allows an application to easily interoperate with other software.
Correct answer : Middleware
Correct - This interoperability does not require the user to understand and code the low-level operations.
* Incorrect: :
CRM
MPP
Enterprise systems

6. ____ allows developers to place application code on client workstations or a server, depending on which location will give the best performance.
Correct answer : Application partitioning
Correct - Effective application partitioning in the Web environment achieves increased performance as well as improving maintainability, data integrity, and security.
* Incorrect: :
Middleware
QBE
JDBC

7. Which is NOT a software distribution problem in a distributed processing environment?
Correct answer : Parallel processing issues
Correct - Parallel processing advancements make it more attractive to remain centralized on an application or database server.
* Incorrect: :
Determining which code is placed on which mainframe
Identifying conflicts with code from other applications
Assuring sufficient resources are available at all locations

8. A parallel processing architecture where the processors share a common shared memory.
Correct answer : SMP
Correct - A single copy of the operating system resides in shared memory and is shared across all of the processors.
* Incorrect: :
MPP
VLDB
O/R

9. A parallel processing architecture where each CPU has its own dedicated memory.
Correct answer : MPP
Correct - MPP or massively parallel processing requires a complete copy of the operating system to be resident in each dedicated memory.
* Incorrect: :
VLDB
SMP
O/R

10. Which is NOT necessarily a consideration when moving to SMP or MPP systems?
Correct answer : Use of O/R databases
Correct - Data analysis requirements, cost justification, and continued use of traditional technology must all be considered before moving to SMP or MPP systems.
* Incorrect: :
Data analysis requirements
Cost justification
Continued used of traditional technology

11. Categories of available middleware include
Correct answer : ORB, MOM, Publish/subscribe.
Correct - The six categories of middleware are RPC (asynchronous), Synchronous RPC, Publish/subscribe, MOM, ORB, and SQL-oriented data access.
* Incorrect: :
API, MOM, ORB.
Synchronous RPC, API, DAD.
Synchronous RPC, RPC, ISAM.

12. Sets of routines that an application program uses to direct the performance of procedures by the computer’s operating system.
Correct answer : API
Correct - API is the set of routines that makes it possible for developers to link an application easily to popular databases.
* Incorrect: :
ORB
MOM
RMI

13. Reasons to use VBA with Access include:
Correct answer : improved error handling, easier maintenance, and more complete OLE automation.
Correct - Other reasons include more complex functionality, faster execution, more programmatic control, and VBA code is easier to read than macro code.
* Incorrect: :
improved error handling, more programmatic control, and simpler interfaces.
faster execution, easier maintenance, and less storage space used.
simpler interfaces, less storage space used, and easier maintenance.

14. ____ is similar to ODBC.
Correct answer : JDBC
Correct - JDBC is similar to the ODBC standard, but JDBC is designed specifically for Java applications
* Incorrect: :
OLAP
SQL
API

15. A query that requires a table to be joined with itself is called ____ join.
Correct answer : recursive
Correct - Recursive or self-joins join a table to itself and are easier to construct using a QBE interface because of its visual representation.
* Incorrect: :
union
aggregate
dynamic

Back to the Top


True/False Questions

1. In a client/server database system, the database generally resides on a server.
Correct answer : TRUE
Correct - The server holds the database and the clients may process the application systems or request services from another server that holds the application programs.

2. With the first client/server architectures, most of the processing took place on the file server.
Correct answer : FALSE
Correct - The file server managed file operations and acted as an additional hard drive. Most of the processing occurred on the clients.

3. In a three-tier architecture, the third layer always holds the application server.
Correct answer : FALSE
Correct - The additional server may be used for different purposes, depending on the application.

4. Three tier-architectures are more scalable than two-tier architectures.
Correct answer : TRUE
Correct - The middle tier can be used to reduce the load on the database server.

5. Difficulties with complex applications in a distributed environment have forced some IT managers to return to a mainframe environment.
Correct answer : TRUE
Correct - Understanding different locations’ environments and creating a distributed network is a very complex undertaking, forcing managers to rethink client/server solutions.

6. MPP architecture is where the processors share a common memory.
Correct answer : FALSE
Correct - Processors share a common memory in SMP architecture.

7. Parallel processing is allowing organizations to analyze massive amounts of historical data.
Correct answer : TRUE
Correct - Parallel processing underlies the development of data warehouses and data marts.

8. ODBC is similar to API.
Correct answer : TRUE
Correct - ODBC is middleware for Windows-based client/server applications.

9. CORBA sets the specifications of object-oriented universal middleware.
Correct answer : TRUE
Correct - This standard is particularly important in the Web because of the diversity of the platforms that are connecting.

10. Client/server architectures are more susceptible to security threats than centralized systems.
Correct answer : TRUE
Correct - Client/server architectures are more susceptible because of network security problems such as eavesdropping, unauthorized connections, or unauthorized retrieval of packets of information that are traversing the network.

11. Dynamic Web pages are stored in templates into which current data from the database is inserted.
Correct answer : FALSE
Correct - Because of this access to the database, adequate database server security is critical.

12. TCP/IP is a very secure protocol.
Correct answer : FALSE
Correct - TCP/IP is not very secure, so encryption systems are essential when dealings with dynamic Web pages.

13. QBE’s simplicity makes it so popular.
Correct answer : TRUE
Correct - QBE systems also generate SQL code.

14. ODBC can be used to enable JAVA programs to execute SQL statements.
Correct answer : FALSE
Correct - JDBC is used. JDBC is similar to ODBC, but it is designed specifically for Java applications.

15. VBA is a DBMS that will replace Microsoft’s Access.
Correct answer : FALSE
Correct - VBA can be used with Access to enhance its capabilities.

Back to the Top


Essay Questions

1. What are the three application logic components in a client/server architecture and what do they do?
The three components are the input/output or presentation logic component, the processing logic component, and the storage logic component. The processing logic component handles all the display and user input. The processing logic component handles data processing logic, business rules logic, and data management logic. The storage logic component is responsible for data storage and retrieval from the physical storage devices.

2. What are the advantages of using a two-tiered approach to client/server architecture?
The advantages of a database server include a reduced communication load as less data are sent across the LAN. Second, user authorization, integrity checking, data dictionary maintenance, and query and update processing are all performed on the server (one location). Third, since the server holds the database, the server can be tuned to optimize database-processing performance (instead of individual clients).

3. What are some challenges associated with three-tier (and n-tier) architectures?
Three-tier challenges include high short-term costs, lack of tools, training and experienced IS personnel, incompatible standards, and lack of end-user tools that work with middle-tier services.

4. How do RDBMs and SQL lend themselves to a parallel processing environment?
In most queries, SQL behaves like a nonprocedural set processing language. This means that queries can be divided into parts and each can be run on a different processor simultaneously. In addition, multiple queries can be run in parallel.

5. Why is QBE so popular?
QBE is easy to learn for a wide variety of people wanting to make inquiries against a database. Its simplicity also makes it popular for developing prototypes. Some database systems translate QBE queries into SQL, making it easy to use to create SQL code.


Links to Other Pages in this Website:

Back to the Top