Software Characteristics


Although it was mentioned earlier in this chapter, we want to emphasize the scope of our discussion. We talk about software characteristics ”the characteristics of the code. We do not address characteristics that refer to what the code creates when it is executed. Such characteristics are usually expressed by properties such as usefulness , user friendly, graphical user interface (GUI), and so forth.

Code characteristics can be divided into two types: characteristics that examine the functionality of the code (efficiency, maturity, testability, and recoverability, for example) and characteristics that are concerned with the code s shape and communicative aspects (readability, clarity, meaning). See [Shneiderman80] for further information.

The discussion in this chapter is limited to the second type of characteristic, since these characteristics are most relevant to the human aspects of software engineering described in this book. The awareness of such characteristics invites software developers not only to consider their current needs to produce the code, but also, to analyze other team members perspective and understanding of the code, and to consider topics related to the future development process. We discuss how such characteristics are achieved by referring to programming style.

The following discussion about programming style is connected neither to a specific programming language nor to a specific software development environment. Our aim is to show how programming style may be a vehicle that improves communication between software developers. For this aim, we look only at programming style guidelines that address communication issues and not technical issues. For example, using global variables is a bad habit, because their value can be changed by many programmers and no one can be sure what their value is in any specific moment. Still, no communication problem between software developers will result from using such variables . Accordingly, because this is a more technical problem than a communication among programmers problem, we do not address it.




Human Aspects of Software Engineering
Human Aspects of Software Engineering (Charles River Media Computer Engineering)
ISBN: 1584503130
EAN: 2147483647
Year: 2004
Pages: 242

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net