Software Development
As capable AI tools see wider use, the focus in software development is shifting. Pure implementation, meaning writing and generating code, becomes more efficient. That creates capacity for other parts of development: understanding requirements, making decisions, documenting relationships, and evolving systems.
Software development is therefore more closely tied to product development today: what gets built, for whom, and with what effects on operations, maintainability, and future development?
The development process connects requirement, decision, implementation, and documentation. Alongside the code, assumptions, decisions, and hard-won experience emerge. Documentation records those relationships and keeps them available for later changes.
Good decisions depend on understanding the different dimensions of software. The better those dimensions are understood, the more precisely requirements can be framed and the right questions asked.
I see this as a positive development: Growing automation of implementation creates room for software development in which understanding the product and its dimensions moves more firmly into the center. The capacity that becomes available opens the possibility of strengthening requirements, decisions, implementation, and documentation as equal parts.