1.3 Program Design
Program Design College Board Assignment
Notes / Hacks
There are multiple steps within the development process. The following phrases are commonly used when developing a program. Research, Designing, Prototyping, Testing, followed by revisions. Revisions are a key part of this process and will happen several times. This developmental process is iterative and requires refinement and revision based on testing and feedback. This may require revisiting earlier phrases of the process. Investigation is useful in development for understanding and identifying the program constraints, as well as the requirements of the people who will use the program. Investigation can be perfomed by collecting user data, having beta testing, interviews, and direct observations.
How a program is developed
- Starts with an idea and initial prototype. Usually developed by teams of people.
- 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 (both good and bad)
- Think about early AI projects, like personal assistants Developers start investigating the problem/purpose and reflect
- Investigation is an important step in the process
- Developers must determine the requirements and constraints of the program
- During investigation, Developers use surveys, user testing, interviews, and direct observations
- Developers create the initial design for the program by brainstorming, storyboarding the program, planning user experience, laying out the user interface, organizing into modules and subdepartments, developing a testing strategy, developers decide on the program requirements that describe how the program should behave.
- An incremental process is used so developers can refine small modules of the program
- Developers test the program every step of the way
- Testing occurs at both the micro and macro level
- Developers use these test results as feedback to further refine and revise the program