(a) Implementation. The provisions of this section
shall be implemented by school districts beginning with the 2023-2024
school year.
(1) No later than August 1, 2023, the commissioner
of education shall determine whether instructional materials funding
has been made available to Texas public schools for materials that
cover the essential knowledge and skills identified in this section.
(2) If the commissioner makes the determination that
instructional materials funding has been made available this section
shall be implemented beginning with the 2023-2024 school year and
apply to the 2023-2024 and subsequent school years.
(3) If the commissioner does not make the determination
that instructional materials funding has been made available under
subsection (a) of this section, the commissioner shall determine no
later than August 1 of each subsequent school year whether instructional
materials funding has been made available. If the commissioner determines
that instructional materials funding has been made available, the
commissioner shall notify the State Board of Education and school
districts that this section shall be implemented for the following
school year.
(b) General requirements. This course is recommended
for students in Grades 11 and 12. Prerequisite: Computer Science II,
Advanced Placement (AP) Computer Science A, or International Baccalaureate
(IB) Computer Science Standard Level or IB Computer Science Higher
Level. Students shall be awarded one credit for successful completion
of this course.
(c) Introduction.
(1) Career and technical education instruction provides
content aligned with challenging academic standards, industry-relevant
technical knowledge, and college and career readiness skills for students
to further their education and succeed in current and emerging professions.
(2) The Science, Technology, Engineering, and Mathematics
(STEM) Career Cluster focuses on planning, managing, and providing
scientific research and professional and technical services such as
laboratory and testing services and research and development services.
(3) Computer Science III will foster students' creativity
and innovation by presenting opportunities to design, implement, and
present meaningful programs through a variety of media. Students will
collaborate with one another, their instructor, and various electronic
communities to solve the problems presented throughout the course.
Through computational thinking and data analysis, students will identify
task requirements, plan search strategies, and use computer science
concepts to access, analyze, and evaluate information needed to solve
problems. By using computer science knowledge and skills that support
the work of individuals and groups in solving problems, students will
select the technology appropriate for the task, synthesize knowledge,
create solutions, and evaluate the results. Students will gain an
understanding of advanced computer science data structures through
the study of technology operations, systems, and concepts.
(4) Students are encouraged to participate in extended
learning experiences such as career and technical student organizations
and other leadership or extracurricular organizations.
(5) Statements that contain the word "including" reference
content that must be mastered, while those containing the phrase "such
as" are intended as possible illustrative examples.
(6) Students are encouraged to participate in extended
learning experiences such as career and technical student organizations
and other leadership or extracurricular organizations.
(d) Knowledge and skills.
(1) Employability. The student identifies various employment
opportunities in the computer science field. The student is expected
to:
(A) identify job and internship opportunities and accompanying
job duties and tasks and contact one or more companies or organizations
to explore career opportunities;
(B) examine the role of certifications, resumes, and
portfolios in the computer science profession;
(C) employ effective technical reading and writing
skills;
(D) employ effective verbal and non-verbal communication
skills;
(E) solve problems and think critically;
(F) demonstrate leadership skills and function effectively
as a team member;
(G) demonstrate an understanding of legal and ethical
responsibilities in relation to the field of computer science;
(H) demonstrate planning and time-management skills;
and
(I) compare university computer science programs.
(2) Creativity and innovation. The student develops
products and generates new understandings by extending existing knowledge.
The student is expected to:
(A) apply object-oriented programming, including data
abstraction, encapsulation, inheritance, and polymorphism, to manage
the complexity of a project;
(B) design and implement a class hierarchy;
(C) read and write class specifications using visual
organizers, including Unified Modeling Language;
(D) identify, describe, evaluate, compare, and implement
standard sorting algorithms that perform sorting operations on data
structures, including quick sort and heap sort; and
(E) identify and use the appropriate abstract data
type, advanced data structure, and supporting algorithms to properly
represent the data in a program problem solution.
(3) Communication and collaboration. The student communicates
and collaborates with peers to contribute to his or her own learning
and the learning of others. The student is expected to:
(A) use networked tools for file management and collaboration;
and
(B) work in software design teams.
(4) Data literacy and management. The student locates,
analyzes, processes, and organizes data. The student is expected to:
(A) identify and use two-dimensional ragged arrays
to traverse, search, modify, insert, and delete data;
(B) describe and demonstrate proper linked list management,
including maintaining the head and safe addition and deletion of linked
objects;
(C) create or trace program solutions using a linked-list
data structure, including unordered single, ordered single, double,
and circular linked;
(D) describe composite data structures, including a
linked list of linked lists;
(E) create or trace program solutions using stacks,
queues, trees, heaps, priority queues, graph theory, and enumerated
data types;
(F) create or trace program solutions using sets, including
hash and tree-based data structures;
(G) create or trace program solutions using map style
data structures; and
(H) write and modify text file data.
(5) Critical thinking, problem solving, and decision
making. The student uses appropriate strategies to analyze problems
and design algorithms. The student is expected to:
(A) evaluate expressions using bitwise operators;
(B) evaluate expressions using the ternary operator;
(C) identify, trace, and appropriately use recursion
in programming solutions, including processing binary trees;
(D) create or trace program solutions using hashing;
(E) explore common algorithms such as matrix addition
and multiplication, fractals, Towers of Hanoi, and magic square; and
(F) create program solutions that exhibit robust behavior
by recognizing and avoiding runtime errors and handling anticipated
errors.
(6) Testing and documentation. The student demonstrates
appropriate documentation and testing practices. The student is expected
to:
(A) use appropriate formatting and write documentation
to support code maintenance, including pre- and post-condition statements;
(B) write program assumptions in the form of assertions;
(C) write a Boolean expression to test a program assertion;
and
(D) construct assertions to make explicit program invariants.
(7) Practical application of technology. The student
utilizes technology concepts, systems, and operations as they apply
to computer science. The student is expected to:
(A) analyze and create computer program workflow charts
and basic system diagrams, documenting system functions, features,
and operations;
(B) gather requirements, design, and implement a process
by which programs can interact with each other such as using interfaces;
(C) create simple programs using a low-level language
such as assembly;
(D) create discovery programs in a high-level language;
(E) create scripts for an operating system;
(F) explore industry best practices for secure programming;
and
(G) explore emerging industry or technology trends.
|