Software development is a Passion. You develop great software when You have a Passion, and are self-motivated! Nobody on earth, can make you build great software if you do not have a great passion!!

Software development is a process of logical thinking, conceptualizing, computer programming, documenting, testing, and bug fixing involved in creating and maintaining computer applications and frameworks resulting in a software product.

It involves the process of writing and maintaining the source code, but in a broader sense, it includes all that is involved between the conception of the desired software through to the final manifestation of the software, mostly in a planned and structured process.

The development generally includes research, new development, prototyping, modification, reuse, re-engineering, maintenance, and various other activities that should result in desired software products.

Software is developed for a variety of purposes, and the most general categories are:

  • Custom Software: To meet specific need of a Client/Business
  • Commercial Software: To meet a perceived need of some set of potential users
  • Open Source Software: To meet aperceived need of some set of potential developers
  • Personal User Software: Generally written to cater to personal use, or to automate mundane tasks
  • Embedded Software: Developed to embed-in and control consumer products such as toys, machines, drones etc
  • System Software:This underlines utility applications, Operating Systems, Compilers, assemblers, Programming IDEs etc.

Software Engineering
There has always been a need to for a better quality control mechanism for the software development process, and it therefore has given rise to the discipline of software engineering, which aims to apply the systematic approach exemplified in the engineering paradigm to the process of software development.
There are many approaches to software project management, genrally known as software development life cycle models, methodologies, processes, or models. The waterfall model is a traditional version, vis-e-vis more recent innovative methods of agile software development.

View Software Development Articles...