·
Experimental
science that is focused on the software aspects of computing
·
Critical
thinking
o
It
is the job of the entire Computer Science degree program to teach its students
to think critically. Every Computer Science course requires students to clarify
their thoughts sufficiently so that those thoughts can be expressed in a form
that a computer can carry them out.
·
Software
development
o
Programming
a computer to perform complex operations
o
Before
one can write a computer program to do something, one must understand what the
program is supposed to accomplish. Since the intended objectives of a software
system are described in English (at best), significant critical thinking skills
are required simply to understand what is to be done.
o
Often
the objectives of a software system are not described in any language. Software
developers are required to interview the intended users of the system to try to
determine what really is needed. This requires quite sophisticated critical
thinking skills.
o
One
must determine, in precise detail, how the objectives determined by the previous step may be accomplished.
o
Finally,
students must express the required steps as a computer program.
o
A
computer program is then written in a programming language. Programming
languages syntax and semantics are rigidly defined. Everything must be correct
for the program to operate properly.