Is Computer Science a subset of Physics or some other science field?
Computer science grew from mathematics but now its diversity makes it to be a "superset" rather than a "subset"!
Okay! If now it's a superset, what fields of science lie under it?
Take a look at here and here!
Thanks a lot!
Neither is a subset of the other. They have parts in common, but there is much more in each than the amount they have in common.
Okay! And how to software engineers design softwares for other fields like Medical. I mean, they have no knowledge for medical, so how do they code the software for hospitals?
There are thousands of programmers working in the medical field who would be quite astounded to find that their knowledge of the medical field has evaporated, according to you.
Many software development efforts are cooperative efforts between users, scientists/engineers, and software engineers. No one person knows enough to get the job done. The case of medical software is one of the most extreme examples of that. A mistake can kill people and lead to huge lawsuits, so very strict software development processes are appropriate. Consider an EKG machine. A doctor would define the requirements like what to measure and what user interface would be the easiest and most reliable to use. An electrical engineer would design sensors, shielding, noise filtering, and hardware for the machine. A software engineer would use the requirements from the doctor and the electrical engineer to develop software. He would also be responsible for following processes that would develop, test, and manage software releases. The doctor and EE does not need to be an expert at software release management. Conversely, a typical software engineer would not know enough about the medical or hardware issues to do those jobs.
Well if they think they are doctors, they should leave that field immediately. We'll all be better off.
Factchecker, your discussion in post #9 is fairly good, although you left out the Business Analyst who is the one who would normally translate the solution requirements into technical terms, from which the software architect would work to create a high level technical solution which the software developers would then use to create code, but your statement in post #10 is utterly absurd. No responsible Project Manager would allow the software for a medical device to be done by programmers who had no knowledge of the medical field. They might well allow a few newbies on a large project but all fields of solutions requiring software rely on coders who are very knowledgeable in the field (finance, medical, insurance, brokerage, etc) without pretending to be bankers, doctors, insurance agents, brokers, etc.
Thank you so much for your wonderful explanation. I was just wondering that how could one person do this job alone.
The reason to ask you this question was: Once I saw an image on internet and all it portrayed that people use softwares, designed by software engineers, and that software runs on a hardware, designed b hardware engineers. Finally, the hardware engineers design hardware based on the work done by Physicist.
I agree. But there is a difference between "having knowledge" and "having expertise". It is always good to know enough in the field to talk intelligently with others on the team and to be able to translate what they say into a software design. But that is not a substitute for an expert. I have 35 years software experience in my field, but I would never tell an expert what they need to see on the displays. They tell me.
That's a bit of a quibble, but fairly reasonable. I HAVE seen rare occasions where highly knowledgeable programmers HAVE told (but politely and more in terms of a suggestion) less experienced "experts" what would most reasonably be shown on a display, for example. Fairly new "experts" have not always had occasion to think about the data set combinations that would be most useful to them whereas senior programmers have been told many times by senior experts what is most reasonable, so they actually DO know better than the experts.
I assume that the medical field has requirements as to software testing and certification for use. In my field, safety critical software must be certified before it is used. It's a lot of work requiring specialized knowledge. Even the algorithm developers are often clueless about that. It is a major issue in software engineering that is separate from the physics and math in the algorithms.
I would argue all scientific subjects grew from mathematics, including computer science. Math provides the tools, logic and syntax to become familiar with other fields. Without math, computers would probably not be around ( We would have never asked the question: How does thou compute? ).
Math is the true superset imo :D.
All other fields are derivatives.
Chemistry is Physics without thought, Math is Physics without purpose!:D
Separate names with a comma.