24.03.2010 Målet med denne første oppgaven er at jeg skal få et inntrykk av hvordan du programmerer, og hvilket ferdighetsnivå du er på. Ikke forsøk å gjøre løsningen helt perfekt (for å imponere), programmer bare som du vanligvis gjør. Kjører du deg helt fast er det bare å spørre meg om hjelp. Ettersom programmerere må beherske engelsk for å kunne lese API dokumentasjon, programmeringsbøker og lignende, velger jeg å skrive oppgaven på engelsk, sånn at du får trening med det. Det er faktisk helt vanlig å skrive spesifikasjoner, dokumentasjon etc på engelsk i bransjen, selv om alle i bedriften er norske. Jeg bruker også en ganske vanlig/standard måte å beskrive kravene på: Feature: In order to As I want Assignment : Command-line Cash Register --------------------------------------- The assignment is to make a simple, console based cash register application - something that could possibly be used in a shop. The cash register should know about all the items the shop is selling, and the prices. Feature: List items In order to know what it's possible to buy As a cash register operator I want to be able to list all items in shop with prices Example session (you don't need to reproduce it exactly like this): ------------------------------------------------------------------- Welcome to the Cash Register! READY> :list Items in shop: Bread $ 3.99 Milk $ 2.50 Butter $ 4.00 READY> "READY>" is a prompt waiting for user input. ":list" is the command to list the shop items. Feature: Add items to bill In order to calculate what the customer should pay As a cash register operator I want to be able to add items with quantity and get the accumulated total Patter for entering items: + space + . Example (you still don't have to format it like this): ------------------------------------------------------ welcome to the Cash Register! READY> bread 1 Bread X 1 = $ 3.99 Total = $ 3.99 READY> milk 2 Milk X 2 = $ 5.00 Total = $ 8.99 READY> Feature: Checkout In order to know the amount of money to give back to the customer As a cash register operator I want to enter the amount given by the customer and get the amount to return Example (continues from example): ------------------------------------- READY> :checkout 10 Received $ 10.00 Total $ 8.99 Return $ 1.01 (Bill cleared, ready for new customer) READY> Good luck!