Table of Contents
Outline of software development
Short description: Overview of and topical guide to software development
The following outline is provided as an overview of and topical guide to software development:
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.<ref>http://www.bestpricecomputers.co.uk/glossary/application-development.htm</ref> Therefore, software development may include research, new development, prototyping, modification, reuse, re-engineering, maintenance, or any other activities that result in software products.<ref>
</ref>
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
History of software development
Software development participants
Software development problems
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 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
-
-
- Stages of development
- Release
- Release to manufacturing (RTM)
- Web release (RTW)
-
- End-of-life – termination of support for the product
-
Activities and steps
-
-
- Uninstallation
- Product retirement
Software development methodologies
Agile software development
Supporting disciplines
- Computer programming –
- Software documentation –
- Software engineering –
- Software quality assurance (SQA) –
- User experience design –
Software development tools
Education relevant to software development
- Bachelor's Degree in 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 a common initial bachelor's degree for those entering the field of software development.
Software development organizations
While the IT industry undergoes changes faster than any other field, most technical experts agree that one needs to have the community they can consult, learn from or share their experience with. Here is the list of well-known software development organizations.
- Association of Computer Engineers and Technicians (ACE – ACET) professional standards within the IT industry.
- Association for Computing Machinery (ACM) is one of the oldest and largest scientific communities that deal with computing and technology. It covers a wide range of topics including e-commerce, bioinformatics, and networking.
- Association of Independent Information Professionals (AIIP) is an association for information professionals working independently or within the related industries.
- Association of Information Technology Professionals (AITP) is a worldwide community that focuses on information technology education. It helps to connect experts from different IT fields.
- ASIS International (ASIS) is the leading community that connects security professionals from all over the world.
- Association of Shareware Professionals (ASP) connects developers and tech specialists who work with services and application on “try-before-you-buy” basis.
- Association for Women in Computing (AWC) organizes educational and networking events for female tech specialists in order to increase the share of women in the industry.
- Black Data Processing Associates (BDPA) gathers a community of African Americans working in information technology for both educational and professional growth.
- Computer & Communications Industry Association (CCIA) advocates for open markets, systems and competition.
- Computing Technology Industry Association (CompTIA) provides certifications for the IT industry, as well as educates individuals and group on changes and tendencies for the industry.
- Computer Professionals for Social Responsibility (CPSR) an organization concerned with technology's impact on society. The group provides the assessment of the tech development and its impact on various fields of life.
- Data & Analysis Center for Software (DACS) collects and serves the information about various entities and software they produce, as well as its trustworthiness.
- EDUCAUSE is a non-profit organization that states its mission as ‘advance higher education through information technology’.
- European Computer Manufacturers Association (ECMA) is a European organization that facilitates standards and information and communication systems.
- International Association of Engineers (IAENG) is an international association that used to be a private network. Nowadays, hosts annual World Congress on Engineering for R&D and engineers.
- Institute of Electrical and Electronics Engineers (IEEE) Computer Society provides educational services to its members worldwide. This society has one of the biggest networks and offers numerous perks to its members.
- Information Systems Security Association (ISSA) is a not-for-profit, that encourages the use of practices to protect the confidentiality and integrity of information resources.
- Network Professional Association (NPA) encourages its members to adhere to the code of ethics, follows the latest best practices and indulge in continuous self-education.
- Technology Services Industry Association (TSIA) is a professional association that offers research and advisory services.
- Society for Technical Communication (STC) offers support and knowledge sharing to specialists involved in technical communication and related fields.
- User Experience Professionals Association (UXPA) is an organization that shares knowledge about UX and helps its members to grow, develop and improve their products.
- Women in Technology (WIT) advocates the education of female representatives in the industry all the way from elementary training to advanced programs.