Computer Science: A subset of?

In summary: The reason to ask you this question was:...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
  • #1
noman.rasheed
25
0
Is Computer Science a subset of Physics or some other science field?
 
Technology news on Phys.org
  • #2
Computer science grew from mathematics but now its diversity makes it to be a "superset" rather than a "subset"!
 
  • #3
Shyan said:
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?
 
  • #4
noman.rasheed said:
Okay! If now it's a superset, what fields of science lie under it?
Take a look at here and here!
 
  • #5
Shyan said:
Take a look at here and here!
Thanks a lot!
 
  • #6
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.
 
  • #7
FactChecker said:
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?
 
  • #8
noman.rasheed said:
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.
 
  • #9
noman.rasheed said:
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?
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.
 
  • Like
Likes mafagafo
  • #10
phinds said:
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.
Well if they think they are doctors, they should leave that field immediately. We'll all be better off.
 
  • #11
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.
 
  • #12
FactChecker said:
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.

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.
 
  • #13
phinds said:
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.
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.
 
  • #14
FactChecker said:
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.
 
  • #15
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.
 
  • #16
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.
 
  • #17
Zondrina said:
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
 
  • Like
Likes FactChecker

Related to Computer Science: A subset of?

What is Computer Science?

Computer Science is the study of computers and computational systems, including their principles, their hardware and software designs, their applications, and their impact on society.

What are the main branches of Computer Science?

The main branches of Computer Science include Artificial Intelligence, Computer Systems and Networks, Database Systems, Human-Computer Interaction, Programming Languages, and Software Engineering.

How is Computer Science related to Mathematics?

Computer Science is closely related to Mathematics as it uses mathematical concepts and techniques to design and analyze algorithms, data structures, and computer systems. Many areas of Computer Science, such as cryptography and machine learning, heavily rely on mathematical principles.

What is the difference between Computer Science and Information Technology?

Computer Science is primarily concerned with the theory and foundations of computing, while Information Technology is focused on the practical application of computers and technology in various industries. Computer Science deals with the creation of new technology, while Information Technology deals with the use of existing technology.

What are some career options in Computer Science?

Careers in Computer Science include software engineer, data scientist, computer systems analyst, information security analyst, web developer, and computer and information research scientist. There are also many specialized roles within these fields, such as game developer, artificial intelligence engineer, and database administrator.

Similar threads

  • Programming and Computer Science
Replies
4
Views
1K
Replies
2
Views
830
  • Programming and Computer Science
Replies
7
Views
1K
  • Programming and Computer Science
Replies
1
Views
905
  • Programming and Computer Science
Replies
14
Views
1K
  • New Member Introductions
Replies
3
Views
169
  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
5
Views
758
  • STEM Academic Advising
Replies
3
Views
902
  • New Member Introductions
Replies
1
Views
103
Back
Top