Appendix 7 -- DETAILED BODY OF INFORMATION
SYSTEMS KNOWLEDGE
2102
This appendix is a table that shows the complete IS Body of
Knowledge elements with learning unit numbers in column one
through column four. The column number corresponds to depth of
knowledge. For example, knowledge element 1.1.1, Fundamental
Data, is to be achieved in learning unit 3 up to depth of
knowledge level 1 (awareness/recognition). The same unit is to be
learned to level 4 (applications knowledge) in learning unit 44.
Appendix 6 contains knowledge level definitions and explanations.
Appendix 8 has detailed definitions of the learning units.
2109
| Learning Unit Numbers at IS'97 Depth of Knowledge Levels | Body
of Knowledge Source |
IS'97
Body of Knowledge Elements in Four Levels of Detail (subject area, subareas, topics and subtopics) |
|||||
| Level 1 | Level 2 | Level 3 | Level 4 | CS | IS | SE | |
3, 13.10 |
42 |
43 |
44 |
n n n n |
1 |
1 1 1 |
1.0 Information technology 1.1 Computer architectures 1.1.1 Fundamental data representation: non-numeric, numeric (integers, reals, errors, precision) 1.1.1.1 Basic machine representation of numeric data 1.1.1.2 Basic machine representation of non-numeric data 1.1.1.3 Finite precision of integer and floating point number representation 1.1.1.4 Errors in computer arithmetic and related portability issues 1.1.1.5 Basic concepts of computer architecture |
| 42, 13.10 | 62 | 43 | 1 | 1.1.2 Physical representation of digitized information: e.g., data, text, image, voice, video | |||
| 1, 7 | 62, 64 | 62 | n n n n n n |
1 | 1 1 |
1.1.3 CPU architectures: CPU, memory,
registers, addressing modes, instruction sets 1.1.3.1 Basic organization; von Neumann, block diagram, data paths, control path, functional units, instruction cycles 1.1.3.2 Instructions and addressing modes: instruction sets and types 1.1.3.3 Instructions and addressing modes: assembly-machine language 1.1.3.4 Addressing modes 1.1.3.5 Control unit; instruction fetch and execution, operand fetch 1.1.3.6 CISC, RISC 1.1.3.7 Computer organization 1.1.3.8 Memory systems |
|
| 1 | 7, 38, 62, 64 | 36 | n n n n n n n n n |
1 | n 1 |
1.1.4 Computer system components:
busses, controllers, storage systems, peripheral devices 1.1.4.1 Peripherals: I/O and interrupts 1.1.4.2 Peripherals: input/output control methods, interrupts 1.1.4.3 Peripherals: external storage, physical organization and drives 1.1.4.4 Auxiliary storage, tape, optical 1.1.4.5 Storage systems and technology 1.1.4.6 Space allocation, hierarchy 1.1.4.7 Main memory organization, bus operations, cycle times for selection and addressing 1.1.4.8 Cache memory, read/write 1.1.4.9 Virtual memory 1.1.4.10 Interfaces between computers and other devices (sensors, effector, etc.) |
|
| 62 | n |
1 | n |
1.1.5 Multiprocessor architectures 1.1.5.1 Systems architectures (single multi-processing and distributed processing, stack, array, vector, multiprocessor and hypercube architectures, supercomputers) 1.1.5.2 Client server technologies |
|||
| 62 | 64 | n n n n n n n n n |
1 | 1 | 1.1.6 Digital logic and systems 1.1.6.1 Logic elements and switching theory; minimization concepts and implementation of functions 1.1.6.2 Propagation delays and hazards 1.1.6.3 Demultiplexers, multiplexers, decoders, encoders, adders, subtractors, comparators, shift registers, counters 1.1.6.4 ROM, PROM, EPROM, EAPROM, RAM 1.1.6.5 Analysis and synthesis of synchronous circuits, asynchronous vs synchronous circuits 1.1.6.6 Register transfer notation, conditional and unconditional 1.1.6.7 Algorithmic state machines, steering networks, load transfer signals 1.1.6.8 Tristates and bus structures 1.1.6.9 Block diagrams, timing diagrams, transfer language |
||
1, 3, 13.1045 |
13.11, 46, 48 |
13.16, 47, 48, 50, 51, 54, 56, 57, 59, 60, 91, 98, 103 |
50, 51, 92, 100, 110 |
n n n n n n |
1 |
n 1 1 |
1.2 Algorithms and data structures 1.2.1 Formal problems and problem solving 1.2.1.1 Problem solving strategies using greedy algorithms 1.2.1.2 Problem solving strategies using divide and conquer algorithms 1.2.1.3 Problem solving strategies using back- tracking algorithms 1.2.1.4 Software design process; from specification to implementation 1.2.1.5 Problem recognition statement and algorithmic determination; procedural abstraction; parameters 1.2.1.6 Implementation strategies (top-down, bottom-up; teams vs individual; management task) 1.2.1.7 Formal verification concepts 1.2.1.8 Formal models of computation |
| 13.1, 13.10 |
56, 13.11 |
44, 50, 54, 57, 60 | 1 | 1 | 1 | 1.2.2 Basic data structures: lists, arrays, strings, records, sets, linked-lists, stacks, queues, trees, graphs | |
| 1, 3 | 42, 50 | 43 | 1 | 1.2.3 Complex data structures: e.g., of data, text, voice, image, video, hypermedia | |||
| 53 | 43, 47, 49, 51, 52, 54, 56, 57, 58, 59,
60, 91, 94, 98, 103 |
50, 51, 92, 100, 110 |
n n n n n n |
1 | 1.2.4 Abstract data types 1.2.4.1 Purpose and implementation of abstract data types 1.2.4.2 Informal specifications 1.2.4.3 Formal specifications, pre-conditions and post-conditions, algebraic specifications for abstract data types 1.2.4.4 Modules, cohesion, coupling; data flow diagrams, and conversion to hierarchy charts 1.2.4.5 Correctness, verification and validation: pre- and post-conditions, invariants, elementary proofs of code and design reading, structured walkthroughs 1.2.4.6 Control structures; selection, iteration, recursion; data types and their uses in problem solving |
||
| 13.10 | 55 | 50, 53, 57, 58, 59, 98 | n n n |
1 | 1 | 1.2.5 File structures: sequential,
direct access, hashing, indexed 1.2.5.1 Files (structure, access methods): file layouts; fundamental file concepts; sequential files; non-sequential files 1.2.5.2 Files (structure, access methods): directories contents and structure, naming, searching, access, backups 1.2.5.3 Files (structure, access methods): system security overview, security methods and devices, protection, access, authentication |
|
| 3 | 14, 53, 57, 60 | n n n |
1 | 1 | 1.2.6 Sorting and searching data
structures and algorithms 1.2.6.1 Sorting algorithms (shell sort, bucket sort, radix sort, quick sort), editing, reporting, updating 1.2.6.2 Searching algorithms (serial search, binary search, and binary search tree) 1.2.6.3 Searching, hashing, collision resolution |
||
| 83 | n n n n n n n n |
1 | 1 1 |
1.2.7 Algorithm efficiency, complexity
and metrics 1.2.7.1 Asymptotic analysis at upper and average bounds; big "O", little 1.2.7.2 Time vs space trade-offs in algorithms 1.2.7.3 Complexity classes P, NP, P-space; tractable and intractable problems 1.2.7.4 Lower bound analysis (for sorting) 1.2.7.5 NP-completeness 1.2.7.6 O (n "squared") sorting algorithms 1.2.7.7 O (n log n) sorting algorithms 1.2.7.8 Backtracking, parsing, discrete simulations, etc. 1.2.7.9 Fundamentals of analysis of algorithms |
|||
| 61 | n n |
1 | 1 | 1.2.8 Recursive algorithms 1.2.8.1 Recursive algorithms connection with mathematical induction 1.2.8.2 Comparison of iterative and recursive algorithms |
|||
| 61 | 1 | 1.2.9 Neural networks and genetic algorithms | |||||
| 61 | n n n n n n n n n |
1 | n |
1.2.10 Advanced considerations 1.2.10.1 Computable functions: models of computable functions selected from Turing machines, RAM, (partial) recursive functions, lambda calculus, Church's thesis 1.2.10.2 Machines, e.g. Universal Turing Machine 1.2.10.3 Decision problems: recursive and recursively enumerable problems; undecidable problems 1.2.10.4 Models of parallel architectures 1.2.10.5 Algorithms for parallel architectures 1.2.10.6 Mathematical problems: well-conditioned and ill-conditioned problems 1.2.10.7 Mathematical problems: iterative approximation to mathematical problems; Newton's method; Gaussian elimination 1.2.10.8 Mathematical problems: error classification; computational, representational, and methodological distinctions 1.2.10.9 Mathematical problems: applications of iterative approximation methods in sciences and engineering 1.2.10.10 Bounds on computing: computability and algorithmic intractability |
|||
13.10 |
61, 104 |
1 |
1 |
1.3 Programming languages 1.3.1 Fundamental programming language structures; comparison of languages and applications |
|||
| 61 | 1 | 1 | 1 | 1.3.2 Machine and assembly level languages | |||
| 13.11, 61 | 50 | n n n |
1 | 1.3.3 Procedural languages 1.3.3.1 Procedural programming advantages and disadvantages 1.3.3.2 Basic type declarations; arithmetic operators and assignment; conditional statements; loops and recursion 1.3.3.3 Procedures, functions, and parameters; arrays and records |
|||
| 13.10 | 61 | 103 | 1 | 1.3.4 Non-procedural languages: logic, functional, event driven | |||
| 13.10 | 61 | 51 | 104 | 1 | 1.3.5 Fourth-generation languages | ||
| 61 | 101 | 46 | 104 | 1 | 1.3.6 Object oriented extensions to languages | ||
| 38, 46, 61 | 46, 50, 71, 93, 104 |
n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n |
1 | 1 1 1 |
1.3.7 Programming languages, design,
implementation and comparison 1.3.7.1 History of early languages 1.3.7.2 Evolution of procedural languages 1.3.7.3 Evolution of non-procedural languages 1.3.7.4 Virtual computers 1.3.7.5 Elementary and structured data types 1.3.7.6 Creation and application of user defined data types 1.3.7.7 Expressions, order of evaluation, and side-effects 1.3.7.8 Subprograms and coroutines as abstractions of expressions and statements 1.3.7.9 Exception handling 1.3.7.10 Mechanisms for sharing and restricting access to data 1.3.7.11 Static vs dynamic scope, lifetimes, visibility 1.3.7.12 Parameter passing mechanisms; reference, value, name, result, etc. 1.3.7.13 Varieties of type checking disciplines and their mechanics 1.3.7.14 Stack-based application of storage 1.3.7.15 Heap-based application of storage 1.3.7.16 Finite state automata as restricted models of computation and acceptors of regular expressions 1.3.7.17 Application of regular expressions to programming language analysis 1.3.7.18 Use of context-free grammars as a formal description device for programming language syntax 1.3.7.19 Equivalence of context free grammar and pushdown automata 1.3.7.20 Use of pushdown automata in parsing programming languages 1.3.7.21 Language translation process, compilers to interpreters 1.3.7.22 Programming language semantics 1.3.7.23 Functional programming paradigms and languages 1.3.7.24 Parallel programming constructs 1.3.7.25 Procedural languages: implementation issues; performance improvement, debugging, anti-bugging 1.3.7.26 Compilers and translators 1.3.7.27 Very high level languages: SQL, 4th-GL 1.3.7.28 Object-oriented design, languages, and programming 1.3.7.29 Logic programming languages: LISP, PROLOG; logic oriented programming 1.3.7.30 Code generators 1.3.7.31 Expert system shells 1.3.7.32 Software design languages |
||
1 |
7, 62 |
82 |
n |
1 |
1 |
1.4 Operating systems 1.4.1 Architecture, goals and structure of an operating system; structuring methods, layered models, object-server model |
|
| 1 | 7, 36, 62, 65, 67 | 71, 82 | 1 | 1.4.2 Interaction of operating system and hardware architecture | |||
| 62, 65, 67 | n n n n n n n n |
1 | 1 1 |
1.4.3 Process management: concurrent
processes, synchronization 1.4.3.1 Tasks, processes, dispatching context switchers, role of interrupts 1.4.3.2 Structures, ready list, process control blocks 1.4.3.3 Concurrent process execution 1.4.3.4 Sharing access, race conditions 1.4.3.5 Deadlock; causes, conditions, prevention 1.4.3.6 Models and mechanisms (e.g., busy waiting, spin locks, Deker's algorithm, semaphores, mutex locks, regions, monitors 1.4.3.7 Preemptive and non-preemptive switching 1.4.3.8 Schedulers and scheduling policies |
|||
| 67 | n n n n n n n |
1 | 1 | 1.4.4 Memory management 1.4.4.1 Physical memory and registers 1.4.4.2 Overlays, swapping, partitions 1.4.4.3 Pages and segments 1.4.4.4 Placement and replacement policies 1.4.4.5 Thrashing, working sets 1.4.4.6 Free lists, layout; servers, interrupts; recovery from failures 1.4.4.7 Memory protection; recovery management |
|||
| 62, 67 | 62 | 71 | n n n n n n n |
1 | n 1 |
1.4.5 Resource allocation and scheduling
1.4.5.1 Protocol suites (communications and networking); streams and datagrams 1.4.5.2 Internetworking and routing; servers and services 1.4.5.3 Types of operating systems: single user, multi-user, network 1.4.5.4 Synchronization and timing in distributed and real time systems 1.4.5.5 Special concerns in real-time systems; failures, risks, and recovery 1.4.5.6 Operating system utilities 1.4.5.7 Hardware evolution; economic forces and constraints 1.4.5.8 Architecture of real-time and embedded systems 1.4.5.9 Special concerns in embedded real-time systems: hard-timing requirements; reliability, robustness, and fault tolerance; input and output considerations; awareness of issues pertaining to time; concurrency; complex interfaces of device/device and device/software; inadequacy of testing for real-time systems |
|
| 65, 67 | 71 | 1 | 1.4.6 Secondary storage management | ||||
| 65, 67 | 71 | 1 | 1.4.7 File and directory systems | ||||
| 62 | 65, 67, 94 | 71 | 1 | 1.4.8 Protection and security | |||
| 36 | 70 | 1 | 1.4.9 Distributed operating systems | ||||
| 19, 61, 65, 68, 101 |
52, 69 | 1 | 1.4.10 OS support for human interaction: e.g., GUI, interactive video | ||||
| 62 | 37, 70 | 1 | 1.4.11 OS interoperability and compatibility: e.g., open systems | ||||
| 62 | 68 | 1 | 1.4.12 Operating system utilities, tools, commands and shell programming | ||||
| 62 | 68 | 1 | 1.4.13 System administration and
management 1.4.13.1 System bootstrapping/initial program load 1.4.13.2 System generation 1.4.13.3 System configuration 1.4.13.4 Performance analysis, evaluation and monitoring 1.4.13.5 System optimization and tuning 1.4.13.6 System management functions: backup, security and protection, adding and deleting users |
||||
4, 13.7 |
7, 35, 37, 62, 64 |
n n |
1 |
1 1 |
1.5 Telecommunications 1.5.1 International telecommunication standards, models, trends 1.5.1.1 Computer networks and control: topologies, common carriers, equipment configuration, error detection and correction, polling and contention protocols, security and encryption 1.5.1.2 Network design and management: network architectures (ISO, SNA, DNA), protocols (X.25, ISO, etc.) |
||
| 4, 64 | 32, 62 | 40 | n |
1 | 1.5.2 Data transmission: media,
signaling techniques, transmission impairments, encoding,
error detection, compression 1.5.2.1 Communications system technology: transmission media, analog-digital, communications hardware and software |
||
| 37, 62 | 40 | 1 | 1.5.3 Line configuration: error control, flow control, multiplexing | ||||
| 4, 13.7, 64 | 38, 62, 63 | 32, 41, 94 | n |
1 1 |
1 1 1 |
1.5.4 Local area networks 1.5.4.1 Topologies, medium access control, multiplexing 1.5.4.2 Local area networks and WANs: topology, gateways, uses (functions and office automation), PBXs 1.5.4.3 Requirements determinations, performance monitoring and control, economics 1.5.4.4 Architecture of distributed systems 1.5.4.5 Hardware aspects of distributed systems |
|
| 13.7 | 4, 35, 36, 38, 62 | 40, 64, 94 | 1 | 1.5.5 Wide area networks: switching techniques, broadcast techniques, routing | |||
| 4 | 37, 38, 62, 64 | 32 | 1 | 1.5.6 Network architectures and protocols | |||
| 4 | 1 | 1.5.7 Internetworking | |||||
| 33, 35, 37, 38, 39, 62 | 34, 41, 94 | 1 | 1.5.8 Network configuration, performance analysis and monitoring | ||||
| 35, 37 | 1 | 1.5.9 Network security: encryption, digital signatures, authentication | |||||
| 62 | 37 | 1 | 1.5.10 High-speed networks: e.g., broadband ISDN, SMDS, ATM, FDDI | ||||
| 37 | 1 | 1 | 1.5.11 Emerging networks: ATM, ISDN, satellite nets, optic nets, etc., integrated voice, data and video | ||||
| 62 | 33, 37, 64, 68 | 40 | 1 | 1.5.12 Application: e.g., client server,
EDI, EFT, phone network, e-mail, multimedia, video
conferencing, value-added networks 1.5.12.1 Methods of transmitting graphical and video information using telecom, data compression, client-server display techniques, e.g., AOL interface, XWindows |
|||
1, 4, 24, 42 |
2, 13.6, 58, 111 |
13.12, 81, 91, 92, 94, 98 |
92 |
n n n |
1 |
1 |
1.6 Database 1.6.1 DBMS: features, functions, architecture 1.6.1.1 DBMS (features, functions, architecture); components of database system (data, dictionary, application programs, users, administration) 1.6.1.2 DBMS: overview of relational algebra 1.6.1.3 Logical design (DBMS independent design): ER, object oriented |
| 13.6, 42 | 13.12, 58, 111 | 47, 81, 88, 89, 91, 92, 94, 98 | 92, 100, 110 | n n |
1 | 1.6.2 Data models: relational,
hierarchical, network, object, semantic object 1.6.2.1 Relational data model terminology; mapping conceptual schema to a relational schema 1.6.2.2 Conceptual modeling (e.g., entity-relationship, object-oriented) 1.6.2.3 Model type interconversion (e.g. hierarchical to relational, etc.) |
|
| 111 | 47, 81, 92, 98 | 1 | 1 | 1.6.3 Normalization | |||
| 13.12 | 81, 94, 95, 98 | 92, 110 | n | 1 | 1.6.4 Integrity (referential, data item, intra-relation): representing relationships; entity and referential integrity | ||
| 13.6, 24 | 2, 13.12, 111 | 47, 81, 88, 89, 91, 94, 95, 98 | 92, 100 | 1 | 1 | 1.6.5 Data definition languages (schema definition languages, graphical development tools, dictionaries, etc.) | |
| 1, 13.6, 13.10, 24 |
13.13, 47 | 47, 91, 103 | 92, 100 | n n n |
1 | 1.6.6 Application interface 1.6.6.1 Function supported by typical database system; access methods, security, deadlock and concurrency problems, 4th generation environments 1.6.6.2 DML, query, QBE, SQL, etc.: database query language; data definition, query form, update sub-language, expressing constraints, referential integrity, embedding in a procedural language 1.6.6.3 Application and user interfaces (DML, query, QBE, SQL) 1.6.6.4 Event driven screen objects (buttons, list boxes, etc.) 1.6.6.5 Physical transaction processing ; client-server considerations 1.6.6.6 Client and server distribution of processing considerations |
|
| 24 | 2 | 81, 103 | 91 | 1 | 1.6.7 Intelligent query processors and query organization, OLAP tools | ||
| 13.7, 24 | 36 | 1 | 1 | 1.6.8 Distributed databases, repositories and warehouses | |||
| 1, 4 | 91 | 94 | 1 | 1 | 1.6.9 DBMS products: recent developments in database systems (e.g., hypertext, hypermedia, optical disks) | ||
| 61 | 1 | 1 | 1.6.10 Database machines and servers | ||||
| 1, 13.5 | 13.7, 91, 98 | 94, 110 | n n n |
1 | 1 |
1.6.11 Data and database administration 1.6.11.1 Data administration 1.6.11.2 Database administration: social impact of database systems; security and privacy 1.6.11.3 Ownership and access controls for data and application systems 1.6.11.4 Role and capability based access models 1.6.11.5 Replication 1.6.11.6 System capacity planning 1.6.11.7 Redundancy, safety and backup planning and administration |
|
| 98, 111 | 81, 91 | n | 1 | 1.6.12 Data dictionary, encyclopedia, repository | |||
| 1 | 13.7 | 1 | 1 | 1.6.13. Information retrieval: e.g. internet tools, image processing, hypermedia | |||
42, 88 |
n n n |
1 |
1.7 Artificial intelligence 1.7.1 Knowledge representation 1.7.1.1 History, scope and limits of artificial intelligence; the Turing test 1.7.1.2 Social, ethical, legal, and philosophical aspects of artificial intelligence 1.7.1.3 Problems and state spaces |
||||
| 42, 88 | 1 | 1 | 1.7.2 Knowledge engineering | ||||
| 42, 88 | n n n n |
1 | 1 |
1.7.3 Inference processing 1.7.3.1 Basic control strategies (e.g., depth-first, breadth-first) 1.7.3.2 Forward and backward reasoning 1.7.3.3 Heuristic search (e.g., generate & test, hill climb, breadth-first search, means-ends analysis, graph search, minimax search) 1.7.3.4 Expert systems and shells |
|||
| 42 | 1 | 1.7.4 Other techniques: fuzzy logic, CASE-based reasoning, natural language and speech recognition | |||||
| 42 | n n n n n |
1 | 1 |
1.7.5 Knowledge-based systems 1.7.5.1 Natural language, speech and vision 1.7.5.2 Pattern recognition 1.7.5.3 Machine learning 1.7.5.4 Robotics 1.7.5.5 Neural networks |
|||
13.12 |
17, 18, 95 |
1 |
1 |
2.0 Organizational and management
concepts 2.1 General organization theory 2.1.1 Hierarchical and flow models of organizations |
|||
| 17, 18, 33 | 1 | 1 | 2.1.2 Organizational work groups | ||||
| 13.3 | 18, 33 | 1 | 1 | 2.1.3 Organizational span: single user, work group, team, enterprise, global | |||
| 4 | 17, 22, 26, 94 | 1 | 2.1.4 Role of IS within the enterprise: strategic, tactical and operations | ||||
| 4, 13.3 | 8, 17, 22, 25, 95, 116 |
1 | 2.1.5 Effect of IS on organizational structure; IS and continuous improvement | ||||
| 18, 36, 95, 125 | 1 | 2.1.6 Organizational structure: centralized, decentralized, matrix | |||||
| 13.2 | 25 | 1 | 1 | 2.1.7 Organizational issues pertaining to use of software systems in organizations | |||
13.2, 13.8, 25 |
9, 18, 26 |
94, 114, 121, 122, 124 |
1 1 1 1 1 |
2.2 Information systems management 2.2.1 IS planning 2.2.1.1 Alignment of IS planning with enterprise planning 2.2.1.2 Strategic IS planning 2.2.1.3 Short-range IS planning 2.2.1.4 Re-engineering 2.2.1.5 Continuous improvement |
|||
| 29, 65, 125 | 116 | 1 | 2.2.2 Control of the IS function: e.g., EDP auditing, outsourcing | ||||
| 13.1 | 18, 120 | 87, 116, 127 91 |
118 |
1 1 1 1 1 |
2.2.3 Staffing and human resource
management 2.2.3.1 Skills planning 2.2.3.2 Staff performance management 2.3.3.3 Empowerment/job ownership 2.2.3.4 Education and training 2.2.3.5 Competition, cooperation and reward structures |
||
| 18, 26, 125 | 1 | 2.2.4 IS functional structures -- internal vs outsourcing | |||||
| 3 | 13.15, 26, 62, 125 | 121, 122 | 1 | 2.2.5 Determining goals and objectives of the IS organization | |||
| 95, 116, 121, 122, 125 |
78, 94 | 1 | 2.2.6 Managing IS as a business: e.g., customer definition, defining IS mission, IS critical success factors | ||||
| 18, 115 | 15 | 1 | 2.2.7 CIO and staff functions | ||||
| 62 | 29, 116, 121, 122, 125 |
94 | 1 | 2.2.8 IS as a service function: performance evaluation -- external/internal, marketing of services | |||
| 116, 121, 122, 125 |
1 | 2.2.9 Financial administration of IS: e.g., funding and chargeout | |||||
| 3, 13.1, 24, 25, 62 | 4, 5, 8, 14, 17, 22, 25, 42 |
9, 30, 78, 94, 115 | 1 | 2.2.10 Strategic use of IS: e.g., competitive advantage and IS, process re-engineering, IS and quality, IS global impact and international considerations | |||
| 1, 3 | 2, 3, 13.1 | 14, 94 | 1 | 2.2.11 Knowledge work, end user computing: support, role, productivity, activities | |||
| 116, 125 | 1 | 2.2.12 IS policy and operating procedures formulation and communication | |||||
| 13.5, 62 | 94 | 116 | 1 | 1 | 2.2.13 Backup, disaster planning and recovery | ||
| 13.15 | 124 | 1 | 2.2.14 Management of emerging technologies | ||||
| 13.5, 62 |
18, 33, 34, 94, 125 |
40, 41, 83, 91, 94, 115 |
1 1 1 1 1 1 1 1 1 |
1 n 1 |
2.2.15 Management of sub-functions 2.2.15.1 Telecommunications management 2.2.15.2 Computer facilities management: e.g., automated operations of distributed processing, capacity planning, site maintenance 2.2.15.3 Management of group decision support systems 2.2.15.4 Data administration 2.2.15.5 Ownership of data and application systems 2.2.15.6 Optimizing the climate for creativity 2.2.15.7 Quality management: e.g., reliability and quality engineering; QC teams 2.2.15.8 Management consulting relationships, outsourcing 2.2.15.9 Managing for resource contention 2.2.15.10 Operational issues associated with system installation, transition, operation, and retirement 2.2.15.11 Controlling activities and disciplines which support software evolution and maintenance 2.2.15.12 Software engineering activities: development, control, management, operations |
||
| 3, 62 | 1, 14 | 56, 94 | n | 1 | 2.2.16 Security and control, viruses and systems integrity | ||
| 18 | 1 | 2.2.17 Computer operations management: e.g. tape/DASD management, scheduling, automation-cross functional context | |||||
6 |
17, 25, 42, 45, 58 |
78, 91, 92, 94, 116 |
100 |
1 |
2.3 Decision theory 2.3.1 Measurement and modeling |
||
| 6 | 21 | 115 | 1 | 1 | 2.3.2 Decisions under certainty, uncertainty, risk | ||
| 1, 14, 22, 94, 125 | 6, 115 | 1 | 2.3.3 Cost/Value of information, competitive value of IS | ||||
| 21 | 30, 33, 79, 80 | 1 | 2.3.4 Decision models and IS: optimizing, satisficing | ||||
| 21 | 30, 33, 79, 80, 94, 99, 106, 113 | 86, 112, 114 | 1 | 2.3.5 Group decision process | |||
18, 26, 94 |
1 |
2.4 Organizational behavior 2.4.1 Job design theory |
|||||
| 4, 18 | 1 | 2.4.2 Cultural diversity | |||||
| 13.4 | 86, 94, 120 | 80, 113 | 1 | 2.4.3 Group dynamics | |||
| 13.4 | 8, 25 | 94, 98, 99, 106, 113, 120, 121, 122 |
80, 86, 116 | 1 | 2.4.4 Teamwork, leadership and empowerment | ||
| 80 | 86, 94, 96, 120, 121, 122 |
1 | 2.4.5 Use of influence, power and politics | ||||
| 86, 121 | 97 | 1 | 2.4.6 Cognitive styles | ||||
| 86 | 94, 99, 121, 122 | 1 | 2.4.7 Negotiating and negotiating styles | ||||
| 13.3 | 8 | 86, 94, 98, 99, 106, 121, 122 |
80, 113, 116 | 1 | 2.4.8 Consensus building | ||
96, 97 |
1 |
2.7 Managing the process of change 2.7.1 Reasons for resistance to change |
|||||
| 96, 97 | 1 | 2.7.2 Strategies for motivating change | |||||
| 96, 97 | 1 | 2.7.3 Planning for change | |||||
| 96, 97 | 1 | 2.7.4 Managing change | |||||
12, 73, 119, 123 |
1 |
1 | 2.8 Legal and ethical aspects of IS 2.8.1 Software sales, licensing, and agency |
||||
| 12, 123 | 73 | n |
1 | 2.8.2 Contract fundamentals 2.8.2.1 Contract law |
|||
| 15, 40, 85, 90, 119, 120, 123 |
73 | 1 | 1 | 2.8.3 Privacy law | |||
| 39, 73, 120 | 1 | 1 | 2.8.4 Agencies and regulatory bodies | ||||
| 13.3 | 73, 119, 123 | 12, 85 | n n n |
1 | 1 | 2.8.5 Ethics and Protection of
intellectual property rights 2.8.5.1 Protection of intellectual property 2.8.5.2 Forms of intellectual property, means for protecting it, and penalties for violating it 2.8.5.3 Ethics (plagiarism, honesty, privacy, hackers): uses, misuses, and limits of computer technology |
|
| 31, 85, 119 | 12, 121, 122 | 1 1 1 1 1 1 1 1 |
1 1 1 1 1 1 1 1 |
1 |
2.8.6 Ethics: Personal and professional
responsibility and codes; ethical models; ethical and
social analysis 2.8.6.1 Personal responsibility: Principles of honesty, fairness, autonomy, justice, and beneficence shared among all people 2.8.6.2 Professional responsibility: Expectations and trust due to knowledge and skills 2.8.6.3 Professional codes of ethical conduct for responsible computing professionals 2.8.6.4 Motivation for and importance of ethical behavior: the hacker mentality vs professional behavior 2.8.6.5 Ethical models: Bentham's utilitarianism, Kant's moral imperative, Rawles' negotiation of social contracts, Covey's Principle Centered Leadership 2.8.6.5 Elements of ethical analysis: discussion of ethical claims; dealing with ethical choices; questionable ethical approaches (naive relativism, egoism, agency and legalism) 2.8.6.6 Ethical Analysis: arguing from example, analogy and counter-example; identifying stakeholders and ethical issues; application of ethical codes; identifying and evaluating alternate courses of action 2.8.6.7 Social Analysis: social contextual influence on development and technology usage; power relations in social interaction; technology embodies the values of the developers; diversity of populations; utilization of empirical data in design and development |
||
| 13.2, 125 | 31, 119 | 12, 73 | n | 1 | 2.8.7 Risks, losses and liability in computing applications | ||
| 12 | 119 | 1 | 1 | 2.8.8 Warranties | |||
85 |
1 |
1 |
1 | 2.9 Professionalism 2.9.1 Current literature periodicals, professional, academic journals |
|||
| 11, 85 | 1 | 1 | 2.9.2 Certification issues | ||||
| 11, 85 | 12, 85 | n | 1 | 2.9.3 Professional organizations: e.g. DPMA, ACM, TIMS, ASM, DSI, ACE, IEEE, ASQC, AIS, IAIM, INFORMS | |||
| 11, 85 | n | 1 | 2.9.4 Professional conferences | ||||
| 25 | 1 | 2.9.6 IS industry: manufacturers, OEMs, system integrators, software developers | |||||
| 4 | 16, 17 | n | 2.9.7 Historical and social context of computing | ||||
74, 86, 117 |
1 1 |
2.10 Personal and Interpersonal Skills 2.10.1 Communication skills |
|||||
| 13.4 | 8, 56 | 74, 99, 117 | 113, 114 | 1 | 2.10.2 Interviewing, questioning and listening | ||
| 94 | 117, 120 | 1 | 1 1 |
2.10.3 Presentation skills 2.10.3.1 Oral and written communications 2.10.3.2 Graphics and use of multimedia 2.10.3.3 Training: goals, objectives, computer based |
|||
| 12, 94 | 107 | 1 | 2.10.4 Consulting skills | ||||
| 117 | 56, 74 | 117 | 1 | 1 1 1 1 |
2.10.5 Writing skills 2.10.5.1 Fundamentals of technical writing 2.10.5.2 Principles and standards for documentation 2.10.5.3 Development of software documentation 2.10.5.4 Documentation tools 2.10.5.5 Writing as a means for life long learning 2.10.5.6 Writing journals as a method for capturing observations 2.10.5.7 Writing problem solutions and answers to issues to explore knowledge |
||
| 3, 10 | 14, 31, 85, 112 | 86, 87, 121, 122 | 92 | 1 | 2.10.6 Proactive attitude and approach | ||
| 3, 10 | 14, 20 | 12, 87, 121, 122 | 107 | 1 | 2.10.7 Personal goal setting, decision making, and time management | ||
| 3, 10 | 25, 78, 112 | 87, 120 | 114 | 1 | 2.10.8 Principle centered leadership | ||
| 86 | 1 | 2.10.9 Principles of negotiation | |||||
| 13.2 | 8, 12, 19 | 72, 86, 100 | 105 | 1 | 2.10.10 Fostering creativity and opportunity finding | ||
| 13.1 | 3, 5, 22, 23 |
62 |
1 |
3.0 Theory and development of systems 3.1 Systems and information concepts 3.1.1 General systems theory |
|||
| 3, 5, 13.8 | 13.8, 22 | 1, 50, 62, 65, 100 | 1 | 1 | 1 1 |
3.1.2 Systems concepts: e.g., structure,
boundaries, states, objectives 3.1.2.1 Fundamental concepts of information theory 3.1.2.2 Reasoning about organizational systems, software products and processes 3.1.2.3 Relationships of users and suppliers to the system |
|
| 4 | 5, 22, 62 | 22, 60 | 116 | 1 | 3.1.3 Properties of open systems | ||
| 13.1 | 5, 8, 13.8, 25, 38 | 1, 22, 46, 50, 67, 94 |
116 | 1 | 3.1.4 System components and relationships | ||
| 1 | 5, 8, 25 | 22, 64, 78, 116 | 1 | 1 | 3.1.5 Systems control: standards, control theory, feedback, loops, measurement, quality | ||
| 4, 13.1 | 7, 16, 17, 22 | 1 | 3.1.6 Properties of information systems | ||||
| 13.2 | 2, 13.8, 13.14, 8, 116 |
13.9, 76, 90 |
116 |
n n n n n n |
1 |
n n 1 1 1 n 1 1 |
3.2 Approaches to systems development 3.2.1 Systems development models: e.g., SDLC, prototyping 3.2.1.1 Systems development life cycle: software life-cycle models (iterative enhancement, phased development, spiral, waterfall) 3.2.1.2 Developing with prototyping 3.2.1.3 Developing with packages 3.2.1.4 Data oriented development techniques 3.2.1.5 Process oriented development techniques 3.2.1.6 Object oriented development techniques: bottom-up design; support for reuse 3.2.1.7 Systems engineering considerations 3.2.1.8 Software as a component of a system 3.2.1.9 Software process and product-life cycle models 3.2.1.10 Software generation methods and tools: design and coding from scratch, program and application generators, very high level languages, reusable components 3.2.1.11 System design methods and tools |
| 2, 13.8 | 56, 91, 116 | 1 | 3.2.2 Package acquisition and implementation | ||||
| 2, 13, 91 | 110 | 1 | 3.2.3 Integrating software components | ||||
| 14 | 3, 13.2 | 1 | 3.2.4 End User developed systems | ||||
| 48, 76, 90 | 91, 116 | 1 | 3.2.5 Selecting a systems development approach | ||||
24 |
8 |
96 |
1 |
1 |
1 1 |
3.3 Systems development concepts and
methodologies 3.3.1 Organizational and software process modeling 3.3.1.1 Modeling concepts 3.3.1.2 Advanced modeling concepts, including asynchronous and parallel models |
|
| 58 | 88, 111 | 100 | 1 | 3.3.2 Data modeling: e.g., entity-relationship diagrams, normalization | |||
| 24 | 96 | 122 | 1 | 3.3.3 Data oriented methodologies | |||
| 24 | 8 | 96 | 1 | 3.3.4 Process oriented methodologies | |||
| 46 | 96, 101 | 1 | 3.3.5 Behavior oriented (event modeling) methodologies | ||||
| 46 | 101 | 1 | 3.3.6 Object oriented methodologies | ||||
| 116 | 1 | 3.3.7 Software engineering process and products | |||||
75, 90, 108, 120 |
n n n |
1 |
3.4 Systems development tools and
techniques 3.4.1 CASE 3.4.1.1 Methodologies (information engineering, Jackson Techniques, Yourdon, C. F. Martin, etc.): software design objectives 3.4.1.2 Tools: CASE tools, code generators, GDSS 3.4.1.3 Tools: IDEF and other specification and design tools; database design and schema conversion tools; implementation tools; drawing and graphics tools |
||||
| 13.3 | 8, 98 | 74, 106 | 1 | 3.4.2 Group-based methods: e.g., JAD, structured walkthroughs, design and code reviews | |||
| 13.9 | 88, 100 | 1 | n | 3.4.3 Software implementation concepts and tools: e.g., data dictionary, repository, application generator, reuse, program generators, software implementation languages | |||
77 |
91, 110 |
1 |
3.5 Application planning 3.5.1 Infrastructure planning: hardware, communications, database, site |
||||
| 3 | 14, 26, 115 | 110 | 1 | 3.5.2 Planning the IS architecture | |||
| 115 | 1 | 3.5.3 Planning for operations | |||||
| 82, 83 | 1 | 3.5.4 Metrics for size, function points, control of complexity | |||||
| 28, 123 | n | 3.5.5 Planning for IS security, privacy and control | |||||
13, 72 |
77, 115 |
1 |
3.6 Risk management 3.6.1 Feasibility assessment |
||||
| 13.2 | 28, 72, 125 | 1 | 3.6.2 Risk management principles | ||||
| 18, 115 | 1 | 3.6.3 Contingency planning | |||||
3 |
13.3, 94 |
116 |
107 |
1 |
n |
3.7 Project management 3.7.1 Project planning and selection of appropriate process model; project scheduling and milestones |
|
| 94 | 116 | 1 | n 1 1 |
3.7.2 Project organization, management,
principles, concept and issues 3.7.2.1 Project management organizational issues 3.7.2.2 Project management principles, concepts and issues |
|||
| 18, 105 | 1 | 3.7.3 Work breakdown structures and scheduling | |||||
| 11, 94 | 120, 127 | 1 | n | 3.7.4 Project staffing considerations: e.g., matrix management, human factors, team organization, reporting | |||
| 12, 14, 94 | 108 | 107 | 1 | n n 1 n 1 |
3.7.5 Project control: planning, cost
estimation, resource allocation, software technical
reviews, measurement, analysis, feedback, communications,
ensuring quality, scheduling, milestones 3.7.5.1 Project management documentation 3.7.5.2 Representations of project scheduling 3.7.5.3 Project economics: cost estimation techniques and tools; cost/benefit analysis; risk analysis; etc. 3.7.5.4 Project scheduling tools |
||
| 116 | 1 | 3.7.6 Managing multiple projects | |||||
| 112 | 12, 87, 116 | 126 | 1 | 3.7.7 Management concerns; stress and time management | |||
| 56 | 2, 59, 94 | 1 | 1 | 3.7.8 Systems documentation | |||
| 13.3 | 56 | 2, 82, 117, 120 | 1 | 1 | 1 | 3.7.9 User documentation (e.g., reference manuals, operating procedures, on-line documentation) | |
| 83 | 84 | 1 | 3.7.10 System metrics | ||||
| 73, 94 | 1 | 3.7.11 Scoping and scope control | |||||
| 94 | 116 | 1 | 1 1 1 1 1 1 1 1 |
3.7.12 Configuration management 3.7.12.1 Principles and concepts of configuration management 3.7.12.2 Role in controlling system evolution 3.7.12.3 Role in maintaining product integrity 3.7.12.4 Documentation: change controls, version controls, etc. 3.7.12.5 Organizational structures for configuration management 3.7.12.6 Configuration management plans 3.7.12.7 Configuration management tools |
|||
| 83 | 82, 84, 96 | 1 | 3.7.13 System development quality assurance | ||||
| 94 | 108 | 107 | 1 | 3.7.14 Project tracking: e.g., PERT, Gantt | |||
| 109 | 1 | 3.7.15 Project close-down | |||||
| 13.3, 13.4 | 8, 25 |
72, 116 |
1 |
3.8 Information and business analysis 3.8.1 Problem opportunity identification: e.g., service requests, from planning process |
|||
| 13.4 | 89 | 26, 92, 100 | 1 | 3.8.2 Relating the application to the enterprise model | |||
| 13.4 | 3, 8, 36, 111 | 14, 77, 94, 103 | 1 | 3.8.3 Requirements determination and specification | |||
24 |
2 |
47, 48, 50, 60, 77, 95 |
1 |
1 1 1 1 1 1 1 1 1 |
3.9 Information systems design 3.9.1 Design: logical, physical 3.9.1.1 System design methods and tools 3.9.1.2 Role of software design versus system design 3.9.1.3 Hardware-software tradeoffs for system performance and flexibility 3.9.1.4 Design of high-level interfaces, hardware to software and software to software 3.9.1.5 System performance prediction 3.9.1.6 System modeling techniques and representations 3.9.1.7 Object oriented system design technique 3.9.1.8 System design techniques: iterative design technique, modeling, etc. 3.9.1.9 System design flexibility |
||
| 28 | 81 | 1 | 3.9.2 Design methodologies: e.g., real time, object oriented, structured, event driven | ||||
| 2, 65, 84 | 13 | 1 | 3.9.3 Design objectives: e.g., usability, performance | ||||
| 3 | 8, 79 | 14, 94 | 114 | 1 | 3.9.4 Techniques to enhance the creative design process | ||
| 81 | 19 | 96 | n | 1 | 1 | 3.9.5 Information presentation alternatives; cognitive styles | |
| 19, 59 | 52 | 101 | n n n n n n n |
1 | 1 1 1 1 1 |
3.9.6 Human-computer interaction (e.g.,
ergonomics, graphical-user interfaces, voice, touch) 3.9.6.1 User interfaces (voice, touch...) 3.9.6.2 Ergonomics 3.9.6.3 Common user access 3.9.6.4 User interfaces; menu systems, command languages, direct manipulation, common interface tool kits 3.9.6.5 Graphics output devices and their properties 3.9.6.6 Graphics primitives and their properties 3.9.6.7 Graphics software systems; general graphics standards 3.9.6.8 Architecture of window managers and user interfaces 3.9.6.9 Architecture of toolboxes and programming support environments 3.9.6.10 Representation of graphic data and sound 3.9.6.11 Design techniques for human-computer interface problems: device independence, virtual terminals, etc. 3.9.6.12 Human factors associated with human-computer interfaces: assumptions about class of user, handling input errors, screen design, etc. |
|
| 45 | 82, 83 | 50, 60, 91, 97, 103 |
51, 100, 116 | 1 | n n n n n n n 1 n |
3.9.7 Software development 3.9.7.1 Software requirements: principles; types (functional, performance and other); analysis; identification techniques (prototyping, modeling, simulation); communication with customer; tools 39.7.2 Software specifications: objectives; standards; types (functional, performance, reliability, other); formal models; representations; documents (standards, structure, content, users, completeness, consistency); techniques; specification of quality attributes; formal specification languages and tools 3.9.7.3 Software design: principles of design (abstraction, information hiding, modularity, reuse, prototyping); paradigms for well-understood systems; levels of design; documentation; representations of designs; design of sub-systems; assessment of design quality; languages and tools; methods, practices and techniques 3.9.7.4 Software quality assurance: issues, definitions, standards, quality assurance as a controlling discipline, factors affecting quality, quality concerns in phases of the SDLC, metrics, organizational structures for quality assurance, plans, documentation, quality assurance project teams, quality and security, industrial practice 3.9.7.5 Software correctness and reliability: principles, concepts, modeling, methods 3.9.7.6 Verification and validation of software quality assurance: role and methods, formal models, independent verification and validation teams, tools, reports 3.9.7.7 Software implementation: relationship of software design to implementation; relationship of programming support environments to software implementation process; relationship of implementation language to design principles; tools; assessment (coding standards, metrics, etc.); other implementation considerations and issues (language structures and programming techniques, reuse, application generators, etc.) 3.9.7.8 Software and hardware system integration: methods, plans, tests (including incremental testing during development), assessment and documentation of test results, diagnosing system faults, simulation of missing hardware 3.9.7.9 Software testing: role, principles and standards; relationship of quality assurance to testing; methods; levels of testing (unit, system, integration, acceptance, etc.); plans; audits; limitations; statistical methods; formal models; documentation; tools; test and evaluation teams; building test environments; test case generation; regression testing; black-box/white-box testing; technical reviews; performance analysis; results analysis and reports |
|
2, 14, 50, 94 |
91, 110 |
1 |
1 |
3.10 Systems implementation and testing
strategies 3.10.1 Systems construction |
|||
| 65 | 3, 50, 60, 91, 103 | 116 | 1 | 3.10.2 Software systems construction: e.g., programming, unit testing , load module packaging | |||
| 14 | 45, 98 | 116 | 1 | 3.10.3 Software integration: e.g., packages | |||
| 13.5 | 97, 98 | 116 | 1 | 3.10.4 Systems conversion: approaches, planning, implementation | |||
| 13.14 | 2, 70, 94 | 98 | 116 | n | 1 | 3.10.5 Systems integration and system testing: verification and validation, test plan generation, testing (acceptance testing, unit testing, integration testing, regression testing) | |
| 2 | 97 | 1 | n | 3.10.6 Training: e.g., user, management, operation, systems, training materials | |||
| 3, 14 | 26, 78, 98, 122 | 114 | n | 1 | 3.10.7 Software project management: scoping, scheduling, configuration management, quality assurance; software reliability issues (safety, responsibility, risk assessment); maintenance | ||
| 98 | 116 | 1 | 3.10.8 Systems installation | ||||
| 98 | 115 | 1 | 3.10.9 Post implementation review | ||||
98 |
1 |
3.11 Systems operation and maintenance 3.11.1 Service request and change control |
|||||
| 103 | 1 | 3.11.2 Reverse and re-engineering | |||||
| 98 | 1 | 3.11.3 Tuning and balancing | |||||
| 98, 116 | 1 | 1 1 1 1 1 |
3.11.4 Systems and software maintenance
concepts 3.11.4.1 Kinds of software maintenance: perceptive, adaptive, corrective 3.11.4.2 Designing software for maintainability 3.11.4.3 Software maintenance techniques: program reading, reverse engineering, etc. 3.11.4.4 Software maintenance models |
||||
4 |
18, 27 |
94 |
1 |
1 |
3.12 Systems development for specific
types of information systems 3.12.1 Transaction processing systems |
||
| 4 | 18, 27 | 1 | 3.12.2 Management information systems | ||||
| 4, 13.3 | 18, 27 | 1 | 3.12.3 Group support systems | ||||
| 21 | 1 | 3.12.4 Decision support systems/expert systems | |||||
| 21 | 1 | 3.12.5 Executive support systems | |||||
| 13.3, 27 | 3, 18 | 1 | 3.12.6 Office systems | ||||
| 13.3 | 21 | 1 | 3.12.7 Collaborative systems | ||||
| 4, 27 | 8, 14, 17 | 1 | 3.12.8 Image, and Work-flow systems | ||||
| 4, 18 | 1 | 3.12.9 Functional support systems: e.g., process control, marketing | |||||
| 4 | 1 | 3.12.10 Interorganizational systems | |||||