I. Software Requirements | 7% | |
A. Software Requirements Fundamentals | | Introductory |
B. Requirements Process | Introductory |
C. Requirements Elicitation | Introductory |
D. Requirements Analysis | Competency |
E. Requirements Specification | Introductory |
F. Requirements Validation | Competency |
G. Practical Considerations | Introductory |
II. Software Design | 8% | |
A. Software Design Fundamentals | | Competency |
B. Key Issues in Software Design | Competency |
C. Software Structure and Architecture | Competency |
D. Human computer Interface Design | Competency |
E. Software Design Quality Analysis and Evaluation | Competency |
F. Software Design Notations | Competency |
G. Software Design Strategies and Methods | Competency |
III. Software Construction | 10% | |
A. Software Construction Fundamentals | | Competency |
B. Managing Construction | Competency |
C. Practical Considerations | Competency |
D. Construction Tools | Competency |
E. Construction Technologies | Competency |
F. Product Documentation | Competency |
F. Formal construction methods | | |
IV. Software Testing | 7% | Introductory |
A. Software Testing Fundamentals | | Competency |
B. Test Levels | Competency |
C. Test Techniques | Competency |
D. Human Computer User Interface Testing and Eval | Competency |
E. Test-Related Measures | Competency |
F. Test Process | |
V. Software Maintenance | 7% | Introductory |
A. Software Maintenance Fundamentals | | Introductory |
B. Key Issues in Software Maintenance | Competency |
C. Maintenance Process | Competency |
D. Techniques for Maintenance | |
VI. Software Configuration Management | 3% | Introductory |
A. Management of the SCM Process | | Competency |
B. Software Configuration Identification | Competency |
C. Software Configuration Control | Competency |
D. Software Configuration Status Accounting | Introductory |
E. Software Configuration Auditing | Introductory |
F. Software Release Management and Delivery | Introductory |
G. Software Configuration Management Tools | |
VII. Software Engineering Management | 3% | Introductory |
A. Initiation and Scope Definition | | Introductory |
B. Software Project Planning | | Introductory |
C. Software Project Enactment | | Introductory |
D. Review and Evaluation | | Introductory |
E. Closure | | Introductory |
F. Software Engineering Measurement | | Introductory |
G. Software Management Tools | | |
VIII. Software Engineering Process | 4% | Introductory |
A. Process Implementation and Change | | Competency |
B. Process Definition | Introductory |
C. Process Assessment | Introductory |
D. Measurement | Introductory |
E. Software Process Tools | |
IX. Software Engineering Methods | 5% | Competency |
A. Modeling | | Competency |
B. Types of Models | Competency |
C. Analysis | Competency |
D. Development Methods | |
X. Software Quality | 6% | Introductory |
A. Software Quality Fundamentals | | Competency |
B. Software Quality Management Processes | Competency |
C. Software Quality Practical Considerations | |
XI. Software Engineering Professional Practice | 7% | Competency |
A. Professionalism | | Competency |
B. Codes of Ethics | | Competency |
C. Group Dynamics / Psychology | | Competency |
D. Communications Skills | | Competency |
E. Intellectual Property, Confidentiality, Security | | |
XII. Software Engineering Economics | 3% | Competency |
A. Software Engineering Economy Fundamentals | | Competency |
B. For-profit Decision-making | Competency |
C. Non For-profit Decision-making | Competency |
D. Present Economy | Competency |
E. Estimation, Risk, and Uncertainty | Competency |
F. Multiple Attribute Decisions | |
XIII. Computing Foundations | 10% | Competency |
A. Programming Fundamentals | | Competency |
B. Algorithms, Data Structures/Representation (static & dynamic) and Complexity | | Competency |
C. Problem solving techniques | | Competency |
D. Abstraction -- use and support for (encapsulation, hierarchy, and so on) | | Competency |
E. Computer organization | | Competency |
F. Basic concept of a system | | Competency |
G. Basic user human factors (I/O, error messages, robustness) | | Competency |
H. Basic developer human factors (comments, structure, readability) | | Competency |
I. Operating system basics | | Competency |
J. Database Basics and Data Management | | Competency |
K. Network communication basics | | Competency |
L. Distributed and Parallel Computing | | Competency |
M. Concepts of programming languages | | Competency |
N. Debugging Tools and Techniques | | Competency |
O. Secure Coding | | |
XIV. Mathematical Foundations | 10% | Competency |
A. Functions, Relations and Sets | | Competency |
B. Basic Logic (prepositional and predicate) | Competency |
C. Proof Techniques (direct, contradiction, inductive) | Competency |
D. Basic Counting | Competency |
E. Graphs and Trees | Competency |
F. Discrete Probability | Competency |
G. Finite State Machines, regular expressions | Competency |
H. Grammars | Competency |
I. Numerical precision, accuracy, and errors | Competency |
J. Number Theory | Competency |
K. Algebraic Structures | |
XV. Engineering Foundations | 10% | Competency |
A. Empirical methods and experimental techniques (such as computer-related measuring techniques for CPU and memory usage) | | Competency |
B. Statistical analysis (including simple hypothesis testing, estimating, regression, and correlation) | Introductory |
C. Measurement | Introductory |
D. Systems development (security, safety, performance, effects of scaling, feature interaction, and so on) | Competency |
E. Engineering design (problem formulation, alternative solutions, feasibility, and so on) | Competency |
F. Theory of measurement (for example, criteria for valid measurement) | Competency |
G. Simulation, Modeling and Conceptual Prototyping | Introductory |
H. GQM Paradigm | Introductory |
I. Standards (identify, evaluate, select and adapt) | Introductory |
J. Tool and platform selection | Competency |
K. Root cause analysis |