Domain Knowledge or a lack thereof (2013)

I believe that a lack of domain knowledge is the root cause of a lot of very bad software that gets developed and I think that it is up to computer programmers and their managers to deal with this. Acquiring domain knowledge is an essential component in the development of software that really works well for its users.

Solaire,

as a self taught software engineer just starting my career; what do you mean by domain? I'm familiar with the term as i have spent years on learning web development as the "domain name" like in a url. But i get the sense that you may be speaking on something else? I will agree though; my boss should learn more about the web and how it works instead of relying on these frameworks to handle everything...

clobble_wobble,

"Domain" in this case refers to the space you're building software in. Not the website name. For simplicity its kinda like business logic. For example if youre working at DoorDash your domain would involve the rules around orders, restaurants, etc.

The term was popularized by Eric Evans' book Domain Driven Design.

little_pinecone,

Basically what @clobble_wobble said. For a fast introduction I recommend Domain-Driven Design Quickly (available for free). If you are interested in gathering requirements in a way that can also strengthen your understanding of the business domain, you may want to check the Event Storming technique.

ajbin,
ajbin avatar

Absolutely, and it something that's got worse over my career I feel as 'barriers to deployment' have gone down with modern tech stacks. Many developers seem to either mistakenly view the rise of 'agile' methodologies as meaning that we go to code without any kind of plan or understanding of the domain, or worse yet, use it as an excuse to willfully ignore these things.

lightsecond,

Timeless advice. Software engineering IMHO is the discipline of repeatedly making good trade-off decisions. (If you don’t see the trade-off in a decision you might be doing something wrong). And you can’t understand the trade-offs unless you understand the domain.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • programming
  • cubers
  • Youngstown
  • ngwrru68w68
  • ethstaker
  • slotface
  • PowerRangers
  • hgfsjryuu7
  • khanakhh
  • kavyap
  • tsrsr
  • InstantRegret
  • DreamBathrooms
  • mdbf
  • magazineikmin
  • Leos
  • rosin
  • tacticalgear
  • thenastyranch
  • Durango
  • osvaldo12
  • vwfavf
  • modclub
  • everett
  • GTA5RPClips
  • cisconetworking
  • normalnudes
  • tester
  • anitta
  • All magazines