Agile Software development with Navision / Business Central

Nav123: Navision, Showare, OrderApp

Print Friendly, PDF & Email

Estimated reading time: 4 minutes

It's weird that I have to.. or want to write this article. Because since I've been working with Navision, i.e. since 1993, I've been working agile... 8 years before the term agile ever found it's way into software development.

What is agile software development?

agil/aˈɡiːl,agíl adjectiveshowing great mobility; be agile". Example: "An agile businessman". Many may also know agile from dog or equestrian sports.

Agile software development emerged as an answer to the waterfall development that had been common until then (which itself was derived from Henry Ford's series production).

In agile software development, for example, it is important to offer quick solutions in small steps. Agile software development is an idea, not a clearly definable process. The term agile software development relates to the following guiding principles, not only for projects related to Navision or Business Central:

  • People and Interactions take precedence over processes and tools.
  • Functioning software takes precedence over comprehensive documentation.
  • Client relationship takes precedence over contract negotiations.
  • Responding to changes takes precedence over following a plan.

What companies do is mostly anything but agile.

Agile Software development with Navision / Business Central

Especially the earlier versions (Native Navision) up to version 2009R2 all had one thing in common: the development environment, including the compiler, was an integral part of every single Navision session. In a report, a column in the total balance list had to be widened because sales exceeded the 99 million mark? Directly in the client Ctrl+F2, view/sections, widen the column with the mouse, Esc Esc Save?: Yes - done! A field was missing in the order lines? Ctrl+F2, select and insert field, Esc, Save?: Yes - done!
Since RTC (Navision 2013 to Dynamics 2019, actually 2018) this unbeatable and rather unique advantage is unfortunately history. A distinction was made between a still extremely fast development environment and the user interface. Since the interface was now served by a server service, this step was necessary. Was that good or bad? Mmmmm...

Mit AL & Extensions hat Microsoft jeglichen Vorteil dieser engen Verzahnung aufgegeben. Business Central stellt sich dem Entwickler wie eine ganz normale Entwicklungsumgebung da, und die meisten neuen Programmierer verstehen gar nicht, das da auch noch eine Finanzbuchhaltung im Hintergrund werkelt.

Why is Navision / Business Central the perfect partner for software development?

Even though I'm not a fan of the evolution to AL, Navision / Business Central still brings something that Java, Python, PHP, C++, C# etc by its very nature can't (don't want to) have: The data-driven nature. That still connects Business Central or Navision with milestones in IT development such as dBase (Clipper), Access, AS/400 with DB2 and the legendary Siemens Nixdorf with Comet. The system ensured that data was consistent, easily retrievable according to predefined criteria and sorting. The programmer did not and does not have to worry about transactions, encapsulation, etc. But here, too, Microsoft deserves a big thank you: Thanks to extensions, transactions in Navision are finally no longer secure and require a good deal of specialist knowledge in order not to create lost data structures.
My take on this since around 1995: I prefer to turn an accountant into a sufficiently good programmer than a programmer into an bad accountant.
However, this must not and should not distract from the fact that NAVISION or BUSINESS CENTRAL is still the natural environment for data-driven applications such as merchandise management, ERP and financial accounting. Just because Navision and Business Central are getting worse and worse at this, doesn't mean that there's something better (unfortunately) !