Subscribe by Email


Showing posts with label Assumptions. Show all posts
Showing posts with label Assumptions. Show all posts

Wednesday, July 3, 2013

What are five key assumptions in dynamic channel allocation?

Putting the available bandwidth in operation of the cellular telephone system to efficient use is an important problem to be considered for providing good service to the largest number of customers possible. The problem has gained a critical status owing to the rapid growth of the cellular telephones users. 

- A communication channel is nothing but a band of frequencies which a number of users can use simultaneously if they are residing far apart from each other. 
- There is a minimum distance at which no interference occurs between the users and it is known as the channel reuse constraint. 
- A cellular telephone system divides the service area in to a number of regions commonly known as the cells. 
- Each of the cells has its own base station for handling the calls concerned with that cell. 
- The bandwidth of the communication channel is partitioned in to many channels permanently. 
- The cells are then allocated these channels in such a way that the channel reuse constraint is not violated by the calls. 
- There are a number of ways for allocating the channels. 
- Few of them are better than the others when it comes to reliably making channels available to all the cells. 

Few examples of channel allocation methods are:
  1. Fixed assignment method
  2. Dynamic allocation method
  3. Reinforcement learning method
About Dynamic Method Allocation
- One type of dynamic method allocation is the BDCL or the borrowing with directional channel locking. 
- Out of all the above mentioned channel allocation methods, the dynamic allocation is considered the best one according to some studies conducted. 
- It is somewhat of the heuristic kind. 
- In dynamic allocation, the channels are allocated in the same way as in the fixed assignment method but it permits borrowing channels from the other cells whenever required. 
- It then arranges those channels in a specific order in each of the cells and this ordering is used in determining the channels for borrowing and reassigning the calls dynamically within the cells.
- There are static allocation techniques also but those don’t seem to work as well as the dynamic allocation techniques. 

In dynamic channel allocation 5 assumptions are always made which we have discussed below:

Station model: 
- There are N independent stations in the model and one frame is generated by each of the stations one at a time. 
- It is blocked until the successful transmission of the previous frame. 
- This means a station cannot queue multiple frames for transmission. 
- For example, a transmission gap of 100 bits is required during the transmission of the consecutive frames.

Single channel assumption:  
- The same medium is shared by all the stations. 
- Through it all the stations can receive and transmit.

Collision assumption: 
- A collision occurs whenever at the same time two frames are transmitted. 
The two frames that collide have to be re-transmitted.

Transmission model: 
- There are 2 types namely, the continuous time model and the slotted time model. 
- In the former type transmission can be started at any given time. 
- In the latter model, transmission starts with a time slot.

Carrier sense: 
- It can also be classified in to 2 categories namely carrier sense and no carrier sense. 
- Stations can know if a channel is occupied prior to using it. This is called carrier sense.
- In no carrier sense, the stations cannot know whether the channel is occupied or not before transmission.

- Also, it gets difficult for the dynamic allocation method for setting up the favorable usage patterns as the calls start saturating the system. 


Thursday, April 26, 2012

What is a testing framework? What are different unit testing frameworks?



What is a testing framework?

- Testing framework is considered to be an object oriented approach to testing since it helps in providing suitable environment and language for testing the software system or application. 
- A testing framework can be defined as a set of concepts, assumptions and tools that are the means for providing support for testing the software systems or application. 
- The testing frameworks are generally used in the automated testing and such testing frameworks are called the test automation frameworks. 
- The main advantage here for which the testing frame works are used is that they reduce the overall testing and development cost by a large amount. 
- If any change or modification is made to the test cases, then all the tester needs to do is to update the test case file since the start-up script and the driver script will remain the same.
- This reduces the hectic task of updating the scripts when the changes have to be made to the software system or application. 
- The testing framework if chosen properly can help in reducing the development costs by a big margin and the lower cost can be maintained throughout the development process. 
- These costs are basically due to the maintenance efforts, test scripting and development processes.
- Using any approach with testing frame work has a great impact on the costs. 

Types of Testing Frameworks

  1. Linear testing framework: This is commonly used for the code that is procedure oriented and is generated by the tools using techniques such as recording and playback.
  2. Structured testing framework: This testing frame work is composed of the control structures and hence got the name. It is constituted by control structures such as switch, while, for, if-else condition statement etc.
  3. Data driven testing framework: This testing frame work involves persisting of the data outside a test in either a spreadsheet or a database.
  4. Key word driven testing framework
  5. Hybrid testing framework: This type of frame work is the resultant of the combination of two or more types of above mentioned testing frame works.

What does testing framework account for?

- A testing frame work is said to account for the following things:
  1. Definition of the format so that the expectations can be expressed.
  2. Creation of a mechanism for driving or hooking an application that is under test.
  3. Execution of the tests.
  4. Reporting of the results.
- The execution of the powerful and complex tests eats up a lot of time and it also requires quite large budget when only capture tool is used. 
- Since the tests are created ad hoc, it becomes very difficult to track these functionalities and reproduce them.
- A test automation framework serves as a better support option when it comes to the automated testing. 
The testing frameworks and other tools are incorporated in to a test automation interface for carrying out the integration as well as system testing. 
- The test automation interface is employed for the mapping of the tests without putting them in to the way of the development process.
- Test automation frameworks are known for improving flexibility and efficiency of the test scripts. 
- There are 3 main core modules of any test automation interface:

1. Interface engine: The engine lies on the top of the environment and consists of a test runner and parser.
2. Interface environment: It consists of project library and frame work library.
3. Object repository: It consists of object application data recorded by the testing tool.


Facebook activity