From Wikipedia, the free encyclopedia

This is a list of approaches, styles, methodologies, and philosophies in software development and engineering. It also contains programming paradigms, software development methodologies, software development processes, and single practices, principles, and laws.

Some of the mentioned methods are more relevant to a specific field than another, such as automotive or aerospace. [1] [2] The trend towards agile methods in software engineering is noticeable, [3] however the need for improved studies on the subject is also paramount. [4] [5] Also note that some of the methods listed might be newer or older or still in use or out-dated, and the research on software design methods is not new and on-going. [6] [7] [8] [9]

Software development methodologies, guidelines, strategies

Large-scale programming styles

Specification-related paradigms

Comprehensive systems

Rules of thumb, laws, guidelines and principles

Other

Programming paradigms

Software development methodologies

Software development processes

See also

Further reading

  • ISO/IEC/IEEE 26515:2018(E) - ISO/IEC/IEEE International Standard - Systems and software engineering — Developing information for users in an agile environment [17]

Other materials, books, articles, etc.

References

  1. ^ Gruszczynski, B. (May 2006). "An overview of the current state of software engineering in embedded automotive electronics". 2006 IEEE International Conference on Electro/Information Technology. pp. 377–381. doi: 10.1109/EIT.2006.252190. ISBN  0-7803-9592-1. S2CID  34164454.
  2. ^ Patel, B. K.; Litchfield, V.; Tamanaha, D.; Davis, A. (February 1991). "Real time systems/Software methodologies for large aerospace systems". 1991 IEEE Aerospace Applications Conference Digest. pp. 2/1–2/9. doi: 10.1109/AERO.1991.154537. ISBN  0-87942-686-1. S2CID  151614328.
  3. ^ Yau, Stephen S; Jia, Xiaoping; Bae, Doo-Hwan (1992-05-01). "Software design methods for distributed computing systems". Computer Communications. Software aspects of future trends in distributed systems. 15 (4): 213–224. doi: 10.1016/0140-3664(92)90104-M. ISSN  0140-3664.
  4. ^ Stavru, Stavros (2014-08-01). "A critical examination of recent industrial surveys on agile method usage". Journal of Systems and Software. 94: 87–97. doi: 10.1016/j.jss.2014.03.041. ISSN  0164-1212.
  5. ^ Dybå, Tore; Dingsøyr, Torgeir (2008-08-01). "Empirical studies of agile software development: A systematic review". Information and Software Technology. 50 (9): 833–859. doi: 10.1016/j.infsof.2008.01.006. ISSN  0950-5849. S2CID  2244031.
  6. ^ Taylor, P. (November 2011). "Designerly thinking: What software methodology can learn from design theory". Proceedings International Conference on Software Methods and Tools. SMT 2000. pp. 107–116. doi: 10.1109/SWMT.2000.890426. ISBN  978-0-7695-0903-7. S2CID  110041968.
  7. ^ Yau, Stephen S; Jia, Xiaoping; Bae, Doo-Hwan (1992-05-01). "Software design methods for distributed computing systems". Computer Communications. Software aspects of future trends in distributed systems. 15 (4): 213–224. doi: 10.1016/0140-3664(92)90104-M. ISSN  0140-3664.
  8. ^ Gomaa, Hassan (1994-05-01). "Software design methods for the design of large-scale real-time systems". Journal of Systems and Software. 25 (2): 127–146. doi: 10.1016/0164-1212(94)90002-7. ISSN  0164-1212.
  9. ^ Budgen, David (July 1995). "'Design models' from software design methods". Design Studies. 16 (3): 293–325. doi: 10.1016/0142-694X(95)00001-8. ISSN  0142-694X.
  10. ^ Mantle, Mickey W. (2020). Managing the unmanageable : rules, tools, and insights for managing software people and teams. Ron Lichty (2nd ed.). Boston. ISBN  978-0-13-566763-7. OCLC  1137802633.{{ cite book}}: CS1 maint: location missing publisher ( link)
  11. ^ "C++ Core Guidelines". isocpp.github.io. Retrieved 2021-04-11.
  12. ^ Davis, Alan Mark. (1995). 201 principles of software development. New York: McGraw-Hill. ISBN  0-07-015840-1. OCLC  31814837.
  13. ^ Krug, Steve (2014). Don't make me think, revisited : a common sense approach to Web usability. Bayle, Elisabeth,, Straiger, Aren,, Matcho, Mark (Third ed.). [San Francisco, California]. ISBN  978-0-321-96551-6. OCLC  859556499.{{ cite book}}: CS1 maint: location missing publisher ( link)
  14. ^ Turner, Raymond; Angius, Nicola (2020), "The Philosophy of Computer Science", in Zalta, Edward N. (ed.), The Stanford Encyclopedia of Philosophy (Spring 2020 ed.), Metaphysics Research Lab, Stanford University, retrieved 2020-09-01
  15. ^ Johnson, Pontus; Ekstedt, Mathias; Jacobson, Ivar (2012). "Where's the Theory for Software Engineering?". IEEE Software. 29 (5): 96. doi: 10.1109/MS.2012.127. ISSN  0740-7459. S2CID  38239662.
  16. ^ Aslett, M. J. (December 1991). "An overview of the HOOD method". 1991 IEE Colloquium on an Introduction to Software Design Methodologies (Ref. No: 1991/181): 5/1–5/4.
  17. ^ ISO/IEC/IEEE International Standard - Systems and software engineering — Developing information for users in an agile environment. Iso/Iec/IEEE 26515:2018(E). December 2018. pp. 1–32. doi: 10.1109/IEEESTD.2018.8584455. ISBN  978-1-5044-5297-7.
From Wikipedia, the free encyclopedia

This is a list of approaches, styles, methodologies, and philosophies in software development and engineering. It also contains programming paradigms, software development methodologies, software development processes, and single practices, principles, and laws.

Some of the mentioned methods are more relevant to a specific field than another, such as automotive or aerospace. [1] [2] The trend towards agile methods in software engineering is noticeable, [3] however the need for improved studies on the subject is also paramount. [4] [5] Also note that some of the methods listed might be newer or older or still in use or out-dated, and the research on software design methods is not new and on-going. [6] [7] [8] [9]

Software development methodologies, guidelines, strategies

Large-scale programming styles

Specification-related paradigms

Comprehensive systems

Rules of thumb, laws, guidelines and principles

Other

Programming paradigms

Software development methodologies

Software development processes

See also

Further reading

  • ISO/IEC/IEEE 26515:2018(E) - ISO/IEC/IEEE International Standard - Systems and software engineering — Developing information for users in an agile environment [17]

Other materials, books, articles, etc.

References

  1. ^ Gruszczynski, B. (May 2006). "An overview of the current state of software engineering in embedded automotive electronics". 2006 IEEE International Conference on Electro/Information Technology. pp. 377–381. doi: 10.1109/EIT.2006.252190. ISBN  0-7803-9592-1. S2CID  34164454.
  2. ^ Patel, B. K.; Litchfield, V.; Tamanaha, D.; Davis, A. (February 1991). "Real time systems/Software methodologies for large aerospace systems". 1991 IEEE Aerospace Applications Conference Digest. pp. 2/1–2/9. doi: 10.1109/AERO.1991.154537. ISBN  0-87942-686-1. S2CID  151614328.
  3. ^ Yau, Stephen S; Jia, Xiaoping; Bae, Doo-Hwan (1992-05-01). "Software design methods for distributed computing systems". Computer Communications. Software aspects of future trends in distributed systems. 15 (4): 213–224. doi: 10.1016/0140-3664(92)90104-M. ISSN  0140-3664.
  4. ^ Stavru, Stavros (2014-08-01). "A critical examination of recent industrial surveys on agile method usage". Journal of Systems and Software. 94: 87–97. doi: 10.1016/j.jss.2014.03.041. ISSN  0164-1212.
  5. ^ Dybå, Tore; Dingsøyr, Torgeir (2008-08-01). "Empirical studies of agile software development: A systematic review". Information and Software Technology. 50 (9): 833–859. doi: 10.1016/j.infsof.2008.01.006. ISSN  0950-5849. S2CID  2244031.
  6. ^ Taylor, P. (November 2011). "Designerly thinking: What software methodology can learn from design theory". Proceedings International Conference on Software Methods and Tools. SMT 2000. pp. 107–116. doi: 10.1109/SWMT.2000.890426. ISBN  978-0-7695-0903-7. S2CID  110041968.
  7. ^ Yau, Stephen S; Jia, Xiaoping; Bae, Doo-Hwan (1992-05-01). "Software design methods for distributed computing systems". Computer Communications. Software aspects of future trends in distributed systems. 15 (4): 213–224. doi: 10.1016/0140-3664(92)90104-M. ISSN  0140-3664.
  8. ^ Gomaa, Hassan (1994-05-01). "Software design methods for the design of large-scale real-time systems". Journal of Systems and Software. 25 (2): 127–146. doi: 10.1016/0164-1212(94)90002-7. ISSN  0164-1212.
  9. ^ Budgen, David (July 1995). "'Design models' from software design methods". Design Studies. 16 (3): 293–325. doi: 10.1016/0142-694X(95)00001-8. ISSN  0142-694X.
  10. ^ Mantle, Mickey W. (2020). Managing the unmanageable : rules, tools, and insights for managing software people and teams. Ron Lichty (2nd ed.). Boston. ISBN  978-0-13-566763-7. OCLC  1137802633.{{ cite book}}: CS1 maint: location missing publisher ( link)
  11. ^ "C++ Core Guidelines". isocpp.github.io. Retrieved 2021-04-11.
  12. ^ Davis, Alan Mark. (1995). 201 principles of software development. New York: McGraw-Hill. ISBN  0-07-015840-1. OCLC  31814837.
  13. ^ Krug, Steve (2014). Don't make me think, revisited : a common sense approach to Web usability. Bayle, Elisabeth,, Straiger, Aren,, Matcho, Mark (Third ed.). [San Francisco, California]. ISBN  978-0-321-96551-6. OCLC  859556499.{{ cite book}}: CS1 maint: location missing publisher ( link)
  14. ^ Turner, Raymond; Angius, Nicola (2020), "The Philosophy of Computer Science", in Zalta, Edward N. (ed.), The Stanford Encyclopedia of Philosophy (Spring 2020 ed.), Metaphysics Research Lab, Stanford University, retrieved 2020-09-01
  15. ^ Johnson, Pontus; Ekstedt, Mathias; Jacobson, Ivar (2012). "Where's the Theory for Software Engineering?". IEEE Software. 29 (5): 96. doi: 10.1109/MS.2012.127. ISSN  0740-7459. S2CID  38239662.
  16. ^ Aslett, M. J. (December 1991). "An overview of the HOOD method". 1991 IEE Colloquium on an Introduction to Software Design Methodologies (Ref. No: 1991/181): 5/1–5/4.
  17. ^ ISO/IEC/IEEE International Standard - Systems and software engineering — Developing information for users in an agile environment. Iso/Iec/IEEE 26515:2018(E). December 2018. pp. 1–32. doi: 10.1109/IEEESTD.2018.8584455. ISBN  978-1-5044-5297-7.

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook