* Performance and ease of use. The system must be responsive and easy to use or pharmacists may ignore it. If pharmacists do not use the system, the pharmacy is vulnerable to problems with integrity, accuracy, and legal compliance. (High weight)
* Integrity and accuracy. Medicine can be a life and death matter, so we must make our best efforts to ensure that the system holds correct and up-to-date data. (High weight)
* Development effort. Development effort is of some concern, but for a large chain of pharmacies, the cost of the development effort can be amortized over many stores. (Medium weight)
* Extensibility. As time goes by, additional uses of the system may be identified. The next several exercises describe some extensions. (Medium weight)
* Ease of maintenance. The database will require regular update to accommodate on-going changes in the prescription drug industry. (Medium weight)
* Legal compliance. Medical laws are strictly enforced for the benefit
of the patient and to avoid abuse (such as with narcotics). The system
must comply with the applicable laws or the pharmacy can lose its business
license. (High weight)
* Local storage. We assign a high score for performance and ease of use, because all data is held locally and there are no network and communications complexities with which to contend. We assign a low score for integrity and accuracy as well as legal compliance, because the multiple data copies at each location could become inconsistent with the master copy. Local storage should require less development and maintenance effort, because there are no network and communications issues. Extensibility would be good, because it would be easy to clone the software for a new locatlon.
* Regional storage. We assign a lower score for performance and ease of use, because the user could experience occasional communications difficulties. It would be easier to maintain consistency of the master data with regional storage than local storage, but still more cumbersome than central storage; hence the intermediate scores for integrity, accuracy, and legal compliance. Complexity from communications would increase development and maintenance effort. The software would be extensible, because we could easily clone a new regional site.
* Central storage. For most criteria central storage has the same scores as regional storage. The primary difference is that there is a single copy of the database to keep up-to-date which would facilitate integrity, accuracy, and legal compliance.
As you can see the best choice between the alternatives is not obvious.
Nevertheless, we would favor central storage because we greatly value having
the single copy to update, increasing the odds that each site would access
only correct data. (We had considered making integrity, accuracy, and legal
compliance all "musts.") With central storage we could cache data locally
to improve performance and responsiveness.