


Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Software engineering is about the development and application of processes and tools for managing the complexities inherent in creating high quality software systems. It introduces the fundamental software engineering concepts and terminology. This handout includes: ATM, System, Personal, Identification, Number, Customer, Transactions, Returned, Electronic, Voting, Verification
Typology: Exercises
1 / 4
This page cannot be seen from the preview
Don't miss anything!



The ATM will service one customer at a time. A customer will be required to insert an ATM card and enter a personal identification number (PIN) - both of which will be sent to the bank for validation as part of each transaction. The customer will then be able to perform one or more transactions. The card will be retained in the machine until the customer indicates that he/she desires no further transactions, at which point it will be returned.
The ATM must be able to provide the following services to the customer. A customer must be able to make a cash withdrawal from any suitable account linked to the card, in multiples of $20.00. Approval must be obtained from the bank before cash is dispensed. A customer must be able to make a transfer of money between any two accounts linked to the card. A customer must be able to make a balance inquiry of any account linked to the card.
A customer must be able to abort a transaction in progress by pressing the Cancel key instead of responding to a request from the machine.
The ATM will communicate each transaction to the bank and obtain verification that it was allowed by the bank. Ordinarily, a transaction will be considered complete by the bank once it has been approved. In the case of a deposit, a second message will be sent to the bank indicating that the customer has deposited the envelope. (If the customer fails to deposit the envelope within the timeout period, or presses cancel instead, no second message will be sent to the bank and the deposit will not be credited to the customer.)
If the bank determines that the customer's PIN is invalid, the customer will be required to re- enter the PIN before a transaction can proceed. If the customer is unable to successfully enter the PIN after three tries, the card will be permanently retained by the machine, and the customer will have to contact the bank to get it back.
The ATM will provide the customer with a printed receipt for each successful transaction, showing the date, time, machine location, type of transaction, account(s), amount, and ending and available balance(s) of the affected account ("to" account for transfers).
Traditional voting systems have been developed to ensure that the principles required for democratic elections and referendums are met, namely the guarantee of the freedom to vote, the secrecy of the vote, the non modification of the expressed intention of the vote and lack of intimidation during the vote operation. It is essential that these principles are not undermined by the introduction of new voting methods and, accordingly, e-voting systems must be so designed and operated as to ensure the reliability and security of the voting process.
E-voting has to be as free, secret, and reliable and secure as voting systems. An e-voting system therefore should have to ensure that only persons with the right to vote are able to cast a vote and that every vote cast is counted and that each vote is counted only once. It also has to maintain the voter’s right to form and to express his or her opinion in a free manner, without any coercion or undue influence. The e-voting system should have to protect the secrecy of the vote at all stages of the voting process and to guarantee accessibility to as many voters as possible, especially with regard to persons with disabilities. The system should be able to increase voter confidence by maximizing the transparency of information on the functioning of each system.
It is a requirement of a police service that it respond as quickly as possible to reported incidents and the objective of a command and control system is to ensure that incidents are logged and routed to the most appropriate police vehicle.
Factors which must be taken into account in deciding which vehicle to send to which incident include the type of incident. Some incidents are more serious than others and require a more urgent response. It is recommended that classes of response be identified and incidents allocated to these classes. The position of the vehicle is also important. In general, the best strategy for the position of the vehicle is to send the closest vehicle to respond to an incident. Take into account that the position of vehicles may not be known exactly and it may be necessary to send a message to vehicles to determine their current position. The type of vehicles available is another issue. Some incidents require a number of vehicles, others such as traffic accidents, may require specialized vehicles and so on. The system should have mechanism to identify the demographics and location of the incident. For example, in some areas, it may be unwise simply to respond to an incident by sending a single vehicle. In other areas, a single vehicle or policeman may be all that is needed to respond to the same type of incident. The need to alert other emergency services such as fire and ambulance services should be there. The system should automatically alert these services if necessary. The system should allow details of the reporter of incidents to be logged.
A system such as this one is open to almost indefinite expansion. For example, police vehicles may include fax terminals so that written information may be faxed when a vehicle is routed to an incident. A user interface for a system control room might be prototyped and so on.
For each delivery person, the system must print, each day, the publications to be delivered to each address. The system should also print, for the newsagent, a summary of who received what publications each day. Once a month, bills are delivered to customers along with their newspapers. These bills should be computed automatically by the system. Customers come and go and may be away temporarily on holiday or on business. Not all customers necessarily have a delivery every day. The system should be able to manage some simple geographic information so that it prints information for the delivery person in the order in which publications are delivered.
This is a relatively small system by comparison with some of the other systems and it ought to be possible to complete an implementation of the system in a 3 month time.