From: Gil B. <gba...@al...> - 2011-03-27 15:21:35
|
Jon, Having read your description of the till daily operation (for lack of a better term), it occurred to me that this is the sort of thing that needs to be in a Model component (as in MVC). I'll call it the Till State Model (TSM). It encapsulates the "business logic", e.g. the fact that a User must sign on before a transaction can occur. The TSM will send messages to (and receive replies from) the Repository, send messages to the GUI_Controller when a View needs to be changed, and get messages from the Input Controllers - touch screen, bar code reader, etc. - that cause it to "change state". Perhaps that will get us started on the structure or the framework of the design. Let me know your thoughts. Sahananda (Jon) Wolfers wrote: > Hi Ven, > > Thanks for this. You have probably seen my reply to Rony. > > What is probably beocming manifestly plain is that I have been working > on my own for years and lack the systems to communicate my vision. > > The reason that I moved so quickly to defining a few classes is that is > the best way I know to communicate the design. > > Let me try to set down (again) the bounds of the system. > > I would like to develop a till system suitable for small to medium > retail shops > I envisage that the branches would have 1 to 5 tills. Probably a lot of > our target audience would have 1 branch and 1 till, but they shouldn't > have to throw our kit away when they grow. > I do not see us satisfying the supermarket type arena. > Typically, such a shop would have a maximum throughput of 75 > transactions an hour per till and an average of 3 or 4 lines per > transaction. > > Both the till and any back office functionality would run off normal > PCs, not servers > > As for capturing in words, the entire project, I don't think I can do > that without being able to break it down a bit, but lets have a go. > > > At start of day the till starts and knows or is told it's opening balance. > The till can be in a signed on state or a signed off state. > In the signed off state it will accept users sign on codes to sign on, > but ignores all else. > It can go from the signed on to the signed off state by sending a sign > off command, possibly by ending a transaction, or leaving the till > without input for a fixed amount of time. > > When signed on, there is always an open transaction. When a transaction > is closed, the next transaction is opened. > > When a transaction is open, one can add a sale line, amend the current > sale line (quantity or discount for example), add a tender or close the > transaction (if sufficient has been tendered) whereupon change is > calculated and displayed. The till has features to allow one to > identify products. > > Closed transactions are stored for summary at end of day. > > Is that the sort of thing that you want? > > hth > > Jon > > > > On 26 March 2011 10:39, Ven & Carolyn Ilagan <vi...@bi... > <mailto:vi...@bi...>> wrote: > > I'd say first things first, Jon.... here you go looking at tasks and > responsibilities when you still need to set the boundaries of your > system. You need the define the limit (Scope) of your project.... > are you going for a 120% solution where you're thinking of catering > to all kinds of Tills no matter what the size.... I've developed > LOTS of systems/programs over the years and I've found that the > 80-20 rule is the fastest way of bringing a project into fruition, > ie choose a path that satisfies 80% of the possibilities and act on > it so that the prototype can come up faster. Increasing the scope of > coverage also increases the complexity and intricacies of the solution. > > Don't get too bogged down on your insistence to stick to your purely > "object" oriented system as it looks like you're already thinking of > methods/classes/subclasses and attributes. Capture into words and > writing first the entire project plan and lay them out for all of us > to see so that we maybe be able to offer concrete advice on certain > aspects of the strategy and mechanics. > > Thanks, > Ven > > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Enable your software for Intel(R) Active Management Technology to meet the > growing manageability and security demands of your customers. Businesses > are taking advantage of Intel(R) vPro (TM) technology - will your software > be a part of the solution? Download the Intel(R) Manageability Checker > today! http://p.sf.net/sfu/intel-dev2devmar > > > ------------------------------------------------------------------------ > > _______________________________________________ > Rexxtill-devel mailing list > Rex...@li... > https://lists.sourceforge.net/lists/listinfo/rexxtill-devel -- Gil Barmwater |