Subscribe by Email


Showing posts with label Outcome. Show all posts
Showing posts with label Outcome. Show all posts

Saturday, April 7, 2012

Explain principle-based versus rule-based process?

In the field of software development, two types of processes have been identified namely:
1. Principle based process and
2. The rule based process

The two above mentioned processes have been discussed in comparison with each so that grasping the concepts of the two processes becomes easy for you!

Principle based Process


- Principle based processes are a must if you want to sustain the current rigorous regulatory environment with better and more effective outcomes.

- This can be thought of as a continuous process that will call for the significant change in the behavior of the organizations.

- The principle based processes are based up on some principles rather than a bunch of rules that prescribe how the outcomes have to be achieved.

- To help the organizations plan their business processes, sign posted information is provided.

- Investment is made in the capabilities of the individual workers so as to increase their rate of experience, judgement, communication and expertise skills.

- Emphasis is also laid on the enhanced knowledge management processes so that the people have easy access to the relevant information.

- Performances are measured against the regulated outcomes that have been clearly articulated.

- Such principle based processes provide flexibility in delivering the outcomes that are required by the customers and the clients.

- Many of the software projects witness a close fit between among their regulatory requirements and the business objectives.

- This also leads to an increase in the responsibility for key regulatory decisions to a much higher level thus raising the difficulty of challenges for the organization, its compliance, internal audit functions and the risk management.

- These aspects are the most affected since most of the support to the senior management comes from these.

- Organizations that properly follow all the principles of a principle based regulatory process are the ones who are benefitted most from the “regulatory dividend”.

- Principle based processes or regulations deem to benefit more from the clients and customers via the fostering of a more competitive and innovative software industry.

- Effective protection is also offered by the principle based process as a result of the meeting the requirements and principles of the software project by the senior managers.

- To keep the principle based processes in existence and continuous use it is necessary for the organizations to work actively with the stake holders and other regulators both internationally and domestically.

- Some of principles are:

1. Efficient and economic project operations.
2. Placing adequate emphasis on the senior management in covering up the regulatory responsibilities.
3. Being proportionate.
4. Keeping regards for the other innovations in the markets.
5. Having proper regard for the impact that the principle based processes have on the competition.


Rule Based Process


Now coming to the rule based processes. These processes are characterized by an exhaustive, localized and repetitive transformations of a shared data object which can be any one of the following:

1. Term
2. Graph
3. Constraint store
4. Proof and so on.

Now you must be thinking what are the rules for?

- They are for describing the transformations which are required to segregate the object description from the replacement calculation.

- There are rules called the conditional rules that further restrict the applicability of the transformations.

- A control is kept on these transformations through the explicit and implicit strategies.

- The rules can be described as a pattern of application.

- A rule can be governed by further conditions that may restrict their applicability.


Thursday, February 16, 2012

What are different manual testing challenges?

Everything in this world has got some positive sides and some negative sides, some advantages and some disadvantages, and of course challenges! This holds utterly true with the technology too. Manual testing being so unsophisticated faces challenges too.

WHAT IS MEANT BY MANUAL TESTING?

- Manual testing involves a tester who is supposed to carry out the testing processes manually for finding out the errors and bugs.
- The tester here tests a software system or application with a view of an end user.
- All the features and functionalities of the software system or application are exploited to the most possible extent.
- As the tester cannot mentally track the whole testing process, he follows a written test plan.
- This also ensures that no important test case is missed.
- Even today after the invention of many modern testing technologies, most of the software engineering projects rely on manual testing since it involves a rigorous testing procedure.
- Manual testing works a long way in digging out more defects.
- In a typical manual testing a high level testing plan is followed.
- All the resources like software licenses and skilled people and computers are identified.
- The test cases are written in detail along with the procedure to be followed and the expected outcome.
- Different test cases are assigned to different testers who carry out the testing manually.
- A detailed test report is prepared.
- Manual testing demands skills because without skill the tester might falter.

CHALLENGES FACED IN MANUAL TESTING

1. Manual testing cannot be used to test out the whole application. It can only be used for some parts. The test cases are so large in numbers that it becomes impossible to execute all of them manually. If you were to execute all of those test cases, testing will take too much of time. You won’t be able to complete the testing within the stipulated period of time.

2. Always pay attention to the company defined processes. You should be well informed with the purpose these processes serve. Often following the company defined processes leas to incomplete software testing. The company processes often don’t keep up with the tester’s methodologies or test plan.

3. Manual testing requires good skills. The main skills required are of trouble shooting, analyzing and communication.

4. As the tester gets more hold of the software system or application testing, more and more test cases and errors and bugs come in to the scene and it become pretty much difficult to keep on testing the software system or application further. This is where the regression testing comes in to the play.

5. You should be careful while choosing the team members. They all should be skilled. Unskilled testers can further aggravate the problem rather than simplifying it. This also leads to inappropriate testing.

6. Manual testing should be governed by the time constraint. There is no time for executing each and every test case. The tester usually focuses on the completion of the task rather than focusing on the quality of the testing. There are a whole lot of the tasks to be performed like executing, documentation, automation and reviewing the test scenario.

7. The problem of sorting the test cases according to the priority often comes in way while following the manual testing. Defining a criterion for the sorting of the test cases well in accordance to the priority.

8. In manual testing the requirements of the software system or application are often misunderstood.

9. The reuse of test scripts is a difficult task in manual testing.

These challenges require analyzing skills rather than any other kind of skills.


Monday, November 29, 2010

Step 4 To test API : Call Sequencing, Step 5 To Test API : Observe the output

Step 4: Call Sequencing
When combinations of possible arguments to each individual call are unmanageable, the number of possible call sequences is infinite. Parameter selection and combination issues further complicate the problem call-sequencing problem. Faults caused by improper call sequences tend to give rise to some of the most dangerous problems in software. Most security vulnerabilities are caused by the execution of some such seemingly improbable sequences.

Step 5: Observe the output
The outcome of an execution of an API depends upon the behavior of that API, the test condition and the environment. The outcome of an API can be at different ways i.e. some could generally return certain data or status but for some of the APIs. It might not return or shall be just waiting for a period of time, triggering another event, modifying certain resource and so on.

The tester should be aware of the output that needs to be expected for the API under test. The outputs returned for various input values like valid/invalid, boundary values etc needs to be observed and analyzed to validate if they are as per the functionality. All the error codes returned and exceptions returned for all the input combinations should be evaluated.


Facebook activity