The fall semester addresses "high-level" problem solving on the computer, using the programming language 'Ada' as a means to implement solution strategies.

Topics in the first semester include data typing, program organization (subprograms and packages), and data structures (arrays, records, pointers, linked lists, binary trees, hash tables).

Generally the first half of the semester focuses on learning the fundamentals, while the second half emphasizes the application of these skills in the development of abstract data types, reusable packages, and modular software development techniques.