|
Development Process
|
|
Design Principles
|
|
Design Patterns
|
|
Requirement Analysis
|
|
Quality Models
|
|
Design Quality Metrics
|
|
Design Quality Characteristics
|
|
O-O Metrics : C&K and MOOD
|
|
Modularity
|
|
|
Cohesion
|
|
|
Coupling
|
|
|
Understandability
|
|
|
Sufficiency
|
|
|
Robustness
|
|
|
Flexibility
|
|
|
Reusability
|
|
|
Efficiency
|
|
|
Reliability
|
|
Software components
|
|
Key Factors
|
|
Architectural styles
|
|
Correctness
|
|
|
Maintainabilty
|
|
|
Usability
|
|
AST
|
|
CFG
|
|
Data Dependency Graph
|
|
Optimisations
|
|
Evolution vs Maintenance
|
|
|
Laws of Software Evolution
|
|
|
Staged Model of Evolution
|
|
|
Legacy Software Evolution
|
Wraping, Migration
|
|
Layered
|
|
|
MVC
|
|
|
Pipe-and-Filter
|
|
|
Client-Server
|
|
|
Peer-to-peer
|
|
|
Service-Oriented
|
|
|
Publish-Subscribe
|
|
|
Edge-dominant
|
|
|
3-Tier / Multi-tier
|
|
|
Implicit Invocation
|
|
Input Control Patterns
|
Front Controller, Page Controller
|
|
Request encapsulation and execution pattern
|
Command pattern, Application controller, Command processor
|
|
Output Control Patterns
|
Template View, Transform View
|
|
Access Control Patterns
|
Firewall proxy, Authorization
|
|
Messaging Patterns
|
Channel, Endpoint, Translator, Router, scatter-gather, aggregator, splitter
|
|
Object Interaction Patterns
|
Observer, Mediator, Facade, Memento, Data Transfer Object, Double dispatch
|
|
Information Hiding
|
|
|
Separation of Concerns
|
|
|
Open Close Principle
|
|
|
Interface Segregation Principle
|
|
|
Program to Interface
|
|
|
Dependency Inversion
|
|
|
Object composition over inheritance
|
No comments yet.
Cheatography n. The art of mapping complex subjects into clear, instantly navigable reference guides.