Archive for January, 2008

Describe a distributed database management system(DDBMS)

Monday, January 28th, 2008

 

Distributed computing involves storage and processing of logically related materials over a dispersed geographical area. This is useful for retrieval speed purposes as well as for disaster recovery and business continuity. Distributed processing is the databases ability to process logical business operation among shared machines while a distributed database stores logically related databases over two or more independent sites. The distributed database is composed of database fragments. A transaction processor TP requests data from an application processor AP or transaction manager, while a data processor is the software component on the local machine that stores and retrieves data.

How many different flavors of SQL are there?

Saturday, January 26th, 2008


A database programming language usually involves DBMS specific functions/syntax. If we use it instead of a standard SQL, the procedure code might not work in other DBMS, mostly due to the differences in the feature sets of the different database programming languages. So there are as many falvors as there are different RDBMS’s.

Please describe how a cross join (also known as the Cartesian PRODUCT) works.

Saturday, January 26th, 2008

A cross join is when we join every row of one table to every row of another table, which yields all possible pairs.  Note A cross join can be specified in two ways: using the JOIN syntax or by listing the tables in the FROM clause separated by commas without using a WHERE clause to supply join criteria.

Agile or Waterfall?

Monday, January 21st, 2008

Funny thing, I’ve been discussing various forms of project management and scope creep as it pertains to project failure. I argued that it is always better to modularize your development process into small deliverables and to have a core deliverable that would not succumb to change requests but would be delivered regardless. And to my great satisfaction, this approach is even a formal PM methodology also known as Agile.

Agile methodology focuses on short effective iteration of a project rather then the long more traditional approach of the Waterfall model. The project is effectively split into smaller modules and developed much faster then Waterfall with RFC’s implemented instantly rather then waiting for the development cycle to conclude.

I have always considered that if I could deliver a small but functional core to the client and then treat the RFC’s as plug ins, the project will cease to be a behemoth and become a much more manageable affair.

Network Address Translation

Sunday, January 20th, 2008

The NAT should be a choice of individual network managers.  Given the benefits of security and privacy that a NAT affords to the user there are plenty of workarounds for defeating the ill effects NAT has on certain protocols such as FTP. The article in Wiki stated that dedicated internet servers coupled be placed outside the NAT zone to allow for undisturbed end-to end connections, while behind the NAT screen the administrator could do what he pleased. It was also suggested that IPv6 will replace NAT, however I do not think this will happen given NAT’s popularity with vendors such as CISCO and its natural firewall properties that most people do not suspect even exist. Why be open to the entire world with a global network when you can have a NAT DMZ essentially protecting you against everyone who would ping your ports and seek access through the numerous Windows vulnerabilities?

Will wireless ever completely suplant wired communications?

Sunday, January 20th, 2008

Wireless will never completely supplant wired communication because there will always be walls, tunnels, weather, interference, dead spots, and other generally unpleasant inclement conditions that contribute to the “Can you hear me now?” syndrome.

Wireless communication is still too nescient to replace hard wired communications reliability and security. While fiber optic lines are almost impossible to tap, wireless communications are not as secure or reliable as wires. Wireless may be great in an office setting, but if you look at a WAN scenario, a signal would have to complete too many jumps in order to traverse large distances using an inordinate amount of power and establishing an unreasonably high service cost.

Some cities have gone completely wireless by installing Wi-Fi city wide, yet no one has mentioned that such amounts of microwave radiation may not be very healthy in the long run. Also, due to the relative short range of existing wireless devices, more such devices need to be deployed to create “hot zones” where dead spots are not a problem.

Looking into the future, I cannot image that a wireless device will ever be able to carry the same volume of information, at the same speed, reliability, and security as an optical cable.

Thin Client vs. Mainframe

Sunday, January 20th, 2008

The balance needs to be established on a case by case basis. One enterprise may find it useful to have a thin client infrastructure if they are running a high volume of highly repetitive tasks that rely on the same application or database to function as for example a call center.

The thin client is a good security tool as it would lock a client to have only the software that was necessary to access the server and would not allow users to change settings or adjust features that may open security gaps. Productivity may be increased if workers are thus forced to work within a single application.

The scalability of a thin client environment is also much improved in an environment where the server would not need to handle too many different applications and everyone is using the same portal to access the host. Yet you could add many clients to the server without much cost. The cost of upgrading the host may be larger, but the trade off in the greater agility would offset this cost.

A more decentralized architecture allows for a more robust development environment where each client has the applications and the data storage that the particular employee needs. If the client is working remotely, it may not be advantageous to transfer large volumes of data that can be stored on the client and use the server for smaller messaging needs, while leaving the heavy processing on the client machine. Backups are also important while it may not be efficient to store everyone’s work on a central server as opposed to individual desktops. Redundant backups between the client and the server ensure that the loss of one system will not halt the business process.

Thin – client architectures may be reminiscent of the old mainframe, but it seems they play a more fragmented role even in a highly centralized environment. Instead of having one mainframe do all the lifting, there are several servers that are working with clients, delivering data that the particular group of clients needs, rather then having every computation performed by the same machines.

Describe the triple constraint of project management

Sunday, January 20th, 2008

Scope, Time, And Cost… these should be relatively self explanatory and are fundamental to all project management.

What is meant by Progressive Elaboration?

Sunday, January 20th, 2008

This is when you break down the project into smaller more manageable parts.

What is Scope Creep? How do you control it?

Sunday, January 20th, 2008

Scope creep is the result of project requirements growing as the project progresses.  The project manager must be aware of any extra RFC(request for change) requests coming in and carefully manage the budgetary and time consequences of these requests. Uncontrolled scope creep can doom a project making it unwieldy and running it vastly over time and over budget.