What is the main goal of program development?
To create software, starting from initial ideas and ending with a final, functional product, using a structured process.
What is the key characteristic of the Waterfall Model?
It is a linear, step-by-step process where each stage must be fully completed before moving on.
What is the benefit of using Agile or DevOps methodologies?
They allow for flexibility and adaptation during the development process, enabling changes and collaboration.
Why are program specifications important?
They ensure clear communication between programmers and clients, avoiding misunderstandings about the program's goals.
What methods can be used for investigation in program development?
Surveys, user testing, interviews, and direct observation.
What are the key activities in the 'Designing Code' phase?
Brainstorming, planning, storyboarding, organizing into modules, creating UI diagrams, and developing a testing strategy.
Why is program documentation important?
It helps break down the complexity of programs, facilitates collaboration, and allows for code reusability.
What is the purpose of comments in code?
To explain what the code is doing, making it easier for others (and yourself) to understand the program later.
Why is it important to cite sources in your code?
To acknowledge any work that isn't yours and to maintain academic integrity.
What are the key phases of program development?
Investigation and Reflection, Designing Code, Building, Prototyping, and Testing.
What are the differences between Iterative and Incremental Development?
Iterative: Refines a prototype through repeated cycles. | Incremental: Builds a program in small, working parts.
What are the differences between Program Requirements and Program Specifications?
Requirements: Describe *how* the program works. | Specifications: Define the *what* - the goals and functions.
What are the differences between Agile and Waterfall development?
Agile: Flexible, adaptive, collaborative. | Waterfall: Rigid, sequential, less collaborative.
What is the definition of 'Waterfall Model'?
A linear, sequential software development approach where each stage must be completed before moving to the next.
What is the definition of 'Agile Development'?
A flexible, iterative approach to software development that emphasizes collaboration and adaptation to change.
What is the definition of 'DevOps'?
A software development methodology that combines development and operations to enable faster and more reliable software releases.
What is the definition of 'Iterative Development'?
A development process where a prototype is developed and refined through repeated cycles.
What is the definition of 'Incremental Development'?
A development process where a program is built in small parts, ensuring each part works before combining them.
What is the definition of 'Program Specifications'?
Descriptions of a program's goals and functions, agreed upon by programmers and clients.
What is the definition of 'Program Requirements'?
Describe how the program works. What can the user do? What does the program need from the user?
What is the definition of 'Program Documentation'?
Notes and summaries that explain how a program works, acting as a user manual for the code.
What are 'Comments' in programming?
Explanatory notes written directly into the code, ignored by the computer when running the program.
What is 'Sourcing' in the context of code?
Acknowledging and citing any code or work that is not originally yours.