Skip to content

cbsteh/BuildIt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BuildIt and Excel Crop Models

BuildIt is a Microsoft Excel add-in developed by Christopher Teh Boon Sung for building and running dynamic mathematical models directly inside spreadsheets without requiring programming.

The project was designed primarily for teaching and research in agriculture, particularly crop modelling, soil water dynamics, and agroclimatology.

BuildIt extends Excel with capabilities it fundamentally lacks for scientific simulation, including:

  • iterative calculation loops,
  • numerical integration,
  • differential equation solving,
  • cumulative calculations,
  • scenario management,
  • and automated simulation workflows.

Using ordinary Excel formulas, users can construct and run dynamic crop models entirely within a spreadsheet environment familiar to most agriculture students and researchers.


Purpose

Mathematical crop models require repeated calculations over time.

Standard Excel formulas alone are poorly suited for this type of work because spreadsheets lack native iterative simulation structures. Traditionally, solving this problem required programming languages such as FORTRAN, MATLAB, Python, or C++.

BuildIt was developed to remove this programming barrier.

Students and researchers work entirely inside Excel while BuildIt handles the execution logic behind the scenes. The goal was simple:

Students should spend their energy on the science, not on programming.


Main Features

BuildIt adds two major capabilities to Excel:

  • iterative looping,
  • and simulation actions not natively supported in spreadsheets.

The system supports:

  • numerical integration,
  • differential equation solving,
  • variable initialization,
  • cumulative calculations,
  • scenario simulations,
  • automated repeated calculations,
  • and dependency tracing between model variables.

Users organize models into five sections:

  1. Option — housekeeping tasks
  2. Pre-run — variable initialization
  3. Operation — iterative calculations
  4. Scenario — multiple scenario execution
  5. Output — results collection and visualization

The entire simulation is executed without requiring users to write programming code.


Included Crop Models

This repository includes two crop models built using BuildIt.


Sawi Model

The sawi model simulates the growth and yield of choy sum (Brassica chinensis var. parachinensis).

The model was used extensively in SST4304 Climate Change and Agriculture for teaching:

  • irrigation effects,
  • nitrogen fertilization,
  • haze impacts,
  • and climate change scenarios.

The sawi model was intentionally designed to be:

  • compact,
  • computationally fast,
  • and suitable for interactive classroom use.

Typical simulation time is under 15 seconds, allowing students to:

  • modify inputs,
  • rerun scenarios,
  • test hypotheses,
  • and interpret outcomes within a single laboratory session.

The model includes components for:

  • meteorology,
  • evapotranspiration,
  • soil water balance,
  • photosynthesis,
  • and plant growth.

Oil Palm (OP) Model

The OP model simulates oil palm growth and yield under varying soil, weather, and management conditions.

Compared with the sawi model, the OP model is substantially more complex and computationally intensive, with:

  • larger equation sets,
  • more variables,
  • and more interacting processes.

The model was used to expose students to the structure and scale of commercial crop simulation systems.

However, simulation runs could require 20–30 minutes, which ultimately made the model unsuitable for interactive classroom learning inside Excel.

The limitations of the OP model in Excel later motivated the development of:

  • PySawit Web,
  • and subsequently Sawit.jl.

Repository Structure

Excel 2003

Contains BuildIt and crop model versions compatible with Microsoft Excel versions prior to Excel 2007.


Excel 2007

Contains versions compatible with:

  • Excel 2007,
  • Excel 2010,
  • Excel 2013,
  • Excel 2016,
  • Microsoft 365,
  • and modern Windows Excel installations.

This is the primary maintained Windows version.


macos

Contains versions specifically adapted for Microsoft Excel for Mac.

Compatibility may vary depending on Excel and macOS versions.


Sawi model

Contains the sawi crop growth model.


OP model

Contains the oil palm crop model.


Educational Context

BuildIt and the crop models were developed primarily for teaching in SST4304 Climate Change and Agriculture at Universiti Putra Malaysia.

The platform was designed to support:

  • exploratory learning,
  • scenario-based reasoning,
  • mechanistic scientific explanation,
  • and quantitative interpretation of crop–climate interactions.

Across multiple semesters, students used the sawi model to investigate:

  • irrigation strategies,
  • nitrogen fertilization,
  • haze effects,
  • and climate change impacts on crop growth.

Analysis of 93 student reports across six semesters showed progressive improvement not only in operational model use, but also in students' ability to explain the scientific mechanisms underlying simulation results.


Dependency Mapping

One unique BuildIt feature is Trace Workbook, which generates visual dependency maps showing how spreadsheet variables and formulas connect throughout a model. Trace feature requires Graphviz installation.

These maps help users:

  • understand model structure,
  • trace calculation pathways,
  • debug equations,
  • and visualize relationships between variables.

This feature was especially valuable for teaching first-time model builders.


Publications

Journal Article

Teh, C. B. S. (2011). Overcoming Microsoft Excel's weaknesses for crop model building and simulations. Journal of Natural Resources and Life Sciences Education, 40, 122–136. https://doi.org/10.4195/jnrlse.2010.0024


Book

Teh, C. B. S. (2015). Building mathematical models in Excel: A guide for agriculturists. Boca Raton, FL: Universal Publishers.

This internationally published volume provides the conceptual and mathematical foundation for the BuildIt-based modeling exercises used in SST4304 Climate Change and Agriculture.

https://www.universal-publishers.com/book.php?method=ISBN&book=1627340386


Current Status

BuildIt remains functional as an educational and research modeling framework within Microsoft Excel.

The Excel 2007 and later versions continue to operate on modern Windows systems.

Some older versions may require legacy Excel environments or compatibility settings.

The OP model has largely been superseded by:

  • PySawit Web,
  • and later Sawit.jl,

which provide substantially improved computational performance for large-scale oil palm simulations.

The sawi model continues to remain useful for teaching because of its fast runtime and strong support for interactive learning.


License

This project is licensed under the MIT License.

See the LICENSE file for details.


Citation

If using BuildIt or the included crop models in academic or educational work, please cite:

Teh, C. B. S. (2011). Overcoming Microsoft Excel's weaknesses for crop model building and simulations. Journal of Natural Resources and Life Sciences Education, 40, 122–136. https://doi.org/10.4195/jnrlse.2010.0024


Historical Note

BuildIt represents an alternative approach to scientific computing education: instead of requiring students to learn a programming language before building models, it transformed the spreadsheet itself into a simulation environment.

The project reflects a period when spreadsheets remained one of the most widely accessible scientific computing platforms in agriculture and education.

Its progression from simple spreadsheet workflows to browser-based simulation systems and later high-performance Julia models also mirrors the broader evolution of computational agriculture over the past two decades.

About

Addin to Allow Crop Simulations to Run Within Excel

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages