4 thoughts on “Software Engineering vs. Computer Science

  1. jmoser1

    Software engineering can, in its simplest form, be described as “applied computer science”, as is illustrated by the quote that software engineering is “programming in the large”. Essentially, computer science focuses on the individual tools used by software engineers (algorithms, mathematics, hardware architecture etc.), while software engineering combines these principles to produce reliable, functional programs. Ultimately, software engineering relies on computer science for its fundamental programming techniques, and it is unlikely that one could become a good software engineer without an appreciation of the fundamentals of computer science. In the same vein, computer science would be much less useful without software engineering; a brilliant algorithm for, say, ranking baseball players is of little use to anyone until it has been made into a functional application by a software engineer!

  2. ShayanMukherjee

    1. The difference between Computer Science and Software Engineering is the same as the difference between the hard sciences and applied science disciplines. Computer Science is about the theory of computing, how a computer works, how code works, how a computer interprets code, and how to optimize that relationship. Furthermore, Computer Science is about how a computer is structured, physically, starting from switches and transistors, to processors and memory, to software and operating systems. While Software Engineering focuses on a product, and a process. The product is software, and the process is the management of change for a successful product. Basically, how to efficiently and effectively produce and maintain quality software.

    2. “Programming in the large” means coordinating large groups of people with different skill sets to deliver software solutions. One person can make a simple program, but it takes an entire team to deliver a fully-formed, professional, piece of software. A proper Software Engineering methodology seeks to build and utilize that team in order to make the best quality software.

    3. Essentially, Software Engineering uses Computer Science principles, along with proper management in order to produce a good product. You cannot have Software Engineering without Computer Science.

  3. msahagun

    Computer science is more concerned with the theories and methods that underlie computers and software systems (Sommerville, 7). Software engineering revolves around the process of building software. Software engineering is concerned more with the practical problems of producing software (Sommerville, 7). Computer science, for example, deals more with developing algorithms, finding best fit algorithms, data structures, and logic. Software engineering, on the other hand, concerns itself with taking an engineering approach to building software systems i.e. designing, testing, maintenance, etc.
    When authors say software engineering is “programming in the large,” they assert that software engineering deals more with the bigger picture than programming in computer science. Software engineering involves the development of software systems whereas programming in computer science is more often concerned with discrete logic and theories. The software engineering of a system can by founded by theories of computer science but it is not a requirement. Software engineers can program a complex system of software without using some computer science theories. Computer science thus doesn’t always overlap software engineering.

  4. rpyka

    Computer Science is more focused on the theory of solving problems with computers, while Software Engineering focuses more on developing large softwares for solving specific problems. Software Engineering is called “programming in the large” because it can focus on massive programs requiring entire teams to code and test. Software Engineering requires Computer Science to solve problems and develop more efficient algorithms, though Computer Science does not need Software Engineering.

Leave a Reply