2016 – 2017
Florida Department of Education
Curriculum Framework 

Program Title:	.NET Application Development & Programming
Program Type:	Career Preparatory 
Career Cluster:	Information Technology

Secondary – Career Preparatory	
Program Number	9007400	
CIP Number	0511020314	
Grade Level	9-12, 30, 31	
Standard Length	7 credits	
Teacher Certification	BUS ED  1 @2
COMP SCI  6
COMP PROG 7 G	
CTSO	FBLA 
BPA	
SOC Codes (all applicable) 	15-1151 – Computer User Support Specialists
15-1131 – Computer Programmers	
CTE Program Resources 	http://www.fldoe.org/academics/career-adult-edu/career-tech-edu/program-resources.stml	

Purpose

This program offers a sequence of courses that provides coherent and rigorous content aligned with challenging academic standards and relevant technical knowledge and skills needed to prepare for further education and careers in the Information Technology career cluster; provides technical skill proficiency, and includes competency-based applied learning that contributes to the academic knowledge, higher-order reasoning and problem-solving skills, work attitudes, general employability skills, technical skills, and occupation-specific skills, and knowledge of all aspects of the Information Technology career cluster. 

The content includes but is not limited to the fundamentals of programming and software development; procedural and object-oriented programming; creating .NET-based applications, including testing, monitoring, debugging, documenting, and maintaining .NET applications. 

Additional Information relevant to this Career and Technical Education (CTE) program is provided at the end of this document. 

Program Structure

This program is a planned sequence of instruction consisting of four occupational completion points, with OCPs A, B, and C comprising the Software Development Core.  

The following table illustrates the secondary program structure:

OCP	Course Number	Course Title	Length	SOC Code	Level	Graduation Requirement	
A	8207310	Digital Information Technology	1 credit	15-1151	2	PA	
B	9007210
9007220	Foundations of Programming 
Procedural Programming	1 credit
1 credit	15-1131	3
3	VO	
C	9007230	Object-Oriented Programming Fundamentals	1 credit	15-1131	3	VO	
D	9007410
9007420
9007430	.NET Application Development Foundation
.NET Application Development Applied
.NET Application Development Capstone	1 credit
1 credit
1 credit	15-1131	3
3
3	VO	
(Graduation Requirement Abbreviations- EQ= Equally Rigorous Science, PA= Practical Arts, EC= Economics, VO= Career and Technical Education)

Academic Alignment Table

Academic alignment is an ongoing, collaborative effort of professional educators specializing in the fields of science, mathematics, English/language arts, and Career and Technical Education (CTE). This initiative supports CTE programs by improving student performance through the integration of academic content within CTE courses. Career and Technical Education courses that have been aligned to the Next Generation Sunshine State Standards for Science and the Florida Standards for Mathematics and English/Language Arts will show the following data: the quantity of academic standards in the CTE course; the total number of standards contained in the academic course; and the percentage of alignment to the CTE course.

Courses	Anatomy/ Physiology 
Honors	Astronomy     Solar/Galactic Honors	Biology 1	Chemistry 1	Earth-Space Science	Environmental Science	Genetics
Honors 	Integrated Science 1	Marine Science 1 Honors	Physical Science	Physics 1	
8207310	5/87
6%	5/80
6%	24/83
29%	5/69
7%	24/67
36%	5/70
7%	5/69
7%	24/82
29%	5/66
8%	24/74
32%	5/72
7%	
9007210	2/87
2%	7/80
9%	22/83
27%	4/69
6%	23/67
34%	4/70
6%	3/69
4%	23/82
28%	6/66
9%	26/74
35%	4/72
6%	
9007220	21/87
24%	21/80
26%	2/83
2%	21/69
30%	2/67
3%	20/70
29%	21/69
30%	2/82
2%	16/66
24%	2/74
3%	21/72
30%	
9007230	20/87
23%	20/80
25%	1/83
1%	20/69
29%	1/67
1%	20/70
29%	20/69
29%	1/82
1%	15/66
23%	1/74
1%	21/72
28%	
9007410	#	#	#	#	#	#	#	#	#	#	#	
9007420	#	#	#	#	#	#	#	#	#	#	#	
9007430	#	#	#	#	#	#	#	#	#	#	#	
**   Alignment pending review    						#   Alignment attempted, but no correlation to academic course

Courses	Algebra 1	Algebra 2	Geometry	English 1	English 2	English 3	English 4	
8207310	20/67
30%	15/75
20%	4/54
7%	40/46
82%	40/45
83%	40/45
89%	40/45
89%	
9007210	11/67
16%	10/75
13%	10/54
19%	#	#	#	#	
9007220	14/67
21%	10/75
13%	11/54
20%	#	#	#	#	
9007230	11/67
16%	8/75
11%	11/54
20%	#	#	#	#	
9007410	#	#	#	#	#	#	#	
9007420	#	#	#	#	#	#	#	
9007430	#	#	#	#	#	#	#	
**   Alignment pending review    			#   Alignment attempted, but no correlation to academic course

Florida Standards for Technical Subjects 

Florida Standards (FS) for English Language Arts and Literacy in History/Social Studies, Science, and Technical Subjects are the critical reading and writing literacy standards designed for grade 6 and above. These standards are predicated on teachers of history/social studies, science, and technical subjects using their content area expertise to help students meet the particular challenges of reading, writing, speaking, listening, and language in their respective fields. It is important to note that the 6-12 literacy standards in history/social studies, science, and technical subjects are not meant to replace content standards in those areas but rather to supplement them.

This curriculum framework incorporates the grades 9-10 reading and writing literacy standards in the first two courses of this CTE program and grade 11-12 reading and writing literacy standards in the third and fourth courses of this CTE program. The standards for Mathematical Practices describe varieties of expertise that educators at all levels should seek to develop in their students. These practices rest on important “processes and proficiencies” with longstanding importance in mathematics education. This curriculum framework incorporates the appropriate mathematical practices in the first four courses of this CTE program.  

Florida Standards for English Language Development (ELD)
English language learners communicate for social and instructional purposes within the school setting. ELD.K12.SI.1.1 

English Language Development (ELD) Standards Special Notes:
Teachers are required to provide listening, speaking, reading and writing instruction that allows English language learners (ELL) to communicate for social and instructional purposes within the school setting.   For the given level of English language proficiency and with visual, graphic, or interactive support, students will interact with grade level words, expressions, sentences and discourse to process or produce language necessary for academic success. The ELD standard should specify a relevant content area concept or topic of study chosen by curriculum developers and teachers which maximizes an ELL’s need for communication and social skills. To access an ELL supporting document which delineates performance definitions and descriptors, please click on the following link: http://www.cpalms.org/uploads/docs/standards/eld/SI.pdf.
For additional information on the development and implementation of the ELD standards, please contact the Bureau of Student Achievement through Language Acquisition at sala@fldoe.org.
Common Career Technical Core – Career Ready Practices

Career Ready Practices describe the career-ready skills that educators should seek to develop in their students.  These practices are not exclusive to a Career Pathway, program of study, discipline or level of education.  Career Ready Practices should be taught and reinforced in all career exploration and preparation programs with increasingly higher levels of complexity and expectation as a student advances through a program of study. 

1. Act as a responsible and contributing citizen and employee. 

2. Apply appropriate academic and technical skills. 

3. Attend to personal health and financial well-being. 

4. Communicate clearly, effectively and with reason. 

5. Consider the environmental, social and economic impacts of decisions. 

6. Demonstrate creativity and innovation. 

7. Employ valid and reliable research strategies. 

8. Utilize critical thinking to make sense of problems and persevere in solving them. 

9. Model integrity, ethical leadership and effective management. 

10. Plan education and career path aligned to personal goals. 

11. Use technology to enhance productivity. 

12. Work productively in teams while using cultural/global competence. 

Standards

Digital Information Technology (8207310) is the first course in this and other programs within the Information Technology Career Cluster.  Standards 01.0 – 17.0 are associated with this course.

After successfully completing this program, the student will be able to perform the following:

01.0	Methods and strategies for using Florida Standards for grades 09-10 reading in Technical Subjects for student success in .NET Application Development & Programming. 
02.0	Methods and strategies for using Florida Standards for grades 09-10 writing in Technical Subjects for student success in .NET Application Development & Programming.
03.0	Methods and strategies for using Florida Standards for grades 09-10 Mathematical Practices in Technical Subjects for student success in .NET Application Development & Programming.
04.0	Demonstrate knowledge, skill, and application of information systems to accomplish job objectives and enhance workplace performance.
05.0	Develop an awareness of microprocessors and digital computers.
06.0	Demonstrate an understanding of operating systems.
07.0	Use technology to enhance the effectiveness of communication skills utilizing word processing applications.
08.0	Use technology to enhance communication skills utilizing presentation applications.
09.0	Use technology to enhance the effectiveness of communication utilizing spreadsheet and database applications.
10.0	Use technology to enhance communication skills utilizing electronic mail.
11.0	Investigate individual assessment and job/career exploration and individual career planning that reflect the transition from school to work, lifelong learning, and personal and professional goals.
12.0	Incorporate appropriate leadership and supervision techniques, customer service strategies, and standards of personal ethics to accomplish job objectives and enhance workplace performance.
13.0	Demonstrate competence using computer networks, internet and online databases to facilitate collaborative or individual learning and communication.
14.0	Demonstrate competence in page design applicable to the WWW.
15.0	Develop an awareness of emerging technologies.
16.0	Develop awareness of computer languages and software applications.
17.0	Demonstrate comprehension and communication skills.
18.0	Explore the characteristics, tasks, work attributes, options, and tools associated with a career in software development. 
19.0	Demonstrate an understanding of the characteristics, use, and selection of numerical, non-numerical, and logical data types. 
20.0	Distinguish between iterative and non-iterative program control structures.
21.0	Differentiate among high level, low level, procedural, object-oriented, compiled, interpreted, and translated programming languages.
22.0	Describe the processes, methods, and conventions for software development and maintenance.
23.0	Explain the types, uses, and limitations of testing for ensuring quality control.
24.0	Create a program design document using Unified Modeling Language (UML) or other common design tool.
25.0	Describe information security risks, threats, and strategies associated with software development.
26.0	Use oral and written communication skills in creating, expressing and interpreting information and ideas. 
27.0	Solve problems using critical thinking skills, creativity and innovation. 
28.0	Use information technology tools. 
29.0	Methods and strategies for using Florida Standards for grades 11-12 reading in Technical Subjects for student success in .NET Application Development & Programming.
30.0	Methods and strategies for using Florida Standards for grades 11-12 writing in Technical Subjects for student success in .NET Application Development & Programming.
31.0	Methods and strategies for using Florida Standards for grades 11-12 Mathematical Practices in Technical Subjects for student success in .NET Application Development & Programming.
32.0	Design a computer program to meet specific physical, operational, and interaction criteria.
33.0	Create and document a computer program that uses a variety of internal and control structures for manipulating varied data types.
34.0	Create and document an interactive computer program that employs functions, subroutines, or methods to receive, validate, and process user input.
35.0	Create a unit test plan, implement the plan, and report the results of testing.
36.0	Demonstrate leadership and teamwork skills needed to accomplish team goals and objectives. 
37.0	Describe the importance of professional ethics and legal responsibilities. 
38.0	Explain key concepts that distinguish object-oriented programming from procedural programming. 
39.0	Create a project plan that defines requirements, structural design, time estimates, and testing elements.
40.0	Design, document, and create object-oriented computer programs.
41.0	Design a unit test plan for an object-oriented computer program, test and debug the program, and report the results
42.0	Develop an awareness of the changes taking place in the information age and how they fit into an evolving society. 
43.0	Understand .NET primitive data types and their uses. 
44.0	Describe the types and characteristics of lexical units in the .NET programming language. 
45.0	Construct statements that use various .NET operators. 
46.0	Construct and use .NET selection control structures. 
47.0	Construct and use .NET iterative control structures. 
48.0	Construct and use .NET structures for error handling. 
49.0	Write .NET programs that define and use user-defined data types, including classes. 
50.0	Write .NET programs that define and use methods. 
51.0	Write programs that perform console input and output in a .NET program. 
52.0	Use namespaces in a .NET program. 
53.0	Use arrays in .NET programs. 
54.0	Write .NET programs that use the object-oriented concept of inheritance. 
55.0	Write .NET programs that use the object-oriented concept of polymorphism. 
56.0	Write .NET programs that use the object-oriented concept of encapsulation. 
57.0	Apply common programming style guidelines and conventions. 
58.0	Use application life cycle management to develop and maintain .NET programs. 
59.0	Use nullable values in a .NET program. 
60.0	Use the .NET String and StringBuilder classes in an application. 
61.0	Use .NET classes to perform stream input/output. 
62.0	Use recursive functions to solve problems in .NET programs. 
63.0	Write .NET programs that use interfaces. 
64.0	Use .NET collections in applications. 
65.0	Demonstrate knowledge of different types of .NET applications. 
66.0	Demonstrate knowledge of .NET architecture and tools. 
67.0	Demonstrate knowledge of Web applications. 
68.0	Develop Web pages using HTML, CSS, JavaScript, and ASP.NET. 
69.0	Develop .NET Windows Form applications. 
70.0	Develop Windows Service applications and class libraries. 
71.0	Demonstrate knowledge of database applications. 
72.0	Demonstrate knowledge of structured query language (SQL) statements. 
73.0	Develop .NET database applications. 
74.0	Successfully work as a member of a software development team. 
75.0	Manage time according to a plan. 
76.0	Keep acceptable records of progress problems and solutions. 
77.0	Plan, organize, and carry out a project plan. 
78.0	Manage resources. 
79.0	Use tools, materials, and processes in an appropriate and safe manner. 
80.0	Demonstrate an understanding of the software development process. 
81.0	Research content related to the project and document the results following industry conventions. 
82.0	Use presentation skills, and appropriate media to describe the progress, results and outcomes of the experience. 
83.0	Demonstrate competency in the area of expertise related to developing computer software using the .NET framework. 
84.0	

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:		Digital Information Technology
Course Number:	8207310
Course Credit:	1

Course Description:

This course is designed to provide a basic overview of current business and information systems and trends, and to introduce students to fundamental skills required for today's business and academic environments.  Emphasis is placed on developing fundamental computer skills.  The intention of this course is to prepare students to be successful both personally and professionally in an information based society.  Digital Information Technology includes the exploration and use of: databases, the internet, spreadsheets, presentation applications, management of personal information and email, word processing and document manipulation, HTML, web page design, and the integration of these programs using software that meets industry standards.  After successful completion of this core course, students will have met Occupational Completion Point A, Information Technology Assistant - SOC Code 15-1151.

Digital Information Technology (8207310) is part of several programs across the various CTE career clusters.  To ensure consistency, the standards and benchmarks for this course (01.0 – 17.0) have been placed in a separate document.   To access this document, visit: Digital Information Technology (8207310).

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:	Foundations of Programming 
Course Number:	9007210
Course Credit:	1

Course Description:

This course introduces concepts, techniques, and processes associated with computer programming and software development.  After successful completion of Programming Foundations and Procedural Programming, students will have met Occupational Completion Point B, Computer Programmer Assistant, SOC Code 15-1131.

Florida Standards	Correlation to CTE Program Standard #	
01.0	Methods and strategies for using Florida Standards for grades 09-10 reading in Technical Subjects for student success in .NET Application Development & Programming.		
01.01	Key Ideas and Details		
01.01.1	Cite specific textual evidence to support analysis of science and technical texts, attending to the precise details of explanations or descriptions.
LAFS.910.RST.1.1		
01.01.2	Determine the central ideas or conclusions of a text; trace the text’s explanation or depiction of a complex process, phenomenon, or concept; provide an accurate summary of the text.
LAFS.910.RST.1.2		
01.01.3	Follow precisely a complex multistep procedure when carrying out experiments, taking measurements, or performing technical tasks, attending to special cases or exceptions defined in the text.
LAFS.910.RST.1.3		
01.02	Craft and Structure		
01.02.1	Determine the meaning of symbols, key terms, and other domain-specific words and phrases as they are used in a specific scientific or technical context relevant to grades 9–10 texts and topics.
LAFS.910.RST.2.4		
01.02.2	Analyze the structure of the relationships among concepts in a text, including relationships among key terms (e.g., force, friction, reaction force, energy).
LAFS.910.RST.2.5		
01.02.3	Analyze the author’s purpose in providing an explanation, describing a procedure, or discussing an experiment in a text, defining the question the author seeks to address.
LAFS.910.RST.2.6		
01.03	Integration of Knowledge and Ideas		
01.03.1	Translate quantitative or technical information expressed in words in a text into visual form (e.g., a table or chart) and translate information expressed visually or mathematically (e.g., in an equation) into words.
LAFS.910.RST.3.7		
01.03.2	Assess the extent to which the reasoning and evidence in a text support the author’s claim or a recommendation for solving a scientific or technical problem.
LAFS.910.RST.3.8		
01.03.3	Compare and contrast findings presented in a text to those from other sources (including their own experiments), noting when the findings support or contradict previous explanations or accounts.
LAFS.910.RST.3.9		
01.04	Range of Reading and Level of Text Complexity		
01.04.1	By the end of grade 9, read and comprehend literature [informational texts, history/social studies texts, science/technical texts] in the grades 9–10 text complexity band proficiently, with scaffolding as needed at the high end of the range.
01.04.2	By the end of grade 10, read and comprehend literature [informational texts, history/social studies texts, science/technical texts] at the high end of the grades 9–10 text complexity band independently and proficiently.
LAFS.910.RST.4.10		
02.0	Methods and strategies for using Florida Standards for grades 09-10 writing in Technical Subjects for student success in .NET Application Development & Programming.		
02.01	Text Types and Purposes		
02.01.1	Write arguments focused on discipline-specific content.
LAFS.910.WHST.1.1		
02.01.2	Write informative/explanatory texts, including the narration of historical events, scientific procedures/experiments, or technical processes.
LAFS.910.WHST.1.2		
02.02	Production and Distribution of Writing		
02.02.1	Produce clear and coherent writing in which the development, organization, and style are appropriate to task, purpose, and audience.
LAFS.910.WHST.2.4		
02.02.2	Develop and strengthen writing as needed by planning, revising, editing, rewriting, or trying a new approach, focusing on addressing what is most significant for a specific purpose and audience.
LAFS.910.WHST.2.5		
02.02.3	Use technology, including the Internet, to produce, publish, and update individual or shared writing products, taking advantage of technology’s capacity to link to other information and to display information flexibly and dynamically.
LAFS.910.WHST.2.6		
02.03	Research to Build and Present Knowledge		
02.03.1	Conduct short as well as more sustained research projects to answer a question (including a self-generated question) or solve a problem; narrow or broaden the inquiry when appropriate; synthesize multiple sources on the subject, demonstrating understanding of the subject under investigation.
LAFS.910.WHST.3.7		
02.03.2	Gather relevant information from multiple authoritative print and digital sources, using advanced searches effectively; assess the usefulness of each source in answering the research question; integrate information into the text selectively to maintain the flow of ideas, avoiding plagiarism and following a standard format for citation.
LAFS.910.WHST.3.8		
02.03.3	Draw evidence from informational texts to support analysis, reflection, and research.
LAFS.910.WHST.3.9		
02.04	Range of Writing		
02.04.1	Write routinely over extended time frames (time for reflection and revision) and shorter time frames (a single sitting or a day or two) for a range of discipline-specific tasks, purposes, and audiences.
LAFS.910.WHST.4.10		
03.0	Methods and strategies for using Florida Standards for grades 09-10 Mathematical Practices in Technical Subjects for student success in .NET Application Development & Programming.		
03.01	Make sense of problems and persevere in solving them.
MAFS.K12.MP.1.1		
03.02	Reason abstractly and quantitatively.
MAFS.K12.MP.2.1		
03.03	Construct viable arguments and critique the reasoning of others.
MAFS.K12.MP.3.1		
03.04	Model with mathematics.
MAFS.K12.MP.4.1		
03.05	Use appropriate tools strategically.
MAFS.K12.MP.5.1		
03.06	Attend to precision.
MAFS.K12.MP.6.1		
03.07	Look for and make use of structure.
MAFS.K12.MP.7.1		
03.08	Look for and express regularity in repeated reasoning.
MAFS.K12.MP.8.1		

Abbreviations: 
FS-M/LA = Florida Standards for Math/Language Arts
NGSSS-Sci = Next Generation Sunshine State Standards for Science

CTE Standards and Benchmarks	FS-M/LA	NGSSS-Sci	
18.0	Explore the characteristics, tasks, work attributes, options, and tools associated with a career in software development. – The student will be able to:			
18.01	Describe the evolution of programming and programming careers.  	MAFS.912.A-REI.1.1		
18.02	Identify tasks performed by programmers.	MAFS.912.N-Q.1.1		
18.03	Describe how businesses use computer programming to solve business problems.	MAFS.912.A-REI.1.1		
18.04	Investigate job opportunities in the programming field.			
18.05	Explain different specializations and the related training in the computer programming field.	MAFS.912.A-REI.1.1
MAFS.912.G-SRT.1.2		
18.06	Explain the need for continuing education and training of computer programmers.	MAFS.912.A-REI.1.1		
18.07	Explain enterprise software systems and how they impact business.	MAFS.912.A-REI.1.1		
18.08	Describe ethical responsibilities of computer programmers.	MAFS.912.A-REI.1.1		
18.09	Describe the role of customer support to software program quality.	MAFS.912.A-REI.1.1		
18.10	Identify credentials and certifications that may improve employability for a computer programmer.	MAFS.912.N-Q.1.1		
18.11	Identify devices, tools, and other environments for which programmers may develop software.	MAFS.912.G-CO.4.12; 
MAFS.912.N-Q.1.1		
19.0	Demonstrate an understanding of the characteristics, use, and selection of numerical, non-numerical, and logical data types. – The student will be able to:			
19.01	Identify the characteristics (e.g., size, limits) and uses of different numerical and non-numerical data types.	MAFS.912.N-Q.1.2		
19.02	Explain the types and uses of variables in programs.	MAFS.912.A-REI.1.1; 
MAFS.912.A-SSE.1.1		
19.03	Determine the best data type to use for given programming problems.	MAFS.912.A-REI.1.1		
19.04	Identify the types of operations that can be performed on different data types.	MAFS.912.N-Q.1.1		
19.05	Evaluate arithmetic and logical expressions using appropriate operator precedence.	MAFS.912.A-REI.1.1; 
MAFS.912.N-Q.1.1		
19.06	Explain how computers store different data types in memory.	MAFS.912.A-REI.1.1		
19.07	Demonstrate the difference between "data" and "information".			
19.08	Use different number systems to represent data.	MAFS.912.N-Q.1.1		
19.09	Explain how national and international standards (i.e., ASCII, UNICODE) are used to represent non-numerical data.	MAFS.912.A-REI.1.1		
19.10	Use Boolean logic to perform logical operations.			
20.0	Distinguish between iterative and non-iterative program control structures–The student will be able to:			
20.01	Explain non-iterative programming structures (e.g., if, if/else and their uses.	MAFS.912.A-REI.1.1		
20.02	Explain iterative programming structures (e.g., while, do/while) and their uses.	MAFS.912.A-REI.1.1		
21.0	Differentiate among high level, low level, procedural, object-oriented, compiled, interpreted, and translated programming languages. – The student will be able to:			
21.01	Identify the characteristics, uses, and limits of low-level programming languages.	MAFS.912.N-Q.1.1		
21.02	Identify the characteristics, uses, and limits of high-level programming languages.	MAFS.912.N-Q.1.1		
21.03	Identify the characteristics, uses, and limits of rapid development programming languages.	MAFS.912.N-Q.1.1		
21.04	Describe object-oriented concepts.	MAFS.912.A-REI.1.1		
21.05	Explain the characteristics of procedural and object-oriented programming languages.	MAFS.912.A-REI.1.1		
21.06	Compare and contrast programming languages that are compiled (e.g., C++), interpreted (e.g., Basic, HTML), and translated (e.g., Java).	MAFS.912.G-SRT.1.2		
22.0	Describe the processes, methods, and conventions for software development and maintenance. – The student will be able to:			
22.01	Describe and explain tools used in software development.	MAFS.912.A-REI.1.1; 
MAFS.912.G-CO.4.12		
22.02	Describe the stages of the program life cycle.	MAFS.912.A-REI.1.1		
22.03	Compare and contrast alternatives methods of program development (e.g., rapid prototyping, waterfall).	MAFS.912.G-SRT.1.2		
22.04	List and explain the steps in the program development cycle.	MAFS.912.A-REI.1.1		
22.05	Describe different types of documentation used in the program development cycle (e.g., requirements document, program design documents, test plans).	MAFS.912.N-Q.1.1		
22.06	Describe the on-going need for program maintenance.	MAFS.912.A-REI.1.1		
22.07	Describe different methods companies use to facilitate program updates for enhancements and defects (e.g., how customers receive patches, updates, new versions, upgrades).	MAFS.912.A-REI.1.1; 
MAFS.912.G-SRT.1.2		
22.08	Describe different methods used to facilitate version control and change management.	MAFS.912.A-REI.1.1; 
MAFS.912.G-SRT.1.2		
23.0	Explain the types, uses, and limitations of testing for ensuring quality control. – The student will be able to:			
23.01	Explain the uses and limits of testing in ensuring program quality.	MAFS.912.A-REI.1.1	SC.912.N.1.1	
23.02	Explain testing performed at different stages of the program development cycle (e.g. unit testing, system testing, user acceptance testing).	MAFS.912.A-REI.1.1; 
MAFS.912.A-CED.1.1		
23.03	Describe data and the use of test plans/scripts to be used in program testing.	MAFS.912.A-REI.1.1	SC.912.N.1.1	
23.04	Describe and identify types of programming errors (e.g., syntactical, logic, usability, requirements mismatch).	MAFS.912.A-REI.1.1; 
MAFS.912.N-Q.1.1		
23.05	Identify the data to be used for boundary conditions.	MAFS.912.N-Q.1.1		
23.06	Explain different types of testing (e.g., usability, automated, regression) and testing tools.	MAFS.912.A-REI.1.1; 
MAFS.912.G-CO.4.12	SC.912.N.1.1	
24.0	Create a program design document using Unified Modeling Language (UML) or other common design tool. – The student will be able to:			
24.01	Describe different design methodologies and their uses (e.g., object-oriented design, structured design, and rapid application development).	MAFS.912.A-REI.1.1	SC.912.N.1.1, 
SC.912.N.3.5	
24.02	Describe tools for developing a program design (e.g., UML, flowcharts, design documents, pseudocode).	MAFS.912.A-REI.1.1	SC.912.N.1.1	
24.03	Explain the role of existing libraries and packages in facilitating programmer productivity.	MAFS.912.A-REI.1.1		
24.04	Participate and contribute to a design review of a program design developed using a common program design tool (e.g., UML, flowcharts, design documents, pseudocode).	MAFS.912.A-CED.1.1	SC.912.N.1.1,
SC.912.N.1.3,
SC.912.N.2.4,
SC.912.N.4.2	
24.05	Write a program design document using UML or other standard design methodology.	MAFS.912.A-CED.1.1		
24.06	Define input and output for a program module using UML or other standard design methodology.	MAFS.912.F-IF.1.1		
25.0	Describe information security risks, threats, and strategies associated with software development. – The student will be able to:			
25.01	Explain the security risks to personal and business computer users.	MAFS.912.S-IC.2.6		
25.02	Identify different types of threats to computer systems.	MAFS.912.N-Q.1.1		
25.03	Identify methods to protect against different threats to computer systems.	MAFS.912.N-Q.1.1		
25.04	Understand the importance of a disaster/emergency response plan.			
25.05	Identify alternative methods for data storage and backup (e.g., mirroring, fail-over, high availability, types of backups).	MAFS.912.N-Q.1.1		
26.0	Use oral and written communication skills in creating, expressing and interpreting information and ideas. – The student will be able to:			
26.01	Select and employ appropriate communication concepts and strategies to enhance oral and written communication in the workplace.		SC.912.N.1.9,
SC.912.N.1.10	
26.02	Locate, organize and reference written information from various sources.		SC.912.N.1.1.6	
26.03	Design, develop and deliver formal and informal presentations using appropriate media to engage and inform diverse audiences.	MAFS.912.A-CED.1.1	SC.912.N.1.1.9,
SC.912.N.1.1.10	
26.04	Interpret verbal and nonverbal cues/behaviors that enhance communication.	MAFS.912.G-SRT.1.2	SC.912.N.1.1.5,
SC.912.N.1.1.6,
SC.912.N.1.1.8	
26.05	Apply active listening skills to obtain and clarify information.			
26.06	Develop and interpret tables and charts to support written and oral communications.	MAFS.912.A-REI.1.1; MAFS.912.A-CED.1.1 MAFS.912.F-IF.3.9	SC.912.N.1.1.6-11	
26.07	Exhibit public relations skills that aid in achieving customer satisfaction.			
27.0	Solve problems using critical thinking skills, creativity and innovation. – The student will be able to:			
27.01	Employ critical thinking skills independently and in teams to solve problems and make decisions.	MAFS.912.G-CO.3.9	SC.912.N.1.1	
27.02	Employ critical thinking and interpersonal skills to resolve conflicts.	MAFS.912.G-CO.3.9	SC.912.N.1.3,
SC.912.N.4.1	
27.03	Identify and document workplace performance goals and monitor progress toward those goals. 	MAFS.912.N-Q.1.1		
27.04	Conduct technical research to gather information necessary for decision-making.	MAFS.912.S-IC.2.6;
MAFS.912.S-IC.1.1	SC.912.N.1.3,
SC.912.N.1.1.5	
28.0	Use information technology tools. – The student will be able to:			
28.01	Use personal information management (PIM) applications to increase workplace efficiency.			
28.02	Employ technological tools to expedite workflow including word processing, databases, reports, spreadsheets, multimedia presentations, electronic calendar, contacts, email, and internet applications.	MAFS.912.G-CO.4.12		
28.03	Employ computer operations applications to access, create, manage, integrate, and store information.	MAFS.912.Z-CED.1.1		
28.04	Employ collaborative/groupware applications to facilitate group work.			

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:	Procedural Programming
Course Number:	9007220
Course Credit:	1

Course Description:

This course continues the study of computer programming concepts with a focus on the creation of software applications employing procedural programming techniques.  After successful completion of Programming Foundations and Procedural Programming, students will have met Occupational Completion Point B, Computer Programmer Assistant, SOC Code 15-1131.

Florida Standards	Correlation to CTE Program Standard #	
29.0	Methods and strategies for using Florida Standards for grades 11-12 reading in Technical Subjects for student success in .NET Application Development & Programming.		
29.01	Key Ideas and Details		
29.01.1	Cite specific textual evidence to support analysis of science and technical texts, attending to important distinctions the author makes and to any gaps or inconsistencies in the account.
LAFS.1112.RST.1.1		
29.01.2	Determine the central ideas or conclusions of a text; trace the text’s explanation or depiction of a complex process, phenomenon, or concept; provide an accurate summary of the text.
LAFS.1112.RST.1.2		
29.01.3	Follow precisely a complex multistep procedure when carrying out experiments, taking measurements, or performing technical tasks, attending to special cases or exceptions defined in the text.
LAFS.1112.RST.1.3		
29.02	Craft and Structure		
29.02.1	Determine the meaning of symbols key terms, and other domain-specific words and phrases as they are used in a specific scientific or technical context relevant to grades 11–12 texts and topics.
LAFS.1112.RST.2.4		
29.02.2	Analyze how the text structures information or ideas into categories or hierarchies, demonstrating understanding of the information or ideas.
LAFS.1112.RST.2.5		
29.02.3	Analyze the author’s purpose in providing an explanation, describing a procedure, or discussing an experiment in a text, identifying important issues that remain unresolved.
LAFS.1112.RST.2.6		
29.03	Integration of Knowledge and Ideas		
29.03.1	Integrate and evaluate multiple sources of information presented in diverse formats and media (e.g. quantitative data, video, multimedia) in order to address a question or solve a problem.
LAFS.1112.RST.3.7		
29.03.2	Evaluate the hypotheses, data, analysis, and conclusions in a science or technical text, verifying the data when possible and corroborating or challenging conclusions with other sources of information.
LAFS.1112.RST.3.8		
29.03.3	Synthesize information from a range of sources (e.g., texts, experiments, simulations) into a coherent understanding of a process, phenomenon, or concept, resolving conflicting information when possible.
LAFS.1112.RST.3.9		
29.04	Range of Reading and Level of Text Complexity		
29.04.1	By the end of grade 11, read and comprehend literature [informational texts, history/social studies texts, science/technical texts] in the grades 11–CCR text complexity band proficiently, with scaffolding as needed at the high end of the range.
29.04.2	By the end of grade 12, read and comprehend literature [informational texts, history/social studies texts, science/technical texts] at the high end of the grades 11–CCR text complexity band independently and proficiently.
LAFS.1112.RST.4.10		
30.0	Methods and strategies for using Florida Standards for grades 11-12 writing in Technical Subjects for student success in .NET Application Development & Programming.		
30.01	Text Types and Purposes		
30.01.1	Write arguments focused on discipline-specific content.
LAFS.1112.WHST.1.1		
30.01.2	Write informative/explanatory texts, including the narration of historical events, scientific procedures/experiments, or technical processes.
LAFS.1112.WHST.1.2		
30.02	Production and Distribution of Writing		
30.02.1	Produce clear and coherent writing in which the development, organization, and style are appropriate to task, purpose, and audience.
LAFS.1112.WHST.2.4		
30.02.2	Develop and strengthen writing as needed by planning, revising, editing, rewriting, or trying a new approach, focusing on addressing what is most significant for a specific purpose and audience.
LAFS.1112.WHST.2.5		
30.02.3	Use technology, including the Internet, to produce, publish, and update individual or shared writing products in response to ongoing feedback, including new arguments or information.
LAFS.1112.WHST.2.6		
30.03	Research to Build and Present Knowledge		
30.03.1	Conduct short as well as more sustained research projects to answer a question (including a self-generated question) or solve a problem; narrow or broaden the inquiry when appropriate; synthesize multiple sources on the subject, demonstrating understanding of the subject under investigation.
LAFS.1112.WHST.3.7		
30.03.2	Gather relevant information from multiple authoritative print and digital sources, using advanced searches effectively; assess the strengths and limitations of each source in terms of the specific task, purpose, and audience; integrate information into the text selectively to maintain the flow of ideas, avoiding plagiarism and overreliance on any one source and following a standard format for citation.
LAFS.1112.WHST.3.8		
30.03.3	Draw evidence from informational texts to support analysis, reflection, and research.
LAFS.1112.WHST.3.9		
30.04	Range of Writing		
30.04.1	Write routinely over extended time frames (time for reflection and revision) and shorter time frames (a single sitting or a day or two) for a range of discipline-specific tasks, purposes, and audiences.
LAFS.1112.WHST.4.10		
31.0	Methods and strategies for using Florida Standards for grades 11-12 Mathematical Practices in Technical Subjects for student success in .NET Application Development & Programming.		
31.01	Make sense of problems and persevere in solving them.
MAFS.K12.MP.1.1		
31.02	Reason abstractly and quantitatively.
MAFS.K12.MP.2.1		
31.03	Construct viable arguments and critique the reasoning of others.
MAFS.K12.MP.3.1		
31.04	Model with mathematics.
MAFS.K12.MP.4.1		
31.05	Use appropriate tools strategically.
MAFS.K12.MP.5.1		
31.06	Attend to precision.
MAFS.K12.MP.6.1		
31.07	Look for and make use of structure.
MAFS.K12.MP.7.1		
31.08	Look for and express regularity in repeated reasoning.
MAFS.K12.MP.8.1		

Abbreviations: 
FS-M/LA = Florida Standards for Math/Language Arts
NGSSS-Sci = Next Generation Sunshine State Standards for Science

CTE Standards and Benchmarks	FS-M/LA	NGSSS-Sci	
32.0	Design a computer program to meet specific physical, operational, and interaction criteria. – The student will be able to:			
32.01	Choose appropriate data types depending on the needs of the program.	MAFS.912.N-Q.1.1		
32.02	Define appropriate user interface prompts for clarity and usability (e.g., user guidance for data ranges, data types).	MAFS.912.N-Q.1.2		
32.03	Design and develop program that are designed for efficiency (e.g., less memory usage, less inputs/outputs, faster processing).	MAFS.912.A-REI.1.1		
32.04	Identify the software environment required for a program to run (e.g., operating system required, mobile, Web-based, desktop, delivery method).	MAFS.912.N-Q.1.1		
32.05	Identify the tools required to develop a program (e.g., editors, compilers, linkers, integrated development environments, application programming interfaces (APIs), libraries). 	MAFS.912.N-Q.1.1		
33.0	Create and document a computer program that uses a variety of internal and control structures for manipulating varied data types. – The student will be able to:			
33.01	Use appropriate naming conventions to define program variables and modules (methods, functions).	MAFS.912.N-Q.1.1		
33.02	Use a program editor to write the source code for a program.	MAFS.912.A-REI.1.1		
33.03	Write programs that use selection structures (e.g., if, if/else).	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.04	Write programs that use repetition structures (e.g., while, do/while).	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.05	Write programs that use nested structures.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.06	Use internal documentation (e.g., single-line and multi-line comments, program headers, module descriptions, meaningful variable and function/module names) to document a program according to accepted standards.			
33.07	Compile and run programs.	MAFS.912.A-REI.1.1		
33.08	Write programs that use standard arithmetic operators with different numerical data types.	MAFS.912.N-Q.1.1; 
MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2 
MAFS.912.A-REI.1.2,
MAFS.912.A-REI.2.3		
33.09	Write programs that use standard logic operators.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.10	Write programs that use a variety of common data types.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2 MAFS.912.N-Q.1.1,
MAFS.912.A-REI.1.2,
MAFS.912.A-REI.2.3		
33.11	Write programs that perform data conversion between standard data types.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.12	Write programs that define, use, search, and sort arrays.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.13	Write programs that use user-defined data types.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
33.14	Demonstrate understanding and use of appropriate variable scope.	MAFS.912.A-REI.1.1		
34.0	Create and document an interactive computer program that employs functions, subroutines, or methods to receive, validate, and process user input. – The student will be able to:			
34.01	Write programs that perform user input and output.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.02	Write programs that validate user input (e.g., range checking, data formats, valid/invalid characters).	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.03	Write program modules such as functions, subroutines, or methods.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.04	Write program modules that accept arguments.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.05	Write program modules that return values.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.06	Write program modules that validate arguments and return error codes.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.07	Write interactive programs.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.08	Write programs that use standard libraries to enhance program function.	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
34.09	Participate in a peer code review to verify program functionality, programming styles, program usability, and adherence to common programming standards.			
35.0	Create a unit test plan, implement the plan, and report the results of testing. – The student will be able to:			
35.01	Write a unit test plan that identifies the input data and expected results for program tests.	MAFS.912.A-REI.1.1	SC.912.N.1.1	
35.02	Test and debug programs, including programs written by others.	MAFS.912.A-REI.1.1		
35.03	Write a test report that identifies the results of testing.	MAFS.912.A-REI.1.1	SC.912.N.1.1	
35.04	Trace through the function of a program to ensure valid operation.	MAFS.912.N-Q.1.1		
35.05	Identify the system resources used by the program (e.g., memory, disk space, execution time, external devices). 	MAFS.912.N-Q.1.1 MAFS.912.N-Q.1.2		
35.06	Create a disaster/emergency response plan for a computer system. 	MAFS.912.A-CED.1.1;
MAFS.912.A-CED.1.2		
36.0	Demonstrate leadership and teamwork skills needed to accomplish team goals and objectives. – The student will be able to:			
36.01	Employ leadership skills to accomplish organizational goals and objectives.			
36.02	Establish and maintain effective working relationships with others in order to accomplish objectives and tasks.			
36.03	Conduct and participate in meetings to accomplish work tasks.			
37.0	Describe the importance of professional ethics and legal responsibilities. – The student will be able to:			
37.01	Evaluate and justify decisions based on ethical reasoning.	MAFS.912.S-IC.2.6		
37.02	Evaluate alternative responses to workplace situations based on personal, professional, ethical, legal responsibilities, and employer policies.	MAFS.912.S-IC.2.6		
37.03	Identify and explain personal and long-term consequences of unethical or illegal behaviors in the workplace.	MAFS.912.S-IC.2.6;
MAFS.912.A-REI.1.1		

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:	Object-Oriented Programming Fundamentals
Course Number:	9007230
Course Credit:	1

Course Description:

This course continues the study of computer programming concepts with a focus on the creation of software applications employing object-oriented programming techniques.  After successful completion of Object-Oriented Programming Fundamentals, students will have met Occupational Completion Point C, Computer Programmer, SOC Code 15-1131.

Florida Standards	Correlation to CTE Program Standard #	
29.0	Methods and strategies for using Florida Standards for grades 11-12 reading in Technical Subjects for student success in .NET Application Development & Programming.		
29.01	Key Ideas and Details		
29.01.1	Cite specific textual evidence to support analysis of science and technical texts, attending to important distinctions the author makes and to any gaps or inconsistencies in the account.
LAFS.1112.RST.1.1		
29.01.2	Determine the central ideas or conclusions of a text; trace the text’s explanation or depiction of a complex process, phenomenon, or concept; provide an accurate summary of the text.
LAFS.1112.RST.1.2		
29.01.3	Follow precisely a complex multistep procedure when carrying out experiments, taking measurements, or performing technical tasks, attending to special cases or exceptions defined in the text.
LAFS.1112.RST.1.3		
29.02	Craft and Structure		
29.02.1	Determine the meaning of symbols key terms, and other domain-specific words and phrases as they are used in a specific scientific or technical context relevant to grades 11–12 texts and topics.
LAFS.1112.RST.2.4		
29.02.2	Analyze how the text structures information or ideas into categories or hierarchies, demonstrating understanding of the information or ideas.
LAFS.1112.RST.2.5		
29.02.3	Analyze the author’s purpose in providing an explanation, describing a procedure, or discussing an experiment in a text, identifying important issues that remain unresolved.
LAFS.1112.RST.2.6		
29.03	Integration of Knowledge and Ideas		
29.03.1	Integrate and evaluate multiple sources of information presented in diverse formats and media (e.g. quantitative data, video, multimedia) in order to address a question or solve a problem.
LAFS.1112.RST.3.7		
29.03.2	Evaluate the hypotheses, data, analysis, and conclusions in a science or technical text, verifying the data when possible and corroborating or challenging conclusions with other sources of information.
LAFS.1112.RST.3.8		
29.03.3	Synthesize information from a range of sources (e.g., texts, experiments, simulations) into a coherent understanding of a process, phenomenon, or concept, resolving conflicting information when possible.
LAFS.1112.RST.3.9		
29.04	Range of Reading and Level of Text Complexity		
29.04.1	By the end of grade 11, read and comprehend literature [informational texts, history/social studies texts, science/technical texts] in the grades 11–CCR text complexity band proficiently, with scaffolding as needed at the high end of the range.
29.04.2	By the end of grade 12, read and comprehend literature [informational texts, history/social studies texts, science/technical texts] at the high end of the grades 11–CCR text complexity band independently and proficiently.
LAFS.1112.RST.4.10		
30.0	Methods and strategies for using Florida Standards for grades 11-12 writing in Technical Subjects for student success in .NET Application Development & Programming.		
30.01	Text Types and Purposes		
30.01.1	Write arguments focused on discipline-specific content.
LAFS.1112.WHST.1.1		
30.01.2	Write informative/explanatory texts, including the narration of historical events, scientific procedures/experiments, or technical processes.
LAFS.1112.WHST.1.2		
30.02	Production and Distribution of Writing		
30.02.1	Produce clear and coherent writing in which the development, organization, and style are appropriate to task, purpose, and audience.
LAFS.1112.WHST.2.4		
30.02.2	Develop and strengthen writing as needed by planning, revising, editing, rewriting, or trying a new approach, focusing on addressing what is most significant for a specific purpose and audience.
LAFS.1112.WHST.2.5		
30.02.3	Use technology, including the Internet, to produce, publish, and update individual or shared writing products in response to ongoing feedback, including new arguments or information.
LAFS.1112.WHST.2.6		
30.03	Research to Build and Present Knowledge		
30.03.1	Conduct short as well as more sustained research projects to answer a question (including a self-generated question) or solve a problem; narrow or broaden the inquiry when appropriate; synthesize multiple sources on the subject, demonstrating understanding of the subject under investigation.
LAFS.1112.WHST.3.7		
30.03.2	Gather relevant information from multiple authoritative print and digital sources, using advanced searches effectively; assess the strengths and limitations of each source in terms of the specific task, purpose, and audience; integrate information into the text selectively to maintain the flow of ideas, avoiding plagiarism and overreliance on any one source and following a standard format for citation.
LAFS.1112.WHST.3.8		
30.03.3	Draw evidence from informational texts to support analysis, reflection, and research.
LAFS.1112.WHST.3.9		
30.04	Range of Writing		
30.04.1	Write routinely over extended time frames (time for reflection and revision) and shorter time frames (a single sitting or a day or two) for a range of discipline-specific tasks, purposes, and audiences.
LAFS.1112.WHST.4.10		
31.0	Methods and strategies for using Florida Standards for grades 11-12 Mathematical Practices in Technical Subjects for student success in .NET Application Development & Programming.		
31.01	Make sense of problems and persevere in solving them.
MAFS.K12.MP.1.1		
31.02	Reason abstractly and quantitatively.
MAFS.K12.MP.2.1		
31.03	Construct viable arguments and critique the reasoning of others.
MAFS.K12.MP.3.1		
31.04	Model with mathematics.
MAFS.K12.MP.4.1		
31.05	Use appropriate tools strategically.
MAFS.K12.MP.5.1		
31.06	Attend to precision.
MAFS.K12.MP.6.1		
31.07	Look for and make use of structure.
MAFS.K12.MP.7.1		
31.08	Look for and express regularity in repeated reasoning.
MAFS.K12.MP.8.1		

Abbreviations: 
FS-M/LA = Florida Standards for Math/Language Arts
NGSSS-Sci = Next Generation Sunshine State Standards for Science

CTE Standards and Benchmarks	FS-M/LA	NGSSS-Sci	
38.0	Explain key concepts that distinguish object-oriented programming from procedural programming. – The student will be able to:			
38.01	Demonstrate the understanding and use of classes, objects, attributes, and behaviors. 	MAFS.912.A-REI.1.1		
38.02	Demonstrate the understanding and use of inheritance.	MAFS.912.A-REI.1.1		
38.03	Demonstrate the understanding and use of data encapsulation.	MAFS.912.A-REI.1.1		
38.04	Demonstrate the understanding and use of polymorphism.	MAFS.912.A-REI.1.1		
39.0	Create a project plan for an object-oriented programming project that defines requirements, structural design, time estimates, and testing elements. – The student will be able to:			
39.01	Write a project plan for completion of a project that includes gathering program requirements, developing the program, and testing it.	MAFS.912.A-REI.1.1		
39.02	Write a program requirements document that identifies business purpose, functional requirements, system requirements, and other common components of a requirements document.	MAFS.912.A-REI.1.1		
39.03	Design an object-oriented program using UML or another standard design methodology.	MAFS.912.H-CED.1.1		
39.04	Work with other team members to develop a project plan for a program.	MAFS.912.A-REI.1.1		
39.05	Work with other team members to write a design document for a program with multiple functions and shared data.	MAFS.912.A-REI.1.1		
39.06	Participate in design meetings that review program design documents for conformance to program requirements.	MAFS.912.S.IC.2.6		
39.07	Estimate the time to develop a program or module.	MAFS.912.S.IC.2.6		
40.0	Design, document, and create object-oriented computer programs. – The student will be able to:			
40.01	Compare and contrast recursive functions to other iterative methods.	MAFS.912.G-SRT.1.2		
40.02	Understand the implementation of character strings in the programming language.			
40.03	Write programs that perform string processing (e.g., string manipulation, string compares, concatenation).	MAFS.912.A-REI.1.1		
40.04	Write programs that use user-defined data types.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.05	Write object-oriented programs that use inheritance.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.06	Write object-oriented programs that use polymorphism.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.07	Develop class constructors.	MAFS.912.S-MD.1.3		
40.08	Write programs that define and use program constants.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.09	Write programs that perform error handling.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.10	Participate in program code review meetings to evaluate program code for validity, quality, performance, data integrity, and conformance to program design documents.	MAFS.912.S-IC.2.6		
40.11	Write programs that perform dynamic memory allocation. 	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.12	Write programs that perform effective management of dynamically allocated memory.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.13	Update a program module to implement enhancements or corrections and demonstrate appropriate documentation (internal and external) related to version control. 	MAFS.912.A-REI.1.1		
40.14	Write programs that use complex data structures (e.g., stacks, queues, trees, linked list).	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.15	Write programs that are event-driven.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.16	Write programs that perform file input and output (i.e., sequential and random access file input/output).	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2		
40.17	Perform basic database commands including connect, open, select, and close.	MAFS.912.A-REI.1.1		
41.0	Design a unit test plan for an object-oriented computer program, test and debug the program, and report the results. – The student will be able to:			
41.01	Develop a test plan for an object-oriented program.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2	SC.912.N.1.1	
41.02	Write test plans for event-driven programs.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2	SC.912.N.1.1	
41.03	Write test plans for programs that perform file input and output.	MAFS.912.A-CED.1.1; MAFS.912.A-CED.1.2	SC.912.N.1.1	
41.04	Perform test and debug activities on object-oriented programs, including those written by someone else.	MAFS.912.A-REI.1.1		
41.05	Perform test and debug activities on an event-driven program.	MAFS.912.A-REI.1.1		
41.06	Perform test and debug activities on programs that perform file input and output and verify the correctness of output files.	MAFS.912.A-REI.1.1		
41.07	Document the findings of testing in a test report.	MAFS.912.S-CP.1.4	SC.912.N.1.1	

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:	.NET Application Development Foundation
Course Number:	9007410
Course Credit:	1

Course Description:

This course continues the study of computer programming concepts specific to the Internet and Internet-based software applications.  

Abbreviations: 
FS-M/LA = Florida Standards for Math/Language Arts
NGSSS-Sci = Next Generation Sunshine State Standards for Science

CTE Standards and Benchmarks	FS-M/LA	NGSSS-Sci	
42.0	Develop an awareness of the changes taking place in the information age and how they fit into an evolving society. – The student will be able to:			
42.01	Cite examples of jobs, salary, and opportunities he/she will have as a .NET programmer.			
42.02	Describe the role a database plays in a business.			
42.03	Explain the value of middleware, such as the .NET framework, in developing software applications.			
42.04	Understand the importance of clear communication when discussing business informational requirements.			
43.0	Understand .NET primitive data types and their uses. – The student will be able to:			
43.01	Describe how variables are used in programs.			
43.02	Identify the .NET built-in value types, their uses, and the ranges of values supported by each type.			
43.03	Identify the default values for built-in value types.			
43.04	Write statements that declare and initialize variables.			
43.05	Write statements that assign literal values to numeric types.			
43.06	Identify the .NET built-in reference types.			
43.07	Write statements that assign string literals to string types.			
43.08	Explain the memory size requirements for the various data storage types.			
43.09	Identify which types are stored on the heap and which are stored on the stack.			
43.10	Identify which data type should be used for a given purpose in a program.			
43.11	Write statements that create variables with values that cannot be changed (i.e., const, final).			
43.12	Identify the syntax for declaring and initializing each of the built-in data types.			
43.13	Differentiate between implicit and explicit data type conversions.			
43.14	Describe when implicit data type conversions take place.			
43.15	Write statements that use explicit type conversion.			
43.16	List the drawbacks of implicit data type conversions.			
43.17	Compare and contrast boxing and unboxing.			
43.18	Describe the scope of a variable.			
43.19	Describe how the compiler uses scope to distinguish between variables with the same name.			
44.0	Describe the types and characteristics of lexical units in the .NET programming language. – The student will be able to:			
44.01	Describe the types of lexical units (e.g., keywords, directives, operators).			
44.02	Describe identifiers and identify valid and invalid identifiers.			
44.03	Describe and identify reserved words, delimiters, literals, and comments.			
45.0	Construct statements that use various .NET operators. – The student will be able to:			
45.01	Construct statements using arithmetic operators.			
45.02	Construct statements using relational operators.			
45.03	Construct and use statements using logical operators.			
45.04	Construct and use statements using assignment operators.			
45.05	Construct and execute statements using operator precedence.			
45.06	Construct and execute statements using methods and fields of the Math class.			
46.0	Construct and use .NET selection control structures. – The student will be able to:			
46.01	Construct and use an if structure in a program.			
46.02	Construct and use an if/else structure in a program.			
46.03	Construct and use multiple-selection structures (e.g., switch, elseif, select) in programs.			
46.04	Construct and use nested selection structures in a program.			
46.05	Construct and use a conditional operator.			
47.0	Construct and use .NET iterative control structures. – The student will be able to:			
47.01	Describe the types of iterative control structures and their uses.			
47.02	Construct and use a while structures (e.g., while, do/while, do/until) in a program.			
47.03	Construct and use a for structure in a program.			
47.04	Construct and use a control structure that iterates over each item in a collection (e.g., foreach, for/each/next).			
47.05	Describe the limits and advantages of different iterative control structure (i.e., while, do/while, for, foreach or for/each).			
47.06	Construct and use nested structures (iterative and selective) in a program.			
47.07	Write programs that alter the execution of program loops (e.g., break, continue, exit).			
48.0	Construct and use .NET structures for error handling. – The student will be able to:			
48.01	Describe the different types of software errors.			
48.02	Compare and contrast alternatives for handling errors.			
48.03	Write programs that validate user input and handle errors.			
48.04	Explain the correct method for using multiple catch blocks for exceptions.			
48.05	Explain the purpose of the finally block in exception handling.			
48.06	Write programs that handle exceptions using the try/catch/finally structure.			
48.07	Write programs with nested exception handling.			
48.08	Explain the concept of structured exception handling.			
48.09	Identify common exceptions and their causes.			
48.10	Explain the concept of throwing a new exception.			
48.11	Write programs that catch and re-throw exceptions.			
48.12	Write exception handlers that use characteristics of the exception argument in the program.			
49.0	Write .NET programs that define and use user-defined data types, including classes. – The student will be able to:			
49.01	Explain the concept of a user-defined data type.			
49.02	Distinguish between structures and classes.			
49.03	Identify the syntax for declaring enumerations and structures.			
49.04	Write programs that use declare and use enumerations.			
49.05	Write programs that declare and use structures.			
49.06	Explain the characteristics of different class constructs including instance variables, properties, fields, methods, events, object references, and constructors.			
49.07	Write programs that declare and use classes.			
49.08	Distinguish between different types of classes, including base class, derived class, abstract class, and sealed class.			
49.09	Explain the impact of using different access modifiers on user-defined data types.			
49.10	Use access modifiers in a program to control visibility to variables and user-defined data types.			
49.11	Explain the this reference and its uses.			
50.0	Write .NET programs that define and use methods. – The student will be able to:			
50.01	Identify the benefits of using methods.			
50.02	Describe the different types of class methods and their purposes.			
50.03	Create class methods that do and do not return values.			
50.04	Write statements that invoke a method.			
50.05	Create a method using arguments.			
50.06	Invoke a method that has arguments.			
50.07	Describe a method signature.			
50.08	Describe the purpose of overloading methods.			
50.09	Write programs that have overloaded methods.			
50.10	Define methods that have default arguments.			
50.11	Describe the conflict between overloaded methods and default arguments.			
50.12	Explain the impact of using different access modifiers on class methods.			
50.13	Write methods that use argument modifiers (e.g., out, ref, byref, byval, const).			
51.0	Write programs that perform console input and output in a .NET program. – The student will be able to:			
51.01	Use the Console class to read and write data from the console.			
51.02	Write statements that use escape sequences.			
51.03	Write statements that format string and numeric output.			
51.04	Write statements that use the ToString method to output data.			
52.0	Use namespaces in a .NET program. – The student will be able to:			
52.01	Compare and contrast assemblies and namespaces.			
52.02	Describe the use of namespaces in .NET programming.			
52.03	Describe commonly used .NET namespaces (e.g., System, System.IO, System.Collections, System.Drawing).			
52.04	Identify the correct namespace to include for specified classes.			
52.05	Write programs that define a namespace.			
52.06	Create namespaces that abide by standard naming convention.			
53.0	Use arrays in .NET programs. – The student will be able to:			
53.01	Write statements to declare and initialize an array.			
53.02	Demonstrate the use of initializer lists.			
53.03	Write methods that take an array as an argument.			
53.04	Write methods that return an array to the calling method.			
53.05	Write statements to update, and destroy arrays.			
53.06	Explain linear and binary searching.			
53.07	Use the static methods of the Array class to perform searches, binary searches, and sorts.			
53.08	Demonstrate the use of multidimensional arrays.			
53.09	Demonstrate the use of jagged arrays (array of arrays).			
54.0	Write .NET programs that use the object-oriented concept of inheritance. – The student will be able to:			
54.01	Explain the purpose and use of inheritance in object oriented programming.			
54.02	Compare and contrast single and multiple inheritance.			
54.03	Explain the purpose and implementation of classes that cannot serve as a base class (a sealed class).			
54.04	Describe has-a and is-a relationships.			
54.05	Create class hierarchies using inheritance.			
54.06	Declare and use a class derived from another class (implementing an is-a relationship).			
54.07	Declare and use a class where the derived class overrides methods of the base class.			
54.08	Declare and use a class that contains another class as a data member (implementing a has-a relationship).			
54.09	Write statements that determine at run time whether an instance of a class is derived from a specific base class or interface.			
54.10	Write statements that invoke a method of the base class from a derived class.			
54.11	Identify which class methods can be inherited and which cannot.			
54.12	Explain how access modifiers affect the inheritance of class variables and methods.			
55.0	Write .NET programs that use the object-oriented concept of polymorphism. – The student will be able to:			
55.01	Explain the purpose and implementation of classes that cannot be instantiated (an abstract class).			
55.02	Explain the purpose and implementation of virtual class methods that must be overridden by derived classes.			
55.03	Explain the use of abstract classes in enforcing polymorphism.			
55.04	Create an abstract class.			
55.05	Create classes that derive from an abstract class.			
55.06	Create a program that uses polymorphism.			
56.0	Write .NET programs that use the object-oriented concept of encapsulation. – The student will be able to:			
56.01	Define and use classes that use access modifiers (e.g., private, public, protected, internal, internal protected) to provide encapsulation of data. 			
56.02	Explain the restrictions on using accessibility levels.			
56.03	Compare and contrast different types of variable scope, including block, procedure, module/class, and project scope.			
56.04	Compare and contrast different types of method scope, including public, private, protected, friend, and protectedfriend.			
56.05	Write programs that use local variables.			
56.06	Describe the scope of a given variable.			
56.07	Describe how the compiler uses scope to distinguish between variables with the same name.			
56.08	Explain the purpose and use of static classes, variables and methods.			
56.09	Write programs that create and use static classes, variables, and methods.			
57.0	Apply common programming style guidelines and conventions. – The student will be able to:			
57.01	List examples of good programming practices.			
57.02	Insert comments into code.			
57.03	Follow formatting guidelines when writing code.			
57.04	Define guidelines for declaring and initializing variables.			
58.0	Use application life cycle management to develop and maintain .NET programs. – The student will be able to:			
58.01	Describe the stages in the life cycle of an application.			
58.02	Describe tools used to manage each stage in the life cycle of an application and how each is used to ensure the integrity of the product.			
58.03	Describe how the needs of the customer affect the development of an application.			
58.04	Describe the different types of testing that are performed on an application.			
58.05	Describe the role of tools such as UML (Unified Modeling Language) in ensuring the integrity of the application.			
58.06	Describe different types of UML diagrams and guidelines for their use.			
58.07	Develop a class based on its description in a UML diagram.			
58.08	Read an application specification and translate it into a working program.			
58.09	Describe the characteristics of different types of application development (e.g., Agile development).			
58.10	Compare and contrast different methodologies for application development (e.g., Scrum, XP, Crystal, FDD, DSDM).			
58.11	Describe different methods for deploying applications.			
59.0	Use nullable values in a .NET program. – The student will be able to:			
59.01	Describe the use of nullable value types.			
59.02	Describe the use of the null value in .NET programs. 			
59.03	Write statements to declare and initialize nullable value types.			
59.04	Write statements to determine if a nullable value type currently has a value.			

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:	.NET Application Development Applied
Course Number:		9007420
Course Credit:		1

Course Description:

This course continues the study of computer programming concepts specific to the Internet and Internet-based software applications.

Abbreviations: 
FS-M/LA = Florida Standards for Math/Language Arts
NGSSS-Sci = Next Generation Sunshine State Standards for Science

CTE Standards and Benchmarks	FS-M/LA	NGSSS-Sci	
60.0	Use the .NET String and StringBuilder classes in an application. – The student will be able to:			
60.01	Compare and contrast the String and StringBuilder classes.			
60.02	Identify the performance implications of using the String and StringBuilder classes for different purposes.			
60.03	Use the methods of the String class to compare, search, format, split and join strings.			
60.04	Use the methods of the String and StringBuilder classes to find, replace, delete, and insert substrings.			
60.05	Use the methods of the String class to translate a string into uppercase or lowercase.			
60.06	 Use culture information to modify strings.			
61.0	Use .NET classes to perform stream input/output. – The student will be able to:			
61.01	Compare and contrast .NET classes used to perform file input/output (e.g., StreamReader, StreamWriter, StringReader, StringWriter, MemoryStream, BinaryReader, BinaryWriter).			
61.02	Compare and constrast .NET classes used to manipulate files and directories (e.g., Directory, DirectoryInfo, File, FileInfo, Path).			
61.03	Use .NET classes to search, add, and delete directories.			
61.04	Use .NET classes to search, add, and delete files.			
61.05	Use .NET classes to read and write text to a file.			
61.06	Use .NET classes to read and write objects of a variety of types to a file.			
61.07	Use .NET classes to read and write binary data to a file.			
61.08	Compare and contrast .NET classes used to compress data (e.g., GZipStream, DeflateStream).			
61.09	Use .NET classes to read and write compressed data to a file. 			
62.0	Use recursive functions to solve problems in .NET programs. – The student will be able to:			
62.01	Describe the use of recursive methods in solving problems.			
62.02	Describe the difference of iterative and recursive methods.			
62.03	Demonstrate the use of direct recursion.			
62.04	Demonstrate the use of indirect recursion.			
63.0	Write .NET programs that use interfaces. – The student will be able to:			
63.01	Describe interfaces and their use in .NET programming.			
63.02	Declare and use a class that implements a standard interface.			
63.03	Compare and contrast inheritance from a base class and inheritance of an interface.			
63.04	Identify common interfaces and their purposes (e.g., IComparable, IComparer, IEquatable, IDisposable, IFormattable, IConvertible).			
63.05	Define and use a custom interface.			
63.06	Write classes that implement common interfaces (e.g., IComparable, IComparer, IEquatable, IDisposable, IFormattable, IConvertible).			
63.07	Describe the program to interface principle and its benefits.			
64.0	Use .NET collections in applications. – The student will be able to:			
64.01	Compare and contrast common non-generic collection classes, including ArrayList, BitArray, HashTable, Queue, and Stack.			
64.02	Write programs that use common non-generic collection classes.			
64.03	Compare and contrast non-generic collection classes to generic collection classes.			
64.04	Compare and contrast common generic collection classes, including Dictionary, LinkedList, Queue, SortedDictionary, SortedList, and Stack.			
64.05	Write programs that use common generic collection classes.			
64.06	Identify the collection class that is the best choice for different application requirements.			
64.07	Use iterators to access individual members of different types of collections.			
64.08	Use standard methods to add, delete, and modify members of different types of collections.			
64.09	Write statements to access members of a dictionary based on a key.			
64.10	Write statements to determine the existence of members of a dictionary based on a key or a value.			
65.0	Demonstrate knowledge of different types of .NET applications. – The student will be able to:			
65.01	Compare and contrast different types of .NET applications (e.g., Console, Windows Form, WPF, Windows Service, Class Library, Web, database). 			
65.02	Choose the best type of application to develop for a given application scenario.			
65.03	Describe the characteristics and capabilities of a console application.			
65.04	Develop, test, and debug a console application.			
65.05	Write a console application that uses command-line arguments.			
66.0	Demonstrate knowledge of .NET architecture and tools. – The student will be able to:			
66.01	Describe components of the .NET architecture, including the Common Language Runtime (CLR), just-in-time (JIT) compiler, intermediate language (IL).			
66.02	Describe the steps required for a managed assembly to be built and run in the .NET environment.  			
66.03	Compile single-file and multi-file assemblies using command-line tools.			
66.04	Describe common command-line tools used in developing .NET applications (e.g.,Al.exe, Caspol.exe, Ildasm.exe, Makecert.exe, Sn,exe, Gacutil.ext,) and their purposes.			
66.05	Use a signing tool to sign an assembly.			
66.06	Use a disassembly tool to view the classes, members, and methods of an assembly.			
66.07	Describe the garbage collection process.			
67.0	Demonstrate knowledge of Web applications. – The student will be able to:			
67.01	Describe the Web as a platform for applications.			
67.02	Compare and contrast static and dynamic content.			
67.03	Describe how Web pages are loaded to a computer from the Internet including the hardware, software, servers, and protocols required.			
67.04	Compare and contrast server-side and client-side programming.			
67.05	Describe how a Web browser downloads and renders a Web page.			
67.06	Describe options and methodology for Web site deployment.			
67.07	Compare and contrast different Web development technologies, including HTML, CSS, JavaScript, CGI scripts, XML, and ASP.NET.			
67.08	Describe common Web page terminology (e.g., page life cycle, the Web page event model, Web Page state management, cookies, virtual directories). 			
67.09	Define the steps in the page life cycle of an ASP.NET Web page.			
67.10	Describe state management as it related to maintenance of page information.			
67.11	Describe how Web services are accessed from a client application.			
67.12	Describe the PostBack mechanism for posting data to a Web page using ASP.NET.			
67.13	Describe the role of Internet Information Services (IIS).			
67.14	Describe the role of Internet Service Providers (ISP) and the services they provide.			
67.15	Describe Web services and related tools (e.g., Extensible Markup Language (XML), Simple Object Access Protocol (SOAP) and Web Service Definition Language (WSDL). 			
67.16	Describe the characteristics and purposes of Application objects and Session objects that are maintained by the ASP.NET run-time engine.			
67.17	Describe the common ASP.NET events for applications and sessions (i.e., application start, application end, application error, session start, session end).			
67.18	Describe entities that define standards for Internet applications (e.g., WS3, OASIS,     WS-I). 			
68.0	Develop Web pages using HTML, CSS, JavaScript, and ASP.NET. – The student will be able to:			
68.01	Describe the characteristics and capabilities of a Web application.			
68.02	Develop Web pages using HTML (Hyper-text Markup Language) that include commonly used tags to define Web pages with hyperlinks, tables, text, headings, images, backgrounds, and frames.			
68.03	Develop Web pages using CSS (cascading style sheets) to define a uniform appearance across multiple Web pages.			
68.04	Develop Web pages using JavaScript to define and implement interactive content. 			
68.05	Define and use functions in JavaScript.			
68.06	Define and use local and global variables using JavaScript.			
68.07	Use conditional operators in JavaScript to selectively perform specific function.			
68.08	Use Boolean conditions in JavaScript to selectively perform with multiple conditions.			
68.09	Use JavaScript loops to perform iteration.			
68.10	Use string objects and escape sequences in a JavaScript.			
68.11	Use JavaScript to access, use, and modify HTML elements.			
68.12	Use JavaScript to handle common events, including mouse events, key events, and page events.			
68.13	Use JavaScript to create and manage forms within a Web page.			
68.14	Develop Web pages that use ASP.NET to provide interactivity.			
68.15	Describe standards for making Web pages accessible to individuals with disabilities.			
68.16	Develop Web pages that conform to accessibility standards.   			
69.0	Develop .NET Windows Form applications. – The student will be able to:			
69.01	Describe the characteristics and capabilities of a Windows Forms application.			
69.02	Compare and contrast common objects used in Windows Forms applications (e.g.¸ Button, CheckBox, ColorDialog, ComboBox, DateTimePicker, GroupBox, Label, LinkLabel, ListBox, MenuStrip, Panel, PicureBox, RadioButton, ToolTip).			
69.03	Develop an interactive Windows Forms application that uses a variety of objects for input and output.			
69.04	Perform data validation on input fields.			
69.05	Describe the Windows Forms event model.			
69.06	Create Windows Forms application that respond to common events, including mouse events, keyboard events, load events, click events, resize events, and drag events.			
69.07	Define Windows Forms applications with graphical user interfaces (GUI) that conform to appropriate usability guidelines.			
69.08	Create Windows Forms applications that use Multiple Document Interface (MDI) and Single Document Interface (SDI).			
69.09	Describe visual inheritance.			
69.10	Develop a Windows Forms application that inherits a form from a base application.			
70.0	Develop Windows Service applications and class libraries. – The student will be able to:			
70.01	Describe the characteristics and capabilities of a Windows Service application.			
70.02	Describe the states in the lifetime of a service.			
70.03	Describe the ServiceBase and ServiceController classes and their role in developing and controlling Windows Service applications.			
70.04	Develop a Windows Service application.			
70.05	Develop an installer for a Windows Service application.			
70.06	Install and deploy a Windows Service application.			
70.07	Test and debug a Windows Service application.			
70.08	Uninstall a Windows Service application.			
70.09	Develop, test, and debug a Class Library.			
71.0	Demonstrate knowledge of database applications. – The student will be able to:			
71.01	Explain common database terminology (e.g., relationships, normalization, fields, records, data integrity, referential integrity).			
71.02	Describe the benefits and characteristics of relational databases.			
71.03	Define primary keys and foreign keys and describe their purposes.			
71.04	Explain how database design fits into the database application development process.			
71.05	Translate an entity-relationship model into a relational database design.			
71.06	Differentiate between one-to-one, one-to-many, and many-to-many relationships.			
71.07	Move data from an unnormalized form through to a third normal form. 			
71.08	Based on information requirements, define database tables that ensure data integrity and reduce redundant data.			
71.09	Describe routine maintenance for databases.			
72.0	Demonstrate knowledge of structured query language (SQL) statements. – The student will be able to:			
72.01	Describe the data manipulation language (DML) and describe various DML statements.			
72.02	List the capabilities of SQL SELECT statements.			
72.03	Write and execute a basic SELECT statement.			
72.04	Write and execute SELECT statements using the WHERE clause with common operators (i.e., =, <>, >, <, >=, <=, BETWEEN, LIKE, IN).			
72.05	Write and execute SELECT statements using the WHERE clause with logical operators, including AND and OR.			
72.06	Write and execute SELECT statements using the ORDER BY clause.			
72.07	Write and execute SELECT statements using wildcards.			
72.08	Write and execute UPDATE statements to modify rows in a table.			
72.09	Write and execute INSERT statements to insert rows into a table. 			
72.10	Write and execute DELETE statements to delete rows in a table.			
72.11	Write and execute statements using JOIN to select data from two or more related tables.			
72.12	Write and execute statements that use SQL to perform common calculations (e.g., AVG, MAX, MIN, SUM).			
73.0	Develop .NET database applications. – The student will be able to:			
73.01	Describe the purpose of ActiveX Data Objects (ADO).			
73.02	Describe the purpose of the ADO connection object.			
73.03	Write statements to connect to a database.			
73.04	Write statements to open a database.			
73.05	Write statements to create a recordset.			
73.06	Write statements to commit a transaction to a database.			
73.07	Write statements to rollback a transaction to a database.			
73.08	Write statements to close a connection to a database.			
73.09	Develop, test, and debug a database application.			
73.10	Develop, test, and debug a WPF application.			

2016 – 2017
Florida Department of Education
Student Performance Standards

Course Title:	.NET Application Development Capstone
Course Number:	9007430
Course Credit:	1

Course Description:

This course continues the study of computer programming concepts specific to the Internet and Internet-based software applications.  

Abbreviations: 
FS-M/LA = Florida Standards for Math/Language Arts
NGSSS-Sci = Next Generation Sunshine State Standards for Science

CTE Standards and Benchmarks	FS-M/LA	NGSSS-Sci	
74.0	Successfully work as a member of a software development team. – The student will be able to:			
74.01	Accept responsibility for specific tasks in a given situation.			
74.02	Document progress, and provide feedback on work accomplished in a timely manner.			
74.03	Complete assigned tasks in a timely and professional manner.			
74.04	Reassign responsibilities when the need arises.			
74.05	Complete daily tasks as assigned on one’s own initiative.			
75.0	Manage time according to a plan. – The student will be able to:			
75.01	Set realistic time frames and schedules.			
75.02	Keep a written record of work accomplished on a daily basis.			
75.03	Meet goals and objectives set by the team.			
75.04	Identify individual priorities.			
75.05	Complete a weekly evaluation of accomplishments, and reevaluate goals, objectives and priorities, as needed.			
76.0	Keep acceptable records of progress problems and solutions. – The student will be able to:			
76.01	Develop and use a record keeping system to record daily progress.			
76.02	Use a project journal to identify problem statement.			
76.03	Develop a portfolio of work accomplished to include requirements documents, design documents and UML, project and test plans, and prototypes.			
77.0	Plan, organize, and carry out a project plan. – The student will be able to:			
77.01	Identify a substantive problem that can be addressed with a .NET software solution.			
77.02	Identify and document the potential customers for the project.			
77.03	Identify and document the customer requirements for the project including use case definitions.			
77.04	Document the proposed user interface for the project using common tools (e.g., mockups, event planning documents).			
77.05	Identify the hardware and software requirements for the project.			
77.06	Identify the programming tools required to develop the project.			
77.07	Write a detailed design document for the project. 			
77.08	Write a detailed test plan for the project that addresses varying levels of testing including system testing and usability testing.			
77.09	Determine the scope of a project.			
77.10	Organize the team according to individual strengths.			
77.11	Assign specific tasks within a team.			
77.12	Determine project priorities.			
77.13	Identify required resources to complete the project.			
77.14	Plan, research, design, develop, and evaluate activities, as required.			
77.15	Carry out the project plan to successful completion.			
77.16	Document design problems, test results, product defects, and resolutions. 			
78.0	Manage resources. – The student will be able to:			
78.01	Identify required resources for each stage of the project plan.			
78.02	Determine the methods needed to acquire needed resources.			
78.03	Demonstrate good judgment in the use of resources.			
78.04	Recycle and reuse resources where appropriate.			
78.05	Demonstrate an understanding of proper legal and ethical treatment of copyrighted material.			
79.0	Use tools, materials, and processes in an appropriate and safe manner. – The student will be able to:			
79.01	Identify the proper tool for a given job.			
79.02	Use tools and machines in a safe manner.			
79.03	Adhere to laboratory or job site safety rules and procedures.			
79.04	Identify the application of processes appropriate to the task at hand.			
79.05	Identify materials appropriate to their application.			
80.0	Demonstrate an understanding of the software development process. – The student will be able to:			
80.01	State the goals of the software application clearly.			
80.02	Identify and write a plan to achieve each goal.			
80.03	Develop a list of materials and content required for each goal.			
80.04	Develop a step-by-step procedure for developing the application.			
80.05	Follow a written procedure.			
80.06	Record data from evaluation activities.			
80.07	Document conclusions and solutions based on evaluation results, observations and data.			
80.08	Document progress using a project log.			
80.09	Write an abstract describing the project plan.			
81.0	Research content related to the project and document the results following industry conventions. – The student will be able to:			
81.01	Identify the basic research needed to develop the project plan.			
81.02	Identify available resources for completing background research required in the project plan.			
81.03	Demonstrate the ability to locate resource materials in a library, database, Internet and other research resources.			
81.04	Demonstrate the ability to organize information retrieval.			
81.05	Demonstrate the ability to prepare a topic outline.			
81.06	Write a draft of the research report.			
81.07	Edit and proof the research report. Use proper form for a bibliography, footnotes, quotations, and references.			
81.08	Prepare an electronically composed research paper in proper form.			
81.09	Conduct an alpha and beta evaluation of the project’s product.			
81.10	Write a report on the evaluations, documenting results, data, observations, and design changes based on the results.			
82.0	Use presentation skills, and appropriate media to describe the progress, results and outcomes of the experience. – The student will be able to:			
82.01	Prepare a multi-media presentation on the completed project.			
82.02	Make an oral presentation about the project using the multi-media materials.			
82.03	Review the presentation, and make changes in the delivery method(s) to improve presentation skills.			
83.0	Demonstrate competency in the area of expertise related to developing computer software using the .NET framework. – The student will be able to:			
83.01	Demonstrate a mastery of the content of the selected subject area.			
83.02	Demonstrate the ability to use related technological tools, materials and processes related to the specific program area.			
83.03	Demonstrate the ability to apply the knowledge, experience and skill developed in the previous program completion to the successful completion of this demonstration.			

Additional Information

Laboratory Activities

Laboratory investigations that include scientific inquiry, research, measurement, problem solving, emerging technologies, tools and equipment, as well as, experimental, quality, and safety procedures are an integral part of this career and technical program/course. Laboratory investigations benefit all students by developing an understanding of the complexity and ambiguity of empirical work, as well as the skills required to manage, operate, calibrate and troubleshoot equipment/tools used to make observations. Students understand measurement error; and have the skills to aggregate, interpret, and present the resulting data. Equipment and supplies should be provided to enhance hands-on experiences for students.

Special Notes

The occupational standards and benchmarks outlined in this secondary program correlate to the standards and benchmarks of the postsecondary program with the same Classification of Instructional Programs (CIP) number.

Career and Technical Student Organization (CTSO)

Future Business Leaders of America (FBLA) and Business Professionals of America (BPA) are the intercurricular career and technical student organizations providing leadership training and reinforcing specific career and technical skills for secondary students. Career and Technical Student Organizations provide activities for students as an integral part of the instruction offered.  

Cooperative Training – OJT

On-the-job training is appropriate but not required for this program. Whenever offered, the rules, guidelines, and requirements specified in the OJT framework apply. 

Accommodations

Federal and state legislation requires the provision of accommodations for students with disabilities as identified on the secondary student’s Individual Educational Plan (IEP) or 504 plan or postsecondary student’s accommodations’ plan to meet individual needs and ensure equal access. Accommodations change the way the student is instructed. Students with disabilities may need accommodations in such areas as instructional methods and materials, assignments and assessments, time demands and schedules, learning environment, assistive technology and special communication systems. Documentation of the accommodations requested and provided should be maintained in a confidential file.

In addition to accommodations, some secondary students with disabilities (students with an IEP served in Exceptional Student Education (ESE)) will need modifications to meet their needs. Modifications change the outcomes or what the student is expected to learn, e.g., modifying the curriculum of a secondary career and technical education course. Note: postsecondary curriculum and regulated secondary programs cannot be modified.

Some secondary students with disabilities (ESE) may need additional time (i.e., longer than the regular school year), to master the student performance standards associated with a regular Occupational Completion Point (OCP) or a Modified Occupational Completion Point (MOCP). If needed, a student may enroll in the same career and technical course more than once. Documentation should be included in the IEP that clearly indicates that it is anticipated that the student may need an additional year to complete an OCP/MOCP. The student should work on different competencies and new applications of competencies each year toward completion of the OCP/MOCP. After achieving the competencies identified for the year, the student earns credit for the course. It is important to ensure that credits earned by students are reported accurately. The district’s information system must be designed to accept multiple credits for the same course number for eligible students with disabilities.

Additional Resources

For additional information regarding articulation agreements, Bright Futures Scholarships, Fine Arts/Practical Arts Credit and Equivalent Mathematics and Equally Rigorous Science Courses please refer to:
http://www.fldoe.org/academics/career-adult-edu/career-tech-edu/program-resources.stml