Professional Documents
Culture Documents
What is transaction processing system? Transaction processing system is a type of information system. Collect, store, modify and retrieve the transactions of an organization. This transaction is an event that generates or modifies data that is eventually store in an information system. Transaction processing system in the computer must pass the ACID test. Transaction processing systems were the exclusive domain of mainframe computers. Typically examples of such system would be Airline Reservation System, Banking Systems or the Accounting System of almost any large company. Because of this, transaction processing systems are mostly unknown to the world of personal computers. If an electronic payment is made, the amount must both withdraw from one account and added to the other, it cannot complete only on of those steps. Either both must occur, or neither. In case of a failure preventing transaction completion, the partially executed transaction must be rolled back by the transaction processing system. Transaction systems can handle errors in a safe and consistent manner but there are certain errors that cannot be avoided such as Network errors or database deadlocks so a way must exist to handle them when they occur. It is not possible to simply abort a current process. The result to a database left in an inconsistent state could render the entire system unusable. The major hurdle to be overcome by programmers of Transaction Processing Systems is to write application programs that meet these objectives. Since a program is not alive and unique for each User, the application data cannot rest with the program variables between User interactions. Therefore, application programs must contain special routines to handle Session Data. Programs also have to do a great deal of error handling to make Transactions truly safe.
System runtime functions Transaction processing systems provide an execution environment that ensures the integrity, availability, and security of data. It also ensures fast response time and high transaction throughput. System administration functions Transaction processing systems provide administrative support that lets users configure, monitor, and manage their transaction systems. Application development functions Transaction processing systems provide functions for use in custom business applications, including functions to access data, to perform intercomputer communications, and to design and manage the user interface. The services of a transaction processing system runtime environment include the following:
Scheduling and load balancing. Controlling the rate and order in which tasks are processed to give higher-priority tasks the best response times and to adapt to the availability of application servers and other system resources. Managing system resources. Maintaining a pool of operating system resources to be used for transaction processing, loading application programs, and acquiring and releasing storage. Monitoring. Monitoring the progress of tasks, suspending those waiting for input, adjusting task priorities, and resolving problems. Managing data. Obtaining required data needed by tasks, coordinating resource managers (such as file servers and database managers), locking data for update, and logging changes. Managing communications. Monitoring communications with users and between servers and other systems, starting communications sessions as needed, managing data handling and conversion, and routing data to the right destination. Time management. Managing transaction processing in relation to the passage of time, starting tasks at predefined times, logging the date and time of events onto disk, and regularly controlling part of the business system to provide degrees of automation.
Services for systems administration and application development are described in subsequent sections. TXSeries for Multiplatforms is a transaction processing system that provides the transaction processing facilities that enable application programs to be implemented as transactions. The work of many users can be processed at the same time, by a single server or by multiple servers. To users, TXSeries for Multiplatforms provides seemingly dedicated processing of their work, with the security of access, reliability of data update, and other benefits that transactions provide. It hides the complexity of the facilities from user applications by providing standard APIs. In CICS, the transaction processing system is implemented by developing one or more CICS regions, which are individual administrative units that support multiple concurrent application programs.
Perform work that one or more clients have requested. For example, a user application that is running on one machine (the client machine) requests work to be done on another machine (the server machine). Typically, the region or application server accesses some data, applies some business logic to it, then replies to the client. Such service is provided by running one or more programs on behalf of a transaction. Maintain and use a pool of multithreaded processes, each of which provides a complete environment for running a transaction. In CICS, such processes are called application servers. Coordinate all the facilities that its application servers need. For example, they coordinate the security of the application servers, obtain data and storage that they need, and log their transactions. Among other advantages, multiple CICS regions can be used to provide a distributed transaction processing environment for greater throughput and management of workload. Subcontract many services to other servers that can do the work better and provide extra services that are needed for integrated transaction processing. For example, they can use Structured File Server (SFS) files or DB2 databases to store and manage user data. They also provide services to locate and interface with the resource managers, record ongoing changes to data, and coordinate the update of data across multiple resource managers.
Discussion Not so long ago, Transaction Processing Systems were the exclusive domain of mainframe computers. Typical examples of such systems would be Airline Reservation Systems, Banking Systems, or the Accounting System of almost any large company. Because of this, Transaction Processing Systems are mostly unknown to the world of personal computers. But all of this is about to change drastically, and it's all because of the Internet. Today, many small companies, non-commercial organizations, and even private individuals are discovering applications that can benefit from a Transaction Processing System. The main problems addressed by Transaction Processing Systems are:
the need to handle hundreds, even thousands of simultaneous Users the need to allow many Users to work on the same set of data, with immediate updating
Normal time-sharing systems are usually incapable of handling these problems because of the great number of Users. Spawning a unique process for each User having his own copy of all the data simply creates too much overhead for the Operating System. The World Wide Web easily reaches large numbers of simultaneous Users. Consequently, Web Servers internally work very similar to traditional Transaction Processing Systems, with the exception that they lack database access and state information pertaining to the individual Users. Transaction Systems handle errors in a safe and consistent manner, but there are certain errors that can not be avoided (e.g. Network errors or Database deadlocks) so a way must exist to handle them when they occur. It is not possible to simply abort a current process. The consequences to a database left in an inconsistent state could render the entire system unusable.
This is why the term Transaction was introduced. A Transaction runs like a subprogram that modifies the database and the session status, leading from one consistent state to another. A Transaction must be atomic (i.e. either all modifications are done, or none of them). Transaction Systems are designed to guarantee that Transactions are atomic. The major hurdle to be overcome by programmers of Transaction Processing Systems is to write application programs that meet these objectives. Since a program is not alive and unique for each User, the application data can not rest with the program variables between User interactions. Therefore, application programs must contain special routines to handle Session Data. Programs also have to do a great deal of error handling to make Transactions truly safe. All of these problems are very similar to the current problems of writing Web Applications (except that CGI makes things worse, since there is no support at all for session-wide data and databases).
An Overview of Transaction Processing A financial transaction has been defined as: An economic event that affects the assets and equities of the firm, is reflected in the accounts, and is measured in monetary terms .Financial transactions are dealt with by the transaction processing system (T P S) which is organized to handle like transactions in a like manner .
A. Transaction Cycles Three transaction cycles handle the three basic types of transactions: Those related to the acquisition of materials, labour, and capital assets and the subsequent disbursement of payment (the expenditure cycle); the conversion of materials into goods and services using labour and assets (the conversion cycle); and the sale of goods and/or services and the subsequent receipt of payment (the revenue cycle) . . B. The Expenditure Cycle The start of business activity is reflected in the expenditure cycle S the acquisition of the inputs to production : materials, labour, and fixed assets .Since most business transactions are conducted on a credit basis, your text distinguishes between the physical part of the transaction and the financial part. This is an artificial split and is used for clarity only. Considerably more effort is required when transactions are not conducted on a cash basis. Four subsystems make up the expenditure cycle: C Purchases/accounts payable involves the ordering of materials and recognizing the related liability; C Cash disbursements handles the payment on those liabilities ; C Payroll handles both tasks for the purchase of labour; and C Fixed assets deals with the acquisition, maintenance and disposal of property, plant, and equipment