How can one a software developer learn about how to provide business solution? including but not limited to, implement business applications in decent software architectural style?

CRM, ERP, MDM, SOA etc... are they really strictly reserved for enterprise?

Where to learn about their...

  • common features
  • software / data architecture of such system in general
  • complexity involved
  • latest trend
  • no silver bullets, then what are the options?
  • popular open source projects that one can build on?
  • commercial option if money is not an issue?

I searched on Safari Books Online and most of the books are manual for how to customize Vendor X's CRM / ERP for your needs, or wordy and boring written for business students (not for software dev's)

Any good resource to learn those listed above? Or is working at a software firm that writes that kind of software the only way to learn the in and out's of writing business application?

update: bold assumption - large enterprises would go with a vendor like SAP without thinking of building one themselves.


  • For that person who voted Close, this is a Q on how to Write business software, how would this be Off Topic??
    – Henry
    Commented Apr 27, 2011 at 2:03
  • It wasn't me, but my guess is because the question is very broad and has lots of pieces. How you write the software depends on what you are trying to do. And your question is "for all possible things one might want to do, what are the ways to do that?" Commented Apr 27, 2011 at 2:29
  • What is the difference between "small" and "enterprise"? The question is assuming something that doesn't exist. A business is a business irrespective of size. Indeed, to a small business, all software applies to the entire enterprise. There are no niche or departmental applications in a small business. Can you please clarify this question to explain what distinction you think exists.
    – S.Lott
    Commented Apr 27, 2011 at 10:10
  • @S.Lott I just made a bold assumption that large enterprises would go with a vendor like SAP without thinking of building one themselves.
    – Henry
    Commented Apr 27, 2011 at 22:49
  • I'm aware you made some assumptions. Can you update the question to clarify the distinctions you're trying to make?
    – S.Lott
    Commented Apr 28, 2011 at 1:28

1 Answer 1


Building a business application is actually very straight forward. I've built a CRM for a medium size IT company and a small application for my own business (not IT related)

It cannot be covered on a forum post but it really is just a matter of knowing what the company's needs are, who is going to use it and what platform they use. You don't want to "copy" an existing software and have obscure features that will never be used by your client.

You need to know if they need a user database, user interaction with the system, user privileges, if the company sells products you need to create a product management system (stock, suppliers...etc.), tickets, bug reports, statistics, finance...etc.

You should spend more time with the business employees understanding their needs than you spend on your computer.

So you see there's no answer to your question. Generally speaking, a business application is just a database with forms and reports. If you know how to do these, you know how to make a business application.

Best way to learn is to have your own business and create a system to manage it. You can also be hired to maintain/update an existing system.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.