Both Wordpress and Joomla! are highly-regarded and each have there unique advantages when you compare them.
To answer your questions:
in the software architecture between Joomla! and Wordpress
Procedural programming specifies the steps the program must take to reach the desired state, whereas object-oriented programming ("OOP") organizes programs into objects or data-structures and methods together with their interactions.
For simple programs, procedural code (think of a line-by-line sequence of commands) works great, but for large complex applications, procedural code can be harder to maintain - often resulting in what's called spaghetti code (i.e. when the line-by-line sequence of commands starts using many GOTOs, exceptions, threads or other branching constructs and it's flow becomes conceptually like a bowl of spaghetti). In other words, Procedural code starts off simple, but can become complex and tangled.
More complex applications can therefore be better structured with OOP and with MVC - a a more advanced style of programming that's much better suited to building really complex programs with a lot of moving parts.
Whereas procedural code may initially be easier to write and maintain for simple programs, OOP has advantages in that it can neatly pull together collections of variables (called 'properties' in OOP) functions (called 'methods' in OOP) into bundles - resulting in code that is tidier, easier to read, maintain and extend.
For most Wordpress applications (e.g. simple blogs), procedural code works perfectly well.
For more complex applications (e.g. those requiring user group permissions and those which use many integrate many extensions to extend features and functions), OOP is generally considered a much more elegant approach.
To sum up:
Worpress's software architecture (based on procedural code) has it's strengths in simplicity, but procedural code is not ideal for complex applications which robust extensibility.
Joomla!'s software architecture (OOP/MVC) may seem more complex, but when well-engineered, OOP/MVC actually makes it much simpler to extend an application's features and functions and to have all those extensions work together harmoniously.
If you want to understand the differences (at a basic beginner level), read PHP Procedural vs PHP OO vs PHP MVC by Peham Raza - he discusses the 'ins and outs' of each in way that makes it easy to better understand the benefits.
in the way in which extensions to the core (out-of-the-box) functionality are made?
- Joomla added features with Module,Component,Plugins
- WorPress uses plugin for it feature extending.
- Joomla is strict in its module , plugin or component creation(you cannot simply upload the files via FTP and just activate, you have to do it with Extension installer).
How the core and extensions are upgraded and updated
- Both are using almost same technique for the upgrade or updates.(They provide developers to create new features with extensions or template changes with override So basically no core files we need to edit on this situations so upgrade will improve their security patches and more.)
There is a saying Wordpress is not a CMS, but now days it is a CMS with all the features of Joomla and more.
WordPress is good for users that have less development knowledge, and Joomla for developers.
Hope its make sense.