拡張性・保守性に関する説明を書いてください。
拡張性と保守性は、ソフトウェア開発における主な原則です。拡張性とは、新しい要件をある程度容易に実装できることを意味します。この特性は、ソフトウェアが将来向けに互換性を保つために重要な役割を果たします。保守性とは、ソフトウェアを維持管理することを意味します。新しい要素を追加したり、ソフトウェアの動作を修正するための変更を容易に行うことを可能にします。このような修正は、ソフトウェアが期待される機能を実現できるようにするものです。