Technical Knowledge

Rubric of CCIS

 

HomeCareer Management

Technical Knowledge

Programming

Representation
of Information
    
Hardware
Architecture
    
Systems
Principles

Representation
of Information
Novice Examples
Understand the basic
formats for data representation: IEEE floating point, ASCII/Unicode,
representation of integers, RGB
Use and generate basic
forms of data
Understand the basic file
formats: binary vs. plain text vs. edited text; graphics, html; understand
the organization of files into hierarchy of directories
Use basic file formats in
programs and presentations
Understand and use computer
based communications: web, URL, ftp, e-mail, IRC
Advanced Beginner Examples
Understand some more
complex file formats and their uses
graphics, sound, xml
Understand the principles
of data compression and the difference between lossy and lossless
compression
Understand and use the
technologies that support remote access and communications, such as the
use of URLs, DNS, ISP
Understand and use the
technologies that support dynamically generated data: XML, database
applications, scripting languauges
Understand the basic
security threats (viruses, worms, unauthorized use) and the means to
protect the system against them.
Competent Examples
Demonstrate the basic
understanding of the following, with in-depth understanding of at least
two:
Use and design of dynamic
web pages and other dynamically geneated data
Understand the principles
and techniques used to protect computer systems against unauthorized use
and system failures, such as virus detection, user account management,
firewalls, encryption, systematic backups
Understanding of the
principles and techniques for data compression
Understand the design and
use of databases and transaction processing, including the protection of
data security, integrity, and privacy
Understand the design and
use of network protocols, including the techniques to assure security,
error protection, timeliness
Understand the design and
use of files that represent graphics, sound,and other media
Understand the use of the
language to represent data
Proficient Examples
Demonstrate competency in
the design and support of one of the following:
Web servers
Database systems
System support for users
and services
Programming environments,
interpreters, and compilers
Multimedia presentations,
such as web sites, graphics based applications, music, video, interactive
applications, games, etc.
Hardware
Architecture
Novice Examples
Understand the basic design
of a processor: the instruction fetch-decode-excute cycle, instruction
format, addressing, assemblers, and the basic interrupt mechanism
Understand the high level
view of computer organizations: CPU, bus, memory, devices
Understand the basic
organization of memory: bits, bytes, direct vs sequential vs. remote
access
Advanced Beginner Examples
Understand the need and the
basic principles behind caching and paging as techinques for speeding up
the data transfer rate
Understand the basics of
I/O protocols at various levels (internal, external, remote)
Understand the basics of
device management, the inerrrupt system, event handling
Competent Examples
Not applicable
Proficient Examples
Not applicable
Systems
Principles
Novice Examples
Understand the role of
operating system as a resource manager: process manager, memeory manager,
file manager, event-handler, network services manager
Understand what services
the operating system provides and how to interact with them
Advanced Beginner Examples
Understand the key systems
priciples for layering the responsibility for management of resources
Understand the basic
principles of I/O transmission modes: synchronous vs asynchronous, word
mode vs block mode, the need for and the role of I/O controller
Understand the basic
principles and the design of layered network protocols
Understand the need for
detecting and correcting errors at different levels of computer system
hierarchy, including the interface with the real world
Competent Examples
Design, implement, and
support a component of a operating system or of a programming language
environment
Understand the principles
of language translation and the role of languages and APIs in defining the
abstract machine
Understand the design and
the functionality of the key components of an operating system
Proficient Examples
Design, implement, and
support a substantial component of a operating system or of a programming
language environment