Standards in this Framework
Standard | Description |
---|---|
CI.1 | Identify key milestones in the development of computers and logical devices. a) Evaluate how computing impacts practices within the following contexts: i. Personal, ii. Ethical, iii. Social, iv. Economic, v. cultural |
CI.2 | Predict how computational innovations that have revolutionized aspects of our culture might evolve |
CI.3 | Analyze ethical programming practices, including but not limited to the issues of: a) Confidentiality, b) Privacy, c) Piracy, d) Fraud and misuse, e) Liability, f) Copyright, g) Open source software, h) Trade secrets, i) Sabotage |
CI.4 | Differentiate between system-level and application solutions and identify an appropriate code-based strategy to solve a given problem. |
CI.5 | Apply the system management tools present in a programming development environment to: a) Develop syntactically correct program code using current best practices and emerging classes of development techniques, b) Use a compiler/interpreter to produce executable code |
CI.6 | Develop strategies that work within the constraints of major operating system fundamentals, such as: a) Opening a file for reading and writing, b) File management syntax requirements, including but not limited to creating, naming, organizing, copying, moving, and deleting files, c) File name conventions, as they apply across multiple software applications and file types |
CI.7 | Write pseudocode and construct a flowchart for a process before starting to develop the program code. |
CI.8 | Organize and develop a plan to acquire and manage the data values for a process, including the following: a) Data types, such as string, numeric, character, integer, and date, b) Program variable names, c) Variables and constants, d) Arrays (at least one-and two-dimensional), e) Input from files and user responses, f) Output to files and reports |
CI.9 | Using a programming language specified by the instructor, convert the pseudocode for a selected process to program code, incorporating some of the following: a) Operations and functions (user-defined and/or library), b) Repetition (loops), c) Decisions (if…else, case), d) Recursion |
CI.10 | Verify the correct operation of the resulting program code with several test cases: a) All valid values, b) Error trapping of invalid values, c) Error trapping of invalid program operations, d) Troubleshooting/remedying program problems |
CI.11 | Convert numbers from base-10 to binary and hexadecimal |
CI.12 | Compile the necessary documentation to understand the nature of a computer programming problem and the customer/client specifications for the request and summarize. This will include: a) Evidence of the scope of problem, b) Its intended input and output information, c) The required system processing, d) Software specifications involved |
CI.13 | In the software development process, articulate the nature of the program designs by creating documentation that addresses topics including, but not limited to: a) The procedural, object-oriented, event-driven, or other nature of the various portions of the resulting application, b) The data structures used for inputs, outputs and the internal manipulations, c) The algorithms and guiding formulas used, d) Constraints on the accurate operation and results, e) Modular designs that enable portability, f) Interface details that permit ready maintenance and upkeep |
CI.14 | Apply principles of quality assurance during application development to certify bug tracking, audit trails, testing results and other quality considerations. Annotate each quality assurance task with evidence from best practices endorsed by industry or research. |