Please enable JavaScript to use CodeHS

New

Arkansas Software Development

This course provides a comprehensive introduction to software development, covering core programming concepts, professional skills, and the software development lifecycle. Students will gain practical experience with data structures, algorithms, object-oriented programming, and software testing. They will also explore secure coding practices, ethical considerations, and emerging technologies, building a strong foundation for a career in the field.

Overview & Highlights

Level
High School
Contact Hours
150
Timeframe
Year

Course Overview

To explore the full course, click here.

MODULES - 11

  • The Software Profession

    Students explore career options and learn other career readiness skills.

  • Using Objects and Methods

    Students learn the fundamentals of writing and running Java programs, including how to use variables, data types, expressions, and input/output. They are also introduced to classes, and learn how to create objects and call methods, including those from built-in classes such as Math and String.

  • Selection and Iteration

    Students learn how to control the flow of a program using conditional statements and loops. They develop Boolean expressions, use relational and logical operators, and write selection statements with if, if-else, and if-else-if. Students also explore iteration through while and for loops, including nested and compound iterations.

  • Class Creation

    Students learn how to design and implement classes using principles of object-oriented programming. They explore encapsulation, access control, and the structure of classes with instance variables, constructors, and methods. Students write accessor and mutator methods, define behaviors using parameters and return values, and understand how object references are passed and returned.

  • Data Collections

    Students learn how to work with collections of data using arrays, ArrayList objects, and 2D arrays. They develop and analyze algorithms that involve searching, sorting, traversing, and manipulating elements in these structures. Students also explore reading data from text files and using wrapper classes to convert between primitive types and objects.

  • OOP Extensions & Architecture

    Students learn how to recognize common attributes and behaviors that can be used in a superclass and create hierarchies by writing subclasses to extend a superclass.

  • SDLC, Testing, Version Control & Professional Practice

    Students learn how professional software is planned, built, and maintained by teams. The module works through the software development life cycle, gathering requirements and planning a project, and using version control with Git and GitHub to collaborate. Students also practice testing, reviewing, and releasing software, and examine the career paths, certifications, and legal and ethical responsibilities that come with working in the field.

  • Data Systems & APIs

    Students learn how software stores, retrieves, and exchanges data. The module begins at the command line and file system, then moves into databases and SQL, where students structure tables and write queries to create, read, update, and delete records. It closes with data-driven programs that read API responses formatted in JSON and put that data to work in code, connecting database operations to the programs that depend on them.

  • Security, Privacy, Licensing & Accessibility

    Students learn the importance of application security, investigate security options, and implement user accounts to enforce authentication and authorization.

  • Emerging Technologies

    Students survey the technologies shaping the future of computing and their impact on society. Topics include cloud computing, artificial intelligence, machine learning and neural networks, and blockchain. Through guided readings and a research survey, students explain at a high level how each technology works, weigh its benefits and risks, and consider how it is changing everyday life and work.

  • Final Project

    Students create a website of their own choosing, go through a feedback process, and learn about making their websites more accessible to a wide array of users.


96
Lessons
96
Videos
210
Exercises
3
Challenges
89
Offline Handouts

Demo Programs

Explore programs that your students will build throughout this course!

Course Resources

Here are a few examples of teacher resources and materials to use in the Arkansas Software Development course

Standards Alignment

Showing frameworks for your state
Standards Framework Alignment
Arkansas Software Development 100% View

Customizable Assignments

Create and organize Assignments in any CodeHS course that you're teaching. You can even add custom assignments to pre-existing CodeHS courses.

Learn More

Actions for Teachers

Didn't find what you were looking for? Here are a few links that might be useful to you.