Difference Between Computer Science and Software Engineering

GraciousRhenium avatar

Start Quiz

Study Flashcards

18 Questions

What does computer science focus on?

Theory and fundamentals

What aspect is software engineering concerned with?

Software and process engineering

What percentage of software costs are testing costs?


What type of system would games be best developed using?


What are the key challenges facing software engineering?

Increasing diversity and trustworthy software

Which area is concerned with all aspects of computer-based systems development?

System engineering

Why is it usually cheaper to use software engineering methods for software systems?

To decrease the costs of changing the software after it has gone into use.

Which activity involves defining the software that is to be produced?

Software specification

What do emerging economies and new technologies require in terms of software?

Rapid software development and adaptability.

Why are systems increasingly required to operate as distributed systems across networks?

To cater to different types of devices and networks.

What are the majority of costs for most types of systems?

Costs of changing the software after it has gone into use.

What is a significant challenge faced by businesses and societies in terms of software?

Ability to change existing software rapidly.

What should software engineers do in relation to their client and employer?

Act in a manner that is in the best interests of their client and employer consistent with the public interest.

What ethical standard should software engineers adhere to when developing products?

Ensure that their products and related modifications meet the highest professional standards possible.

What is expected of software engineering managers and leaders in relation to ethics?

Subscribe to and promote an ethical approach to the management of software development and maintenance.

How should software engineers contribute to the reputation of their profession?

Advance the integrity and reputation of the profession consistent with the public interest.

What should software engineers do in terms of their colleagues?

Be fair to and supportive of their colleagues.

How should software engineers approach lifelong learning and ethical practice?

Participate in lifelong learning regarding the practice of their profession and promote an ethical approach to the practice of the profession.

Study Notes

Software Engineering Benefits

  • Using software engineering methods and techniques can be cheaper in the long run compared to personal programming projects.
  • Most costs of software systems come from changing the software after it's gone into use, with an estimated 30% for development and 40% for testing.

Software Process Activities

  • Software specification: defining the software to be produced and its functional requirements.
  • Software development: designing and programming the software.
  • Software validation: checking the software to ensure it meets customer requirements.
  • Software evolution: modifying the software to reflect changing customer and market requirements.

General Issues Affecting Software

  • Heterogeneity: different devices and systems require software to operate across various networks and devices.
  • Business and social change: rapidly changing business and social environments require software to adapt quickly.

Difference Between Software Engineering and Computer Science

  • Computer science focuses on theory and fundamentals, while software engineering is concerned with practicalities of developing and delivering useful software.

Difference Between Software Engineering and System Engineering

  • Software engineering is part of system engineering, which covers all aspects of computer-based systems development, including hardware, software, and process engineering.

Challenges Facing Software Engineering

  • Coping with increasing diversity, demands for reduced delivery times, and developing trustworthy software.

Costs of Software Development

  • Roughly 60% of software costs are development costs, 40% are testing costs.
  • Evolution costs often exceed development costs for custom software.

Best Software Engineering Techniques and Methods

  • Different techniques are appropriate for different types of systems, such as prototyping for games and complete specification for safety-critical control systems.

Code of Ethics for Software Engineers

  • Act in the best interests of clients and employers, consistent with the public interest.
  • Ensure products meet the highest professional standards.
  • Maintain integrity and independence in professional judgment.
  • Manage software development and maintenance with an ethical approach.
  • Advance the integrity and reputation of the profession.
  • Be fair and supportive of colleagues.
  • Participate in lifelong learning and promote an ethical approach to the profession.

Ethical Dilemmas

  • Disagreement in principle with senior management policies.
  • Employer releasing a safety-critical system without completing testing.

This quiz explores the distinctions between computer science, software engineering, and system engineering. Learn about the theoretical focus of computer science, the practicalities of software engineering, and the comprehensive approach of system engineering towards computer-based systems development.

Make Your Own Quizzes and Flashcards

Convert your notes into interactive study material.

Get started for free

More Quizzes Like This

Software Engineering Basics Quiz
5 questions
CS391 Software Engineering Chapter 2-9 Quiz
30 questions
Software Engineering Fundamentals
24 questions
Software System Design and Implementation
10 questions
Use Quizgecko on...