Video 1-3
Learning Objectives
- Develop a program using a development process
- Design a program and its user interface
Essential Knowledge
- A development process can be ordered and intentional or exploratory in nature
- There are multiple development processes. The following phrases 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 phrases 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.
- The design of a program incorporates investigation to determine its requirements.
- Investigation ina 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 programs
How is a program developed?
It all starts with an idea.
- Programs are developed with a specific purpose in mind
- Developers follow specific steps and stick to their plan
- Sometimes the development is more exploratory than anything, and the steps are dictated by what happens
- Think about early AI projects, like personal assistants
- Developers start investigating the problem/purpose and reflect
- Investigation is an important step in the process
- They must:
- determine the requirements of the program
- understand the constraints
- understand the user concerns and interests
- They investigate through surveys, user testing, interviews, direct observation