Using a Timed Petri Net (TPN) to Model a Bank ATM
|
|
- Olivia Perry
- 7 years ago
- Views:
Transcription
1 Using a Timed Petri Net (TPN) to Model a Bank ATM Tony Spiteri Staines MBCS, University of Malta, Department of Computer Information Systems toni_staines@yahoo.com Abstract This paper explains how a working Petri Net model developed for a soft Real Time system. A Bank ATM connects to an ATM controller, which in turn connects to a card authorization system. This model is developed using Timed Petri Nets and there is the addition of other complex mechanisms that give more realistic behavior and a finer level of detailed events. More complex constructs like: timers, reset points, transaction timeouts, redundancy mechanisms and others are included. First we discuss how the model was built using a bottom up approach. Each of the main components of the system are identified and built using Petri Nets. These are tested in isolation and then the complete system is assembled. This is similar to a bottom up approach. Once that the main model is built it is implemented on a simulation tool and used to derive performance results for the system. The final model is live and exhibits repetitive, consistent behavior. Results data have been included in tabular form and depicted graphically. These data show how it is possible to derive results for software and hardware performance using Petri Nets. This is quite exclusive because most software development methods like the UML and even formal techniques do not give us performance analysis and neither proper features for redundancy. To conclude it is possible to say that if good Petri Net simulation tools are available it is possible to use Petri Nets to describe soft Real Time systems in fine detail and analyze them. At present this cannot be easily achieved by many other techniques when the system involved has stringent synchronization requirements and timing constraints. The work presented here can be further developed. 1. Introduction A bank ATM or Teller can be considered to be a complex piece of computerized machinery composed of several classes of objects: Cash Dispenser, Card Verifier, Display Unit, Communication component, Printer, Keypad, servicing unit etc. Each of theses components needs to synchronize correctly with another component to get information and produce correct results. Even a simple transaction like a cash withdrawal in reality is composed of several steps. There could be possibly over 50 steps that are not visible. Some steps like communication and authorization are done remotely from the ATM. Various diagrams can be used to model this system like the Activity Diagram, Sequence Diagram, Communication Diagram or State Diagram of the UML 2 [1,4,8]. Other Object Oriented Modeling Techniques [1,2,3,14] use similar concepts to the UML. The problem with these is that it is difficult to model the detail required using just one of these diagrams. To properly understand the system being explored the notion of synchronization of events and objects is of fundamental importance. For Real Time behavior complex mechanisms, redundancy and time must be considered. It is not possible to use traditional methodologies to perform a simulation run and obtain experimental results. There is also a problem with Diagram consistency if too many diagrams are used. The bank ATM can be considered to be a soft Real- Time system which requires some form of performance analysis. Even though there are numerous methods that can be used for analysis, often it is better to keep to one method rather than end up with a collection of methods. There are formal techniques like: Real Time Logics, Duration Calculus, Process Algebras and Formal languages [7]. These have very specific uses and are not well understood. Usually there is no visual depiction of the system. Many of these techniques are oriented to formally verifying a system rather than model its proper behavior. It is possible to have a formally correct system exhibiting unwanted behavior if this is incorrectly modeled. For a bank ATM there are many possible events and states. This makes these techniques rather awkward to use. Understanding this system is highly dependant on dynamic modeling.
2 There are cognitive problems when trying to design and comprehend complex structures and processes. A person s natural thought process must naturally focus on the interaction between the system s structure and events not on keeping models consistent. This can be achieved through the use of Petri Nets. Some of the most common classes of Petri Nets are Timed Petri Nets, Stochastic Petri Nets, Generalized Stochastic Petri Nets and colored Petri Nets [12]. Timed Petri Nets have been used successfully to model network ATM switching [14]. Special firing times and timing issues have been used in these cases. Transitions can have deterministic or exponential firing times [10]. High level Petri Nets have been used to describe intelligent network switching [6]. A Petri Net can perform some form of choice using defined conditions. Timed Petri Nets, Stochastic Petri Nets and Generalized Stochastic Petri Nets are special classes that can be used for the design of real time systems and embedded systems [5,9,15]. Petri Nets can be used in a three-view model: path-view, map-view and resourceview [17]. This is useful for performance engineering of concurrent software. These models like TCPN (Timing Constraint Petri Nets) can be used for schedulability analysis of real time system specifications [16]. Most of the work done with Petri Nets does not usually take a complete system into consideration from a highly detailed point of view. Also it is not usual for these models to cater for redundancy. This paper shows how many other details and mechanisms can be included in the Petri Nets being used. These mechanisms were built using the Petri Net theory. These mechanisms or constructs cannot be easily replicated using other methods. 2. Related work For this work 3 main classes of objects or components have been identified. Refer to Fig. 1. These are i) the Bank ATM machine, ii) an ATM Controller and iii) credit card authorization server. The ATM connects to the ATM Controller which in turn connects to a credit card authorization server. The following briefly describes sequentially the work carried out: i) Events and possible states were identified for the 3 main components. E.g. for the ATM possible events are: Customer Arrives, Insert Card, Insert Pin, Validate Pin and others. Along with these events possible states were identified and built into lists. For a full list refer to the appendix section 5.1. ii) These events and states were used to construct three Timed Petri Nets [18], one for the ATM Machine, the ATM Controller and the Card Authorization System. iii) Many additional mechanisms were added to the basic Petri Nets to make their behavior more realistic. iv) The Petri Nets for each of the components were tested in isolation for different types of errors. v) All the three Petri Nets were connected to produce the complete system. To connect the Petri Nets, the places designated as communication channels were used. This approach simplifies connecting different components. vi) The full system Petri Net was tested and simulated to derive results used for performance analysis. The final model resulted in Timed Petri Net. This was used to obtain performance results. Two types of transitions were used: i) time transitions ii) immediate transitions. ATM MACHINE ATM CONTROLLER CARD AUTHORIZATION SYSTEM Figure 1. The main components for a bank atm 2.1. Adding mechanisms to the petri net to model real behavior Various mechanisms have been added. These are rather difficult to imitate with other methods. The mechanisms have allowed us to achieve proper Real Time behaviour given the complexities involved. At many major events some form of redundancy has been included. E.g. If the credit card authorization server fails then the ATM Controller can feature a timeout. This will enable the ATM to take some required action. Also if the ATM Controller fails the ATM has an inbuilt timeout mechanism that will enable it to do the processing itself. This type of architecture will guarantee that processing is still carried out even in the worst case scenario. Most of these details cannot be
3 captured with normal object oriented modeling techniques where it is not possible to show the current state of the system Timing details. Timed transitions were used as required in the model. Two types of time were used: constant time and a range time (having an Earliest Firing Time and Latest Firing Time EFT,LFT) Communication channels. Communication channels are places that possibly can have a restriction on the number of tokens they store. These were used to couple together the complete system. These communication channels can serve as message buffers Buffers. Buffers were used to connect different parts together. Buffers consist of simple places with a restricted capacity Simple two-way timeout design. Refer to Fig. 2. The idea is to have a mechanism that simultaneously enables two timed transitions T 11, T 12 because when t8 fires tokens are placed in places P 9 and P 11 simultaneously. T 11 gets a firing time from the interval 5 20 whilst T 12 is fixed at 20. If T 11 < T 12 then a token is placed in P 12 and T 12 is disabled. If T 12 < T 11 then a token is removed from p11 and placed in the machine reset place or a reset point that implies that the transaction timed out and another token is placed in P 14. T 9 is disabled but T 11 remains enabled and will fire after its time expires placing a token in P 12. T 13 is then enabled and the mechanism is reset. This mechanism was used because it was found that once a timed transition from some distribution is enabled it is possible to stop it but then the time counter would not reset. E.g. if transition T 11 is stopped at time 6 then it will retain this value for the next firing. On the other hand if a deterministic transition is stopped its time resets back to the original value. E.g. if transition T 4 is stopped at time 6 it will automatically remain fixed at 20. This can vary depending on what type of Petri Net simulation software is used. The idea behind this is similar to that of having a random switch. This implies that the time is obtained at random allowing us to create different scenarios for evaluation. Figure 2. Simple two-way timeout design Choice points. Using the idea in Fig. 3 it is possible to add a choice point to the Petri Net. In Fig.3 there is probability the either T 1,T 2 or T 3 fires. This can be used to simulate 3 different choices or outcomes. Thus we use conflict or choice to simulate random conditions Machine reset points. The idea was to have places and transitions that can be used to return the components back to the original state. After processing the machine must return to the initial state and start again. Figure 3. A choice point Other details can be added to these buffers to allow the building of more complex mechanisms.
4 Independent timers. Independent Timers are timers that were used to model some specific activity. I.e. When a transaction is being performed a timer is started. It is possible to assign a random time to this timer from a uniformly distributed range. E.g. in Fig. 4., T 19 and T 18 and P 25, P 24 form part of such a timer. model needed to be analyzed in detail. Refer to Fig. 5. The functioning of the model was successful Counters. Counters were added to the Petri Nets by just using normal places with no restricted capacity. These were useful to see if the Petri Nets were functioning correctly and also for performance analysis Testing the components of the atm system Fig. 4 shows how the ATM Controller was tested using dummy connections, places and transitions. This process was also repeated for the ATM and Card Authorization Server. These 2 other individual components have not been displayed. A similar method of testing was used for each. The three components the ATM, ATM Controller and the Card Authorization Server were all tested individually. A sort of coupled token generator was connected to the Petri Net of each individual components in isolation to validate its behavior. This was done before connecting all the three Petri Nets together as in Fig. 5. The approach can be classified as bottom up. Fig. 4 also shows how the ATM Controller component is constructed and tested in isolation before constructing the complete system. Places and transitions have been included both at the end and the start of the ATM Controller. This has been done intentionally for testing purposes. There is also redundancy built into this component using a timer The complete system After each component worked successfully as planned the complete system was assembled. Assembly was simply done by using connection channels. Basically places and transitions were used instead of the dummy places and transitions used for testing. Counters (places) were added to this to be able to get performance results from the Petri Net being used. The full model was also checked and simulated for possible errors. Simulation was used to derive performance results. Inside the model there are many redundancy mechanisms. This implies that if one component fails, e.g. the ATM controller fails the ATM will still operate. This implies that the final Figure 4. Atm controller with dummy places and transitions for testing 3. Results What has been mainly achieved here is that fine Real Time details have been developed and integrated into the Petri Nets. Fault tolerant and recovery mechanisms that function correctly have been created. These mechanisms are important for complex systems being a hybrid of hardware and software parts. Timing and performance analysis can be obtained from the models. These could help in the identification and solution of possible system bottlenecks at an early stage. The final model with the counter places comes close to a generalized stochastic Petri Net which is a special class of a Timed Petri Net. This is determined by its behavior. Two major types of transitions were needed. Timed and immediate transitions. Some transitions have zero delay time. Other transitions have time that is randomly obtained from a distribution whilst other transitions have a constant time..
5 Figure 5. Complete system timed petri net consisting of an atm, atm controller and card authorization
6 There is also an element of non-determinism because of conflicting transitions or transitions enabled simultaneously. The model was executed and tested on the HPSIM Tool [19].The redundancy mechanisms used e.g. the timers, random switches, reset points etc guarantee that the numbers of customers served remains relatively constant with time. The model is also deadlock free, exhibits repetitive behavior, consistent, conservative, structurally bounded and live [18]. The model developed guarantees that it will return to the original state. This can be formally proven using Petri Net theory and other suitable tools. Run No Table 1. Processing results for 10 runs of the complete system part 1 CUSTOMERS IN TOTAL TRANSACTIONS TOTAL ATM TIMEOUTS TIMER 1 TOTAL ATM TIMEOUTS TIMER Run No Table 2. Processing results for 10 runs of the complete system part 2 TOTAL CARDS TAKEN INVALID PIN TIMEOUTS INSERTING PIN TIMEOUTS TRANSACTION SELECTION TOTAL ATM CONTROLLER TIMEOUTS The data in Table 1,2 consists of a summary of 10 simulation runs of one hour each for the model in Fig. 5. Detailed performance analysis was carried out on the model. The results given here are just a small summary of what results are possible. Results in Table 1. and Table 2. confirm that the model is behaving consistently and random data is being generated. The values obtained are also quite close to a real scenario e.g. in 1 hour about 50 customers use the system. This is quite realistic. The final results appear in Fig. 6. It is evident that the random switches and structures used are all fully functional. There is the random generation of invalid pins and transaction timeouts in the model. By changing the time values of the transitions it is possible to achieve totally different results as desired. QUANTITY RUN NUMBER CUSTOMERS IN TOTAL TRANSACTIONS TOTAL ATM TIMEOUTS TIMER 1 TOTAL ATM TIMEOUTS TIMER 2 TOTAL CARDS TAKEN INVALID PIN TIMEOUTS TRANSACTION SELECTION TIMEOUTS INSERTING PIN TOTAL ATM CONTROLLER TIMEOUTS Figure 6. Performance results for the full model It is possible to use a broken connection or a malfunctioning component to simulate different system behavior. If the ATM controller is down the approach used here guarantees that the ATM will still respond to a customer. This is achieved by the timers included in the ATM transitions: T 33 and T 34. If the performance of each component is taken in isolation it is possible to determine design flaws in the system and modify it as needed. 4. Conclusion From the results obtained it is shown that added complex mechanisms have been successfully added to normal Timed Petri Nets. These have enabled us to achieve proper behavior and redundancy which would be important for complex systems. It is noticeable that even though the system modeled here initially looks simple there are many intricacies that are often overlooked. It is possible to refine the Petri Nets developed using reduction methods to simplify the model [18]. These reduction methods enable the Petri Net developed to be simplified in detail. It is possible to add higher order constructs like inhibitor arcs. The problem is that many simulation tools do not support higher level constructs. This is why many of these constructs were not used here. Reachability Analysis can be used to analyze the final Petri Net. Petri Nets can be used for performance analysis. These types of diagrams could be used for detailed analysis and design of complex information systems with synchronous and asynchronous message passing. Strict and precise timing constraints can be modeled in Petri Nets. These diagrams help to identify possible system
7 bottlenecks at the analysis stage. This depends if they are simulated. Other work can be done to formally verify these models and also improve upon them. These types of models could be useful for fault identification even when the system is functional. They could be used for fine tuning the actual system. There are also drawbacks with Petri Nets. If the system is complex it is possible to have too many states to control. Reduction methods would solve this problem. A Petri Net solution might not always be the best approach. From experience it is suggested that other diagrams like State Diagrams or Sequence Diagrams be used along with Petri Nets. 5. Appendix 5.1. Places used P 1 Customer Arrives; P 2 Customer Being Served; P 3 Customer Ready; P 4 Customer In; P 5 Customer Out; P 6 ATM Machine Ready; P 7 Card Inserted; P 8 Ready For Main Reset; P 9 Card Processed P 10 Input 1 Timer; P 11 Input 2 Timer; P 12 Control; P 13 Output 2 Timeout; P 14 Output 1 Normal; P 15 Pin Inserted; P 16 Waiting For Pin Check; P 17 Selection Possible; P 18 Max Pin Retires Allowed ;P19 Input 1 Timer ; P20 Input 2 Timer; P 21 Control; P 22 Output1 Timeout; P 23 Transaction Selection Ready; P 24 Output 2 Normal ;P 25 Selection Processed Ok; P 26 Processing Ended P 27 Output Channel; P 29 Input Channel; P 30 Message Received; P 33 Message Sent Waiting For A Reply; P 37 Reply Processed A; P 38 Reply Processed B; P 39 Customer Processing Ended; P 40 Reset Place; P 41 Timer 1 Firing Enabled; P 42 Timer 2 Firing Enabled; P 43 Control Message Timer; P 44 Additional Transactions Performed Counter; P 45 Maximum Transactions Allowed In 1 Session Counter; P 46 Transition Counter Control; P 47 Pin Selection Place; P 48 No Of Invalid Pin Tries Counter; P 49 Invalid Pin Retries Count Exceeded; P 50 Control; P 51 Timeout Occurred; P 31 Message Received; P 32 Ready For Processing; P 34 Ready To Send Reply; P 28 Message Read In; P 84 Message In Progress; P 35 Message Checked; P 36 Message To Send; P 55 Waiting For Reply; P 54 Message Received; P 53 Message Processed; P52 Message Checked; P34 Ready To Send Reply; P 58 Control; P59Timeout; P 57 Input Channel; P 56,P 66,P 72 Output Channel; P66 Is An Output Buffer Channel That Can Hold Only 4 Tokens; P 72 Can Hold 1 Token; P 62 Reply Message Generated; P 60 Message Received; P 61 Ready For Processing; P 63 Message Read; P 65 Reply Data Generated; P 68 Message Received; P 69 Processes Ready; P 74 Message Received; P 70 Message Read In; P 71 Update Message Sent; P 64 Message Sent To Buffer; P 76 Processes Ready; P 78, P 79, P 80 Ready To Update For Card Transaction Bank Account Interface; P 81, P 82,P 83 Card,Transaction, Bank Account Interface Updated; P 75 Update Signal Sent; P 77 Waiting For Main Update To Complete; P 67, P 73 Buffer Control Places; 5.2. Transitions used T 1 Customer Arrives; T 2 Customer Leave; T 3 Reset Customer; T 4 Insert Card; T 5 Reset Machine; T 6 Process Card; T 7 Request Pin; T 8 Constant Timeout; T 9 Reset Transition; T 10 Time Transition Range [Min,Max];T 11 Start Pin Validation; T 12 Start Pin Validation; T13 Validate Pin Constant Time; T 14 Start Transaction Selection; T 15 Constant Timeout; T 16 Reset Transition; T 17 Time Transition Range [Min,Max]; T 18 Record Transaction; T 19 Process Selection; T20 End Processing; T 22 Send; T 25 Receive; T 28 Forward Normal Reply; T 29 Process Reply; T 30 End Customer Processing; T 31 Give Card Back; T 32 Dual Timer Reset; T 33 Timer 1 Constant Timed Transition; T 34 Timer 2 Constant Timed Transition; T 35 Reset Timer; T 36 Reset- Transaction Counter; T 37 Process Another Transaction; T 38 Process Valid Pin; T 39 Process Invalid Pin; T 40 Pin Counter Reset; T 41 Invalid Pins Process; T 42 Take Card; T 23 Receive; T 24 Send; T 21 Read In; T 43 Prepare String; T 26 Check Or Verify; T 44 Check Message; T 27 Prepare String; T 45 Process Message In; T 46 Send; T 47 Receive; T 48 Timer 1; T49 Reset; 6. Acknowledgements I would like to thank Henryk Anschuetz for using his tool. 7. References [1] S. S. Alhir, Understanding the Unified Modeling Language (UML) Methods& Tools, Martinig & Associates, Apr [2] M. Awad, J. Kuusela, and J. Ziegler, Object-Oriented Technology for Real-Time Systems, Englewood Cliffs, N.J.: Prentice Hall, [3] G. Booch, Object-Oriented Design with Applications, 2d ed. Reading, Mass.: Addison-Wesley, 1991.
8 [4] G. Booch, The Unified Modeling Language User Guide, Reading, Mass.: Addison-Wesley, [5] G. Bucci, E. Vicario, Compositional Validation of Time- Critical Systems using Communicating Time Petri Nets, IEEE Transactions on Software Engineering, Vol 21 No 12, Dec 1995, pp [6] C. Capellmann, H. Dibold and U. Herzog, Using High- Level Petri Nets in the field of Intelligent Networks, Lecture Notes In Computer Science 1605, Applications of Petri Nets to Communication Networks, Springer-Verlag, [17] C.M. Woodside, A Three-View Model for Performance Engineering of Concurrent Software, IEEE Transactions on Software Engineering, Vol 21 No 9, Sep 1995, pp [18] M. Zhou, K. Venkatesh, Modeling, Simulation And Control Of Flexible Manufacturing Systems A Petri Net Approach, World Scientific, 1999, isbn x. [19] HPSIM Petri Net simulation tool, Copyright (C) Henryk Anschuetz was used to build the Petri Net in Figure 5. [7] J. Carlson, Languages and Methods for Specifying Real- Time Systems, MRTC report, Mälardalen Real-Time Research Centre, Mälardalen University, Aug [8] K. Duddy, UML2 Must Enable a Family of Languages, Communications of the ACM, Vol. 45 No.11, Nov 2002, pp [9] Z. Gu and K.G. Shin, Analysis of Event-Driven Real- Time Systems with Time Petri Nets, IFIP World Computer Congress 2000, Stream 7 on Distributed, Parallel& Embedded systems, University of Michigan, [10] B.R. Haverkort, Performance Evaluation of Polling- Based Communication Systems using SPNs, Lecture Notes In Computer Science 1605, Applications of Petri Nets to Communication Networks, [11] J.W. Janneck, R. Esser, Higher-order Petri Net modeling Techniques and Applications, Conferences in Research and Practice in IT Series, Vol 12, Adelaide Australia, 2002, pp [12] Lecture Notes from the 21 st International Conference On Application And Theory Of Petri Nets, Aarhus, Denmark, Jun [13] J. Martin, M. Odell, Object-Oriented Methods: A Foundation, Prentice Hall, [14] M. Reid, W.M. Zuberek, Timed Petri Net Models of ATM LANs, Lecture Notes In Computer Science 1605, Applications of Petri Nets to Communication Networks, Springer-Verlag, [15] C. Rust, F. Stappert, and R. Bernhardi-Grisson, Petri Net Based Design of Reconfigurable Embedded Real-Time Systems, Distributed and parallel et. Publishers, Univ. of Paderborn, Germany, [16] J.P. Tsai, Y. Dong BI, S.J. Yang, Debugging for Timing-Constraint Violations, IEEE Software Engineering, Vol 13-2, Mar 1996, pp
CS556 Course Project Performance Analysis of M-NET using GSPN
Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 CS6 Course Project Performance Analysis of M-NET using GSPN Jinchun Xia. Introduction Performance is a crucial factor in software
More informationProgramma della seconda parte del corso
Programma della seconda parte del corso Introduction Reliability Performance Risk Software Performance Engineering Layered Queueing Models Stochastic Petri Nets New trends in software modeling: Metamodeling,
More informationApplying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
More informationKirsten Sinclair SyntheSys Systems Engineers
Kirsten Sinclair SyntheSys Systems Engineers Kirsten Sinclair SyntheSys Systems Engineers Spicing-up IBM s Enterprise Architecture tools with Petri Nets On Today s Menu Appetiser: Background Starter: Use
More informationHow To Improve Availability In Local Disaster Recovery
2011 International Conference on Information Communication and Management IPCSIT vol.16 (2011) (2011) IACSIT Press, Singapore A Petri Net Model for High Availability in Virtualized Local Disaster Recovery
More informationATM Case Study Part 1
ATM Case Study Part 1 A requirements document specifies the purpose of the ATM system and what it must do. Requirements Document A local bank intends to install a new automated teller machine (ATM) to
More informationSFWR 4C03: Computer Networks & Computer Security Jan 3-7, 2005. Lecturer: Kartik Krishnan Lecture 1-3
SFWR 4C03: Computer Networks & Computer Security Jan 3-7, 2005 Lecturer: Kartik Krishnan Lecture 1-3 Communications and Computer Networks The fundamental purpose of a communication network is the exchange
More informationModelling Workflow with Petri Nets. CA4 BPM PetriNets
Modelling Workflow with Petri Nets 1 Workflow Management Issues Georgakopoulos,Hornick, Sheth Process Workflow specification Workflow Implementation =workflow application Business Process Modelling/ Reengineering
More informationMeeting Scheduling with Multi Agent Systems: Design and Implementation
Proceedings of the 6th WSEAS Int. Conf. on Software Engineering, Parallel and Distributed Systems, Corfu Island, Greece, February 16-19, 2007 92 Meeting Scheduling with Multi Agent Systems: Design and
More informationCommunicating Systems
Communicating Systems with UML 2 Modeling and Analysis ofnetwork Protocols David Garduno Barrera Michel Diaz LEEJTEE WILEY Table of Contents Preface xi Chapter 1. Why Use UML to Model Network Protocols?
More informationUML Modeling of Network Topologies for Distributed Computer System
Journal of Computing and Information Technology - CIT 17, 2009, 4, 327 334 doi:10.2498/cit.1001319 327 UML Modeling of Network Topologies for Distributed Computer System Vipin Saxena and Deepak Arora Department
More informationModeling and Performance Evaluation of Internet of Things based on Petri Nets and Behavior Expression
Research Journal of Applied Sciences, Engineering and echnology (18): 3381-3385, 212 ISSN: 2-767 Maxwell Scientific Organization, 212 Submitted: March 26, 212 Accepted: April 17, 212 Published: September
More informationChapter 3. Technology review. 3.1. Introduction
Technology review Chapter 3 3.1. Introduction Previous chapter covers detail description about problem domain. In this chapter I will discuss the technologies currently available to solve a problem in
More informationUsing Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes
More informationA CSPm Model for the Procure to Pay Case Study
A CSPm Model for the Procure to Pay Case Study Andreas V. Hense Bonn-Rhein-Sieg University oas, Grantham-Allee 20, 53757 Sankt Augustin, Germany, andreas.hense@brsu.de Abstract. The model presented here
More informationApplication Unit, MDRC AB/S 1.1, GH Q631 0030 R0111
, GH Q631 0030 R0111 SK 0010 B 98 The application unit is a DIN rail mounted device for insertion in the distribution board. The connection to the EIB is established via a bus connecting terminal at the
More informationDesign and Verification of Nine port Network Router
Design and Verification of Nine port Network Router G. Sri Lakshmi 1, A Ganga Mani 2 1 Assistant Professor, Department of Electronics and Communication Engineering, Pragathi Engineering College, Andhra
More informationManaging Users and Identity Stores
CHAPTER 8 Overview ACS manages your network devices and other ACS clients by using the ACS network resource repositories and identity stores. When a host connects to the network through ACS requesting
More informationSequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c 2004 2011
Sequence Diagrams Massimo Felici What are Sequence Diagrams? Sequence Diagrams are interaction diagrams that detail how operations are carried out Interaction diagrams model important runtime interactions
More informationOperating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
More informationDistributed Data Management
Introduction Distributed Data Management Involves the distribution of data and work among more than one machine in the network. Distributed computing is more broad than canonical client/server, in that
More informationArchitecture Design & Sequence Diagram. Week 7
Architecture Design & Sequence Diagram Week 7 Announcement Reminder Midterm I: 1:00 1:50 pm Wednesday 23 rd March Ch. 1, 2, 3 and 26.5 Hour 1, 6, 7 and 19 (pp.331 335) Multiple choice Agenda (Lecture)
More informationAdvanced Software Engineering ( -Formal specification, verification, transformation, and application-
Advanced Software Engineering ( -Formal specification, verification, transformation, and application- Shaoying Liu Faculty of Computer and Information Sciences Hosei Univeresity, Tokyo, Japan Email: sliu@k.hosei.ac.jp
More informationDesigning Real-Time and Embedded Systems with the COMET/UML method
By Hassan Gomaa, Department of Information and Software Engineering, George Mason University. Designing Real-Time and Embedded Systems with the COMET/UML method Most object-oriented analysis and design
More informationIntroduction to Systems Analysis and Design
Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.
More informationSAMPLE CHAPTERS UNESCO EOLSS DIGITAL INSTRUMENTS. García J. and García D.F. University of Oviedo, Spain
DIGITAL INSTRUMENTS García J. and García D.F. University of Oviedo, Spain Keywords: analog-to-digital conversion, digital-to-analog conversion, data-acquisition systems, signal acquisition, signal conditioning,
More informationCounters and Decoders
Physics 3330 Experiment #10 Fall 1999 Purpose Counters and Decoders In this experiment, you will design and construct a 4-bit ripple-through decade counter with a decimal read-out display. Such a counter
More informationMethodology of performance evaluation of integrated service systems with timeout control scheme
Methodology of performance evaluation of integrated service systems with timeout control scheme Akira Kawaguchi and Hiroshi Yamada NTT Service Integration Laboratories, NTT Corporation 9-11, Midori-cho
More informationBPMN Business Process Modeling Notation
BPMN (BPMN) is a graphical notation that describes the logic of steps in a business process. This notation has been especially designed to coordinate the sequence of processes and messages that flow between
More informationAnnouncements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions
Announcements SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 Send your group
More informationCHAPTER 1. Basic Concepts on Planning and Scheduling
CHAPTER 1 Basic Concepts on Planning and Scheduling Scheduling, FEUP/PRODEI /MIEIC 1 Planning and Scheduling: Processes of Decision Making regarding the selection and ordering of activities as well as
More informationOverview of IEC 61508 - Design of electrical / electronic / programmable electronic safety-related systems
Overview of IEC 61508 - Design of electrical / electronic / programmable electronic safety-related systems Simon Brown The author is with the Health & Safety Executive, Magdalen House, Bootle, Merseyside,
More informationTake-Home Exercise. z y x. Erik Jonsson School of Engineering and Computer Science. The University of Texas at Dallas
Take-Home Exercise Assume you want the counter below to count mod-6 backward. That is, it would count 0-5-4-3-2-1-0, etc. Assume it is reset on startup, and design the wiring to make the counter count
More informationAn Integrated Modeling Approach for Analyzing Dependability, Cost and Sustainability of IT Data Center Systems
An Integrated Modeling Approach for Analyzing Dependability, Cost and Sustainability of IT Data Center Systems Gustavo Callou gustavo@deinfo.ufrpe.br Professor Paulo Maciel prmm@cin.ufpe.br Agenda Introduction
More informationLearning More About Load Testing
Welcome to this introduction to application performance testing and the LoadRunner load testing solution. This document provides a short overview of LoadRunner s features, and includes the following sections:
More informationRequirements Document for the Banking System. Lecture # 40
Requirements Document for the Banking System Lecture # 40 Requirements Document The requirements document is a formal document used to communicate the requirements to customers, engineers and managers
More informationOverview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification
Introduction Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Advanced Topics in Software Engineering 1 Concurrent Programs Characterized by
More informationMLPPP Deployment Using the PA-MC-T3-EC and PA-MC-2T3-EC
MLPPP Deployment Using the PA-MC-T3-EC and PA-MC-2T3-EC Overview Summary The new enhanced-capability port adapters are targeted to replace the following Cisco port adapters: 1-port T3 Serial Port Adapter
More informationGOAL-BASED INTELLIGENT AGENTS
International Journal of Information Technology, Vol. 9 No. 1 GOAL-BASED INTELLIGENT AGENTS Zhiqi Shen, Robert Gay and Xuehong Tao ICIS, School of EEE, Nanyang Technological University, Singapore 639798
More informationTest Coverage Criteria for Autonomous Mobile Systems based on Coloured Petri Nets
9th Symposium on Formal Methods for Automation and Safety in Railway and Automotive Systems Institut für Verkehrssicherheit und Automatisierungstechnik, TU Braunschweig, 2012 FORMS/FORMAT 2012 (http://www.forms-format.de)
More informationCHAPTER 11: Flip Flops
CHAPTER 11: Flip Flops In this chapter, you will be building the part of the circuit that controls the command sequencing. The required circuit must operate the counter and the memory chip. When the teach
More informationUNLOCK YOUR IEC 61850 TESTING EXCELLENCE
IMPROVE EFFICIENCY TEST WITH CONFIDENCE OF KNOW-HOW LEARN AND EXPAND YOUR IEC 61850 SKILLS MASTER YOUR NETWORK KNOWLEDGE GENERATE TEST RESULTS UNLOCK YOUR IEC 61850 TESTING EXCELLENCE Connect To & Read
More informationApplying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor
Applying Use Cases to Microcontroller Code Development Chris Gilbert Cypress Semiconductor Agenda Why Use Cases Microcontroller Project Development Use Cases Defined Use Cases Composition General Example
More informationScenario-based Requirements Engineering and User-Interface Design
Scenario-based Requirements Engineering and User-Interface Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria kaindl@ict.tuwien.ac.at
More informationModel Simulation in Rational Software Architect: Business Process Simulation
Model Simulation in Rational Software Architect: Business Process Simulation Mattias Mohlin Senior Software Architect IBM The BPMN (Business Process Model and Notation) is the industry standard notation
More informationSOFT 437 Quiz #1 January 29, 2015
SOFT 437 Quiz #1 January 29, 2015 Do not turn this page until the quiz officially begins. STUDENT NUMBER Please do not write your name anywhere on this quiz. I recommend writing your student number at
More informationProcess Modelling from Insurance Event Log
Process Modelling from Insurance Event Log P.V. Kumaraguru Research scholar, Dr.M.G.R Educational and Research Institute University Chennai- 600 095 India Dr. S.P. Rajagopalan Professor Emeritus, Dr. M.G.R
More informationChapter 4: Tools of Modern Systems Analysis
Just Enough Structured Analysis Chapter 4: Tools of Modern Systems Analysis Nature has... some sort of arithmetical-geometrical coordinate system, because nature has all kinds of models. What we experience
More informationDecomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
More informationQuestions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements
Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements
More informationA Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems
A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems Vincenzo Grassi Università di Roma Tor Vergata, Italy Raffaela Mirandola {vgrassi, mirandola}@info.uniroma2.it Abstract.
More informationCase studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design
I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)
More informationUML TUTORIALS THE USE CASE MODEL
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
More informationBehavior Analysis of TCP Traffic in Mobile Ad Hoc Network using Reactive Routing Protocols
Behavior Analysis of TCP Traffic in Mobile Ad Hoc Network using Reactive Routing Protocols Purvi N. Ramanuj Department of Computer Engineering L.D. College of Engineering Ahmedabad Hiteishi M. Diwanji
More informationTeaching Methodology for 3D Animation
Abstract The field of 3d animation has addressed design processes and work practices in the design disciplines for in recent years. There are good reasons for considering the development of systematic
More informationFinal Year Projects at itm. Topics 2010/2011
Final Year Projects at itm Topics 2010/2011 Chair of Information Technology in Mechanical Engineering Prof. Dr.-Ing. B. Vogel-Heuser Prof. Dr.-Ing. Frank Schiller Prof. Dr.-Ing. Klaus Bender Technische
More informationException and Interrupt Handling in ARM
Exception and Interrupt Handling in ARM Architectures and Design Methods for Embedded Systems Summer Semester 2006 Author: Ahmed Fathy Mohammed Abdelrazek Advisor: Dominik Lücke Abstract We discuss exceptions
More informationCPS122 Lecture: State and Activity Diagrams in UML
CPS122 Lecture: State and Activity Diagrams in UML Objectives: last revised February 14, 2012 1. To show how to create and read State Diagrams 2. To introduce UML Activity Diagrams Materials: 1. Demonstration
More informationAlgorithms for Interference Sensing in Optical CDMA Networks
Algorithms for Interference Sensing in Optical CDMA Networks Purushotham Kamath, Joseph D. Touch and Joseph A. Bannister {pkamath, touch, joseph}@isi.edu Information Sciences Institute, University of Southern
More informationModeling and Simulation Firewall Using Colored Petri Net
World Applied Sciences Journal 15 (6): 826-830, 2011 ISSN 1818-4952 IDOSI Publications, 2011 Modeling and Simulation Firewall Using Colored Petri Net 1 2 Behnam Barzegar and Homayun Motameni 1 Department
More informationManaging Variability in Software Architectures 1 Felix Bachmann*
Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie
More informationSAN Conceptual and Design Basics
TECHNICAL NOTE VMware Infrastructure 3 SAN Conceptual and Design Basics VMware ESX Server can be used in conjunction with a SAN (storage area network), a specialized high speed network that connects computer
More informationABB i-bus EIB Logic Module LM/S 1.1
Product Manual ABB i-bus EIB Logic Module LM/S 1.1 Intelligent Installation System Contents page 1 General... 3 1.1 About this manual... 3 1.2 Product and functional overview... 3 2 Device technology...
More informationESPA 4.4.4 Nov 1984 PROPOSAL FOR SERIAL DATA INTERFACE FOR PAGING EQUIPMENT CONTENTS 1. INTRODUCTION 2. CHARACTER DESCRIPTION
PROPOSAL FOR SERIAL DATA INTERFACE FOR PAGING EQUIPMENT CONTENTS 1. INTRODUCTION 2. CHARACTER DESCRIPTION 2.1 CHARACTER STRUCTURE 2.2 THE CHARACTER SET 2.3 CONTROL CHARACTERS 2.3.1 Transmission control
More informationLocal Area Networks transmission system private speedy and secure kilometres shared transmission medium hardware & software
Local Area What s a LAN? A transmission system, usually private owned, very speedy and secure, covering a geographical area in the range of kilometres, comprising a shared transmission medium and a set
More informationNext-Generation Performance Testing with Service Virtualization and Application Performance Management
Next-Generation Performance Testing with Service Virtualization and Application Performance Management By Akshay Rao, Principal Consultant, CA Technologies Summary Current approaches for predicting with
More informationPROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT
PROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT Ing. David BEDNÁŘ, Doctoral Degree Programme (2) Dept. of Information Systems, FIT, BUT E-mail: bednar@fit.vutbr.cz Supervised by:
More informationRing Local Area Network. Ring LANs
Ring Local Area Network Ring interface (1-bit buffer) Ring interface To station From station Ring LANs The ring is a series of bit repeaters, each connected by a unidirectional transmission link All arriving
More informationCommunications and Computer Networks
SFWR 4C03: Computer Networks and Computer Security January 5-8 2004 Lecturer: Kartik Krishnan Lectures 1-3 Communications and Computer Networks The fundamental purpose of a communication system is the
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2008 Vol. 7, No. 8, Novmeber - December 2008 Extension of Object-Oriented Software
More informationImplementing New Approach for Enhancing Performance and Throughput in a Distributed Database
290 The International Arab Journal of Information Technology, Vol. 10, No. 3, May 2013 Implementing New Approach for Enhancing Performance and in a Distributed Database Khaled Maabreh 1 and Alaa Al-Hamami
More informationIt explains the differences between the Plesiochronous Digital Hierarchy and the Synchronous Digital Hierarchy.
TECHNICAL TUTORIAL Subject: SDH Date: October, 00 Prepared by: John Rumsey SDH Synchronous Digital Hierarchy. Introduction. The Plesiochronous Digital Hierarchy (PDH). The Synchronous Digital Hierarchy
More informationSwitch Fabric Implementation Using Shared Memory
Order this document by /D Switch Fabric Implementation Using Shared Memory Prepared by: Lakshmi Mandyam and B. Kinney INTRODUCTION Whether it be for the World Wide Web or for an intra office network, today
More informationComputer Network. Interconnected collection of autonomous computers that are able to exchange information
Introduction Computer Network. Interconnected collection of autonomous computers that are able to exchange information No master/slave relationship between the computers in the network Data Communications.
More informationBrewer s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services
Brewer s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services Seth Gilbert Nancy Lynch Abstract When designing distributed web services, there are three properties that
More informationFax Server Cluster Configuration
Fax Server Cluster Configuration Low Complexity, Out of the Box Server Clustering for Reliable and Scalable Enterprise Fax Deployment www.softlinx.com Table of Contents INTRODUCTION... 3 REPLIXFAX SYSTEM
More informationTraffic Control by Influencing User Behavior
Traffic Control by Influencing User Behavior We examined a means of influencing user behavior to reduce the number of repeated calls by providing information to users and controlling the traffic before
More informationUML for the C programming language.
Functional-based modeling White paper June 2009 UML for the C programming language. Bruce Powel Douglass, PhD, IBM Page 2 Contents 2 Executive summary 3 FunctionalC UML profile 4 Functional development
More informationDDSS: Dynamic Dedicated Servers Scheduling for Multi Priority Level Classes in Cloud Computing
DDSS: Dynamic Dedicated Servers Scheduling for Multi Priority Level Classes in Cloud Computing Husnu S. Narman husnu@ou.edu Md. Shohrab Hossain mshohrabhossain@cse.buet.ac.bd Mohammed Atiquzzaman atiq@ou.edu
More informationInteraction Diagrams. Use Cases and Actors INTERACTION MODELING
Karlstad University Department of Information Systems Adapted for a textbook by Blaha M. and Rumbaugh J. Object Oriented Modeling and Design Pearson Prentice Hall, 2005 INTERACTION MODELING Remigijus GUSTAS
More informationChapter 4: Architecture for Performance Monitoring of Complex Information Technology (IT) Infrastructures using Petri Net
Chapter 4: Architecture for Performance Monitoring of Complex Information Technology (IT) Infrastructures using Petri Net This chapter will focus on the various approaches that we have taken in the modeling
More informationImproved Software Testing Using McCabe IQ Coverage Analysis
White Paper Table of Contents Introduction...1 What is Coverage Analysis?...2 The McCabe IQ Approach to Coverage Analysis...3 The Importance of Coverage Analysis...4 Where Coverage Analysis Fits into your
More informationDigital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill
Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Objectives: Analyze the operation of sequential logic circuits. Understand the operation of digital counters.
More informationExperiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa
Experiment # 9 Clock generator circuits & Counters Eng. Waleed Y. Mousa 1. Objectives: 1. Understanding the principles and construction of Clock generator. 2. To be familiar with clock pulse generation
More informationSofware Requirements Engineeing
Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (). Understandable
More information(Refer Slide Time: 00:01:16 min)
Digital Computer Organization Prof. P. K. Biswas Department of Electronic & Electrical Communication Engineering Indian Institute of Technology, Kharagpur Lecture No. # 04 CPU Design: Tirning & Control
More informationEthernet. Ethernet. Network Devices
Ethernet Babak Kia Adjunct Professor Boston University College of Engineering ENG SC757 - Advanced Microprocessor Design Ethernet Ethernet is a term used to refer to a diverse set of frame based networking
More informationINTRODUCTION TO DATABASE SYSTEMS
1 INTRODUCTION TO DATABASE SYSTEMS Exercise 1.1 Why would you choose a database system instead of simply storing data in operating system files? When would it make sense not to use a database system? Answer
More informationSOFTWARE REQUIREMENTS
SOFTWARE REQUIREMENTS http://www.tutorialspoint.com/software_engineering/software_requirements.htm Copyright tutorialspoint.com The software requirements are description of features and functionalities
More information14 Model Validation and Verification
14 Model Validation and Verification 14.1 Introduction Whatever modelling paradigm or solution technique is being used, the performance measures extracted from a model will only have some bearing on the
More informationAn Agent-Based Concept for Problem Management Systems to Enhance Reliability
An Agent-Based Concept for Problem Management Systems to Enhance Reliability H. Wang, N. Jazdi, P. Goehner A defective component in an industrial automation system affects only a limited number of sub
More informationFuzzy Active Queue Management for Assured Forwarding Traffic in Differentiated Services Network
Fuzzy Active Management for Assured Forwarding Traffic in Differentiated Services Network E.S. Ng, K.K. Phang, T.C. Ling, L.Y. Por Department of Computer Systems & Technology Faculty of Computer Science
More informationCase Study: ATM machine I. Amalia Foka CEID - University of Patras Object Oriented Programming II (C++) Fall 2010-2011
Case Study: ATM machine I Amalia Foka CEID - University of Patras Object Oriented Programming II (C++) Fall 2010-2011 Requirements Document An ATM allows users to perform basic financial transactions view
More informationPetri Net Simulation and Analysis of Network Management Based on Mobile Agent Technology
Simulation and Analysis of Network Management Based on Mobile Agent Technology Juraj Pukšec, Student Member, IEEE, Darije Ramljak and Darko Huljenić, Member, IEEE Abstract This paper presents advantages
More informationAssembly line balancing to minimize balancing loss and system loss. D. Roy 1 ; D. Khan 2
J. Ind. Eng. Int., 6 (11), 1-, Spring 2010 ISSN: 173-702 IAU, South Tehran Branch Assembly line balancing to minimize balancing loss and system loss D. Roy 1 ; D. han 2 1 Professor, Dep. of Business Administration,
More informationAspect Oriented Strategy to model the Examination Management Systems
Aspect Oriented Strategy to model the Examination Management Systems P.Durga 1, S.Jeevitha 2, A.Poomalai 3, Prof.M.Sowmiya 4 and Prof.S.Balamurugan 5 Department of IT, Kalaignar Karunanidhi Institute of
More informationFault-Tolerant Framework for Load Balancing System
Fault-Tolerant Framework for Load Balancing System Y. K. LIU, L.M. CHENG, L.L.CHENG Department of Electronic Engineering City University of Hong Kong Tat Chee Avenue, Kowloon, Hong Kong SAR HONG KONG Abstract:
More informationNetStream (Integrated) Technology White Paper HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date 2012-9-6
(Integrated) Technology White Paper Issue 01 Date 2012-9-6 HUAWEI TECHNOLOGIES CO., LTD. 2012. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means
More informationScheduling Allowance Adaptability in Load Balancing technique for Distributed Systems
Scheduling Allowance Adaptability in Load Balancing technique for Distributed Systems G.Rajina #1, P.Nagaraju #2 #1 M.Tech, Computer Science Engineering, TallaPadmavathi Engineering College, Warangal,
More informationMEASURING WIRELESS NETWORK CONNECTION QUALITY
Technical Disclosure Commons Defensive Publications Series January 27, 2016 MEASURING WIRELESS NETWORK CONNECTION QUALITY Mike Mu Avery Pennarun Follow this and additional works at: http://www.tdcommons.org/dpubs_series
More information