Object Oriented Software Engineering   View all facts   Glossary   Help
subject > process > design
Next processdeterioration    Upprocess    Previous processdeployment   

design comparison table
Subject follow abbreviate as requires accomplish make have advantage ensure that is part of done in conjunction with is a synonym of is a subtopic of involve perform after require reduce understand by improve helps has definition see as play see also
algorithm design          9.1 - The Process of Design  considerable experience    The design of computational mechanisms  design^2
architecture design         software architecture^29.4 - Software Architecture  considerable experience       design^2
bottom-up design     normally useful so that reusable components can be created; these can then be used in several places in the overall system    9.1 - The Process of Design  considerable experience    An approach to design in which you start by designing the low-level details such as the utilities, and then decide how these will be put together to create successively higher-level components, and ultimately the entire system  design^2
class design          9.1 - The Process of Design  considerable experience    The design of the various features of classes such as associations, attributes, interactions and states  design^2
database design          9.1 - The Process of Design  considerable experience    The design of how data is persistently stored so that it may be accessed by many programs and users, over an indefinite period of time  design^2
defensive design          9.2 - Principles Leading to Good Design  considerable experience    Design with awareness that other components cannot be trusted  design^2
design by contract          9.2 - Principles Leading to Good Design  considerable experience    An approach to design in which each method has a contract with its callers regarding preconditions, postconditions and invariants  design^2
detailed design       design  1.7 - Activities Common to Software Projectsdeciding on data structures, classes, algorithms and procedures to be used considerable experience    The design of the internals of individual subsystems  design^2
object oriented designobject oriented analysisOODan understanding of how objects are physically represented using a particular programming language       2.2 - Classes and Objects  the skill of organizing classes into inheritance hierarchies       design^2
protocol design          9.1 - The Process of Design  considerable experience    The design of communications protocols  design^2
software architecture^2         architecture design9.4 - Software Architecturethe development of a variety of high level views of the system considerable experience    The process of designing the global organization of a software system, including dividing software into subsystems, deciding how these will interact, and determining their interfaces a central role in software engineeringsoftware architecture^3
top-down design     gives the system being designed a good structure    9.1 - The Process of Design  considerable experience    An approach to design in which one starts with the high-level architecture of the system, then elaborates the design of subsystems until finally designing the low-level details such as the structure of individual classes  design^2
user centred design UCD if developers follow certain guidelines including: the system more attractive so users may be more willing to buy and use it unnecessary features and functions are not added to the software   7.1 - User Centred Design  developers to understand userstraining and support costs the system's efficiency of usedevelopers prioritize their work so that the most important features reach the users soonerAn approach to software engineering using techniques that focus on users and their needs  design^2
user interface design       designother software engineering activities 7.4 - The Basics of User Interface Designdeciding in detail how the user is to interact with the systemdomain analysis and problem definitionconsiderable experience all software engineers  The design of the user interface of a software systemseparate from software engineering design^2

Next processdeterioration    Upprocess    Previous processdeployment