Click here to Skip to main content
15,888,202 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
AnswerRe: Help with a inheritance best practices question Pin
led mike19-May-08 4:51
led mike19-May-08 4:51 
AnswerRe: Help with a inheritance best practices question Pin
Tim Yen24-May-08 19:40
Tim Yen24-May-08 19:40 
QuestionDecalring global variable in VBA editor. Pin
raja baireddy17-May-08 2:31
raja baireddy17-May-08 2:31 
AnswerRe: Decalring global variable in VBA editor. Pin
Pete O'Hanlon17-May-08 8:46
mvePete O'Hanlon17-May-08 8:46 
GeneralRe: Decalring global variable in VBA editor. Pin
led mike19-May-08 4:43
led mike19-May-08 4:43 
Questiontracking sales of electronic pump machines Pin
mickeyen17-May-08 2:16
mickeyen17-May-08 2:16 
AnswerRe: tracking sales of electronic pump machines Pin
led mike19-May-08 5:05
led mike19-May-08 5:05 
GeneralRe: tracking sales of electronic pump machines Pin
mickeyen25-May-08 15:33
mickeyen25-May-08 15:33 
Thats right led mike. And thanks alot for the vital information.
But I have also had a thought for it in terms of strategey and it only involves building a custom fuel pump that is (say 80%) controlled the application based on the given specifications. This is my greatest worry because it solely depends on my filling station manager's pocket as you've said. Well, keeping that aside, check out my drafted solution case study...

There is already an existing digital pump that works in a way such that the attendant enters the volume value or cash value of fuel to be pumped from a digital numeric pad and completes entry by pressing a button in that pad which raises an event to send instruction of what is to be displayed on the pump screen (lets say INST-D), and another instruction to start pumping (lets call that INST-P) and lets call the process on sending instruction as INST-S.

For INST-P, I want to assume that volume of fuel pumped is determined by time given for pump pressure allowed e.g if at a certain pressure, it takes 2 seconds to pump 1 litre, then pressure time allowed to pump 10 litres will be 20 seconds. I'm not sure of this specification but I believe this INST-P is specific to pump manufacturers. Lets just use my speculation for this case study.

For INST-D, I guess that the voume to be pumped is written on a memory from which it is read for display. And for INST-P, the calculated time value required for pumping is also written to another memory in order to know when to stop pumping.

Now, I want to take advantage of the INST-S, INST-D and INST-P because they are already existing(to aid pump manufacturers) and event driven(to aid my application call) Throughout this study, application calls on any of these 3 instruction calls will raise their corresponding event which also uses their existing corresponding memories; as if it were from the attendant. I ONLY just need the custom pump to be built in such a way to fit the whole solution.
So, if the fuel pump manufacturers COULD build a custom fuel pump having the following extra features...

a) an in-built pump ID which is manufacturer generated and written to device-slot A which is readonly (see sixth feature).
b) an in-built container or vessel(say 23 litres for this case study) that is connected directly to fuel source.
c) a redirected pipe/pump that connects the container to the attendant's output fuel nozzle.
d) a sensor/detector attached to container that determines the volume left in the container; or that gets the current container weight(from which the volume can be calculated). e.g digital/electronic scale or something else suitable for the manufacturer. Let me call that "volume detector"(VOL-DET). This value could be read by the PC via another means but for the purpose of this case study lets assume it should continuously write its value to device-slot C(see sixth feature).
e) 3 pump screen displays-1(top), 2(middle), 3(bottom).
f) a PC-accessible read/write memory device(similar to K74), having full capability of the existing INST-S, INST-D and INST-P, along with 1 readonly memory and 5 read/write memories. This device will be in-built with the pump. Its access mode could be wireless but I prefer it to be serially connected like the K74, wired out via underground and then to the PC, so as to avoid wave obstruction and improve optimization. The memory names and functions are:
slot A = pump ID(which manufacturer generated and readonly).
slot B = litre value to be pumped
slot C = value of VOL-DET

And the whole process action goes like this...
1) after Application(App) startup, designated pump ID modules are opened which does a previous transaction check(not discussed here) and then listens to their respective slot B(continuous reading of slot B).
2)now attendant enters 25 litres for sale and presses button to instruct fuel pump...
--> instead of instructing the fuel pump to pump 25 litres directly, 25 is written to slot B using INST-S. And display-3 is then made to display "SALE IN PROGRESS..." using INST-D.
3)App detects change in slot B, gets value(25), disable entry for another sale and determines phases for the current sale. In this case, it will be 2 phases because of the container size.
4)App uses INST-P to fill container with 20 litres(first destination). And display-2 is made to display "PUMPING 1/2" for example.
5)App now uses INST-P to empty container by pumping from the container to the attendant's output fuel nozzle(second destination). Display-2 is made to display "NOW SELLING..." for example, and display-1 is made to dispaly the litres pumped using INST-D.
6)Once slot C reads value indicating supposed zero value or INST-P finishes(end of step 5), App uses INST-P to fill container with 5 litres while Display-2 is made to display "PUMPING 2/2" afterwhich, step 5 is repeated.
7)Display-3 or both Display-2 and 3 is now made to display "SALE
COMPLETED" for example using the regular INST-D. Other instruction clean-ups for the current transaction will now be performed before enabling entry for the next sale.

Thats it! I know there are observations and questions for this case study. For instance, each sale now takes double the time of regular sale, but that can be relatively beaten by increasing the pressure rate to fill the container as desired by the manufacturer.

Ok, so far, have I been making sense? or what do you think?
GeneralRe: tracking sales of electronic pump machines Pin
Mark Churchill10-Jun-08 21:07
Mark Churchill10-Jun-08 21:07 
GeneralRe: tracking sales of electronic pump machines Pin
mickeyen15-Jun-08 14:36
mickeyen15-Jun-08 14:36 
QuestionCommand Pattern Implementation [modified] Pin
Tristan Rhodes16-May-08 5:29
Tristan Rhodes16-May-08 5:29 
AnswerRe: Command Pattern Implementation Pin
led mike19-May-08 4:41
led mike19-May-08 4:41 
GeneralRe: Command Pattern Implementation Pin
Tristan Rhodes20-May-08 1:47
Tristan Rhodes20-May-08 1:47 
GeneralRe: Command Pattern Implementation Pin
led mike20-May-08 5:38
led mike20-May-08 5:38 
GeneralRe: Command Pattern Implementation Pin
Tristan Rhodes20-May-08 6:03
Tristan Rhodes20-May-08 6:03 
GeneralRe: Command Pattern Implementation Pin
Tristan Rhodes20-May-08 6:11
Tristan Rhodes20-May-08 6:11 
GeneralRe: Command Pattern Implementation Pin
led mike20-May-08 6:30
led mike20-May-08 6:30 
GeneralRe: Command Pattern Implementation Pin
Tristan Rhodes20-May-08 6:53
Tristan Rhodes20-May-08 6:53 
GeneralRe: Command Pattern Implementation Pin
led mike20-May-08 7:30
led mike20-May-08 7:30 
QuestionOnLoad Event for Corel Draw Pin
raja baireddy16-May-08 4:28
raja baireddy16-May-08 4:28 
QuestionStateless server definition Pin
AikinX15-May-08 4:17
AikinX15-May-08 4:17 
AnswerRe: Stateless server definition Pin
led mike15-May-08 4:53
led mike15-May-08 4:53 
GeneralRe: Stateless server definition Pin
AikinX15-May-08 6:11
AikinX15-May-08 6:11 
GeneralRe: Stateless server definition Pin
led mike15-May-08 6:29
led mike15-May-08 6:29 
GeneralRe: Stateless server definition Pin
AikinX15-May-08 20:20
AikinX15-May-08 20:20 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.