|
Leslie Sanford wrote: I was wondering if there are any design patterns in object oriented programming that address cross cutting concerns,
As stated I doubt it. There might be a pattern for specific situations but I don't suppose it can be generalized for all situations.
Leslie Sanford wrote: You want to log (a classic cross cutting concern) the results of this method, so you create a decorator class to wrap the original class
Nope. Not how I would do it at all. I have been doing logging for 20 years and originally I thought that very idea (logging on all methods) was a good approach. Spending that same 20 years creating back end servers and some with very high volumes I now realize that that sort of approach does not work. One must carefully place logging with careful consideration, otherwise one must deal with massive logs (hundreds of gigs daily) and be overwhelmed with non-essential data when trying to diagnose the very problems that logs exist to solve.
I suspect that a database API layer where one wants logging might be a better example in that one might want to track the actual database calls. However for a case like that I would generate the API code anyways rather than trying to dynamically impose a solution.
|
|
|
|
|
If you are using Castle you can wire up interceptors.
http://docs.castleproject.org/[^]
ed
~"Watch your thoughts; they become your words. Watch your words they become your actions.
Watch your actions; they become your habits. Watch your habits; they become your character.
Watch your character; it becomes your destiny."
-Frank Outlaw.
|
|
|
|
|
Interesting topic.
I agree with jschell. It is really hard to get the right data logged out from compiled software. It really requires a multidimensional matrix e.g. class x instance id x methods or something like that.
Since, you will never get coders to insert handles in each and every method, the only viable solutions I can see are
1) a set of base classes with carefully placed handles,
2) AOP or
3) code generation.
I think some OOP Patterns like Command, Stategy and State tries to structure computation in a uniform manner, so base classes supporting these patterns might be the place to add handles into.
At work we make code generated Command implementations. If we have the logging level set to debug, we get a log entry when a command completes/aborts. In most cases this is information overload, so we instead raise the the General logging level to Info and add some logging exceptions per class. However, this is currently requiring a recompile.... Pattern-wise this should be possible to generalize e.g. into a LoggingManager with a configuration that can be changed at runtime.
Log4Net can monitor when its config file is changed at runtime. Maybe it also can filter logging based on classes, but I don't think there is a concept filtering per entity id or method tags.
|
|
|
|
|
Dear All,
I want to develop an Hospital Management System, that will include EMR(Electronic Medical Records)
This will be a Huge Application, But i am Stuck, From Where to Start.
I am Developing in .Net and Ms Sql
So, if any one has already developed something like this. I have already started work on this.
Any Scope documents, Features List, DFD etc
All Help is Appreciated
Thanks in Advance
Santosh Pathak
Business Analyst | Project Manager
www.regaliya.com
|
|
|
|
|
Why not talk to your clients? They are the ones who will be able to give you their actual requirements.
santosh_pathak wrote: I am Developing in .Net and Ms Sql
This is one of the classic mistakes. Deciding on the technology before the scope of the problem is understood.
santosh_pathak wrote: Any Scope documents, Features List, DFD etc
As you are talking about writing a product that competes with the big boys here, I doubt that you will find that anyone has documents that they can give you that aren't proprietary and confidential.
|
|
|
|
|
I have requirement from my client.
But that are specific to their hospital
I want to make a Generic application,
My Target Market is India, and here i can target Small Hospitals with that app.
Yes, you are right, deciding on technological aspect was taken on very immediate basis because i had to give some prototypes to them
thnx
|
|
|
|
|
santosh_pathak wrote: My Target Market is India, and here i can target Small Hospitals with that
app.
Then you're going to have to get out and do some legwork. Talk to the hospitals. Find out what they want. It's called market research; without it you'll end up creating an application that doesn't do what they need it to do.
|
|
|
|
|
Ohh yeah,
Just missed out on Market Research aspect
NOTED
thnx buddy
|
|
|
|
|
Hey, hey, hey!
Write any crap that fits your current client's needs.
When you try to sell it to someone else and he requires new things, just inherit from the old object and add new operations.
Isn't that the essence of Object-Oriented Programming?
|
|
|
|
|
Beyond requirements from your specific customers, you should also consider legal and other institutional regulations: are there any laws regarding hospital information systems in your country, at least for specific modules of such a system? Are there rules for encoding diagnoses and procedures (e.g. ICD or OPS codes, diagnoses related groups)? Are there rules for billing? Exchanging data with insurance companies? Exchanging data with general practitioneers? Are there restrictions for accessing patient data?
You could also look at existing hospital information systems. There are also systems with source code available, e.g. http://www.hospital-os.com/en/[^].
|
|
|
|
|
Noted, My decision to Post and get feedback's from you guys was correct.
Bernhard Hiller wrote: Exchanging data with insurance companies? Exchanging data with general practitioneers? Are there restrictions for accessing patient data?
I was missing out so many things.
I checked the Institutional Regulations.
But Exchanging data with other entities.
API and connectors etc
thnx and appreciated
|
|
|
|
|
santosh_pathak wrote: This will be a Huge Application,
Yep.
Do you have any domain experience for hospitals or these types of applications? Do you have a domain experience with large systems?
If the answer to either of those is no then I suspect you need to forget about any attempt to create a general solution. The learning curve is is significant and given that you are suggesting that you have a real customer then they probably are not going to wait forever for you to figure out a general solution.
Other than that you might also note that electronic imaging records in terms of patient records represents a huge data storage requirement. If you intend to handle that then just getting that right can be a huge requirement.
|
|
|
|
|
I dont have Domain Expertise.
But what if, I collaborate with the client in order to develop a system on which we both will work.
His Domain Expertise in terms with Business Logic, My Development Expertise and Hire an Mentor to Guide on the Project.
Data Storage is huge, but i have expertise over that.
and will seek guidance on the same from all of you in this forum.
I agree with the learning Curve, that is what i want to shorten in this project.
Hiring an external mentor who has done such project will help?
Because if i dont make a general solution then my cost of developing the application will not be covered with a single client.
I am also looking to make it Open Source,
there are No or Very Few .Net Based Open Source Hospital Management Project.
Whats Your Take on that?
Santosh Pathak
Project Manager | Business Evangelist
www.regaliya.com
|
|
|
|
|
santosh_pathak wrote: Hiring an external mentor who has done such project will
help? Because if i dont make a general solution then my cost of
developing the application will not be covered with a single client.
I don't see how you are going to manage the first if the second is true.
But yes someone with more experience is more likely to be able to create a more general solution.
santosh_pathak wrote: I am also looking to make it Open Source, there are No or Very Few .Net
Based Open Source Hospital Management Project. Whats Your Take on
that?
Success in open source is based on interest and number of people that can use it.
Some open source projects have been much more successful because a company became interested in it and were willing to pay their employees to work on it.
I doubt that there are large numbers of people interested so the only way it will succeed is if a company sponsors it or if a few individuals are willing to dedicate the time to it (for years.)
|
|
|
|
|
santosh_pathak wrote: Any Scope documents, Features List, DFD etc
You are a BA / PM, you should probably be collecting this information from the customer / client.
|
|
|
|
|
I hope this is not a college project, you want to build sophesticated application for an industry, you won't get it here,
Think of purchasing some old project which already built and you can enhance it or do business requirement from your end for the same, it helps in all aspects.
In this you get what exactly you are looking at....
|
|
|
|
|
I am a beginner student who is trying to find somewhere where I can get examples and information on how to create an application using an Object Oriented Program language, using a modular approach,that works as a library of read, influential, quotations. The user would be able to input quotations (The book or website they derived the quote from, the author, and the quote itself) they want to store for later reviewing. Can anyone help me with this? I would greatly appreciate it.
|
|
|
|
|
Go to the Articles[^] section and start reading.
Programming is work, it isn't finger painting. Luc Pattyn
|
|
|
|
|
We can provide help with specific questions and problems, but there's little chance that you'll find a teacher here who works for free.
What "OOP-language" will you be using?
Bastard Programmer from Hell
|
|
|
|
|
Eddy Vluggen wrote: little chance that you'll find a teacher here who works for free
Very true.
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
"Not only do you continue to babble nonsense, you can't even correctly remember the nonsense you babbled just minutes ago." - Rob Graham
|
|
|
|
|
I'm also willing to help if you provide specific questions.
|
|
|
|
|
Try googling you will get sample projects on library management system, see how far it meets requirement and then enhance it, Since you are student there is nothing much you can do about it
|
|
|
|
|
Hi all,
again I wan't to come up with a rather theoretical question. This time regarding localization of a winforms project.
I read some articles on the topic and checked whats available on the market but I am not really satisfied with what I have found.
My project consists of a main-frame app that loads plugins (mainly Forms), displays them and handles the communication of the plugins.
I found several tools that handle resource file localization.
While I think that this will work in normal winform apps I am pretty sure that this will result in duplicate translations (Imagine a Save-Button label - this will be needed in nearly every plugin so the developer of a plugin will have to deal with this in the plugin on his/her own).
I also found database related solutions that I like a little better than the resource file solution. Unfortunately those solutions look pretty "fat" and will maybe trouble me with their licences.
So I thought about it a little while and here is what I came up with:
I thought about having a central class that should handle the translations for me globally. The corresponding DLL will be given to the plugin developers too, so they can implement it within their plugins.
I want to send every string through a static function that accepts the string and reads the UICulture in the background. It should then check if the string is already in the database, translates and returns if so, or creates "placeholder entries" and retruns the default value (the passed string).
The Placeholder entries can then be read by a little app that visualizes the missing translations, allowing a transslator to go through them and translate whats missing.
This way the "save" translation will not be duplicated and administered in a single place.
Additionally the mainFrame can extend it's languages without having to deal with the plugin resources.
The drawback for now is that the plugin developer will not be able (so far) to submit his/her translations together with the plugin, but I do not think that this is really necessary. I also haven't thought heavily about images, but there will be a way.
So what do you think? Is this a screwed up idea?
What tools do you use for such requirements?
Is it even necessary to think about duplicate translations?
I am looking foreward to hear your thoughts about this, any input is kindly appreciated
cheers and have a great day
Andy
|
|
|
|
|
Thanks for moving this to the appropriate forum.
Cheers!
"With sufficient thrust, pigs fly just fine."
Ross Callon, The Twelve Networking Truths, RFC1925
|
|
|
|
|
You are wellcome... thanks for pointing it out
cheers from Munich
Andy
|
|
|
|