Puneet Varma (Editor)

Outline of software development

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

The following outline is provided as an overview of and topical guide to software development:

Contents

Software development – development of a software product, which entails computer programming (process of writing and maintaining the source code), but also encompasses a planned and structured process from the conception of the desired software to its final manifestation. Therefore, software development may include research, new development, prototyping, modification, reuse, re-engineering, maintenance, or any other activities that result in software products.

What type of thing is software development?

Software development can be described as all of the following:

  • Research and development –
  • Vocation –
  • Profession –
  • Branches of software development

  • Video game development
  • Web application development
  • History of software development

    History of software development

    Software development participants

  • Software developer
  • Software engineer
  • Consulting software engineer
  • Computer programmer
  • Software publisher
  • Software development problems

  • Shovelware
  • Software bloat
  • Software bug
  • Software project management

  • Software project management – art and science of planning and leading software projects. It is a sub-discipline of project management in which software projects are planned, monitored and controlled.
  • Software configuration management
  • Software development strategies

  • Offshore software R&D – provision of software development services by an external supplier positioned in a country that is geographically remote from the client enterprise; a type of offshore outsourcing.
  • Software development process

  • Software development process
  • Software release life cycle
  • Stages of development
  • Pre-alpha
  • Alpha release
  • Beta release
  • Open beta
  • Closed beta
  • Release candidate
  • Release
  • Release to manufacturing (RTM)
  • General availability release (GA)
  • Web release (RTW)
  • Technical support
  • End-of-life – termination of support for the product
  • Activities and steps

  • Requirements analysis
  • Software development effort estimation
  • Functional specification
  • Software architecture
  • Software design
  • Computer programming
  • Software testing
  • Software deployment
  • Software release
  • Product installation
  • Product activation
  • Deactivation
  • Adaptation
  • Software update
  • Uninstallation
  • Uninstaller
  • Product retirement
  • Software maintenance
  • Software development methodologies

    Software development methodology

  • Aspect-oriented software development
  • Cleanroom Software Engineering
  • Iterative and incremental development
  • Incremental funding methodology
  • Rapid application development
  • IBM Rational Unified Process
  • Spiral model
  • Waterfall model
  • Extreme programming
  • Lean software development
  • Scrum
  • V-Model
  • Test-driven development (TDD)
  • Agile software development

    Agile software development

  • Cross-functional team
  • Extreme programming
  • Iterative and incremental development
  • Pair programming
  • Self-organization
  • Timeboxing
  • Supporting disciplines

  • Computer programming –
  • Software documentation –
  • Software engineering –
  • Software quality assurance (SQA) –
  • User experience design –
  • Software development tools

  • Programming tool
  • Compiler
  • Debugger
  • Performance analysis
  • Graphical user interface builder
  • Integrated development environment
  • Education relevant to software development

  • Bachelor of Computer Science – type of bachelor's degree awarded for study of computer science, emphasizing the mathematical and theoretical foundations of computing, rather than teaching specific technologies that may quickly become outdated. A Bachelor of Computer Science degree is normally required in order to work in the field of software development. Abbreviated "BCompSc" or "BCS".
  • References

    Outline of software development Wikipedia