Criterion B - Solution Overview

Instructions and Advice - Chronological Development Plan


Recall that this is one of the four Code Planning Documents you can do, out of:

If you were able to do good flowcharts, and also get your head around algorithms and/or pseudocode, that's great. But if not, then a Chronological Development Plan is the next best thing. And in fact, you should always do such a plan anyway for any big project; mapping out, time-wise, what needs to be done in a big project is always very beneficial. But if you've already done a lot of work and planning of coding with two or three of the other kinds of code planning, that should be enough for Criterion B of the IBCS IA.

For those needing a bit more planning for their code, the Chronological Development Plan will allow you to do two things, both plan out time-wise what you need to do, plus do a limited amount of algorithm work and/or pseudocode, which you'll include with the descriptions of a few of your chronological steps.

Though a Chronological Development Plan not referenced in the actual IB IA guidelines, there one is found in the original sample IA (here's a link to that pdf ). On page 4 of the sample IA you'll see his "Development Plan", which I would add the descriptor "Chronological" to.



Step 1. The Chronological Steps

The idea here is to look at all the other preparatory things you have so far done in Stage B and figure out all of the different steps of programming you now have to do. And since some steps will naturally have to come before other steps, a key part of this process is to determine the order of these general steps.

You could look at this as kind of an "anticipation of your Record of Tasks". So rather than recording what you do as or after you do it, this will be planning your (coding) steps ahead of time.

As with doing an outline in Word, first come up with your general/major steps, in order that they should best be done (likely in the vicinity of 5 to 10 big steps). Next, "flesh out" those steps.

When doing this part of your IA, you need to be conscious of word count, so try, if you can to do this as a bulleted list; TRY NOT TO WRITE SENTENCES, otherwise they will be included in your total word count.

Importantly, with this approach, add in the time you expect each step, or at least each major step to take.


Step 2. Add in Algorithms and/or Pseudocode

For each step, after your general description of it, try to come up with simple algorithms, or pseudocode, if appropriate. This does not have to be as detailed as described in the Algorithms and Pseudocode sections of this guide, but just simple instructions to accomplish each task.

A Reminder that if it's algorithms you are choosing, an algorithm is an English-like step-by-step solution to a step or a problem.

And if you choose to go the pseudocode route, pseudocode is much more programming-like, right up to the next thing from Java, in our case.


(same) Example using algorithms


(same) Example using pseudocode


Final Points

Do take a look at past IAs to see examples of Chronological Development Plans. And just like with other code planning techniques, note, that would be a good idea to partner up to share/discuss this with someone else. Talking things through always seems to help you get things organized in your head a bit better.