Introduction to concepts and practices of information processing, Computerized system requirements and techniques in providing appropriate decision-making information to management. A study of the system development methodology and the role played by the systems analyst in developing user-accepted information systems. A study of programming languages from both the theoretical and practical perspectives. The evolution of languages is reviewed in order to know the design considerations of the past and recognize those of the present. A survey of major and developing paradigms and languages is undertaken which includes use of specific languages to broaden the student's experience.
Implementation is studied through an introduction to compiling and interpretation.
A study of the logical structure of computer system organization including a survey of logic and design with an emphasis on functional components. The analysis an design of computer systems, including operating system design, memory management, scheduling, and the implementation of multiprogramming. A study of data communication and networking concepts, including distributed system architectures, electronic interfaces, data transmission, data link protocols, terminal networks, computer communication, public data networks, and local area networks. A survey of methods for designing and analyzing algorithms. Other topics include NP-completeness and parallel algorithms.