1.3 Program Design and Development

Enduring Understanding

Developers create and innovate using an iterative design process that is userfocused, that incorporates implementation/feedback cycles, and that leaves ample room for experimentation and risk-taking.

Learning Objective

Develop a program using a development process. 

Essential Knowledge

A development process can be ordered and intentional, or exploratory in nature.

There are multiple development processes. The following phases are commonly used when developing a program:

§ investigating and reflecting

§ designing

§ prototyping § testing

A development process that is iterative requires refinement and revision based on feedback, testing, or reflection throughout the process. This may require revisiting earlier phases of the process.

A development process that is incremental is one that breaks the problem into smaller pieces and makes sure each piece works before adding it to the whole.

Learning Objective

Design a program and its user interface.

Essential Knowledge

The design of a program incorporates investigation to determine its requirements.

Investigation in a development process is useful for understanding and identifying the program constraints, as well as the concerns and interests of the people who will use the program.

Some ways investigation can be performed are as follows:

§ collecting data through surveys

§ user testing § interviews

§ direct observations

Program requirements describe how a program functions and may include a description of user interactions that a program must provide.

A program’s specification defines the requirements for the program.

In a development process, the design phase outlines how to accomplish a given program specification.

The design phase of a program may include:

  • brainstorming

  • planning and storyboarding

  • organizing the program into modules and functional components

  • creation of diagrams that represent the layouts of the user interface

  • development of a testing strategy for the program

Learning Objective

Describe the purpose of a code segment or program by writing documentation. 

Essential Knowledge

Program documentation is a written description of the function of a code segment, event, procedure, or program and how it was developed.

Comments are a form of program documentation written into the program to be read by people and do not affect how a program runs.

Programmers should document a program throughout its development.

Program documentation helps in developing and maintaining correct programs when working individually or in collaborative programming environments.

Not all programming environments support comments, so other methods of documentation may be required.

Learning Ojbective

Acknowledge code segments used from other sources. 

Essential Knowledge

It is important to acknowledge any code segments that were developed collaboratively or by another source.

Acknowledgement of a code segment(s) written by someone else and used in a program can be in the program documentation. The acknowledgement should include the origin or original author’s name.

Last updated