Object-oriented design
The design activity divides into the system design and the detailed design and so on two main stages, for the complex system, reduces the complexity the effective method is the system modularization, namely has a complex large-size system decomposition into several relatively simple small parts, called the subsystem. The coupling degree is the degree of association between two subsystems, the lower the coupling the better. Cohesion is the degree of correlation within the subsystem, and the higher the cohesion, the better. Reuse is the creation of new software systems using some developed software elements that are useful for building new systems. Software architectures include: Warehouse architecture, tiered architecture, MVC architecture, client/server architecture, pipeline, and filter architecture. There are 3 ways to manage data storage: Data files, relational databases, object-oriented databases. Detailed design includes method modeling, attribute modeling, state modeling, and relational modeling. Common design Patterns are: Abstract Factory mode, adaptor mode, bridge mode, facade mode. User interface design principles: User-controlled, consistent, personalized, tolerant, feedback, aesthetic and usability.
Theory, method and practice of software Engineering (eighth chapter)