How do you construct an
increment statement or decrement statement in C?
There are actually two
ways you can do this. One is to use the increment operator ++ and decrement
operator –. For example, the statement “x++” means to increment the value of
x by 1. Likewise, the statement “x –” means to
decrement the value of x by 1. Another way of writing increment statements is
to use the conventional + plus sign or – minus sign. In the case of “x++”, another way to write it is “x = x +1?.
Some coders debug their programs by
placing comment symbols on some codes instead of deleting it. How does this aid
in debugging?
Placing comment symbols /*
*/ around a code, also referred to as “commenting out”, is a way of isolating some codes that you think maybe causing
errors in the program, without deleting the code. The idea is that if the code
is in fact correct, you simply remove the comment symbols and continue on. It
also saves you time and effort on having to retype the codes if you have
deleted it in the first place.
In C programming, how do you insert quote
characters (‘ and “) into the output screen?
This is a common problem
for beginners because quotes are normally part of a printf statement. To insert
the quote character as part of the output, use the format specifiers \’ (for single quote), and \” (for double quote).
What is the use of a ‘\0' character?
It is referred to as a
terminating null character, and is used primarily to show the end of a string
value.
What is
the difference between the = symbol and == symbol?
Answer:The = symbol is often used
in mathematical operations. It is used to assign a value to a given variable.
On the other hand, the == symbol, also known as “equal to” or “equivalent to”, is a relational operator that is used to compare two values.
8) Which of
the following operators is incorrect and why? ( >=, <=, <>, ==)
Answer:<> is incorrect.
While this operator is correctly interpreted as “not
equal to” in writing conditional
statements, it is not the proper operator to be used in C programming. Instead,
the operator != must be used to indicate “not equal to” condition.
9) Can the curly brackets { } be used to
enclose a single line of code?
Answer:While curly brackets are
mainly used to group several lines of codes, it will still work without error
if you used it for a single line. Some programmers prefer this method as a way
of organizing codes to make it look clearer, especially in conditional
statements.
10) What are header files and what are its
uses in C programming?
Answer:
Header files are also known as
library files. They contain two essential things: the definitions and
prototypes of functions being used in a program. Simply put, commands that you
use in C programming are actually functions that are defined from within each
header files. Each header file contains a set of functions. For example:
stdio.h is a header file that contains definition and prototypes of commands
like printf and scanf.
11) Can I
use “int” data type to store the value 32768? Why?
Answer:No. “int” data type is capable of storing
values from -32768 to 32767. To store 32768, you can use “long int” instead. You can also use “unsigned int”, assuming you don’t intend to store negative values.
12) Can two
or more operators such as \n and \t be combined in a single line of program
code
Answer:Yes, it’s perfectly valid to combine operators, especially if the need
arises. For example: you can have a code like ” printf (“Hello\n\n\’World\’”) ” to output the text “Hello” on the first line and “World” enclosed in single quotes to
appear on the next two lines.
13) Why is
it that not all header files are declared in every C program?
Answer:The choice of declaring a
header file at the top of each C program would depend on what
commands/functions you will be using in that program. Since each header file
contains different function definitions and prototype, you would be using only
those header files that would contain the functions you will need. Declaring
all header files in every program would only increase the overall file size and
load of the program, and is not considered a good programming style.
14) When is
the “void” keyword used in a function?
Answer:
When declaring functions, you
will decide whether that function would be returning a value or not. If that
function will not return a value, such as when the purpose of a function is to
display some outputs on the screen, then “void” is to be placed at the leftmost part of the function header. When
a return value is expected after the function execution, the data type of the
return value is placed instead of “void”.
15) What are
compound statements?
Answer:
Compound statements are made up
of two or more program statements that are executed together. This usually
occurs while handling conditions wherein a series of statements are executed
when a TRUE or FALSE is evaluated. Compound statements can also be executed
within a loop. Curly brackets { } are placed before and after compound
statements.
16) Write a
loop statement that will show the following output:
1
12
123
1234
12345
Answer:[c]
for (a=1; a<=5; i++) {
for (b=1; b<=a; b++)
printf("%d",b);
printf("\n");
}
[/c]
17) What is
wrong in this statement? scanf(“%d”,whatnumber);
Answer:
An ampersand & symbol must be
placed before the variable name whatnumber. Placing & means whatever
integer value is entered by the user is stored at the “address” of the variable name. This is a
common mistake for programmers, often leading to logical errors.
18) How do
you generate random numbers in C?
Answer:Random numbers are
generated in C using the rand() command. For example: anyNum = rand() will
generate any integer number beginning from 0, assuming that anyNum is a
variable of type integer.
19) What
could possibly be the problem if a valid function name such as tolower() is
being reported by the C compiler as undefined?
The most probable reason behind this error is that the header file for that
function was not indicated at the top of the program. Header files contain the
definition and prototype for functions and commands used in a C program. In the
case of “tolower()”, the code “#include <ctype.h>” must be present at the beginning
of the program.
20) What does the format %10.2 mean when
included in a printf statement?
Answer:This format is used for
two things: to set the number of spaces allotted for the output number and to
set the number of decimal places. The number before the decimal point is for
the allotted space, in this case it would allot 10 spaces for the output
number. If the number of space occupied by the output number is less than 10,
addition space characters will be inserted before the actual output number. The
number after the decimal point sets the number of decimal places, in this case,
it’s 2 decimal spaces.
21) What is wrong with this statement? myName
= “Robin”;
Answer:You cannot use the = sign
to assign values to a string variable. Instead, use the strcpy function. The
correct statement would be: strcpy(myName, “Robin”);
22) How do
you determine the length of a string value that was stored in a variable?
Answer:To get the length of a
string value, use the function strlen(). For example, if you have a variable
named FullName, you can get the length of the stored string value by using this
statement: I = strlen(FullName); the variable I will now have the character
length of the string value.
23) Is it possible to initialize a variable
at the time it was declared?
Answer:Yes, you don’t have to write a separate assignment statement after the variable
declaration, unless you plan to change it later on. For example: char
planet[15] = “Earth”; does two things: it declares a string variable named planet,
then initializes it with the value “Earth”.
24) What are the different file extensions
involved when programming in C?
Answer:Source codes in C are
saved with .C file extension. Header files or library files have the .H file
extension. Every time a program source code is successfully compiled, it
creates an .OBJ object file, and an executable .EXE file.
25) What are reserved words?
Answer:Reserved words are words
that are part of the standard C language library. This means that reserved
words have special meaning and therefore cannot be used for purposes other than
what it is originally intended for. Examples of reserved words are int, void,
and return.
26) What are linked list?
Answer:A linked list is composed
of nodes that are connected with another. In C programming, linked lists are
created using pointers. Using linked lists is one efficient way of utilizing
memory for storage.
27) What are binary trees?
Answer:Binary trees are actually
an extension of the concept of linked lists. A binary tree has two pointers, a
left one and a right one. Each side can further branch to form additional
nodes, which each node having two pointers as well.
28) Not all reserved words are written in
lowercase. TRUE or FALSE?
Answer:FALSE. All reserved words
must be written in lowercase; otherwise the C compiler would interpret this as
unidentified and invalid.
9) What is wrong with this program statement?
void = 10;
Answer:The word void is a
reserved word in C language. You cannot use reserved words as a user-defined
variable.
30) Is this program statement valid? INT =
10.50;
Answer:Assuming that INT is a
variable of type float, this statement is valid. One may think that INT is a
reserved word and must not be used for other purposes. However, recall that
reserved words are express in lowercase, so the C compiler will not interpret
this as a reserved word.
31) What is a newline escape sequence?
Answer:A newline escape sequence
is represented by the \n character. This is used to insert a new line when
displaying data in the output screen. More spaces can be added by inserting
more \n characters. For example, \n\n would insert two spaces. A newline escape
sequence can be placed before the actual output expression or after.
32) What is output redirection?
Answer:It is the process of
transferring data to an alternative output source other than the display
screen. Output redirection allows a program to have its output saved to a file.
For example, if you have a program named COMPUTE, typing this on the command
line as COMPUTE >DATA can accept input from the user, perform certain
computations, then have the output redirected to a file named DATA, instead of
showing it on the screen.
33) What is the difference between functions
abs() and fabs()?
Answer:These 2 functions basically
perform the same action, which is to get the absolute value of the given value.
Abs() is used for integer values, while fabs() is used for floating type
numbers. Also, the prototype for abs() is under <stdlib.h>, while fabs()
is under <math.h>.
34) Write a simple code fragment that will
check if a number is positive or negative.
Answer:[c]
If (num>=0)
printf("number is positive");
else
printf ("number is negative");
[/c]
35) What
does the function toupper() do?
Answer:It is used to convert any
letter to its upper case mode. Toupper() function prototype is declared in
<ctype.h>. Note that this function will only convert a single character,
and not an entire string.
36) Which function in C can be used to append
a string to another string?
Answer:The strcat function. It
takes two parameters, the source string and the string value to be appended to
the source string.
37) Dothese two program statements perform
the same output? 1) scanf(“%c”,
&letter); 2) letter=getchar()
Answer:Yes, they both do the
exact same thing, which is to accept the next key pressed by the user and
assign it to variable named letter.
38) What is the difference between text files
and binary files?
Answer:Text files contain data
that can easily be understood by humans. It includes letters, numbers and other
characters. On the other hand, binary files contain 1s and 0s that only
computers can interpret.
39) is it possible to create your own header
files?
Answer:Yes, it is possible to
create a customized header file. Just include in it the function prototypes
that you want to use in your program, and use the #include directive followed
by the name of your header file.
40) What is dynamic data structure?
Answer:Dynamic data structure
provides a means for storing data more efficiently into memory. Using dynamic
memory allocation, your program will access memory spaces as needed. This is in
contrast to static data structure, wherein the programmer has to indicate a fix
number of memory space to be used in the program.
41) The % symbol has a special use in a
printf statement. How would you place this character as part of the output on
the screen?
Answer:You can do this by using
%% in the printf statement. For example, you can write printf(“10%%”) to have the output appear as
10% on the screen.
42) What are
the advantages and disadvantages of a heap?
Answer:Storing data on the heap
is slower than it would take when using the stack. However, the main advantage
of using the heap is its flexibility. That’s because memory in this
structure can be allocated and remove in any particular order. Slowness in the
heap can be compensated if an algorithm was well designed and
implemented.
1. What is
database?
A database is a collection
of information that is organized. So that it can easily be accessed,
managed, and updated.
2. What is DBMS?
DBMS stands for Database
Management System. It is a collection of programs that enables user to create
and maintain a database.
3.
What is a Database system?
The database and DBMS software
together is called as Database system.
4. What are the advantages of
DBMS?
I. Redundancy is
controlled.
II. Providing multiple user
interfaces.
III. Providing backup and
recovery
IV. Unauthorized access is
restricted.
V. Enforcing integrity constraints.
5. What is normalization?
It is a process of analysing the
given relation schemas based on their Functional Dependencies (FDs) and primary
key to achieve the properties
(1).Minimizing redundancy, (2). Minimizing insertion, deletion and update anomalies.
6. What is Data Model?
A collection of conceptual tools for describing data, data relationships data
semantics and constraints.
7. What is E-R model?
This data model is based on real
world that consists of basic objects called entities and of relationship
among these objects. Entities are described in a database by a set of
attributes.
8. What is Object Oriented model?
This model is based on collection
of objects. An object contains values stored in instance variables with in the
object. An object also contains bodies of code that operate on the object.
These bodies of code are called methods. Objects that contain same types of
values and the same methods are grouped together into classes.
9. What is an Entity?
An entity is a thing or object of importance about which data must be
captured.
10. What is DDL (Data Definition Language)?
A data base schema is specifies
by a set of definitions expressed by a special language called DDL.
11. What is DML (Data Manipulation Language)?
This language that enable user to
access or manipulate data as organised by appropriate data model.
Procedural DML or Low level: DML requires a user to specify what data are
needed and how to get those data. Non-Procedural DML or High level: DML
requires a user to specify what data are needed without specifying how to
get those data
12. What is DML Compiler?
It translates DML statements in a
query language into low-level instruction that the query evaluation engine can
understand.
13. What is
Query evaluation engine?
It executes low-level instruction
generated by compiler.
14. What is Functional Dependency?
Functional Dependency is the
starting point of normalization. Functional Dependency exists when a relation
between two attributes allows you to uniquely determine the corresponding
attribute’s value.
15. What is
1 NF (Normal Form)?
The first normal form or 1NF is
the first and the simplest type of normalization that can be implemented in a
database. The main aims of 1NF are to:
1. Eliminate duplicative columns
from the same table.
2. Create separate tables for
each group of related data and identify each row with a unique column (the
primary key).
16. What is Fully Functional dependency?
A functional dependency X Y is
full functional dependency if removal of any attribute A from X means that the
dependency does not hold any more.
17. What is
2NF?
A relation schema R is in 2NF if
it is in 1NF and every non-prime attribute A in R is fully functionally
dependent on primary key.
18. What is 3NF?
A relation is in third normal
form if it is in Second Normal Form and there are no functional (transitive)
dependencies between two (or more) non-primary key attributes.
19. What is BCNF (Boyce-Codd Normal Form)?
A table is in Boyce-Codd normal
form (BCNF) if and only if it is in 3NF and every determinant is a candidate
key.
20. What is 4NF?
Fourth normal form requires that
a table be BCNF and contain no multi-valued dependencies.
21. What is 5NF?
A table is in fifth normal form
(5NF) or Project-Join Normal Form (PJNF) if it is in 4NF and it cannot have a
lossless decomposition into any number of smaller tables.
22. What is a query?
A query with respect to DBMS
relates to user commands that are used to interact with a data base.
23. What is meant by query optimization?
The phase that identifies an
efficient execution plan for evaluating a query that has the least estimated
cost is referred to as query optimization.
24. What is an attribute?
It is a particular property, which describes the entity.
25. What is RDBMS?
Relational Data Base Management
Systems (RDBMS) are database management systems that maintain data records and
indices in tables.
26. What’s difference between DBMS and RDBMS?
DBMS provides a systematic and
organized way of storing, managing and retrieving from collection of logically
related information. RDBMS also provides what DBMS provides but above that it
provides relationship integrity.
27. What is SQL?
SQL stands for Structured Query
Language. SQL is an ANSI (American National Standards Institute) standard
computer language for accessing and manipulating database systems. SQL
statements are used to retrieve and update data in a database.
28. What is Stored Procedure?
A stored procedure is a named
group of SQL statements that have been previously created and stored in the
server database.
29. What is a view?
A view may be a subset of the
database or it may contain virtual data that is derived from the database files
but is not explicitly stored.
30. What is Trigger?
A trigger is a SQL procedure that
initiates an action when an event (INSERT, DELETE or UPDATE) occurs.
31. What is Index?
An index is a physical structure
containing pointers to the data.
32. What is extension and intension?
Extension -It is the number of
tuples present in a table at any instance. This is time dependent.
Intension -It is a constant value
that gives the name, structure of table and the constraints laid on it.
33. What do you mean by atomicity and
aggregation?
Atomicity-Atomicity states that
database modifications must follow an “all or nothing” rule. Each transaction is said to be “atomic.” If one part of the
transaction fails, the entire transaction fails.
Aggregation - A feature of the
entity relationship model that allows a relationship set to participate in
another relationship set. This is indicated on an ER diagram by drawing a
dashed box around the aggregation.
34. What is RDBMS KERNEL?
Two important pieces of RDBMS
architecture are the kernel, which is the software, and the data dictionary,
which consists of the system- level data structures used by the kernel to
manage the database.
35. Name the sub-systems of a RDBMS?
I/O, Security, Language
Processing, Process Control, Storage Management, Logging and Recovery,
Distribution Control, Transaction Control, Memory Management, Lock
Management.
36. How do you communicate with an RDBMS?
You communicate with an RDBMS
using Structured Query Language (SQL)
37. Disadvantage in File Processing System?
· Data redundancy &
inconsistency.
· Difficult in accessing
data.
· Data isolation.
· Data integrity.
· Concurrent access is
not possible.
· Security Problems.
38. What is VDL (View Definition Language)?
It specifies user views and their
mappings to the conceptual schema.
39. What is SDL (Storage Definition
Language)?
This language is to specify the
internal schema. This language may Specify the mapping between two
schemas.
40. Describe concurrency control?
Concurrency control is the
process managing simultaneous operations against a database so that database
integrity is no compromised. There are two approaches to concurrency control.
The pessimistic approach involves
locking and the optimistic approach involves versioning.
41. Describe the difference between
homogeneous and heterogeneous distributed database?
A homogenous database is one that
uses the same DBMS at each node. A heterogeneous database is one that may have
a different DBMS at each node.
42. What is a distributed database?
A distributed database is a
single logical database that is spread across more than one node or locations
that are all connected via some communication link.
43. Explain the difference between two and
three-tier architectures?
Three-tier architecture includes
a client and two server layers.
The application code
is stored on the application server and the database is stored on
the database server. A two-tier architecture includes a client and one server
layer. The database is stored on the database server.
44. Briefly describe the three types of SQL
commands?
Data definition language commands
are used to create, alter, and drop tables. Data manipulation commands are used
to insert, modify, update, and query data in the database. Data control
language commands help the DBA to control the database.
45. List some of the properties of a
relation?
Relations in a database have a
unique name and no multivalued attributes exist. Each row is unique and each
attribute within a relation has a unique name. The sequence of both columns and
rows is irrelevant.
46. Explain the differences between an
intranet and an extranet?
An Internet database is
accessible by everyone who has access to a Web site. An intranet database
limits access to only people within a given organization.
47. What is SQL Deadlock?
Deadlock is a unique situation in
a multi user system that causes two or more users to wait indefinitely for a
locked resource.
48. What is a Catalog?
A catalog is a table that
contains the information such as structure of each file, the type and storage format
of each data item and various constraints on the data .The information stored
in the catalog is called Metadata.
49. What is data ware housing & OLAP?
Data warehousing and OLAP (online
analytical processing) systems are the techniques used in many companies
to extract and analyze useful information from very large databases for
decision making .
50. Describe the three levels of data
abstraction?
Physical level: The lowest level
of abstraction describes how data are stored.
Logical level: The next higher
level of abstraction, describes what data are stored in database and what
relationship among those data.
View level: The highest level of
abstraction describes only part of entire database.
51. What is Data Independence?
Data independence means that the
application is independent of the storage structure and access strategy of
data.
52. How many types of relationship exist in
database designing?
There are three major
relationship models:-
One-to-one
One-to-many
Many-to-many
53. What is order by clause?
ORDER BY clause helps to sort the
data in either ascending order to descending
54. What is the use of DBCC commands?
DBCC stands for database
consistency checker. We use these commands to check the consistency
of the databases, i.e., maintenance, validation task and status checks.
55. What is
Collation?
Collation refers to a set of
rules that determine how data is sorted and compared.
56. What is
difference between DELETE & TRUNCATE commands?
Delete command removes the rows
from a table based on the condition that we provide with a WHERE clause.
Truncate will actually remove all the rows from a table and there will be no
data in the table after we run the truncate command.
57. What is Hashing technique?
This is a primary file
organization technique that provides very fast access to records on certain
search conditions.
58. What is a transaction?
A transaction is a logical unit
of database processing that includes one or more database access operations.
59. What are
the different phases of Transaction?
Analysis phase
Redo phase
Undo phase
60. What is “transparent dbms”?
It is one, which keeps its
physical structure hidden from user.
61. What are the primitive operations common
to all record management System?
Addition, deletion and
modification.
62. Explain the differences between
structured data and unstructured data.
Structured data are facts
concerning objects and events. The most important structured data are numeric,
character, and dates.
Structured data are stored in
tabular form. Unstructured data are multimedia data such as documents,
photographs, maps, images, sound, and video clips. Unstructured data are most
commonly found on Web servers and Web-enabled databases.
63. What are the major functions of the
database administrator?
Managing database structure,
controlling concurrent processing, managing processing rights and
responsibilities, developing database security, providing for database
recovery, managing the DBMS and maintaining the data repository.
64. What is
a dependency graph?
A dependency graph is a diagram
that is used to portray the connections between database elements.
65. Explain the difference between an
exclusive lock and a shared lock?
An exclusive lock prohibits other
users from reading the locked resource; a shared lock allows other users to
read the locked resource, but they cannot update it.
66. Explain the "paradigm mismatch"
between SQL and application programming languages.
SQL statements return a set of
rows, while an application program works on one row at a time. To resolve this
mismatch the results of SQL statements are processed as pseudofiles,
using a cursor or pointer to specify which row is being processed.
67.
Name four applications for triggers.
(1)Providing default values, (2)
enforcing data constraints,
(3) Updating views and (4)
enforcing referential integrity
68. What are the advantages of using stored
procedures?
The advantages of stored
procedures are (1) greater security, (2) decreased network traffic, (3) the
fact that SQL can be optimized and (4) code sharing which leads to less work,
standardized processing, and specialization among developers.
69. Explain the difference between attributes
and identifiers.
Entities have attributes.
Attributes are properties that describe the entity's characteristics. Entity
instances have identifiers. Identifiers are attributes that name, or identify,
entity instances.
70. What is Enterprise Resource Planning
(ERP), and what kind of a database is used in an ERP application?
Enterprise Resource Planning
(ERP) is an information system used in manufacturing companies and includes
sales, inventory, production planning, purchasing and other business functions.
An ERP system typically uses a multiuser database.
71. Describe the difference between embedded
and dynamic SQL?
Embedded SQL is the process of
including hard coded SQL statements. These statements do not change unless the
source code is modified. Dynamic SQL is the process of generating SQL on the
fly.The statements generated do not have to be the same each time.
72. Explain
a join between tables
A join allows tables to be linked
to other tables when a relationship between the tables exists. The
relationships are established by using a common column in the tables and often
uses the primary/foreign key relationship.
73. Describe a subquery.
A subquery is a query that is
composed of two queries. The first query (inner query) is within the WHERE
clause of the other query (outer query).
74. Compare
a hierarchical and network database model?
The hierarchical model is a
top-down structure where each parent may have many children but each child can
have only one parent. This model supports one-to-one and one-to-many
relationships.
The network model can be much
more flexible than the hierarchical model since each parent can have multiple
children but each child can also have multiple parents. This model supports
one-to-one, one-to-many, and many-to-many relationships.
75. Explain
the difference between a dynamic and materialized view.
A dynamic view may be created
every time that a specific view is requested by a user. A materialized view is
created and or updated infrequently and it must be synchronized with its
associated base table(s).
76. Explain what needs to happen to convert a
relation to third normal form.
First you must verify that a
relation is in both first normal form and second normal form. If the relation
is not, you must convert into second normal form. After a relation is in second
normal form, you must remove all transitive dependencies.
77. Describe the four types of indexes?
A unique primary index is unique
and is used to find and store a row. A nonunique primary index is not unique
and is used to find a row but also where to store a row (based on its unique
primary index). A unique secondary index is unique for each row and used to
find table rows. A nonunique secondary index is not unique and used to find
table rows.
78. Explain minimum and maximum cardinality?
Minimum cardinality is the
minimum number of instances of an entity that can be associated with each
instance of another entity. Maximum cardinality is the maximum number of
instances of an entity that can be associated with each instance of another
entity.
79. What is deadlock? How can it be avoided?
How can it be resolved once it occurs?
Deadlock occurs when two
transactions are each waiting on a resource that the other transaction holds.
Deadlock can be prevented by requiring transactions to acquire all locks at the
same time; once it occurs, the only way to cure it is to abort one of the
transactions and back out of partially completed work.
80. Explain what we mean by an ACID
transaction.
An ACID transaction is one that
is atomic, consistent, isolated, and durable. Durable means that database
changes are permanent. Consistency can mean either statement level or
transaction level consistency. With transaction level consistency, a
transaction may not see its own changes.Atomic means it is performed as a unit.
81. Under what conditions should indexes be
used?
Indexes can be created to enforce
uniqueness, to facilitate sorting, and to enable fast retrieval by column
values. A good candidate for an index is a column that is frequently used with
equal conditions in WHERE clauses.
82. What is difference between SQL and SQL
SERVER?
SQL is a language that provides
an interface to RDBMS, developed by IBM. SQL SERVER is a RDBMS just like
Oracle, DB2.
83. What is Specialization?
It is the process of defining a
set of subclasses of an entity type where each subclass contain all the attributes
and relationships of the parent entity and may have additional attributes and
relationships which are specific to itself.
84. What is generalization?
It is the process of finding
common attributes and relations of a number of entities and defining a common
super class for them.
85. What is
meant by Proactive, Retroactive and Simultaneous Update?
Proactive Update: The updates
that are applied to database before it becomes effective in real world.
Retroactive Update: The updates
that are applied to database after it becomes effective in real world.
Simultaneous Update: The updates
that are applied to database at the same time when it becomes effective in real
world.
86. What is RAID Technology?
Redundant array of inexpensive (or independent) disks. The main goal of raid
technology is to even out the widely different rates of performance improvement
of disks against those in memory and microprocessor. Raid technology employs
the technique of data striping to achieve higher transfer rates.
87. What are serial, non serial schedule?
A schedule S is serial if, for
every transaction T participating in the schedule, all the operations of T is
executed consecutively in the schedule, otherwise, the schedule is called
non-serial schedule.
88. What are conflict
serializable schedules?
A schedule S of n transactions is
serializable if it is equivalent to some serial schedule of the same n
transactions.
89. What is view serializable?
A schedule is said to be view
serializable if it is view equivalent with some serial schedule.
90. What is a foreign key?
A key of a relation schema is
called as a foreign key if it is the primary key of
some other relation to which it is related to.
91. What are the disadvantages of
using a dbms?
1) High initial investments in
h/w, s/w, and training.
2) Generality that a DBMS provides for defining and processing data.
3) Overhead for providing security, concurrency control, recovery, and
integrity functions.
92. What is Lossless join
property?
It guarantees that the spurious tuple generation does not occur with respect to
relation schemas after decomposition.
93. What is a Phantom Deadlock?
In distributed deadlock detection, the delay in propagating local information
might cause the deadlock detection algorithms to identify deadlocks that do not
really exist. Such situations are called phantom deadlocks and they lead to
unnecessary aborts.
94. What is a checkpoint and When
does it occur?
A Checkpoint is like a snapshot of the DBMS state. By taking checkpoints, the DBMS
can reduce the amount of work to be done during restart in the event of
subsequent crashes.
95. What is schema?
The description of a data base is called the database schema , which is
specified during database design and is not expected to change frequently . A
displayed schema is called schema diagram .We call each object in the schema as
schema construct.
1.What is
REDO in database?
A. Opposite of UNDO
B. Re-does the previous operation on database again.
C. REDO is used for ROLLBACK.
D. None of the above.
Answer: C
The most important point to remember is REDO is not the opposite of UNDO.
Whenever a DML transaction happens in database, the data to be updated goes to
the DATABASE BUFFER CACHE. From here the data is written to REDO BUFFER and
then to REDO Logs. These logs are saved for future use. Future ROLLBACK and
DATA RECOVERY operations require these logs. Without these logs it is
impossible to do DATA RECOVERY. If ARCHIVING is enabled then these logs are
bundled or archived and stored.
2. COMMIT takes more time than
ROLLBACK .
A. True
B. False
Answer: B
COMMIT simply confirms the transaction and writes the committed data to disk
and clears UNDO file. While ROLLBACK does the opposite transaction. ROLLBACK
also clears UNDO file. ROLLBACK takes much longer time because it has to
execute one full transaction (opposite) and COMMIT it. Hence COMMIT is faster
than ROLLBACK.
3. What is the difference between
ORDERBY and GROUPBY?
A. ORDERBY performs sorting while
GROUPBY AGGREGATES Data
B. GROUPBY sorts data while
ORDERBY puts data in order
C. Both perform sorting.
D. None of the above
Answer: A
The ORDER BY performs a sort operation. So think of a telephone phone
directory.
SELECT NAME FROM DIRECTORY ORDER BY NAME
This would ensure that the result set would be sorted in (by default) ascending
order.
The GROUP BY operation aggregates data in your result set. Continuing the
example of the telephone directory
SELECT CITY, COUNT(CITY) FROM DIRECTORY GROUP BY CITY
This would ensure that the result set would be grouped according to the city
where the individual lives. The COUNT and GROUP BY works in conjunction.
4. Which of the following records
all modifications to data?
A. UNDO file
B. Alert Log file
C. Archive file
D. Both A & B
Answer: C
Alert log file records all modifications to the database but modifications to
data alone is recorded by Archive files. UNDO file stores UNDO tables which
have opposite transactions recorded. Archive files also help in recovery of
data.
5. Which is better ?
A. SQL
B. Procedures
Answer: SQL
• SQL is often much shorter to write - you can do an update or summary
procedure in one line of code that would take you several lines of procedural.
• For set-based problems - SQL is much faster processor-wise and IO wise too
because all the underlining looping iteration is delegated to a database server
process that does it in a very low level way and uses IO/processor more
efficiently and knows the current state of the data - e.g. what other processes
are asking for the data
If you were to update say a sales person of all customers in a particular
region - your procedural way would look something like this
do until eof
if rs("state") = "NH" then
rs("salesperson") = "Mike"
end if
rs.next
loop
The SQL way would be: UPDATE customers SET salesperson = "Mike" WHERE
state = "NH"
If you had, say 2 or 3 tables you need to check, your procedural quickly
becomes difficult to manage as you pile on nested loop after loop.
1.What is
JVM?
The Java interpreter along with
the runtime environment required to run the Java application in called as Java
virtual machine(JVM)
2. What is the most important
feature of Java?
Java is a platform independent
language.
3. What do you mean by platform
independence?
Platform independence means that
we can write and compile the java code in one platform (eg Windows) and can
execute the class in any other supported platform eg (Linux,Solaris,etc).
4. What is the difference between a JDK and a
JVM?
JDK is Java Development Kit which
is for development purpose and it includes execution environment also. But JVM
is purely a run time environment and hence you will not be able to compile your
source files using a JVM.
5. What is
the base class of all classes?
java.lang.Object
6. What are
the access modifiers in Java?
There are 3 access modifiers.
Public, protected and private, and the default one if no identifier is
specified is called friendly, but programmer cannot specify the friendly
identifier explicitly.
7. What is
are packages?
A package is a collection of
related classes and interfaces providing access protection and namespace
management.
8. What is
meant by Inheritance and what are its advantages?
Inheritance is the process
of inheriting all the features from a class. The advantages of inheritance are
reusability of code and accessibility of variables and methods of the super
class by subclasses.
9. What is
the difference between superclass and subclass?
A super class is a class
that is inherited whereas sub class is a class that does the inheriting.
10. What is
an abstract class?
An abstract class is a class
designed with implementation gaps for subclasses to fill in and is deliberately
incomplete.
11. What are
the states associated in the thread?
Thread contains ready, running,
waiting and dead states.
12. What is
synchronization?
Synchronization is the mechanism
that ensures that only one thread is accessed the resources at a time.
13. What is
deadlock?
When two threads are waiting each
other and can’t precede the program is said to be deadlock.
14. What is
an applet?
Applet is a dynamic and
interactive program that runs inside a web page displayed by a java capable
browser
15. What is
the lifecycle of an applet?
init() method - Can be called
when an applet is first loaded
start() method - Can be called each time an applet is started.
paint() method - Can be called when the applet is minimized or maximized.
stop() method - Can be used when the browser moves off the applet’s page.
destroy() method - Can be called when the browser is finished with the applet.
16. How do
you set security in applets?
using setSecurityManager() method
17. What is
a layout manager and what are different types of layout managers available in
java AWT?
A layout manager is an
object that is used to organize components in a container. The different
layouts are available are FlowLayout, BorderLayout, CardLayout, GridLayout and
GridBagLayout
18. What is
JDBC?
JDBC is a set of Java API for
executing SQL statements. This API consists of a set of classes and interfaces
to enable programs to write pure Java Database applications.
19. What are
drivers available?
-a) JDBC-ODBC Bridge driver b)
Native API Partly-Java driver
c) JDBC-Net Pure Java driver d) Native-Protocol Pure Java driver
20. What is
stored procedure?
Stored procedure is a group of
SQL statements that forms a logical unit and performs a particular task. Stored
Procedures are used to encapsulate a set of operations or queries to execute on
database. Stored procedures can be compiled and executed with different
parameters and results and may have any combination of input/output parameters.
21. What is
the Java API?
The Java API is a large
collection of ready-made software components that provide many useful
capabilities, such as graphical user interface (GUI) widgets.
22. Why
there are no global variables in Java?
Global variables are globally
accessible. Java does not support globally accessible variables due to
following reasons:
1)The global variables breaks the referential transparency
2)Global variables creates collisions in namespace.
23. What are
Encapsulation, Inheritance and Polymorphism?
Encapsulation is the
mechanism that binds together code and data it manipulates and keeps both safe
from outside interference and misuse. Inheritance is the process by which one
object acquires the properties of another object. Polymorphism is the feature
that allows one interface to be used for general class actions.
24. What is
the use of bin and lib in JDK?
Bin contains all tools such as
javac, appletviewer, awt tool, etc., whereas lib contains API and all packages.
25. What is
method overloading and method overriding?
Method overloading: When a method
in a class having the same method name with different arguments is said to be
method overloading. Method overriding : When a method in a class having the
same method name with same arguments is said to be method overriding.
26. What is
the difference between this() and super()?
this() can be used to invoke a
constructor of the same class whereas super() can be used to invoke a super
class constructor.
27. What is
Domain Naming Service(DNS)?
It is very difficult to remember
a set of numbers(IP address) to connect to the Internet. The Domain Naming
Service(DNS) is used to overcome this problem. It maps one particular IP
address to a string of characters. For example, www. mascom. com implies com is
the domain name reserved for US commercial sites, moscom is the name of the
company and www is the name of the specific computer, which is mascom’s server.
28. What is
URL?
URL stands for Uniform Resource
Locator and it points to resource files on the Internet. URL has four
components: http://www. address. com:80/index.html, where http - protocol name,
address - IP address or host name, 80 - port number and index.html - file path.
29. What is
RMI and steps involved in developing an RMI object?
Remote Method Invocation (RMI)
allows java object that executes on one machine and to invoke the method of a
Java object to execute on another machine. The steps involved in developing an
RMI object are: a) Define the interfaces b) Implementing these interfaces c)
Compile the interfaces and their implementations with the java compiler d)
Compile the server implementation with RMI compiler e) Run the RMI registry f)
Run the application.
30. What is
RMI architecture?
RMI architecture consists of four
layers and each layer performs specific functions: a) Application layer -
contains the actual object definition. b) Proxy layer - consists of stub and
skeleton. c) Remote Reference layer - gets the stream of bytes from the
transport layer and sends it to the proxy layer. d) Transportation layer -
responsible for handling the actual machine-to-machine communication.
31. What is
a Java Bean?
A Java Bean is a software
component that has been designed to be reusable in a variety of different
environments.
32. What are
checked exceptions?
Checked exception are those which
the Java compiler forces you to catch. e.g. IOException are checked Exceptions.
33. What are runtime exceptions?
Runtime exceptions are those
exceptions that are thrown at runtime because of either wrong input data or
because of wrong business logic etc. These are not checked by the compiler at
compile time.
34. What is the difference between error and
an exception?
An error is an irrecoverable
condition occurring at runtime. Such as OutOfMemory error. These JVM errors and
you can not repair them at runtime. While exceptions are conditions that occur
because of bad input etc. e.g. FileNotFoundException will be thrown if the
specified file does not exist. Or a NullPointerException will take place if you
try using a null reference. In most of the cases it is possible to recover from
an exception (probably by giving user a feedback for entering proper values
etc.).
35. What is the purpose of finalization?
The purpose of finalization is to
give an unreachable object the opportunity to perform any cleanup processing
before the object is garbage collected. For example, closing a opened file,
closing a opened database Connection.
36. What is the difference between yielding
and sleeping?
When a task invokes its yield()
method, it returns to the ready state. When a task invokes its sleep() method,
it returns to the waiting state.
37. What is the difference between preemptive
scheduling and time slicing?
Under preemptive scheduling, the
highest priority task executes until it enters the waiting or dead states or a
higher priority task comes into existence. Under time slicing, a task executes
for a predefined slice of time and then reenters the pool of ready tasks. The
scheduler then determines which task should execute next, based on priority and
other factors.
38. What is mutable object and immutable
object?
If a object value is changeable
then we can call it as Mutable object. (Ex., StringBuffer, …) If you are not
allowed to change the value of an object, it is immutable object. (Ex., String,
Integer, Float, …)
39. What is
the purpose of Void class?
The Void class is an
uninstantiable placeholder class to hold a reference to the Class object
representing the primitive Java type void.
40. What is
JIT and its use?
Really, just a very fast
compiler… In this incarnation, pretty much a one-pass compiler — no offline
computations. So you can’t look at the whole method, rank the expressions
according to which ones are re-used the most, and then generate code. In theory
terms, it’s an on-line problem.
41. What is
nested class?
If all the methods of a inner
class is static then it is a nested class.
42. What is
HashMap and Map?
Map is Interface and Hashmap is
class that implements that.
43. What are
different types of access modifiers?
public: Any thing declared as
public can be accessed from anywhere. private: Any thing declared as private
can’t be seen outside of its class. protected: Any thing declared as protected
can be accessed by classes in the same package and subclasses in the other
packages. default modifier : Can be accessed only to classes in the same
package.
44. What is
the difference between Reader/Writer and InputStream/Output Stream?
The Reader/Writer class is
character-oriented and the InputStream/OutputStream class is byte-oriented.
45. What is
servlet?
Servlets are modules that extend
request/response-oriented servers, such as java-enabled web servers. For
example, a servlet might be responsible for taking data in an HTML order-entry
form and applying the business logic used to update a company’s order database.
46. What is Constructor?
A constructor is a special method
whose task is to initialize the object of its class.
It is special because its name is the same as the class name.
They do not have return types, not even void and therefore they cannot return
values.
They cannot be inherited, though a derived class can call the base class
constructor.
Constructor is invoked whenever an object of its associated class is
created.
47. What is
an Iterator ?
The Iterator interface is used to step through the elements of a Collection.
Iterators let you process each element of a Collection.
Iterators are a generic way to go through all the elements of a Collection no
matter how it is organized.
Iterator is an Interface implemented a different way for every Collection.
48. What is
the List interface?
The List interface provides
support for ordered collections of objects.
Lists may contain duplicate elements.
49. What is
memory leak?
A memory leak is where an
unreferenced object that will never be used again still hangs around in memory
and doesnt get garbage collected.
50. What is
the difference between the prefix and postfix forms of the ++ operator?
The prefix form performs the
increment operation and returns the value of the increment operation. The
postfix form returns the current value all of the expression and then performs
the increment operation on that value.
51. What is
the difference between a constructor and a method?
A constructor is a member
function of a class that is used to create objects of that class. It has the
same name as the class itself, has no return type, and is invoked using the new
operator.
A method is an ordinary member function of a class. It has its own name, a
return type (which may be void), and is invoked using the dot operator.
52. What
will happen to the Exception object after exception handling?
Exception object will be garbage
collected.
53. Difference
between static and dynamic class loading.
Static class loading: The process
of loading a class using new operator is called static class loading. Dynamic
class loading: The process of loading a class at runtime is called dynamic
class loading.
Dynamic class loading can be done by using Class.forName(….).newInstance().
54. Explain
the Common use of EJB
The EJBs can be used to
incorporate business logic in a web-centric application.
The EJBs can be used to integrate business processes in Business-to-business
(B2B) e-commerce applications.In Enterprise Application Integration
applications, EJBs can be used to house processing and mapping between
different applications.
55. What is JSP?
JSP is a technology that returns
dynamic content to the Web client using HTML, XML and JAVA elements. JSP page
looks like a HTML page but is a servlet. It contains Presentation logic and
business logic of a web application.
56. What is the purpose of apache tomcat?
Apache server is a standalone
server that is used to test servlets and create JSP pages. It is free and open
source that is integrated in the Apache web server. It is fast, reliable server
to configure the applications but it is hard to install. It is a servlet
container that includes tools to configure and manage the server to run the
applications. It can also be configured by editing XML configuration files.
57. Where pragma is used?
Pragma is used inside the
servlets in the header with a certain value. The value is of no-cache that
tells that a servlets is acting as a proxy and it has to forward request.
Pragma directives allow the compiler to use machine and operating system
features while keeping the overall functionality with the Java language. These
are different for different compilers.
58. Briefly explain daemon thread.
Daemon thread is a low priority
thread which runs in the background performs garbage collection operation for
the java runtime system.
59. What is a native method?
A native method is a method that
is implemented in a language other than Java.
60. Explain different way of using thread?
A Java thread could be
implemented by using Runnable interface or by extending the Thread class. The
Runnable is more advantageous, when you are going for multiple inheritance.
61. What are the two major components of
JDBC?
One implementation interface for
database manufacturers, the other implementation interface for application and
applet writers.
62. What kind of thread is the Garbage
collector thread?
It is a daemon thread.
63. What are the different ways to handle
exceptions?
There are two ways to handle
exceptions,
1. By wrapping the desired code in a try block followed by a catch block to
catch the exceptions. and
2. List the desired exceptions in the throws clause of the method and let the
caller of the method handle those exceptions.
64. How many objects are created in the
following piece of code?
MyClass c1, c2, c3;
c1 = new MyClass ();
c3 = new MyClass ();
Answer: Only 2 objects are created, c1 and c3. The reference c2 is only
declared and not initialized.
65.What is UNICODE?
Unicode is used for internal
representation of characters and strings and it uses 16 bits to represent each
other.
1. Define Network?
A network is a set of devices connected by physical media links. A network is
recursively is a connection of two or more nodes by a physical link or two or
more networks connected by one or more nodes.
2. What is Protocol?
A protocol is a set of rules that govern all aspects of information
communication.
3. What is a Link?
At the lowest level, a network can consist of two or more computers directly
connected by some physical medium such as coaxial cable or optical fiber. Such
a physical medium is called as Link.
4. What is a node?
A network can consist of two or more computers directly connected by some
physical medium such as coaxial cable or optical fiber. Such a physical medium
is called as Links and the computer it connects is called as Nodes.
5. What is a gateway or
Router?
A node that is connected to two or more networks is commonly called as router
or Gateway. It generally forwards message from one network to another.
6. Name the factors
that affect the performance of the network?
a.Number of Users
b. Type of transmission medium
c. Hardware
d. Software
7. What is Round Trip Time?
The duration of time it takes to send a message from one end of a network to
the other and back, is called RTT.
8. List the layers of
OSI
a. Physical Layer
b. Data Link Layer
c. Network Layer
d. Transport Layer
e. Session Layer
f. Presentation Layer
g. Application Layer
9. Which layers are
network support layers?
a. Physical Layer
b. Data link Layer and
c. Network Layers
10. Which layers are user
support layers?
a. Session Layer
b. Presentation Layer and
c. Application Layer
11. What is Pipelining ?
In networking and in other areas, a task is often begun before the previous
task has ended. This is known as pipelining.
12. What is Piggy Backing?
A technique called piggybacking is used to improve the efficiency of the
bidirectional protocols. When a frame is carrying data from A to B, it can also
carry control information about arrived (or lost) frames from B; when a frame
is carrying data from B to A, it can also carry control information about the
arrived (or lost) frames from A.
13. What are the two
types of transmission technology available?
(i) Broadcast and (ii) point-to-point
14. What is Bandwidth?
Every line has an upper limit and a lower limit on the frequency of signals it
can carry. This limited range is called the bandwidth.
15. Explain RIP (Routing
Information Protocol)
It is a simple protocol used to exchange information between the routers.
16. What is subnet?
A generic term for section of a large networks usually separated by a bridge or
router.
17. What is MAC address?
The address for a device as it is identified at the Media Access Control (MAC)
layer in the network architecture. MAC address is usually stored in ROM on the
network adapter card and is unique.
18. What is multiplexing?
Multiplexing is the process of dividing a link, the phycal medium, into logical
channels for better efficiency. Here medium is not changed but it has several
channels instead of one.
19. What is simplex?
It is the mode of communication between two devices in which flow of data is
unidirectional. i.e. one can transmit and other can receive.
E.g. keyboard and monitor.
20. What is half-duplex?
It is the mode of communication between two devices in which flow of data
is bi-directional but not at the same time. ie each station can transmit and
receive but not at the same time.
E.g walkie-talkies are half-duplex system.
21.What is full duplex?
It is the mode of communication between two devices in which flow of data
is bi-directional and it occurs simultaneously. Here signals going in either
direction share the capacity of the link.
E.g. telephone
22. What is sampling?
It is the process of obtaining amplitude of a signal at regular intervals.
23. What is Asynchronous
mode of data transmission?
It is a serial mode of transmission.
In this mode of transmission, each byte is framed with a start bit and a stop
bit. There may be a variable length gap between each byte.
24. What is Synchronous
mode of data transmission?
It is a serial mode of transmission.In this mode of transmission, bits are sent
in a continuous stream without start and stop bit and without gaps between
bytes. Regrouping the bits into meaningful bytes is the responsibility of the
receiver.
25. What are the different types of multiplexing?
Multiplexing is of three types. Frequency division multiplexing and wave
division multiplexing is for analog signals and time division multiplexing is
for digital signals.
26. What are the different transmission media?
The transmission media is broadly categorized into two types
i)Guided media(wired)
i)Unguided media(wireless)
27. What are the duties of data link layer?
Data link layer is responsible for carrying packets from one hop (computer or
router) to the next. The duties of data link layer include packetizing,
adderssing, error control, flow control, medium access control.
28. .What are the types of errors?
Errors can be categorized as a single-bit error or burst error. A single
bit error has one bit error per data unit. A burst error has two or more bits
errors per data unit.
29. What do you mean by redundancy?
Redundancy is the concept of sending extra bits for use in error detection.
Three common redundancy methods are parity check, cyclic redundancy check
(CRC), and checksum.
30. Define parity check.
In parity check, a parity bit is added to every data unit so that the total
number of 1s is even (or odd for odd parity).Simple parity check can detect all
single bit errors. It can detect burst errors only if the total number of
errors in each data unit is odd.In two dimensional parity checks, a block of
bits is divided into rows and a redundant row of bits is added to the whole
block.
31. Define cyclic redundancy check (CRC).
C RC appends a sequence of redundant bits derived from binary division to the
data unit. The divisor in the CRC generator is often represented as an
algebraic polynomial.
32. What is hamming code?
The hamming code is an error correction method using redundant bits. The number
of bits is a function of the length of the data bits. In hamming code for a
data unit of m bits, we use the formula 2r >= m+r+1 to determine the number
of redundant bits needed. By rearranging the order of bit transmission of the
data units, the hamming code can correct burst errors.
33.Define stop and wait ARQ.
In stop and wait ARQ, the sender sends a frame and waits for an
acknowledgement from the receiver before sending the next frame.
34. What do you mean by network control protocol?
Network control protocol is a set of protocols to allow the encapsulation of
data coming from network layer protocol that requires the services of PPP
35. What do you mean by CSMA?
To reduce the possibility of collision CSMA method was developed. In CSMA each
station first listen to the medium (Or check the state of the medium) before
sending. It can’t eliminate collision.
36. What do you mean by Bluetooth?
It is a wireless LAN technology designed to connect devices of different
functions such as telephones, notebooks, computers, cameras, printers and so
on.
37. What is IP address?
The internet address (IP address) is 32bits that uniquely and universally
defines a host or router on the internet.The portion of the IP address that
identifies the network is called netid. The portion of the IP address that
identifies the host or router on the network is called hostid.
38. What do you mean by ALOHA ?
It is the method used to solve the channel allocation problem .It is used for:
i)ground based radio broadcasting
ii)In a network in which uncoordinated users are competing for the use of
single channel.
It is of two types:
1.Pure aloha
2.Slotted aloha
39. What is Firewalls?
It is an electronic downbridge which is used to enhance the security of a
network. It’s configuration has two components.
i)Two routers
ii)Application gateway
the packets traveling through the LAN are inspected here and packets meeting
certain criteria are forwarded and others are dropped.
40. What is Repeaters ?
A receiver receives a signal before it becomes too weak or
corrupted,regenerates the original bit pattern,and puts the refreshed copy back
onto the link.It operates on phycal layer of OSI model.
41. What is Bridges?
They divide large network into smaller components.They can relay frames between
two originally separated LANs.They provide security through partitioning traffic.They
operate on physical and data link layer of OSI model.
42. What is ICMP?
ICMP is Internet Control Message Protocol, a network layer protocol of the
TCP/IP suite used by hosts and gateways to send notification of datagram
problems back to the sender. It uses the echo test / reply to test whether a
destination is reachable and responding. It also handles both control and error
messages.
43. What is FDM?
FDM is an analog technique that can be applied when the bandwidth of a link is
greater than the combined bandwidths of the signals to be transmitted.
44. What is WDM?
WDM is conceptually the same as FDM, except that the multiplexing and
demultiplexing involve light signals transmitted through fiber optics channel.
45. What is TDM?
TDM is a digital process that can be applied when the data rate capacity of the
transmission medium is greater than the data rate required by the sending and
receiving devices.
46. List the steps
involved in creating the checksum.
a. Divide the data into sections
b. Add the sections together using 1's complement arithmetic
c. Take the complement of the final sum, this is the checksum.
47. Compare Error Detection
and Error Correction:
The correction of errors is more difficult than the detection. In error
detection, checks only any error has occurred. In error correction, the exact
number of bits that are corrupted and location in the message are known. The
number of the errors and the size of the message are important factors.
48. What are the protocols
in application layer ?
The protocols defined in application layer are
• TELNET
• FTP
• SMTP
• DNS
49. What are the protocols
in transport layer ?
The protocols defined in transport layer are
• TCP
• UDP
50. What do you mean by
client server model ?
In client server model ,the client runs a program to request a service
and the server runs a program to provide the service.These two programs
communicate with each other. One server program can provide services to many
client programs.
51. What is TELNET ?
TELNET is a client –server application that allows a user to log on to a remote
machine,giving the user access to the remote system. TELNET is an abbreviation
of terminal
Network.
52. What is Hypertext
Transfer Protocol(HTTP) ?
It is the main protocol used to access data on the World Wide Web .the protol
transfers data in the form of plain text,hypertext,audio,video,and so on. It is
so called because its efficiency allows its use in a hypertext environment
where there are rapid jumps from one document to another.
53. What is World Wide Web ?
Ans: World Wide Web is a repository of information spread all over the world
and linked together.It is a unique combination of flexibility,portability,and
user-friendly features .The World Wide Web today is a distributed client-server
service,in which a client using a browser can access a service using a
server.The service provided is distributed over many locations called web
sites.
54. What is Beaconing?
The process that allows a network to self-repair networks problems. The stations
on the network notify the other stations on the ring when they are not
receiving the transmissions. Beaconing is used in Token ring and FDDI networks.
55. What is RAID?
A method for providing fault tolerance by using multiple hard disk drives.
56. What is NETBIOS and
NETBEUI?
NETBIOS is a programming interface that allows I/O requests to be sent to and
received from a remote computer and it hides the networking hardware from
applications.
NETBEUI is NetBIOS extended user interface. A transport protocol designed by
microsoft and IBM for the use on small subnets.
57. What is difference
between ARP and RARP?
The address resolution protocol (ARP) is used to associate the 32 bit IP
address with the 48 bit physical address, used by a host or a router to find
the physical address of another host on its network by sending a ARP query
packet that includes the IP address of the receiver.
The reverse address resolution protocol (RARP) allows a host to discover its
Internet address when it knows only its physical address.
58. What is the minimum and
maximum length of the header in the TCP segment and IP datagram?
The header should have a minimum length of 20 bytes and can have a maximum
length of 60 bytes.
59. What are major types of
networks and explain?
Server-based network: provide centralized control of network resources and rely
on server computers to provide security and network administration
Peer-to-peer network: computers can act as both servers sharing resources and
as clients using the resources.
60. What are the important
topologies for networks?
BUS topology: In this each computer is directly connected to primary network
cable in a single line.
Advantages: Inexpensive, easy to install, simple to understand, easy to extend.
STAR topology: In this all
computers are connected using a central hub.
Advantages: Can be inexpensive, easy to install and reconfigure and easy to
trouble shoot physical problems.
RING topology: In this all computers are connected in loop.
Advantages: All computers have equal access to network media, installation can
be simple, and signal does not degrade as much as in other topologies because
each computer regenerates it.
61. What is mesh network?
A network in which there are multiple network links between computers to provide
multiple paths for data to travel.
62. What is difference
between baseband and broadband transmission?
In a baseband transmission, the entire bandwidth of the cable is consumed by a
single signal. In broadband transmission, signals are sent on multiple
frequencies, allowing multiple signals to be sent simultaneously.
63. What is packet filter?
Packet filter is a standard router equipped with some extra functionality. The
extra functionality allows every incoming or outgoing packet to be inspected.
Packets meeting some criterion are forwarded normally. Those that fail the test
are dropped.
64. What is traffic
shaping?
One of the main causes of congestion is that traffic is often busy. If hosts
could be made to transmit at a uniform rate, congestion would be less common.
Another open loop method to help manage congestion is forcing the packet to be
transmitted at a more predictable rate. This is called traffic shaping.
65. What is multicast
routing?
Sending a message to a group is called multicasting, and its routing algorithm
is called multicast routing.
66. What is Kerberos?
It is an authentication service developed at the Massachusetts Institute of
Technology. Kerberos uses encryption to prevent intruders from discovering
passwords and gaining unauthorized access to files.
67. What is passive
topology?
When the computers on the network simply listen and receive the signal, they
are referred to as passive because they don’t amplify the signal in any way.
Example for passive topology - linear bus.
68. What are the advantages
of Distributed Processing?
a. Security/Encapsulation
b. Distributed database
c. Faster Problem solving
d. Security through redundancy
e. Collaborative Processing
69. Name the factors
that affect the reliability of the network?
a. Frequency of failure
b. Recovery time of a network after a failure
70. When a switch is said
to be congested?
It is possible that a switch receives packets faster than the shared link can
accommodate and stores in its memory, for an extended period of time, then the
switch will eventually run out of buffer space, and some packets will have to
be dropped and in this state is said to congested state.
1. What is
traceability matrix?
The relationship between test
cases and requirements is shown with the help of a document. This document is
known as traceability matrix.
2. What is Equivalence partitioning testing?
Equivalence partitioning testing
is a software testing technique which divides the application input test data
into each partition at least once of equivalent data from which test cases can
be derived. By this testing method it reduces the time required for
software testing.
3. Does automation replace manual testing?
Automation is the integration of
testing tools into the test environment in such a manner that the test
execution, logging, and comparison of results are done with little human
intervention. A testing tool is a software application which helps automate the
testing process. But the testing tool is not the complete answer for automation.
One of the huge mistakes done in testing automation is automating the wrong
things during development. Many testers learn the hard way that everything
cannot be automated. The best components to automate are repetitive tasks. So
some companies first start with manual testing and then see which tests are the
most repetitive ones and only those are then automated.
As a rule of thumb do not try to automate:
1.
Unstable
software: If the software is still under development and undergoing many
changes automation testing will not be that effective.
2.
Once in a
blue moon test scripts: Do not automate test scripts which will be run once in
a while.
3.
Code and
document review: Do not try to automate code and document reviews; they will
just cause trouble.
The following figure shows what
should not be automated.
All repetitive tasks which are
frequently used should be automated. For instance, regression tests are prime
candidates for automation because they're typically executed many times. Smoke,
load, and performance tests are other examples of repetitive tasks that are
suitable for automation. White box testing can also be automated using various
unit testing tools. Code coverage can also be a good candidate for automation.
4. What is white box testing and list the types
of white box testing?
White box testing technique
involves selection of test cases based on an analysis of the internal structure
(Code coverage, branches coverage, paths coverage, condition coverage
etc.) of a component or system. It is also known as Code-Based testing or
Structural testing. Different types of white box testing are :
1.
Statement
Coverage
2.
Decision
Coverage
5. How do
you define a testing policy?
The following are the important
steps used to define a testing policy in general. But it can change according
to your organization. Let's discuss in detail the steps of implementing a
testing policy in an organization.
Definition: The first step any organization
needs to do is define one unique definition for testing within the organization
so that everyone is of the same mindset.
How to achieve: How are we going to achieve our objective? Is there going
to be a testing committee, will there be compulsory test plans which need to be
executed, etc?.
Evaluate: After testing is implemented in a
project how do we evaluate it? Are we going to derive metrics of defects per
phase, per programmer, etc. Finally, it's important to let everyone know how
testing has added value to the project?.
Standards: Finally, what are the standards
we want to achieve by testing? For instance, we can say that more than 20
defects per KLOC will be considered below standard and code review should be
done for it.
6. What is the MAIN benefit of designing
tests early in the life cycle?
It helps prevent defects from
being introduced into the code.
7. What is risk-based testing?
Risk-based testing is the term
used for an approach to creating a test strategy that is based on prioritizing
tests by risk. The basis of the approach is a detailed risk analysis and
prioritizing of risks by risk level. Tests to address each risk are then
specified, starting with the highest risk first.
8. What is the KEY difference between
preventative and reactive approaches to testing?
Preventative tests are designed
early; reactive tests are designed after the software has been produced.
9. In
white box testing what do you verify?
In white box testing following
steps are verified.
1.
Verify the
security holes in the code
2.
Verify the
incomplete or broken paths in the code
3.
Verify the
flow of structure according to the document specification
4.
Verify the
expected outputs
5.
Verify all
conditional loops in the code to check the complete functionality of the
application
6.
Verify the
line by line coding and cover 100% testing
10. What is the difference between static and
dynamic testing?
a) Static testing: During Static
testing method, the code is not executed and it is performed using the software
documentation.
b) Dynamic
testing: To perform
this testing the code is required to be in an executable form.
11. What are different test levels?
There are four test levels
1.
Unit/component/program/module
testing
2.
Integration
testing
3.
System
testing
4.
Acceptance
testing
12. What is Integration testing?
Integration testing is a level of
software testing process, where individual units of an application are combined
and tested. It is usually performed after unit and functional testing.
13. What are the tables in test plans?
Test design, scope, test
strategies , approach are various details that Test plan document consists of.
1.
Test case
identifier
2.
Scope
3.
Features to
be tested
4.
Features not
to be tested
5.
Test
strategy & Test approach
6.
Test
deliverables
7.
Responsibilities
8.
Staffing and
training
9.
Risk and
Contingencies
14. What is configuration management?
Configuration management is the
detailed recording and updating of information for hardware and software
components. When we say components we not only mean source code. It can be
tracking of changes for software documents such as requirement, design, test
cases, etc.
When changes are done in adhoc and in an uncontrolled manner chaotic situations
can arise and more defects injected. So whenever changes are done it should be
done in a controlled fashion and with proper versioning. At any moment of time
we should be able to revert back to the old version. The main intention of
configuration management is to track our changes if we have issues with the
current system. Configuration management is done using baselines.
15. What is the difference between UAT (User
Acceptance Testing) and System testing?
System
Testing: System
testing is finding defects when the system under goes testing as a whole, it is
also known as end to end testing. In such type of testing, the application
undergoes from beginning till the end.
UAT: User
Acceptance Testing (UAT) involves running a product through a series of specific
tests which determines whether the product wil meet the needs of its
users.
16. How does
a coverage tool work?
While doing testing on the actual
product, the code coverage testing tool is run simultaneously. While the
testing is going on, the code coverage tool monitors the executed statements of
the source code. When the final testing is completed we get a complete report
of the pending statements and also get the coverage percentage.
17. What is Fault Masking?
Error condition hiding another
error condition.
18. What does COTS represent?
COTS - Commercial off The Shelf.
The purpose of which is allow
specific tests to be carried out on a system or network that resembles as
closely as possible the environment where the item under test will be used upon
release.
Test
Environment
What can be thought of as being
based on the project plan, but with greater amounts of detail?
Phase Test
Plan
19. Should testing be done only after the
build and execution phases are complete?
In traditional testing
methodology testing is always done after the build and execution phases.But
that's a wrong way of thinking because the earlier we catch a defect, the more
cost effective it is. For instance, fixing a defect in maintenance is ten times
more costly than fixing it during execution.
In the requirement phase we can verify if the requirements are met according to
the customer needs. During design we can check whether the design document
covers all the requirements. In this stage we can also generate rough
functional data. We can also review the design document from the architecture
and the correctness perspectives. In the build and execution phase we can
execute unit test cases and generate structural and functional data. And
finally comes the testing phase done in the traditional way. i.e., run the
system test cases and see if the system works according to the requirements.
During installation we need to see if the system is compatible with the
software. Finally, during the maintenance phase when any fixes are made we can
retest the fixes and follow the regression testing.Therefore, Testing should
occur in conjunction with each phase of the software development.
20. When
should testing be stopped?
It depends on the risks for the
system being tested. There are some criteria bases on which you can stop
testing.
1.
Deadlines
(Testing, Release)
2.
Test budget
has been depleted
3.
Bug rate
fall below certain level
4.
Test cases
completed with certain percentage passed
5.
Alpha or
beta periods for testing ends
6.
Coverage of
code, functionality or requirements are met to a specified point
21. Which of
the following is the main purpose of the integration strategy for integration
testing in the small?
The main purpose of the
integration strategy is to specify which modules to combine when and how many
at once.
22. What are
semi-random test cases?
Semi-random test cases are
nothing but when we perform random test cases and do equivalence partitioning
to those test cases, it removes redundant test cases, thus giving us
semi-random test cases.1 test for statement coverage, 2 for branch coverage
23. What is
black box testing? What are the different black box testing techniques?
Black box testing is the software
testing method which is used to test the software without knowing the internal
structure of code or program. This testing is usually done to check the
functionality of an application. The different black box testing techniques are
:
1.
Equivalence
Partitioning
2.
Boundary
value analysis
3.
Cause effect
graphing
24. Which
review is normally used to evaluate a product to determine its suitability for
intended use and to identify discrepancies?
Technical Review.
25. Why we
use decision tables?
The techniques of equivalence
partitioning and boundary value analysis are often applied to specific
situations or inputs. However, if different combinations of inputs result in
different actions being taken, this can be more difficult to show using
equivalence partitioning and boundary value analysis, which tend to be more
focused on the user interface. The other two specification-based techniques,
decision tables and state transition testing are more focused on business logic
or business rules. A decision table is a good way to deal with combinations of
things (e.g. inputs). This technique is sometimes also referred to as a
'cause-effect' table. The reason for this is that there is an associated logic
diagramming technique called 'cause-effect graphing' which was sometimes used
to help derive the decision table
26. Faults
found should be originally documented by whom?
By testers.
27. Are
there more defects in the design phase or in the coding phase?
The design phase is more error
prone than the execution phase. One of the most frequent defects which occur
during design is that the product does not cover the complete requirements of
the customer. Second is wrong or bad architecture and technical decisions make
the next phase, execution, more prone to defects. Because the design phase
drives the execution phase it's the most critical phase to test. The testing of
the design phase can be done by good review. On average, 60% of defects occur
during design and 40% during the execution phase.
28. What are
the Experience-based testing techniques?
In experience-based techniques,
people's knowledge, skills and background are a prime contributor to the test
conditions and test cases. The experience of both technical and business people
is important, as they bring different perspectives to the test analysis and
design process. Due to previous experience with similar systems, they may have
insights into what could go wrong, which is very useful for testing.
29. What
type of review requires formal entry and exit criteria, including metrics?
Inspection
30. Could
reviews or inspections be considered part of testing?
Yes, because both help detect
faults and improve quality.To test a function, what has to write a programmer,
which calls the function to be tested and passes it test data.
31. What is
a test log?
The IEEE Std. 829-1998 defines a
test log as a chronological record of relevant details about the execution of
test cases. It's a detailed view of activity and events given in chronological
manner.
32. What
does entry and exit criteria mean in a project?
Entry and exit criteria are a
must for the success of any project. If you do not know where to start and
where to finish then your goals are not clear. By defining exit and entry
criteria you define your boundaries.For instance, you can define entry criteria
that the customer should provide the requirement document or acceptance plan.
If this entry criteria is not met then you will not start the project. On the
other end, you can also define exit criteria for your project. For instance,
one of the common exit criteria in projects is that the customer has
successfully executed the acceptance test plan.
33. What is
the difference between verification and validation?
Verification is a review without
actually executing the process while validation is checking the product with
actual execution. For instance, code review and syntax check is verification
while actually running the product and checking the results is validation.
34. A Type
of functional Testing, which investigates the functions relating to detection
of threats, such as virus from malicious outsiders?
a)
Security Testing
Testing where in we subject the
target of the test , to varying workloads to measure and evaluate the
performance behaviours and ability of the target and of the test to continue to
function properly under these different workloads?
b) Load
Testing
Testing activity which is
performed to expose defects in the interfaces and in the interaction between
integrated components is?
c)
Integration Level Testing
35. Can you
explain process areas in CMMI?
A process area is the area of
improvement defined by CMMI. Every maturity level consists of process areas. A
process area is a group of practices or activities performed collectively to
achieve a specific objective. For instance, you can see from the following
figure we have process areas such as project planning, configuration
management, and requirement gathering.
36. What is
random/monkey testing? When it is used?
Random testing often known as
monkey testing. In such type of testing data is generated randomly often using
a tool or automated mechanism. With this randomly generated input the system is
tested and results are analysed accordingly. These testing are less reliable;
hence it is normally used by the beginners and to see whether the system will
hold up under adverse effects.
37. Which of
the following are valid objectives for incident reports?
Provide developers and other
parties with feedback about the problem to enable identification, isolation and
correction as necessary.
1.
Provide
ideas for test process improvement.
2.
Provide a
vehicle for assessing tester competence.
3.
Provide
testers with a means of tracking the quality of the system under test.
38. How does
load testing work for websites?
Websites have software called a
web server installed on the server. The user sends a request to the web server
and receives a response. So, for instance, when you type www.google.com the web
server senses it and sends you the home page as a response. This happens each
time you click on a link, do a submit, etc. So if we want to do load testing
you need to just multiply these requests and responses "N" times.
This is what an automation tool does. It first captures the request and
response and then just multiplies it by "N" times and sends it to the
web server, which results in load simulation.
So once the tool captures the
request and response, we just need to multiply the request and response with
the virtual user. Virtual users are logical users which actually simulate the
actual physical user by sending in the same request and response. If you want
to do load testing with 10,000 users on an application it's practically
impossible. But by using the load testing tool you only need to create 1000
virtual users.
39. What is
functional system testing?
Testing the end to end
functionality of the system as a whole is defined as a functional system
testing.
40. What
kind of input do we need from the end user to begin proper testing?
The product has to be used by the
user. He is the most important person as he has more interest than anyone else
in the project.
From the user we need the
following data:
The first thing we need is the
acceptance test plan from the end user. The acceptance test defines the entire
test which the product has to pass so that it can go into production.We also
need the requirement document from the customer. In normal scenarios the
customer never writes a formal document until he is really sure of his
requirements. But at some point the customer should sign saying yes this is
what he wants.
The customer should also define
the risky sections of the project. For instance, in a normal accounting project
if a voucher entry screen does not work that will stop the accounting
functionality completely. But if reports are not derived the accounting
department can use it for some time. The customer is the right person to say
which section will affect him the most. With this feedback the testers can
prepare a proper test plan for those areas and test it thoroughly.
The customer should also provide proper data for testing. Feeding proper data
during testing is very important. In many scenarios testers key in wrong data
and expect results which are of no interest to the customer.
41. Why can
be tester dependent on configuration management?
Because configuration management
assures that we know the exact version of the testware and the test object.
42. What is
a V-Model?
A software development model that
illustrates how testing activities integrate with software development phases.
43. What is
maintenance testing?
Triggered by modifications,
migration or retirement of existing software
45. Can you
explain the workbench concept?
In order to understand testing
methodology we need to understand the workbench concept. A Workbench is a way
of documenting how a specific activity has to be performed. A workbench is
referred to as phases, steps, and tasks as shown in the following figure.
There are five tasks for every
workbench:
Input: Every task needs some defined
input and entrance criteria. So for every workbench we need defined inputs.
Input forms the first steps of the workbench.
Execute: This is the main task of the workbench which will transform the
input into the expected
Output.
Check: Check steps assure
that the output after execution meets the desired result.
Production output: If the check is right the production output forms the
exit criteria of the workbench.
Rework: During the check step if the output is not as desired then we need
to again start from the execute step.
46. Can you
explain the concept of defect cascading?
Defect cascading is a defect
which is caused by another defect. One defect triggers the other defect. For
instance, in the accounting application shown here there is a defect which
leads to negative taxation. So the negative taxation defect affects the ledger
which in turn affects four other modules.
47. Can you
explain cohabiting software?
When we install the application
at the end client it is very possible that on the same PC other applications
also exist. It is also very possible that those applications share common DLLs,
resources etc., with your application. There is a huge chance in such
situations that your changes can affect the cohabiting software. So the best
practice is after you install your application or after any changes, tell other
application owners to run a test cycle on their application.
48. What
are Test comparators?
Is it really a test if you put
some inputs into some software, but never look to see whether the software produces
the correct result? The essence of testing is to check whether the software
produces the correct result, and to do that, we must compare what the software
produces to what it should produce. A test comparator helps to automate aspects
of that comparison.Who is responsible for document all the issues, problems and
open point that were identified during the review meeting
49. What is the difference between pilot and
beta testing?
The difference between pilot and
beta testing is that pilot testing is nothing but actually using the product
(limited to some users) and in beta testing we do not input real data, but it's
installed at the end customer to validate if the product can be used in
production.
50. What is the role of moderator
in review process?
The moderator (or review leader)
leads the review process. He or she determines, in co-operation with the
author, the type of review, approach and the composition of the review team.
The moderator performs the entry check and the follow-up on the rework, in
order to control the quality of the input and output of the review process. The
moderator also schedules the meeting, disseminates documents before the
meeting, coaches other team members, paces the meeting, leads possible
discussions and stores the data that is collected.
51. What is an equivalence partition (also
known as an equivalence class)?
An input or output ranges of
values such that only one value in the range becomes a test case.
52. Can you explain data-driven testing?
Normally an application has to be
tested with multiple sets of data. For instance, a simple login screen,
depending on the user type, will give different rights. For example, if the
user is an admin he will have full rights, while a user will have limited
rights and support if he only has read-only support rights. In this scenario
the testing steps are the same but with different user ids and passwords. In
data-driven testing, inputs to the system are read from data files such as
Excel, CSV (comma separated values), ODBC, etc. So the values are read from
these sources and then test steps are executed by automated testing.
53. When should configuration management
procedures be implemented?
During test planning.
54. What are the different strategies for
rollout to end users?
There are four major ways of
rolling out any project:
Pilot : The
actual production system is installed at a single or limited number of users.
Pilot basically means that the product is actually rolled out to limited users
for real work.
Gradual
Implementation : In this implementation we ship the entire product to the limited
users or all users at the customer end. Here, the developers get instant
feedback from the recipients which allow them to make changes before the
product is available. But the downside is that developers and testers maintain
more than one version at one time.
Phased Implementation: In this implementation the product is rolled out to
all users in incrementally. That means each successive rollout has some added
functionality. So as new functionality comes in, new installations occur and
the customer tests them progressively. The benefit of this kind of rollout is
that customers can start using the functionality and provide valuable feedback
progressively. The only issue here is that with each rollout and added
functionality the integration becomes more complicated.
Parallel
Implementation : In
these types of rollouts the existing application is run side by side with the
new application. If there are any issues with the new application we again move
back to the old application. One of the biggest problems with parallel
implementation is we need extra hardware, software, and resources.
55. What is the purpose of exit criteria?
The purpose of exit criteria is
to define when a test level is completed.
56. What determines the level of risk?
The likelihood of an
adverse event and the impact of the event determine the level of risk.
57. When is used Decision table testing?
Decision table testing is
used for testing systems for which the specification takes the form of rules or
cause-effect combinations. In a decision table the inputs are listed in a
column, with the outputs in the same column but below the inputs. The remainder
of the table explores combinations of inputs to define the outputs produced.
58. Can you explain tailoring?
As the name suggests, tailoring
is nothing but changing an action to achieve an objective according to
conditions. Whenever tailoring is done there should be adequate reasons for it.
Remember when a process is defined in an organization it should be followed
properly. So even if tailoring is applied the process is not bypassed or
omitted.
59. What is
Six Sigma?
Six Sigma is a statistical
measure of variation in a process. We say a process has achieved Six Sigma if
the quality is 3.4 DPMO (Defect per Million Opportunities). It's a
problem-solving methodology that can be applied to a process to eliminate the
root cause of defects and costs associated with it.
60. What are
the benefits of Independent Testing?
Independent testers are unbiased
and identify different defects at the same time.
61. In a
REACTIVE approach to testing when would you expect the bulk of the test design
work to be begun?
The bulk of the test design work
begun after the software or system has been produced.
62. What's
the difference between System testing and Acceptance testing?
Acceptance testing checks
the system against the "Requirements." It is similar to System
testing in that the whole system is checked but the important difference is the
change in focus:
System testing checks that the system that was specified has been
delivered. Acceptance testing checks that the system will deliver
what was requested. The customer should always do Acceptance testing and not
the developer.
The customer knows what is required from the system to achieve value in the
business and is the only person qualified to make that judgement. This testing
is more about ensuring that the software is delivered as defined by the
customer. It's like getting a green light from the customer that the software
meets expectations and is ready to be used.
63. Which of
the following defines the expected results of a test?
Test case
specification or test design specification.
Test case specification defines
the expected results of a test.
64. What is
the benefit of test independence?
It avoids author bias in defining
effective tests.
65. As part
of which test process do you determine the exit criteria?
The exit criteria is determined
on the bases of ‘Test Planning’.
66. Rapid
Application Development?
Rapid Application Development
(RAD) is formally a parallel development of functions and subsequent
integration. Components/functions are developed in parallel as if they were
mini projects, the developments are time-boxed, delivered, and then assembled
into a working prototype. This can very quickly give the customer something to
see and use and to provide feedback regarding the delivery and their
requirements. Rapid change and development of the product is possible using
this methodology. However the product specification will need to be developed
for the product at some point, and the project will need to be placed under
more formal controls prior to going into production.
67. What is
the difference between Testing Techniques and Testing Tools?
Testing
technique : Is a
process for ensuring that some aspects of the application system or unit
functions properly there may be few techniques but many tools.
Testing
Tools : Is a vehicle
for performing a test process. The tool is a resource to the tester, but itself
is insufficient to conduct testing
68. Can you
explain regression testing and confirmation testing?
Regression testing is used for
regression defects. Regression defects are defects occur when the functionality
which was once working normally has stopped working. This is probably because
of changes made in the program or the environment. To uncover such kind of
defect regression testing is conducted.
The following figure shows the difference between regression and confirmation
testing.
If we fix a defect in an existing application we use confirmation testing to
test if the defect is removed. It's very possible because of this defect or
changes to the application that other sections of the application are affected.
So to ensure that no other section is affected we can use regression testing to
confirm this.
69. What are
the different Methodologies in Agile Development Model?
There are currently seven
different agile methodologies, they are :
1.
Extreme
Programming (XP)
2.
Scrum
3.
Lean
Software Development
4.
Feature-Driven
Development
5.
Agile
Unified Process
6.
Crystal
7.
Dynamic
Systems Development Model (DSDM)
70. Which
activity in the fundamental test process includes evaluation of the testability
of the requirements and system?
A ‘Test
Analysis’ and ‘Design’ includes evaluation of the testability of the requirements and
system.
71. What is
typically the MOST important reason to use risk to drive testing efforts?
Because testing everything is not
feasible.
72. Consider
the following techniques. Which are static and which are dynamic techniques?
1.
Equivalence
Partitioning.
2.
Use Case
Testing.
3.
Data Flow
Analysis.
4.
Exploratory
Testing.
5.
Decision
Testing.
6.
Inspections.
Data Flow Analysis and
Inspections are static;
Equivalence Partitioning, Use Case Testing, Exploratory Testing and Decision
Testing are dynamic.
73. Can you
explain requirement traceability and its importance?
In most organizations testing
only starts after the execution/coding phase of the project. But if the organization
wants to really benefit from testing, then testers should get involved right
from the requirement phase.If the tester gets involved right from the
requirement phase then requirement traceability is one of the important reports
that can detail what kind of test coverage the test cases have.
74. Why are
static testing and dynamic testing described as complementary?
Because they share the aim of
identifying defects but differ in the types of defect they find.
75. What are
the phases of a formal review?
In contrast to informal reviews,
formal reviews follow a formal process. A typical formal review process
consists of six main steps:
1.
Planning
2.
Kick-off
3.
Preparation
4.
Review
meeting
5.
Rework
6.
Follow-up.
76. What are
the Structure-based (white-box) testing techniques?
Structure-based testing
techniques (which are also dynamic rather than static) use the internal
structure of the software to derive test cases. They are commonly called
'white-box' or 'glass-box' techniques (implying you can see into the system)
since they require knowledge of how the software is implemented, that is, how
it works. For example, a structural technique may be concerned with exercising
loops in the software. Different test cases may be derived to exercise the loop
once, twice, and many times. This may be done regardless of the functionality
of the software.
77. When “Regression Testing” should be performed?
After the software has changed or
when the environment has changed Regression testing should be performed.
78. What is
negative and positive testing?
A negative test is when you put
in an invalid input and receives errors. While a positive testing, is when you
put in a valid input and expect some action to be completed in accordance with
the specification.
79. What is
the purpose of a test completion criterion?
The purpose of test completion
criterion is to determine when to stop testing
80. What can
static analysis NOT find?
For example memory leaks.
81. What is
the difference between re-testing and regression testing?
Re-testing ensures the original
fault has been removed; regression testing looks for unexpected side effects.
82. What is
the one Key reason why developers have difficulty testing their own work?
Lack of Objectivity
83. “How much testing is enough?”
The answer depends on the risk
for your industry, contract and special requirements.
84. Why does
the boundary value analysis provide good test cases?
Because errors are frequently
made during programming of the different cases near the ‘edges’ of the range of values.
85. What
makes an inspection different from other review types?
It is led by a trained leader,
uses formal entry and exit criteria and checklists.
86. What are
the different kinds of variations used in Six Sigma?
Variation is the basis of Six
Sigma. It defines how many changes are happening in the output of a process. So
if a process is improved then this should reduce variations. In Six Sigma we
identify variations in the process, control them, and reduce or eliminate
defects.
87. What is test coverage?
Test coverage measures in some
specific way the amount of testing performed by a set of tests (derived in some
other way, e.g. using specification-based techniques). Wherever we can count
things and can tell whether or not each of those things has been tested by some
test, then we can measure coverage.
88. Why is
incremental integration preferred over “big bang” integration?
Because incremental integration
has better early defects screening and isolation ability
89. When do
we prepare RTM (Requirement traceability matrix), is it before test case
designing or after test case designing?
It would be before test case
designing. Requirements should already be traceable from Review activities
since you should have traceability in the Test Plan already. This question also
would depend on the organisation. If the organisations do test after
development started then requirements must be already traceable to their
source. To make life simpler use a tool to manage requirements.
90. What is
called the process starting with the terminal modules?
Bottom-up integration
91. Explain
Unit Testing, Integration Tests, System Testing and Acceptance Testing?
Unit testing
: Testing performed on a
single, stand-alone module or unit of code.
Integration Tests : Testing
performed on groups of modules to ensure that data and control are passed
properly between modules.
System testing
: Testing a predetermined combination of tests
that, when executed successfully meets requirements.
Acceptance testing : Testing
to ensure that the system meets the needs of the organization and the end user
or customer (i.e. validates that the right system was built).
92. How
would you estimate the amount of re-testing likely to be required?
Metrics from previous similar
projects and discussions with the development team.When testing a grade
calculation system, a tester determines that all scores from 90 to 100 will
yield a grade of A, but scores below 90 will not. This analysis is known as:
Equivalence
partitioning:
A test manager wants to use the
resources available for the automated testing of a web application. The best
choice is Tester, test automater, web specialist, DBA
93. During
the testing of a module tester ‘X’ finds a bug and assigned it to
developer. But developer rejects the same, saying that it’s not a bug. What ‘X’ should do?
Send to the detailed information
of the bug encountered and check the reproducibility
94. Does an
increase in testing always improve the project?
No an increase in testing does
not always mean improvement of the product, company, or project. In real test
scenarios only 20% of test plans are critical from a business angle. Running
those critical test plans will assure that the testing is properly done. The
following graph explains the impact of under testing and over testing. If you
under test a system the number of defects will increase, but if you over test a
system your cost of testing will increase. Even if your defects come down your
cost of testing has gone up.
95. Which
test cases are written first: white boxes or black boxes?
Normally black box test cases are
written first and white box test cases later. In order to write black box test
cases we need the requirement document and, design or project plan. All these
documents are easily available at the initial start of the project. White box
test cases cannot be started in the initial phase of the project because they
need more architecture clarity which is not available at the start of the
project. So normally white box test cases are written after black box test
cases are written.Black box test cases do not require system understanding but
white box testing needs more structural understanding. And structural
understanding is clearer i00n the later part of project, i.e., while executing
or designing. For black box testing you need to only analyze from the
functional perspective which is easily available from a simple requirement
document.
A type of integration testing in
which software elements, hardware elements, or both are combined all at once
into a component or an overall system, rather than in stages.
Big-Bang
Testing
Which technique can be used to
achieve input and output coverage? It can be applied to human input, input via
interfaces to a system, or interface parameters in integration testing.
Equivalence
partitioning
Conditions, test cases or test
scripts. This does not mean that other, more formal testing techniques will not
be used. For example, the tester may decide to use boundary value analysis but
will think through and test the most important boundary values without
necessarily writing them down. Some notes will be written during the
exploratory-testing session, so that a report can be produced afterwards.
96. What is “use case testing”?
In order to identify and execute
the functional requirement of an application from end to finish “use case” is used and the techniques used
to do this is known as “Use Case Testing”
97. What is
the difference between STLC ( Software Testing Life Cycle) and SDLC (
Software Development Life Cycle) ?
The complete Verification and
Validation of software is done in SDLC, while STLC only does Validation of the
system. SDLC is a part of STLC.
98. Describe
software review and formal technical review (FTR).
Software reviews works as a
filter for the software process. It helps to uncover errors and defects in
software. Software reviews enhance the quality of software. Software reviews
refine software, including requirements and design models, code, and testing
data.
A formal technical review (FTR)
is a software quality control activity. In this activity, software developer
and other team members are involved. The objectives of an FTR are:
1.
Uncover the
errors.
2.
Verify that
the software under technical review meets its requirements.
3.
To ensure
that the software must follow the predefined standards.
4.
To make
projects more manageable.
The FTR includes walkthroughs and
inspections.Each FTR is conducted as a normal meeting. FTR will be successful
only if it is properly planned, and executed.
99. What are
the attributes of good test case?
The following are the attributes
of good test case.
A good test has a high
probability of finding an error. To find the maximum error, the tester and
developer should have complete understanding of the software and attempt to
check all the conditions that how the software might fail.
A good test is not redundant.
Every test should have a different purpose from other, otherwise tester will
repeat the testing process for same condition.
A good test should be neither too
simple nor too complex. In general, each test should be executed separately. If
we combine more than one test into one test case, it might be very difficult to
execute. Sometimes we can combine tests but it may hide some errors.
100.
Describe cyclomatic complexity with example.
Cyclomatic complexity is a
software metric that measure the logical strength of the program. It was
developed by Thomas J. McCabe. Cyclomatic complexity is calculated by using the
control flow graph of the program. In the flow graph, nodes are represented by
circle. Areas bounded by edges and nodes are called regions. When counting
regions, we also include the area outside the graph as a region.
1. What’s the Software Testing?
A set of activities conducted with the intent of finding errors in software.
2.What is Acceptance Testing?
Testing conducted to enable a user/customer to determine whether to accept a
software product. Normally performed to validate the software meets a set of
agreed acceptance criteria.
3. What is Accessibility Testing?
Verifying a product is accessible to the people having disabilities (deaf,
blind, mentally disabled etc.).
4. What is Ad Hoc Testing?
A testing phase where the tester tries to 'break' the system by randomly trying
the system's functionality.
5. What is Application
Programming Interface (API)?
A formalized set of software
calls and routines that can be referenced by an application program in order to
access supporting system or network services.
6. What is
Backus-Naur Form?
A metalanguage used to formally
describe the syntax of a language.
7.
What is Beta Testing?
Testing of a release of a
software product conducted by customers.
8. What is
Application Binary Interface (ABI)?
A specification defining
requirements for portability of applications in binary forms across different
system platforms and environments.
9. What is
Binary Portability Testing?
Testing an executable application
for portability across system platforms and environments, usually for
conformation to an ABI specification.
10. What is Black Box Testing?
Testing based on an analysis of
the specification of a piece of software without reference to its internal
workings. The goal is to test how well the component conforms to the published
requirements for the component.
11. What is Bottom Up
Testing?
An approach to integration
testing where the lowest level components are tested first, then used to
facilitate the testing of higher level components. The process is repeated
until the component at the top of the hierarchy is tested.
12. What is
Boundary Testing?
Test which focus on the boundary or limit conditions of the software being
tested. (Some of these tests are stress tests).
13. What is
the difference between verification and validation?
Verification is a review without actually executing the process while
validation is checking the product with actual execution. For instance, code
review and syntax check is verification while actually running the product and
checking the results is validation.
14. What is
Bug?
A fault in a program which causes the program to perform in an unintended or
unanticipated manner.
15. What is Defect?
If software misses some feature or function from what is there in requirement
it is called as defect.
16. What is Branch Testing?
Testing in which all branches in the program source code are tested at least
once.
17. What is Breadth Testing?
A test suite that exercises the full functionality of a product but does not
test features in detail.
18. What's
the Alpha Testing ?
The Alpha Testing is conducted at the developer sites and in a controlled
environment by the end user of the software
19. What's
the Beta Testing ?
Testing the application after the installation at the client place.
20. What is Component Testing ?
Testing of individual software
components (Unit Testing).
21. What is
End-to-End testing ?
Testing a complete application
environment in a situation that mimics real-world use, such as interacting with
a database, using network communications, or interacting with other hardware,
applications, or systems if appropriate.
22. What is CAST?
Computer Aided Software Testing.
23. What is CMM?
The Capability Maturity Model for
Software (CMM or SW-CMM) is a model for judging the maturity of the software
processes of an organization and for identifying the key practices that are
required to increase the maturity of these processes.
24. What is Cause Effect Graph?
A graphical representation of
inputs and the associated outputs effects which can be used to design test
cases.
25. What is Coding?
The generation of source code.
26. What is Compatibility
Testing?
Testing whether software is compatible with other elements of a system with
which it should operate, e.g. browsers, Operating Systems, or hardware.
27. What is Cyclomatic
Complexity?
A measure of the logical complexity of an algorithm, used in white-box testing.
28. What is Debugging?
The process of finding and removing the causes of software failures.
29. What is Dependency Testing?
Examines an application's requirements for pre-existing software, initial
states and configuration in order to maintain proper functionality.
30. What are the different Ways of doing
Black Box testing?
There are five methodologies most frequently used:
A)Top down according to budget
B)WBS (Work Breakdown Structure)
C)Guess and gut feeling
D)Early project data
E)TPA (Test Point Analysis)
31 What’s the Database testing?
In database testing, we can check the integrity of database field values.
32. How many types of testing?
There are two types of testing-
Functional- Black Box Testing
Structural- white Box Testing
33. What does the mclabe cyclomatic
complexity of a program determine?
Cyclomatic complexity is likely the most widely used complexity metric in
software engineering. It describes the complexity of a procedure by measuring
the linearly independent paths through its source code.
34. What is the difference between
interoperability and compatibility testing with some examples?
Interoperatability:-To check if the software can co exist with other supporting
softwares in the system
Compatibility:-To check if the software runs on different types of operating
systems according to customer requirements.
35. Which testing method is used to check the
software in abnormal condition?
1) Stress testing
2) Security testing
3) Recovery testing
4) Beta testing
36. What’s the Test Case?
A set of test inputs, execution, and expected result developed for a particular
objective.
37. What’s the Traceability Matrix?
A document that showing the relationship between Test Requirements and Test
Cases.
38. How many types of approaches are used in
Integration Testing?
There are two types of approaches used-
Bottom-Up
Top-Down
39. What is Emulator?
A device, computer program, or
system that accepts the same inputs and produces the same outputs as a given
system.
40. What is Functional Decomposition?
A technique used during planning,
analysis and design; creates a functional hierarchy for the software.
41. What is Glass Box Testing?
A synonym for White Box Testing.
42. What is
Gorilla Testing?
Testing one particular module, functionality heavily.
43. What is Gray Box Testing?
A combination of Black Box and
White Box testing methodologies testing a piece of software against its
specification but using some knowledge of its internal workings.
44. What is Integration Testing?
Testing of combined parts of an application to determine if they function
together correctly. Usually performed after unit and functional testing. This
type of testing is especially relevant to client/server and distributed
systems.
45. What is Metric?
A standard of measurement.
Software metrics are the statistics describing the structure or content of a
program. A metric should be a real objective measurement of something such as
number of bugs per lines of code.
46. What is Quality Assurance?
All those planned or systematic actions necessary to provide adequate
confidence that a product or service is of the type and quality needed and
expected by the customer.
47. What is Quality Control?
The operational techniques and the activities used to fulfill and verify
requirements of quality.
48. What is Race Condition?
A cause of concurrency problems. Multiple accesses to a shared resource, at
least one of which is a write, with no mechanism used by either to moderate
simultaneous access.
49. What is Scalability Testing?
Performance testing focused on ensuring the application under test gracefully
handles increases in work load.
50. What is Software Requirements
Specification?
A deliverable that describes all data, functional and behavioral requirements,
all constraints, and all validation requirements for software.
1. What is an operating system?
An operating system is a program
that acts as an intermediary between the user and the computer hardware. The
purpose of an OS is to provide a convenient environment in which user can
execute programs in a convenient and efficient manner.
2. What are the different
operating systems?
1.
Batched operating systems
2.
Multi-programmed operating systems
3.
timesharing operating systems
4.
Distributed operating systems
5.
Real-time operating systems
3. What are the basic functions of an operating system?
Operating system controls and
coordinates the use of the hardware among the various applications programs for
various uses. Operating system acts as resource allocator and manager. Also
operating system is control program which controls the user programs to prevent
errors and improper use of the computer. It is especially concerned with the
operation and control of I/O devices.
4. What is kernel?
Kernel is the core and essential
part of computer operating system that provides basic services for all parts of
OS.
5. What is difference between micro kernel and macro kernel?
Micro kernel is a kernel which
run services those are minimal for operating system performance. In this kernel
all other operations are performed by processor.
Macro Kernel is a combination of
micro and monolithic kernel. In monolithic kernel all operating system code is
in single executable image.
6. What is dead lock?
Deadlock is a situation or
condition where the two processes are waiting for each other to complete so
that they can start. This result both the processes to hang.
7. What is a process?
A program in execution is called
a process.
Processes are of two types:
1. Operating system processes
2. User processes
8. What are the states of a process?
1. New
2. Running
3. Waiting
4. Ready
5. Terminated
9. What is starvation and aging?
Starvation is Resource management
problem where a process does not get the resources it needs for a long time
because the resources are being allocated to other processes.
Aging is a technique to avoid
starvation in a scheduling system.
10. What is semaphore?
Semaphore is a variable, whose
status reports common resource, Semaphore is of two types one is Binary
semaphore and other is Counting semaphore.
11. What is context switching?
Transferring the control from one
process to other process requires saving the state of the old process and
loading the saved state for new process. This task is known as context
switching.
12. What is a thread?
A thread is a program line under
execution. Thread sometimes called a light-weight process, is a basic unit of
CPU utilization; it comprises a thread id, a program counter, a register set,
and a stack
13. What is process synchronization?
A situation, where several
processes access and manipulate the same data concurrently and the outcome of
the execution depends on the particular order in which the access takes place,
is called race condition. To guard against the race condition we need to ensure
that only one process at a time can be manipulating the same data. The
technique we use for this is called process synchronization.
14. What is virtual
memory?
Virtual memory is hardware
technique where the system appears to have more memory that it actually does.
This is done by time-sharing, the physical memory and storage parts of the memory
one disk when they are not actively being used.
15. What is thrashing?
It is a phenomenon in virtual
memory schemes when the processor spends most of its time swapping pages,
rather than executing instructions. This is due to an inordinate number of page
faults.
16. What is
fragmentation? Tell about different types of fragmentation?
When many of free blocks are too
small to satisfy any request then fragmentation occurs. External fragmentation
and internal fragmentation are two types of fragmentation. External
Fragmentation happens when a dynamic memory allocation algorithm allocates some
memory and a small piece is left over that cannot be effectively used.
Internal fragmentation is the space wasted inside of allocated memory blocks
because of restriction on the allowed sizes of allocated blocks.
17. What are necessary
conditions for dead lock?
1. Mutual exclusion (where at
least one resource is non-sharable)
2. Hold and wait (where a process
holds one resource and waits for other resource)
3. No preemption (where the
resources can’t be preempted)
4. Circular wait (where p[i] is
waiting for p[j] to release a resource. i= 1,2,…n
j=if (i!=n) then i+1
else 1 )
18. What is cache
memory?
Cache memory is random access
memory (RAM) that a computer microprocessor can access more quickly than it can
access regular RAM. As the microprocessor processes data, it looks first in the
cache memory and if it finds the data there (from a previous reading of data),
it does not have to do the more time-consuming reading of data from larger
memory.
19. What is logical and physical
addresses space?
Logical address space is
generated from CPU; it bound to a separate physical address space is central to
proper memory management. Physical address space is seen by the memory unit.
Logical address space is virtual address space. Both these address space will
be same at compile time but differ at execution time.
20. Differentiate
between Complier and Interpreter?
An interpreter reads one
instruction at a time and carries out the actions implied by that instruction.
It does not perform any translation. But a compiler translates the entire
instructions
21. What is Throughput,
Turnaround time, waiting time and Response time?
Throughput –
number of processes that complete their execution per time unit
Turnaround time –
amount of time to execute a particular process
Waiting time –
amount of time a process has been waiting in the ready queue
Response time –
amount of time it takes from when a request was submitted until the first
response is produced, not output (for time-sharing environment)
22. What is
Memory-Management Unit (MMU)?
Hardware device that maps virtual
to physical address. In MMU scheme, the value in the relocation register is
added to every address generated by a user process at the time it is sent to
memory.
->The user program deals with
logical addresses; it never sees the real physical addresses
23. What is a Real-Time
System?
A real time process is a process
that must respond to the events within a certain time period. A real time
operating system is an operating system that can run real time processes
successfully
24. What is a trap and
trapdoor?
Trapdoor is a secret undocumented
entry point into a program used to grant access without normal methods of access
authentication. A trap is a software interrupt, usually the result of an error
condition.
25. When is a system in
safe state?
The set of dispatchable processes
is in a safe state if there exists at least one temporal order in which all
processes can be run to completion without resulting in a deadlock.
26. Explain the concept of the
Distributed systems?
Distributed systems work in a
network. They can share the network resources, communicate with each other.
27. What is
cache-coherency?
In a multiprocessor system there
exist several caches each may containing a copy of same variable A. Then a
change in one cache should immediately be reflected in all other caches this
process of maintaining the same value of a data in all the caches s called cache-coherency.
28. What is a long term
scheduler & short term schedulers?
Long term schedulers are the job
schedulers that select processes from the job queue and load them into memory
for execution. The short term schedulers are the CPU schedulers that select a
process from the ready queue and allocate the CPU to one of them.
29. Explain the meaning
of mutex.
Mutex is the short form for ‘Mutual
Exclusion object’. A mutex allows multiple threads
for sharing the same resource. The resource can be file. A mutex with a unique
name is created at the time of starting a program. A mutex must be locked from
other threads, when any thread that needs the resource. When the data is no
longer used / needed, the mutex is set to unlock.
30. What is cycle
stealing?
We encounter cycle stealing in
the context of Direct Memory Access (DMA). Either the DMA controller can use
the data bus when the CPU does not need it, or it may force the CPU to
temporarily suspend operation. The latter technique is called cycle stealing. Note
that cycle stealing can be done only at specific break points in an instruction
cycle.
31. What is Marshalling?
The process of packaging and
sending interface method parameters across thread or process boundaries.
32. What is a daemon?
Daemon is a program that runs in
the background without user’s interaction. A daemon runs in a
multitasking operating system like UNIX. A daemon is initiated and controlled
by special programs known as ‘processes’.
33. What is pre-emptive
and non-preemptive scheduling?
Preemptive scheduling: The
preemptive scheduling is prioritized. The highest priority process should
always be the process that is currently utilized.
Non-Preemptive scheduling: When a
process enters the state of running, the state of that process is not deleted
from the scheduler until it finishes its service time.
34. What is busy
waiting?
The repeated execution of a loop
of code while waiting for an event to occur is called busy-waiting. The CPU is
not engaged in any real productive activity during this period, and the process
does not progress toward completion.
35. What is page
cannibalizing?
Page swapping or page
replacements are called page cannibalizing.
36. What is SMP?
To achieve maximum efficiency and
reliability a mode of operation known as symmetric multiprocessing is used. In
essence, with SMP any process or threads can be assigned to any processor.
37. What is process
migration?
It is the transfer of sufficient
amount of the state of process from one machine to the target machine.
38. Difference between
Primary storage and secondary storage?
Primary memory is the main memory
(Hard disk, RAM) where the operating system resides.
Secondary memory can be external
devices like CD, floppy magnetic discs etc. secondary storage cannot be directly
accessed by the CPU and is also external memory storage.
39. Define compactions.
Compaction is a process in which
the free space is collected in a large memory chunk to make some space
available for processes.
40. What are residence
monitors?
Early operating systems were
called residence monitors.
41. What is dual-mode
operation?
In order to protect the operating
systems and the system programs from the malfunctioning programs the two mode
operations were evolved
System mode
User mode.
42. What is a device queue?
A list of processes waiting for a
particular I/O device is called device queue.
43. What are the
different types of Real-Time Scheduling?
Hard real-time systems required
to complete a critical task within a guaranteed amount of time.
Soft real-time computing requires that critical processes receive priority over
less fortunate ones.
44. What is relative
path and absolute path?
Absolute path-- Exact path from
root directory.
Relative path-- Relative to the current path.
45. What are the disadvantages
of context switching?
Time taken for switching from one
process to other is pure over head. Because the system does no useful work
while switching. So one of the solutions is to go for threading when ever
possible.
46. What is a data
register and address register?
Data registers - can be assigned
to a variety of functions by the programmer. They can be used with any machine
instruction that performs operations on data.
Address registers - contain main memory addresses of data and instructions or
they contain a portion of the address that is used in the calculation of the
complete addresses.
47. What is DRAM?
Dynamic Ram stores the data in
the form of Capacitance, and Static RAM stores the data in Voltages.
48. What are local and
global page replacements?
Local replacement means that an
incoming page is brought in only to the relevant process' address space. Global
replacement policy allows any page frame from any process to be replaced. The
latter is applicable to variable partitions model only.
49. Explain the concept
of the batched operating systems?
In batched operating system the
users gives their jobs to the operator who sorts the programs according to
their requirements and executes them. This is time consuming but makes the CPU
busy all the time.
50. What is SCSI?
SCSI - Small computer systems
interface is a type of interface used for computer components such as hard
drives, optical drives, scanners and tape drives. It is a competing technology
to standard IDE (Integrated Drive Electronics).
51.When
is a system in safe state?
The set of dispatchable processes
is in a safe state if there exists at least one temporal order in which all
processes can be run to completion without resulting in a deadlock.
52. What is cycle stealing?
We encounter cycle stealing in
the context of Direct Memory Access (DMA). Either the DMA controller can use
the data bus when the CPU does not need it, or it may force the CPU to
temporarily suspend operation. The latter technique is called cycle stealing. Note
that cycle stealing can be done only at specific break points in an instruction
cycle.
53. What is an idle thread?
The special thread a dispatcher
will execute when no ready thread is found.
54. What is FtDisk?
It is a fault tolerance disk
driver for Windows NT.
55.What is Dispatcher?
Dispatcher module gives control
of the CPU to the process selected by the short-term scheduler; this involves:
Switching context, Switching to user mode, Jumping to the proper location in
the user program to restart that program, dispatch latency –
time it takes for the dispatcher to stop one process and start another running.
56. When does the condition 'rendezvous' arise?
In message passing, it is the
condition in which, both, the sender and receiver are blocked until the message
is delivered.
57. What is process spawning?
When the OS at the explicit
request of another process creates a process, this action is called process
spawning
58. What are the reasons for
process suspension?
1) swapping
2) interactive user request
3) timing
4) parent process request
59.
What are the sub-components of I/O manager in Windows NT?
1) Network redirector/ Server
2) Cache manager.
3) File systems
4) Network driver
5) Device driver
60. What is a drawback of MVT?
1) ability to support multiple processors
2) virtual storage
3) source level debugging
C++
Introduction
The C++ programming language provides a model of memory and computation that
closely matches that of most computers. In addition, it provides powerful and
flexible mechanisms for abstraction; that is, language constructs that allow
the programmer to introduce and use new types of objects that match the
concepts of an application. Thus, C++ supports styles of programming that rely
on fairly direct manipulation of hardware resources to deliver a high degree of
efficiency plus higher-level styles of programming that rely on user-defined
types to provide a model of data and computation that is closer to a human’s
view of the task being performed by a computer. These higher-level styles of
programming are often called data abstraction, object-oriented programming, and
generic programming.
C++ History
In the early 1980's, also at Bell Laboratories, another programming language
was created which was based upon the C language.This new language was developed
by Bjarne Stroustrup and was called C++. According to Stroustrup, the
purpose of C++ is to make writing good programs easier and more pleasant for
the individual programmer.When he designed C++, he added OOP (Object Oriented
Programming) features to C without significantly changing the C component. Thus
C++ is a "relative" of C, meaning that any valid C program is also a
valid C++ program.
C++ Features
1)Class
User-defined types
2)Operator overloading
Attach different meaning to expressions such as a + b
3)References
Pass-by-reference function arguments
4)Virtual Functions
Dispatched depending on type at run time
5)Templates
Macro-like polymorphism for containers (e.g., arrays)
6)Exceptions
C++ Structure
1)Introduction
2)Memory alignment
3)Bit Fields
4)Using structure in Assembly
1. If you want many different
iterators to be active simultaneously then which of the followings can be used?
a. Internal Iterators
b. External Iterators
c. Both
d. None
Answer:b
External Iterators
An internal iterator is
implemented with member functions of the class that has items to step through.
.An external iterator is implemented as a separate class that can be
"attach" to the object that has items to step through. .An external
iterator has the advantage that many different iterators can be active
simultaneously on the same object.
2. Write a function which gets the n bits from an unsigned integer
x, starting from position p .(the right most digit is at position 0)
a.mask = FFFF;
mask = mask
<< p;
output = mask
& x;
b.mask = FFFF;
mask =
mask << p;
output =
mask ^ x;
c.mask = FFFF;
mask =
mask >> p;
output =
mask & x
d.mask = FFFF;
mask =
mask >> p;
output =
mask ^ x;;
Answer:d
3. Are method
overloading and method overriding (w.r.t C++) same?
a. Both are same
b Method overriding is available
only in JAVA.
c. Method overloading is not
available in C++.
d. Both are different
Answer:d.
Both are different
Overloading a method (or
function) in C++ is the ability for functions of the same name to be defined as
long as these methods have different signatures (different set of parameters).
Method overriding is the ability of the inherited class rewriting the virtual
method of the base class.
1.What is .NET?
NET is an integral
part of many applications running on Windows and provides common functionality
for those applications to run. This download is for people who need .NET to run
an application on their computer. For developers, the .NET Framework provides a
comprehensive and consistent programming model for building applications that
have visually stunning user experiences and seamless and secure communication.
2.How many languages .NET is supporting now?
When .NET was
introduced it came with several languages.
VB.NET,
C#,
COBOL
and
Perl, etc.
3. What is an IL?
Intermediate Language
is also known as MSIL (Microsoft Intermediate Language) or CIL (Common
Intermediate Language). All .NET source code is compiled to IL. IL is then
converted to machine code at the point where the software is installed, or at
run-time by a Just-In-Time (JIT) compiler.
4. What is code access security (CAS)?
Code access security
(CAS) is part of the .NET security model that prevents unauthorized access of
resources and operations, and restricts the code to perform particular tasks.
5. What is Difference between NameSpace and Assembly?
Assembly is physical
grouping of logical units, Namespace, logically groups classes.
Namespace can span multiple assembly.
6. Mention the
execution process for managed code.
A)Choosing a language
compiler
B) Compiling the code to MSIL
C) Compiling MSIL to native code
D) Executing the code.
7. What is Microsoft
Intermediate Language (MSIL)?
The .NET Framework is
shipped with compilers of all .NET programming languages to develop programs.
There are separate compilers for the Visual Basic, C#, and Visual C++
programming languages in .NET Framework. Each .NET compiler produces an
intermediate code after compiling the source code. The intermediate code is
common for all languages and is understandable only to .NET environment. This
intermediate code is known as MSIL.
8. What is managed extensibility framework?
Managed extensibility
framework (MEF) is a new library that is introduced as a part of .NET 4.0 and
Silverlight 4. It helps in extending your application by providing greater
reuse of applications and components. MEF provides a way for host application
to consume external extensions without any configuration requirement.
9. Which method do
you use to enforce garbage collection in .NET?
The
System.GC.Collect() method.
10. What is the
difference between int and int32.
There is no
difference between int and int32. System.Int32 is a .NET Class and int is an
alias name for System.Int32.
11. What are tuples?
Tuple is a
fixed-size collection that can have elements of either same or different data
types. Similar to arrays, a user must have to specify the size of a tuple at
the time of declaration. Tuples are allowed to hold up from 1 to 8 elements and
if there are more than 8 elements, then the 8th element can be defined as
another tuple. Tuples can be specified as parameter or return type of a method.
12. What is
the full form of ADO?
The full form of ADO
is ActiveX Data Object.
13. What are
the two fundamental objects in ADO.NET?
DataReader and
DataSet are the two fundamental objects in ADO.NET.
14. What is
the meaning of object pooling?
Object pooling is a
concept of storing a pool (group) of objects in memory that can be reused later
as needed. Whenever, a new object is required to create, an object from the
pool can be allocated for this request; thereby, minimizing the object
creation. A pool can also refer to a group of connections and threads. Pooling,
therefore, helps in minimizing the use of system resources, improves system
scalability, and performance.
15. Mention
the namespace that is used to include .NET Data Provider for SQL server in .NET
code.
The
System.Data.SqlClient namespace.
16. Which
architecture does Datasets follow?
Datasets follow the
disconnected data architecture.
17. What is
the role of the DataSet object in ADO.NET?
One of the major
component of ADO.NET is the DataSet object, which always remains disconnected
from the database and reduces the load on the database.
18. Which
property is used to check whether a DataReader is closed or opened?
The IsClosed property
is used to check whether a DataReader is closed or opened. This property
returns a true value if a Data Reader is closed, otherwise a false value is
returned.
19. Name the
method that needs to be invoked on the DataAdapter control to fill the
generated DataSet with data?
The Fill() method is
used to fill the dataset with data.
20. What are
the pre-requisites for connection pooling?
There must be
multiple processes to share the same connection describing the same parameters
and security settings. The connection string must be identical.
21. Which
adapter should you use, if you want to get the data from an Access database?
OleDbDataAdapter is
used to get the data from an Access database.
2. What are
different types of authentication techniques that are used in connection
strings to connect .NET applications with Microsoft SQL Server?
The Windows
Authentication option
The SQL Server
Authentication option
23. What are
the parameters that control most of connection pooling behaviors?
Connect Timeout
Max Pool Size
Min Pool Size
Pooling
24. What is
AutoPostBack?
If you want a control
to postback automatically when an event is raised, you need to set the
AutoPostBack property of the control to True.
25. What is
the function of the ViewState property?
The ASP.NET 4.0
introduced a new property called ViewStateMode for the Control class. Now you
can enable the view state to an individual control even if the view state for
an ASP.NET page is disabled.
26. Which
properties are used to bind a DataGridView control?
The DataSource
property and the DataMember property are used to bind a DataGridView control.
27. What is
the basic difference between ASP and ASP.NET?
The basic difference
between ASP and ASP.NET is that ASP is interpreted; whereas, ASP.NET is
compiled. This implies that since ASP uses VBScript; therefore, when an ASP
page is executed, it is interpreted. On the other hand, ASP.NET uses .NET
languages, such as C# and VB.NET, which are compiled to Microsoft Intermediate
Language (MSIL).
28. In which event
are the controls fully loaded?
Page load event
guarantees that all controls are fully loaded. Controls are also accessed in
Page_Init events but you will see that view state is not fully loaded during
this event
29. How can we
identify that the Page is Post Back?
Page object has an
"IsPostBack" property, which can be checked to know that is the page
posted back.
30. Which is
the parent class of the Web server control?
The
System.Web.Ul.Control class is the parent class for all Web server controls.
31. What are
the advantages of the code-behind feature?
i)Makes code easy to
understand and debug by separating application logic from HTML tags
ii)Provides the isolation of effort between graphic designers and software
engineers
iii)Removes the problems of browser incompatibility by providing code files to
exist on the Web server and supporting Web pages to be compiled on demand.
32. Define a
multilingual Web site.
A multilingual Web
site serves content in a number of languages. It contains multiple copies for
its content and other resources, such as date and time, in different languages.
33. What is
IIS? Why is it used?
Internet Information
Services (IIS) is created by Microsoft to provide Internet-based services to
ASP.NET Web applications. It makes your computer to work as a Web server and
provides the functionality to develop and deploy Web applications on the server.
IIS handles the request and response cycle on the Web server. It also offers
the services of SMTP and FrontPage server extensions. The SMTP is used to send
emails and use FrontPage server extensions to get the dynamic features of IIS,
such as form handler.
34. How can
you register a custom server control to a Web page?
You can register a
custom server control to a Web page using the @Register directive.
35. Which
ASP.NET objects encapsulate the state of the client and the browser?
The Session object
encapsulates the state of the client and browser.
36.
Differentiate globalization and localization.
The globalization is
a technique to identify the specific part of a Web application that is
different for different languages and make separate that portion from the core
of the Web application. The localization is a procedure of configuring a Web
application to be supported for a specific language or lcale.
37. What is
ViewState?
The ViewState is a
feature used by ASP.NET Web page to store the value of a page and its controls
just before posting the page. Once the page is posted, the first task by the
page processing is to restore the ViewState to get the values of the controls.
38. Which
method is used to force all the validation controls to run?
The Page.Validate()
method is used to force all the validation controls to run and to perform
validation.
39. What
does the Orientation property do in a Menu control?
Orientation property
of the Menu control sets the horizontal or vertical display of a menu on a Web
page. By default, the orientation is vertical.
40.
Differentiate between client-side and server-side validations in Web pages.
Client-side
validations take place at the client end with the help of JavaScript and
VBScript before the Web page is sent to the server. On the other hand,
server-side validations take place at the server end.
41. What is
garbage collection?
Garbage collection is
a heap-management strategy where a run-time component takes responsibility for
managing the lifetime of the memory used by objects. This concept is not new to
.NET - Java and many other languages/runtimes have used garbage collection for
some time.
42. What is
serialization?
Serialization is the
process of converting an object into a stream of bytes.Deserialization is the opposite
process, i.e. creating an object from a stream of bytes.
Serialization/Deserialization is mostly used to transport objects (e.g. during
remoting), or to persist objects (e.g. to a file or database).
43. Where do
you add an event handler?
It's the Attributesproperty, the Add function inside that property.
e.g.btnSubmit.Attributes.Add("onMouseOver","someClientCode();")
44. What do
you mean by authentication and authorization?
Authentication is the
process of validating a user on the credentials(username and password) and
authorization performs after authentication. After Authentication a user will
be verified for performing the various tasks, It access is limited it is known
as authorization.
45. What is
portable executable (PE) ?
The file format used
for executable programs and for files to be linked together to form executable
programs
46. Differences between DLL and EXE?
.exe
1.These are outbound
file.
2.Only one .exe file exists per application.
3..Exe cannot be shared with other applications.
.dll
1.These are inbound file .
2.Many .dll files may exists in one application.
3. .dll can be shared with other applications.
47. What is
shadowing?
Shadowing is either
through scope or through inheritance. Shadowing through inheritance is hiding a
method of a base class and providing a new implementation for the same. This is
the default when a derived class writes an implementation of a method of base
class which is not declared as overridden in the base class. This also serves
the purpose of protecting an implementation of a new method against subsequent
addition of a method with the same name in the base class.’shadows’ keyword is
recommended although not necessary since it is the default.
48. What is
Method Overriding? How to override a function in C#?
An override method
provides a new implementation of a member inherited from a base class. The
method overridden by an override declaration is known as the overridden base
method. The overridden base method must have the same signature as the override
method.
Use the override modifier to modify a method, a property, an indexer, or an
event. You cannot override a non-virtual or static method. The overridden base
method must be virtual, abstract, or override.
49.
Differences between dataset.clone and dataset.copy?
Clone - Copies the
structure of the DataSet, including all DataTable schemas, relations, and
constraints. Does not copy any data.
Copy - Copies both the structure and data for this DataSet.
50. What is
the managed and unmanaged code in .net?
The .NET Framework
provides a run-time environment called the Common Language Runtime, which
manages the execution of code and provides services that make the development
process easier. Compilers and tools expose the runtime's functionality and
enable you to write code that benefits from this managed execution environment.
Code that you develop with a language compiler that targets the runtime is
called managed code; it benefits from features such as cross-language
integration, cross-language exception handling, enhanced security, versioning
and deployment support, a simplified model for component interaction, and
debugging and profiling services.
51. Whats an
assembly?
Assemblies are the
building blocks of .NET Framework applications; they form the fundamental unit
of deployment, version control, reuse, activation scoping, and security
permissions. An assembly is a collection of types and resources that are built
to work together and form a logical unit of functionality. An assembly provides
the common language runtime with the information it needs to be aware of type
implementations. To the runtime, a type does not exist outside the context of
an assembly.
52. How do
you create a permanent cookie?
Setting the Expires
property to MinValue means that the Cookie never expires.
53. What’s a Windows
process in .NET?
Windows process is an
application that’s running and had been allocated memory in .NET
54. What is
Delegation in .NET?
A delegate acts like
a strongly type function pointer. Delegates can invoke the methods that they
reference without making explicit calls to those methods.
Delegate is an entity that is entrusted with the task of representation, assign
or passing on information. In code sense, it means a Delegate is entrusted with
a Method to report information back to it when a certain task (which the Method
expects) is accomplished outside the Method's class.
55. What is
Serialization in .NET?
The serialization is
the process of converting the objects into stream of bytes.
they or used for transport the objects(via remoting) and persist objects(via
files and databases)
56.
Difference between Class And Interface in .NET?
Class is logical
representation of object. It is collection of data and related sub procedures
with definition.
Interface is also a class containing methods which is not having any
definitions.
Class does not support multiple inheritance. But interface can support
57. Can any
object be stored in a Viewstate in .NET?
An object that either
is serializable or has a TypeConverter defined for it can be persisted in
ViewState.
58 What is
the use of ErrorProvider Control in .NET?
The ErrorProvider
control is used to indicate invalid data on a data entry form. Using this
control, you can attach error messages that display next to the control when
the data is invalid, as seen in the following image. A red circle with an
exclamation point blinks, and when the user mouses over the icon, the error
message is displayed as a tooltip.
59. How do
you validate the controls in an ASP .NET page?
Using special
validation controls that are meant for validation of any controle.
We have Range Validator, Email Validator in .NET to validate any control.
60. How to
manage pagination in a page using .NET?
Using pagination
option in DataGrid control is available in .NET. We have to set the number of
records for a page, then it takes care of pagination by itself automatically.
1.What is data structure?
A data structure is a way of
organizing data that considers not only the items stored, but also their relationship
to each other. Advance knowledge about the relationship between data items
allows designing of efficient algorithms for the manipulation of data.
2.Minimum
number of queues needed to implement the priority queue?
Two. One queue is used for actual
storing of data and another for storing priorities.
3.What are
the notations used in Evaluation of Arithmetic Expressions using prefix and
postfix forms?
Polish and Reverse Polish
notations.
4.List out few of the Application
of tree data-structure?
i)The manipulation of Arithmetic
expression
ii)Symbol Table construction
iii)Syntax analysis.
5.What is the type of the
algorithm used in solving the 8 Queens problem?
Backtracking
6.In RDBMS,
what is the efficient data structure used in the internal storage representation?
B+ tree. Because in B+ tree, all the data is stored only in leaf nodes, that
makes searching easier. This corresponds to the records that shall be stored in
leaf nodes.
7. What is a
spanning Tree?
A spanning tree is a tree
associated with a network. All the nodes of the graph appear on the tree once.
A minimum spanning tree is a spanning tree organized so that the total edge
weight between nodes is minimized.
8. List out
the areas in which data structures are applied extensively?
Compiler Design, Operating
System, Database Management System, Statistical
analysis package, Numerical Analysis, Graphics, Artificial Intelligence,
Simulation
9. Translate
infix expression into its equivalent post fix expression: (A-B)*(D/E)
(A-B)*(D/E) = [AB-]*[DE/] =
AB-DE/*
10. What are
priority queues?
A priority queue is a collection
of elements such that each element has been assigned a priority.
11. What is a string?
A sequential array of characters
is called a string.
12. What is
Brute Force algorithm?
Algorithm used to search the
contents by comparing each element of array is called Brute Force algorithm.
13. What are
the limitations of arrays?
i)Arrays are of fixed size.
ii)Data elements are stored in continuous memory locations which may not be
available always.
iii)Adding and removing of elements is problematic because of shifting the
locations.
14. How can you overcome the
limitations of arrays?
Limitations of arrays can be
solved by using the linked list.
15. What is
a linked list?
Linked list is a data structure
which store same kind of data elements but not in continuous memory locations
and size is not fixed. The linked lists are related logically.
16. What is
a node?
The data element of a linked list
is called a node.
17. What
does node consist of?
Node consists of two fields:data
field to store the element and link field to store the address of the next
node.
18. What is
a queue ?
A Queue is a sequential
organization of data. A queue is a first in first out type of data structure.
An element is inserted at the last position and an element is always taken out
from the first position.
19. What are
the types of Collision Resolution Techniques and the methods used in each of
the type?
Open addressing (closed
hashing),The methods used include:Overflow block
Closed addressing (open hashing),The methods used include:Linked list,Binary
tree
20. What are
the methods available in storing sequential files ?
Straight merging, Natural
merging, Polyphase sort, Distribution of Initial runs.
21. Mention
some of the problem solving strategies?
The most widely strategies are
listed below
i)Divide and conquer
ii)Binary doubling strategy
iii)Dynamic programming
22. What is
divide and conquer method?
The basic idea is to divide the
problem into several sub problems beyond which cannot be further subdivided.
Then solve the sub problems efficiently and join then together to get the
solution for the main problem.
23. What is
the need for the header?
Header of the linked list is the first element in the list and it stores the number
of elements in the list. It points to the first data element of the list.
24. Define
leaf?
In a directed tree any node which has out degree o is called a terminal node or
a leaf.
25. What are
the applications of binary tree?
Binary tree is used in data
processing.
26. What are
the different types of traversing?
The different types of traversing
are
i)Pre-order traversal-yields prefix from of expression.
ii)In-order traversal-yields infix form of expression.
iii)Post-order traversal-yields postfix from of expression.
27. Define
pre-order traversal?
i)Process the root node
ii)Process the left subtree
iii)Process the right subtree
28. Define
post-order traversal?
i)Process the left subtree
ii)Process the right subtree
iii)Process the root node
29. Define
in -order traversal?
i)Process the left subtree
ii)Process the root node
iii)Process the right subtree
30. What is
meant by sorting?
Ordering the data in an
increasing or decreasing fashion according to some relationship among the data
item is called sorting.
31. What's
the major distinction in between Storage structure and file structure and how?
The expression of an specific
data structure inside memory of a computer system is termed storage structure
in contrast to a storage structure expression in auxiliary memory is normally
known as a file structure.
32. Stack
can be described as a pointer. Explain?
Because stack will contain a head
pointer which will always point to the top of the Stack.All Stack Operations
are done using Head Pointer. Hence Stack ca be Described as a Pointer
33. What do
you mean by: Syntax Error, Logical Error, Run time Error?
Syntax Error-Syntax Error is due
to lack of knowledge in a specific language. It is due to somebody does not
know how to use the features of a language.We can know the errors at the time
of compilation.
logical Error-It is due to the poor understanding of the requirement or
problem.
Run time Error-The exceptions like divide a number by 0,overflow and underflow
comes under this.
34. What is
mean by d-queue?
D-queue stands for double ended
queue. It is a abstract data structure that implements a queue for which
elements can be added to front or rear and the elements can be removed from the
rear or front. It is also called head-tail linked list
35. What is
AVL tree?
Avl tree is self binary tree in
which balancing factor lie between the -1 to 1.It is also known as self
balancing tree.
36. what is
binary tree?
Binary tree is a tree which has
maximum no. of childrens either 0 or 1 or 2. i.e., there is at the most 2
branches in every node.
37. What is
the difference between a stack and a Queue?
Stack – Represents the collection
of elements in Last In First Out order. Operations includes testing null stack,
finding the top element in the stack, removal of top most element and adding
elements on the top of the stack.
Queue - Represents the collection of elements in First In First Out
order.Operations include testing null queue, finding the next element, removal
of elements and inserting the elements from the queue.
Insertion of elements is at the end of the queue.Deletion of elements is from
the beginning of the queue
38. What
actions are performed when a function is called?
i)arguments are passed
ii)local variables are allocated and initialized
iii)transferring control to the function
39. What is precision?
Precision refers the accuracy of
the decimal portion of a value. Precision is the number of digits allowed after
the decimal point.
40. What do
you mean by overflow and underflow?
When new data is to be inserted
into the data structure but there is no available space i.e.free storage list
is empty this situation is called overflow.When we want to delete data from a
data structure that is empty this situation is called underflow.
1. Is it
possible to find a loop in a Linked list ?
a. Possilbe at O(n)
b. Not possible
c. Possible at O(n^2) only
d. Depends on the position of loop
Solution: a. Possible at O(n)
Have two pointers say P1 and P2 pointing to the first node of the list.
Start a loop and Increment P1 once and P2 twice in each iteration. At any point
of time if P1==P2 then there is a loop in that linked list. If P2 reaches NULL
(end of linked list) then no loop exists.
2. Two linked lists L1 and L2
intersects at a particular node N1 and from there all other nodes till the end
are common. The length of the lists are not same. What are the possibilities to
find N1?.
a. Solution exist for certain
cases only
b. No linear solution exist
c. Linear solution is possible
d Only Non-linear solution exist.
Solution: c. Linear solution is possible
Have two pointers say P1 pointing to the first node of L1 and P2 to that of L2.
Traverse through both the lists. If P1 reaches L1’s last node, point it to the
first node of L2 and continue traversing. Do the same thing for P2 when it
reaches L2’s last node. (By doing this, we are balancing the difference in the
length between the linked lists. The shorter one will get over soon and by
redirecting to longer list’s head, it will traverse the extra nodes also.)
Finally they will Meet at the Intersection node.
3. void
PrintTree (Tree T)
{
if (T != NULL)
{
PrintTree (T-> Left);
PrintElement (T-> Element);
PrintTree (T->Right);
}
}
The above method ‘PrintTree’ results in which of the following traversal
a Inorder
b. Preorder
c. Postorder
d. None of the above
Solution: a. Inorder
Inorder:
void PrintTree (Tree T)
{
if (T != NULL)
{
PrintTree (T-> Left);
PrintElement (T-> Element);
PrintTree (T->Right);
}
}
For preorder use this order
PrintElement (T-> Element);
PrintTree (T-> Left);
PrintTree (T->Right);
For postorder use this order
PrintTree (T-> Left);
PrintTree (T->Right);
PrintElement (T-> Element);
4. Given a Binary Search Tree
(BST), print its values in ascending order.
a. Perform Depth first
traversal
b. Perform Breadth first traversal
c. Perform Postorder traversal
d. Perform Inorder traversal
Solution: d. Perform Inorder traversal
It is the properfy of BST and Inorder traversal.
5. Is it possible to implement a
queue using Linked List ?. Enqueue & Dequeue should be O(1).
a. Not possible to
implement.
b Only Enqueue is possible at O(1).
c. Only Dequeue is possible at O(1).
d. Both Enqueue and Dequeue is possible at O(1)
Solution: d. Both Enqueue and Dequeue is possible at O(1)
Have two pointers H pointing to the Head and T pointing to the Tail of the
linked list. Perform enqueue at T and perform dequeue at H. Update the pointers
after each operations accordingly.
6. Given a Tree, is it possible
to find the greatest and least among leaves in linear time?.
a. Solution depends on the tree
structure
b.Linear solution exist
c. Only Non-linear solution exist.
d. No linear solution exist
Solution: b. Linear solution exist
Have two variables Min and Max. Perform any tree traversal.Assign the first
traversed leaf element to Min and Max for all other leaf elements check with
these variables and update it accordingly. If a current element is < Min
then update Min with that element. If it is > Min then check with Max.
Note: If you want to find the greatest and least among all nodes perform the
checks for each node traversed.
7. Is it possible to find find
the greatest and least value among the nodes in a given BST without using any
extra variables?
a. No solution exist.
b. Solution need 2 extra variables
c. Solution exist without any extra variables
d Solution need 1 extra variable
Solution:c Solution exist without any extra variables
As per BST property, the left most node should be the least one and the
rightmost node should be the greatest. In other words, the first and last node
of an Inorder traversal are the least and greatest among the nodes
respectively.
8. Is it possible to implement 2
stack in an array?
Condition: None of the stack
should indicate an overflow until every slot of an array is used.
a. Only 1 stack can be implemented for the given condition
b. Stacks can not be implemented in array
c. 2 stacks can be implemented for the given condition.
d. 2 stacks can be implemented if the given condition is applied only for 1
stack.
Solution:c. 2 stacks can be implemented for the given condition
Start 1st stack from left (1st position of an array) and 2nd from right (last
position say n). Move 1st stack towards right( i.e 1,2,3 ...n) and 2nd towards
left (i.e n,n-1,n-2...1).
9. Given two keys K1 & K2,
write an algorithm to print all the elements between them with K1<=K2 in a
BST.
a. Solution need 2 extra
spaces
b. Linear solution is possible without using any extra space
c No linear solution exist
d Solution need 1 extra space
Solution:b. Linear solution is possible without using any extra space
Perform an inorder traversal. Once you find K1 print it and continue traversal
now, print all other traversed elements until you reach K2.
Note: If K1 == K2 stop once you find K1.
10. How many stacks are required
to implement a Queue.
a. One
b. Two
c. Three
d. Two + one extra space.
Solution:b Two
Have two stacks S1 and S2.
For Enqueue, perform push on S1.
For Dequeue, if S2 is empty pop all the elements from S1 and push it to S2. The
last element you popped from S1 is an element to be dequeued. If S2 is not
empty, then pop the top element in it.
1. Is it possible to
find a loop in a Linked list ?
a. Possilbe at O(n)
b. Not possible
c. Possible at O(n^2)
only
d. Depends on the
position of loop
Solution: a.
Possible at O(n)
Have two pointers say P1 and P2 pointing to the first node of the list.
Start a loop and
Increment P1 once and P2 twice in each iteration. At any point of time if
P1==P2 then there is a loop in that linked list. If P2 reaches NULL (end of linked
list) then no loop exists.
2. Two linked lists L1 and L2 intersects at a particular node N1 and from
there all other nodes till the end are common. The length of the lists are not
same. What are the possibilities to find N1?.
a. Solution exist for certain cases only
b. No linear solution
exist
c. Linear solution is
possible
d Only Non-linear
solution exist.
Solution: c. Linear solution is possible
Have two pointers say P1 pointing to the first node of L1 and P2 to that of L2.
Traverse through both the lists. If P1 reaches L1’s
last node, point it to the first node of L2 and continue traversing. Do the
same thing for P2 when it reaches L2’s last node. (By
doing this, we are balancing the difference in the length between the linked
lists. The shorter one will get over soon and by redirecting to longer list’s
head, it will traverse the extra nodes also.) Finally they will Meet at the
Intersection node.
3. void PrintTree (Tree T)
{
if (T != NULL)
{
PrintTree (T-> Left);
PrintElement (T-> Element);
PrintTree (T->Right);
}
}
The above method ‘PrintTree’
results in which of the following traversal
a Inorder
b. Preorder
c. Postorder
d. None of the above
Solution: a. Inorder
Inorder:
void PrintTree (Tree
T)
{
if (T != NULL)
{
PrintTree (T-> Left);
PrintElement (T-> Element);
PrintTree (T->Right);
}
}
For preorder use this order
PrintElement (T-> Element);
PrintTree (T-> Left);
PrintTree
(T->Right);
For postorder use
this order
PrintTree (T-> Left);
PrintTree
(T->Right);
PrintElement
(T-> Element);
4. Given a Binary Search Tree (BST), print its values in ascending order.
a. Perform Depth first traversal
b. Perform
Breadth first traversal
c. Perform Postorder
traversal
d. Perform Inorder
traversal
Solution: d. Perform Inorder traversal
It is the properfy of BST and Inorder traversal.
5. Is it possible to implement a queue using Linked List ?. Enqueue &
Dequeue should be O(1).
a. Not possible to implement.
b Only Enqueue is
possible at O(1).
c. Only Dequeue is possible
at O(1).
d. Both Enqueue and
Dequeue is possible at O(1)
Solution: d. Both Enqueue and Dequeue is possible at O(1)
Have two pointers H pointing to the Head and T pointing to the Tail of the
linked list. Perform enqueue at T and perform dequeue at H. Update the pointers
after each operations accordingly.
6. Given a Tree, is it possible to find the greatest and least among leaves
in linear time?.
a. Solution depends on the tree structure
b.Linear solution
exist
c. Only Non-linear
solution exist.
d. No linear solution
exist
Solution: b. Linear solution exist
Have two variables Min and Max. Perform any tree traversal.Assign the first
traversed leaf element to Min and Max for all other leaf elements check with
these variables and update it accordingly. If a current element is < Min
then update Min with that element. If it is > Min then check with Max.
Note: If you want to find the greatest and least among all nodes perform the
checks for each node traversed.
7. Is it possible to find find the greatest and least value among the nodes
in a given BST without using any extra variables?
a. No solution exist.
b. Solution need 2
extra variables
c. Solution exist
without any extra variables
d Solution need 1
extra variable
Solution:c Solution exist without any extra variables
As per BST property, the left most node should be the least one and the
rightmost node should be the greatest. In other words, the first and last node
of an Inorder traversal are the least and greatest among the nodes respectively.
8. Is it possible to implement 2 stack in an array?
Condition: None of the stack should indicate an overflow until every slot of
an array is used.
a. Only 1 stack can be implemented for the given condition
b. Stacks can not be
implemented in array
c. 2 stacks can
be implemented for the given condition.
d. 2 stacks can
be implemented if the given condition is applied only for 1 stack.
Solution:c. 2 stacks can be implemented for the given condition
Start 1st stack from left (1st position of an array) and 2nd from right (last
position say n). Move 1st stack towards right( i.e 1,2,3 ...n) and 2nd towards
left (i.e n,n-1,n-2...1).
9. Given two keys K1 & K2, write an algorithm to print all the elements
between them with K1<=K2 in a BST.
a. Solution need 2 extra spaces
b. Linear solution is
possible without using any extra space
c No linear solution
exist
d Solution need 1
extra space
Solution:b. Linear solution is possible without using any extra space
Perform an inorder traversal. Once you find K1 print it and continue traversal
now, print all other traversed elements until you reach K2.
Note: If K1 == K2 stop once you find K1.
10. How many stacks are required to implement a Queue.
a. One
b. Two
c. Three
d. Two + one extra
space.
Solution:b Two
Have two stacks S1 and S2.
For
Enqueue, perform push on S1.
For
Dequeue, if S2 is empty pop all the elements from S1 and push it to S2. The
last element you popped from S1 is an element to be dequeued. If S2 is
not empty, then pop the top element in it.
1. Who is the father
of PHP ?
Rasmus Lerdorf is known as the father of PHP.
2. What is
the difference between $name and $$name?
$name is variable where as $$name is reference variable like $name=sonia and
$$name=singh so $sonia value is singh.
3. What are
the method available in form submitting?
GET and POST
4.How can we
get the browser properties using PHP?
<?php
echo
$_SERVER[‘HTTP_USER_AGENT’].”\n\n”;
$browser=get_browser(null,true);
print_r($browser);
?>
5. What Is a
Session?
A session is a
logical object created by the PHP engine to allow you to preserve data across
subsequent HTTP requests. Sessions are commonly used to store temporary data to
allow multiple PHP pages to offer a complete functional transaction for the
same visitor.
6. How can we register the variables into a session?
<?php
session_register($ur_session_var);
?>
7. How many ways we can pass the variable through the navigation between the
pages?
Register the variable
into the session
Pass the variable as a cookie
Pass the variable as part of the URL
8. How can we know
the total number of elements of Array?
sizeof($array_var)
count($array_var)
9. How can we create a database using php?
mysql_create_db();
10. What is the
functionality of the function strstr and stristr?
strstr() returns part
of a given string from the first occurrence of a given substring to the end of
the string.
For example:strstr("user@example.com","@") will return
"@example.com".
stristr() is idential to strstr() except that it is case insensitive.
11. What are
encryption functions in PHP?
CRYPT(), MD5()
12. How to store the
uploaded file to the final location?
move_uploaded_file(
string filename, string destination)
13. Explain
mysql_error().
The mysql_error()
message will tell us what was wrong with our query, similar to the message we
would receive at the MySQL console.
14. What is
Constructors and Destructors?
CONSTRUCTOR : PHP
allows developers to declare constructor methods for classes. Classes which
have a constructor method call this method on each newly-created object, so it
is suitable for any initialization that the object may need before it is used.
DESTRUCTORS : PHP 5 introduces a destructor concept similar to that of other
object-oriented languages, such as C++. The destructor method will be called as
soon as all references to a particular object are removed or when the object is
explicitly destroyed or in any order in shutdown sequence.
15. Explain the visibility of the property or method.
The visibility of a
property or method must be defined by prefixing the declaration with the
keywords public, protected or private.
Class members declared public can be accessed everywhere.
Members declared protected can be accessed only within the class itself and by
inherited and parent classes.
Members declared as private may only be accessed by the class that defines the
member.
16. What are the differences between Get and post methods.
There are some
defference between GET and POST method
1. GET Method have some limit like only 2Kb data able to send for request
But in POST method unlimited data can we send
2. when we use GET method requested data show in url but
Not in POST method so POST method is good for send sensetive request
17. What are the differences between require and include?
Both include and require
used to include a file but when included file not found
Include send Warning where as Require send Fatal Error
18. What is use of header() function in php ?
The header() function
sends a raw HTTP header to a client.We can use herder()
function for redirection of pages. It is important to notice that header() must
be called before any actual output is seen.
19. List out the predefined classes in PHP?
Directory
stdClass
__PHP_Incomplete_Class
exception
php_user_filter
20. What type of inheritance that PHP supports?
In PHP an extended
class is always dependent on a single base class,that is, multiple inheritance
is not supported. Classes are extended using the keyword 'extends'.
21. How can we encrypt the username and password using php?
You can encrypt a
password with the following Mysql>SET
PASSWORD=PASSWORD("Password");
We can encode data using base64_encode($string) and can decode using
base64_decode($string);
22. What is the difference between explode and split?
Split function splits
string into array by regular expression. Explode splits a string into array by
string.
For Example:explode(" and", "India and Pakistan and
Srilanka");
split(" :", "India : Pakistan : Srilanka");
Both of these functions will return an array that contains India, Pakistan, and
Srilanka.
23. How do you define a constant?
Constants in PHP are
defined using define() directive, like define("MYCONSTANT", 100);
24. How do you pass a variable by value in PHP?
Just like in C++, put
an ampersand in front of it, like $a = &$b;
25. What does a special set of tags <?= and ?> do in PHP?
The output is
displayed directly to the browser.
26. How do you call a constructor for a parent class?
parent::constructor($value)
27. What’s the special meaning of __sleep and __wakeup?
__sleep returns the
array of all the variables than need to be saved, while __wakeup retrieves
them.
28. What is the difference between PHP and JavaScript?
javascript is a
client side scripting language, so javascript can make popups and other things
happens on someone’s PC. While PHP is server side scripting language so it does
every stuff with the server.
29. What is the difference between the functions unlink and unset?
unlink() deletes the
given file from the file system.
unset() makes a variable undefined.
30. How many ways can we get the value of current session id?
session_id() returns
the session id for the current session.
31. What are default session time and path?
default session time
in PHP is 1440 seconds or 24 minutes
Default session save path id temporary folder /tmp
32. for image work which library?
we will need to
compile PHP with the GD library of image functions for this to work. GD and PHP
may also require other libraries, depending on which image formats you want to
work with.
33. How can we get second of the current time using date function?
<?php
$second = date(“s”);
?>
34. What are the Formatting and Printing Strings available in PHP?
printf()- Displays a formatted string
sprintf()-Saves a formatted string in a variable
fprintf() -Prints a formatted string to a file
number_format()-Formats numbers as strings
35. How can we find the number of rows in a result set using PHP?
$result =
mysql_query($sql, $db_link);
$num_rows = mysql_num_rows($result);
echo "$num_rows rows found";
1. Define the concept of an algorithm.
An algorithm is any well-defined
computational procedure that takes some value (or set of values) as input and
produces some value (or set of values) as output. In short, it can be seen as a
sequence of computational steps that transform the input into the output.
2.What are
the arguments present in pattern matching algorithms?
These are the following arguments
which are present in pattern matching Algorithms.
1) Subject,
2) Pattern
3) Cursor
4) MATCH_STR
5) REPLACE_STR
6) REPLACE_FLAG
3. Explain
the function SUB in algorithmic notation?
In the algorithmic notation
rather than using special marker symbols, generally people use the cursor
position plus a substring length to isolate a substring. The name of the
function is SUB.
SUB returns a value the sub string of SUBJECT that is specified by the
parameters i and j and an assumed value of j.
4. In
Algorithmic context how would you define book keeping operations?
Usually when a user wants to
estimate time he isolates the specific function and brands it as active
operation. The other operations in the algorithm, the assignments, the
manipulations of the index and the accessing of a value in the vector, occur no
more often than the addition of vector values. These operations are
collectively called as “book keeping operations”.
5. Define
and describe an iterative process with general steps of flow chart?
There are four parts in the
iterative process they are
Initialization: -The decision parameter is used to determine when to exit from
the loop.
Decision: -The decision parameter is used to determine whether to remain in the
loop or not.
Computation: - The required computation is performed in this part.
Update: - The decision parameter is updated and a transfer to the next
iteration results.
6. State
recursion and its different types?
Recursion is the name given to
the technique of defining a set or a process in terms of itself. There are
essentially two types of recursion. The first type concerns recursively defined
function and the second type of recursion is the recursive use of a procedure.
7. Define
and state the importance of sub algorithm in computation and its relation ship
with main algorithm?
A sub algorithm is an independent
component of an algorithm and for this reason is defined separately from the
main algorithm. The purpose of a sub algorithm is to perform some computation
when required, under control of the main algorithm. This computation may be
performed on zero or more parameters passed by the calling routine.
. Name any three
skills which are very important in order to work with generating functions.
The three most important skills
which are used extensively while working with generating functions are
1)Manipulate summation expressions and their indices.
2)Solve algebraic equations and manipulate algebraic expressions, including
partial function decompositions.
3)Identify sequences with their generating functions
9. What is
the general strategy for Markov Algorithm?
The general strategy in a Markov
Algorithm is to take as input a string x and, through a number of steps in the
algorithm, transform x to an output string y. this transformation process is
generally performed in computers for text editing or program compilation.
10. Define
string in an algorithmic notation and an example to support it?
In the algorithmic notation, a
string is expressed as any sequence of characters enclosed in single quote
marks.
11. How to
find median of a BST?
Find the no. of elements on the
left side.
If it is n-1 the root is the median.
If it is more than n-1, then it has already been found in the left subtree.
Else it should be in the right subtree
12. What is
Diffie-Hellman?
It is a method by which a key can
be securely shared by two users without any actual exchange.
13. What is
the goal of the shortest distance algorithm?
The goal is completely fill the distance array so that for each vertex v, the
value of distance[v] is the weight of the shortest path from start to v.
14. Explain
the depth of recursion?
This is another recursion
procedure which is the number of times the procedure is called recursively in
the process of enlarging a given argument or arguments. Usually this quantity
is not obvious except in the case of extremely simple recursive functions, such
as FACTORIAL (N), for which the depth is N.
15. Explain
about the algorithm ORD_WORDS?
This algorithm constructs the
vectors TITLE, KEYWORD and T_INDEX.
16. Which
are the sorting algorithms categories?
Sorting algorithms can be divided
into five categories:
a) insertion sorts
b) exchange sorts
c) selection sorts
d) merge sorts
e) distribution sorts
17.Define a brute-force
algorithm. Give a short example.
A brute force algorithm is a type
of algorithm that proceeds in a simple and obvious way, but requires a huge
number of steps to complete. As an example, if you want to find out the factors
of a given number N, using this sort of algorithm will require to get one by
one all the possible number combinations.
18. What is a greedy algorithm?
Give examples of problems solved using greedy algorithms.
A greedy algorithm is any
algorithm that makes the local optimal choice at each stage with the hope of
finding the global optimum. A classical problem which can be solved using a
greedy strategy is the traveling salesman problem. Another problems that can be
solved using greedy algorithms are the graph coloring problem and all the
NP-complete problems.
19. What is
a backtracking algorithm? Provide several examples.
It is an algorithm that considers
systematically all possible outcomes for each decision. Examples of
backtracking algorithms are the eight queens problem or generating permutations
of a given sequence.
20. What is
the difference between a backtracking algorithm and a brute-force one?
Due to the fact that a
backtracking algorithm takes all the possible outcomes for a decision, it is
similar from this point of view with the brute force algorithm. The difference
consists in the fact that sometimes a backtracking algorithm can detect that an
exhaustive search is unnecessary and, therefore, it can perform much better.
21. Describe
divide and conquer paradigm.
When a problem is solved using a
divide and conquer algorithm, it is subdivided into one or more subproblems
which are all similar to the original problem in such a way that each of the
subproblems can be solved independently. In the end, the solutions to the
subproblems are combined in order to obtain the solution to the original
problem.
22. Describe
on short an insertion sorting algorithm.
An algorithm that sorts by
insertion takes the initial, unsorted sequence and computes a series of sorted
sequences using the following rules:
a) the first sequence in the series is the empty sequence
b) given a sequence S(i) in the series, for 0<=i<=""
p="">
23. Which
are the advantages provided by insertion sort?
Insertion sort provides several
advantages:
a) simple implementation
b) efficient for small data sets
c) adaptive - efficient for data sets that are already substantially sorted:
the time complexity is O(n + d), where d is the number of inversions
d) more efficient in practice than most other simple quadratic, i.e. O(n2)
algorithms such as selection sort or bubble sort; the best case (nearly sorted
input) is O(n)
e) stable - does not change the relative order of elements with equal keys
f) in-place - only requires a constant amount O( 1) of additional memory space
g) online - can sort a list as it receives it
24. Shortly
describe the quicksort algorithm.
In quicksort, the steps performed
are the following:
a) pick an element, called a pivot, from the list
b) reorder the list so that all elements with values less than the pivot come
before the pivot, while all elements with values greater than the pivot come
after it (equal values can go either way)
c) recursively sort the sub-list of lesser elements and the sub-list of greater
elements
25. What is
the difference between selection and insertion sorting?
In insertion sorting elements are
added to the sorted sequence in an arbitrary order. In selection sorting, the
elements are added to the sorted sequence in order so they are always added at
one end.
26. What is
merge sorting?
Merging is the sorting algorithm
which combines two or more sorted sequences into a single sorted sequence. It
is a divide and conquer algorithm, an O(n log n) comparison-based sorting
algorithm. Most implementations produce a stable sort, meaning that the
implementation preserves the input order of equal elements in the sorted
output.
27. Which
are the main steps of a merge sorting algorithm?
Sorting by merging is a recursive,
divide-and-conquer strategy. The basic steps to perform are the following:
a) divide the sequence into two sequences of length
b) recursively sort each of the two subsequences
c) merge the sorted subsequences to obtain the final result
28. Provide
a short description of binary search algorithm.
Binary search algorithm always
chooses the middle of the remaining search space, discarding one half or the
other, again depending on the comparison between the key value found at the
estimated position and the key value sought. The remaining search space is
reduced to the part before or after the estimated position.
29. What is
the linear search algorithm?
Linear search is a method for
finding a particular value in a list which consists of checking every one of
its elements, one at a time and in sequence, until the desired one is found. It
is the simplest search algorithm, a special case of brute-force search. Its
worst case cost is proportional to the number of elements in the list; and so
is its expected cost, if all list elements are equally likely to be searched
for. Therefore, if the list has more than a few elements, other methods (such
as binary search or hashing) may be much more efficient.
30. What is
best-first search algorithm?
It is a search algorithm that
considers the estimated best partial solution next. This is typically
implemented with priority queues.
31. What is
Huffman coding?
In computer science and
information theory, Huffman coding is an entropy encoding algorithm used for
lossless data compression. The term refers to the use of a variable-length code
table for encoding a source symbol (such as a character in a file) where the
variable-length code table has been derived in a particular way based on the
estimated probability of occurrence for each possible value of the source
symbol.