Skip to Main Content
Idaho State University home

INFO 1101 Introduction to Computer Systems 3 credits

Introduction to effective use of computers for all majors. Includes hands-on use of current computer software, description of computer systems, data files storage, and devices, input/output procedures, computer logic.

Information Assurance Topics Covered

INFO 2220 Foundations of Computer Programming 3 credits

Introduction to concepts of computers and computer-programming hardware and software, programming with an object-oriented visual language, data structures, file organization, and processing.

Information Assurance Topics Covered

The following is an non exhaustive list of Information Assurance Topics covered in INFO 2220.

  • When possible, avoid mixed-mode arithmetic expressions and mixed-mode variable assignments. Use the data type conversion functions as necessary.
  • All variables must be declared and initialized. The compiler option that requires explicit declaration of variables must be set. Variable declarations must appear at the beginning of their procedure.
  • Avoid global variables. There are potential problems when more than one function or procedure uses the same variable; one may change the value of a global variable that would then have an impact on another's use of the variable. Sharing variables by passing them as parameters is preferred because it makes the shared use explicit.
  • For each division operation, there should be either a test to determine that the divisor is not equal to zero or a comment that explains why it can never be equal to zero
  • Form-level variables can cause hard-to-trace program errors.
  • When performing data validation, there are several conditions that you should consider to see if they interfere with the normal processing.  Input data may be subject to any of the following conditions
    • no value is entered
    • an incorrect numeric type is entered
    • text is entered instead of numeric value
    • negative value is entered when positive value is expected
    • 0 value is entered
    • incorrect range of values may be entered

Error Checking

One of the basic problems to look for when writing error checking routines is conditions that can adversely affect mathematical calculations. Among the most obvious conditions are a divide by zero and a logarithm of 0 (Log(0)). Neither of these conditions are valid.  The first step is to look closely at the calculations to see if any of them offer the potential for either condition.

Error Bounds Checking

Use bounds checking when processing arrays in loop (particularly the UBound or LBound methods (or properties)) to prevent array indexing errors.

Parameter Passing

  • Use of pass by value vs pass by reference.
  • Concepts of cohesion and coupling
  • Using encapsulation to limit the users’ views of a method to its signature.
  • Safe String handling.
  • Simple encryption.
  • Basic principles of maintainability and modifiability.

INFO 2285 Introduction to Software and Systems Architecture 3 credits

Hardware systems architecture; programming logic and design fundamentals. Includes processor technology, data representation, systems integration and performance, networks, operating systems and systems administration, modules, hierarchy, menus, input validation, object oriented programming, and graphical user interfaces.

Information Assurance Topics Covered

INFO 3320 Advanced Business Programming 3 credits

Advanced programming; dynamic data structures; file organization and processing; efficient searching and sorting techniques. Includes study of an object-oriented visual language and a comparison with a modern database language.

Information Assurance Topics Covered

INFO 3301 Information Systems and Problem Solving 3 credits

Techniques and tools for analyzing and solving business problems. Development of technology based knowledge and skills for communicating solutions.

INFO 4403 Systems Analysis and Logical Design 3 credits

Develops systems analysis skills, using modern CASE techniques, prototyping with a relational database, structured analysis and design phases of the systems development life cycle.

Information Assurance Topics Covered

INFO 4411 Intermediate Information Assurance 3 credits

Focuses on homeland security, information assurance, integrity, control, and privacy. Covers CNSS-4011, NIST-800-16 standards, national policy, and international treaties.

Information Assurance Topics Covered

INFO 4482 Advanced Systems Analysis and Design 3 credits

Provides the knowledge and tools necessary to develop a physical design and an operational computerized system in a secure environment.

Information Assurance Topics Covered

INFO 4490 Management of Information Systems and Information Security 3 credits

Study of the problems associated with the organization, management and operation of information technology services.

Information Assurance Topics Covered

NIATEC National Science Foundation Information Assurance Directorate Department of Homeland Security CISSE Scholarship For Service