Published May 20, 2022 | Version v1
Journal article Open

Ten Suggested Practices for Software Design

Creators

  • 1. Lawrence Livermore National Lab

Description

Software design is more than organization of files, naming, and choice of code abstractions.} It is everything that comes between the state of having nothing to finishing a complex tool or system, and even continues beyond that until the code is never looked at by human eyes again. While we can read about language specific design, or formal specifications including defining goals, requirements specifications, planning,  programming, and evaluation, often these processes are not followed explicitly. Often we pick up niche practices, whether consciously or subconsciously, that help us to be productive and intelligent designers. Arguably, software design that might be considered "good" as evaluated by its transparency, ease of use and maintenance, and functionality becomes that way as a result of one or more software engineers discovering their optimal strategies for design. This whitepaper discusses ten suggested practices for software design that are based on learning, growth, and people.

Files

Ten_Suggested_Practices_Software_Design.pdf

Files (153.1 kB)

Name Size Download all
md5:c4505c443aa5a1bce4d10765939b53ec
153.1 kB Preview Download