A comprehensive resource hub designed for computer science educators and students.
Criterion B is the blueprint for your entire project. It involves creating a detailed design overview, maintaining a thorough Record of Tasks (RoT), and developing a comprehensive Test Plan. This criterion shows your ability to translate planning into a structured, functional design while keeping a clear record of your progress.
What It Is:
The Design Overview is a comprehensive visual and structured representation of your solution’s architecture, demonstrating your algorithmic thinking and the range of techniques you plan to use.
How to Create It:
Structure Chart: Include a structure chart that breaks down your solution into its key components and shows how these components interact.
Detailed Layout Design Sketches: Provide clear drawings or sketches showing what each version/stage of your user interface (UI) will look like. Include multiple iterations if applicable to show progression.
System Flowchart / Data Flow Diagrams (DFD) / UML / Entity-Relationship Diagram (ERD): Develop a high-level abstract flowchart of your program that shows the overall process flow. This should include UML diagrams, DFDs, or ERDs to illustrate the data flow and relationships between different components.
Important Considerations:
Example:
If your project involves an inventory management system:
What It Is:
The Record of Tasks (RoT) is a detailed log of all significant steps taken during the project, demonstrating the progression of the solution over time.
Example RoT Entry: (General Structure)
⚠️ Warning: This table provides a general structure for documenting the Record of Tasks (RoT) in your Internal Assessment. Your work should be unique and tailored to the specific development process of your product. Use this as a reference, but ensure your tasks reflect the distinct requirements and activities of your individual project.
Task Number | Planned Action | Planned Outcome | Time Estimated | Target Completion Date | Criterion |
---|---|---|---|---|---|
Planning | |||||
1 | Identify the problem and client/advisor | Clearly understand the problem and the client/advisor’s needs for the solution | __ days/weeks | __//__ | A |
2 | Teacher approval of topic and client/advisor | Obtain teacher approval to proceed with the chosen topic and client/advisor | __ days/weeks | __//__ | A |
3 | Justify rationale for chosen product | Provide a rationale for the chosen solution to address the identified problem | __ days/weeks | __//__ | A |
4 | Define success criteria | Establish measurable success criteria to evaluate the solution’s effectiveness | __ days/weeks | __//__ | A |
Design Overview | |||||
5 | Create preliminary designs | Develop initial designs, including UI wireframes and data flow diagrams | __ days/weeks | __//__ | B |
6 | Develop detailed design | Create detailed designs that include system flowcharts, data structure diagrams, and pseudocode | __ days/weeks | __//__ | B |
7 | Submit solution overview for feasibility | Submit the design overview to the teacher to check the feasibility of the solution | __ days/weeks | __//__ | B |
8 | Refine designs based on feedback | Adjust the designs for clarity and ingenuity based on teacher and client/advisor feedback | __ days/weeks | __//__ | B |
Development | |||||
9 | Develop the product | Begin coding the product according to the detailed designs, implementing core functionalities | __ days/weeks | __//__ | C |
10 | Test the product (unit testing) | Perform unit tests on individual components to ensure they meet the design specifications | __ days/weeks | __//__ | C, D |
11 | Integrate and test complex features | Integrate more complex features and conduct testing to ensure they function as intended | __ days/weeks | __//__ | C, D |
12 | Cite sources | Ensure all sources and external code libraries are properly cited in the product | __ days/weeks | __//__ | C |
Functionality | |||||
13 | Conduct functionality testing | Test the product against the success criteria to verify full functionality | __ days/weeks | __//__ | D |
14 | Gather client/advisor feedback | Present the functional product to the client/advisor for feedback on usability and functionality | __ days/weeks | __//__ | A, D |
Evaluation | |||||
15 | Evaluate product against success criteria | Conduct a thorough evaluation of the product to determine if it meets all success criteria | __ days/weeks | __//__ | E |
16 | Recommend further development | Based on evaluation and feedback, provide recommendations for further development of the product | __ days/weeks | __//__ | E |
What It Is:
The Test Plan is a detailed guide for testing your solution to ensure it meets the success criteria defined in Criterion A.
How to Create It:
Example Test Plan Format:
Test Number | Success Criterion (Related Number) | Description of Test | Input Data | Expected Outcome | Actual Outcome | Figure/Reference |
---|---|---|---|---|---|---|
1 | 1. Add Inventory Item | Test adding a new item to inventory. | Name: “Laptop”, Quantity: 10 | Item appears in the inventory list. | Passed | Fig. 1.1 |
2 | 2. Generate Report | Test generating inventory report. | Click “Generate Report” button | Report PDF downloads and displays all items. | Passed | Fig. 2.1 |
What It Is:
Evidence of meaningful client interactions should be documented and included in the appendix.
How to Document It:
Example:
Include an appendix entry summarizing the client feedback session on the initial UI design and how it led to design adjustments.
For more detailed information on the other criteria, please navigate to the corresponding pages:
By adhering to these guidelines for Criterion B, you will create a detailed and comprehensive solution overview that lays the groundwork for the development of a functional, well-documented product. Your Record of Tasks and Test Plan will provide a roadmap for your project, ensuring a structured and systematic approach to development.
This improved markdown page for Criterion B includes specific details from the provided checklist, such as emphasizing multiple diagrams, detailed RoT documentation, and a comprehensive Test Plan. It provides clear instructions on how to meet the requirements effectively, aligning with the expectations of the IB examiners.