tailieunhanh - Lecture Object-oriented software engineering - Chapter 9: Architecting and designing software

In this chapter, the following content will be discussed: The process of design, principles leading to good design, techniques for making good design decisions, model driven development, software, architectural patterns, writing a good design document, design of a feature for the SimpleChat instant messaging application, difficulties and risks in design. | Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 9: Architecting and Designing Software The Process of Design Definition: Design is a problem-solving process whose objective is to find and describe a way: To implement the system’s functional requirements. While respecting the constraints imposed by the quality, platform and process requirements. including the budget And while adhering to general principles of good quality © Lethbridge/Laganière 2005 Design as a series of decisions A designer is faced with a series of design issues These are sub-problems of the overall design problem. Each issue normally has several alternative solutions: design options. The designer makes a design decision to resolve each issue. This process involves choosing the best option from among the alternatives. © Lethbridge/Laganière 2005 Making decisions To make each design decision, the software engineer uses: Knowledge of the requirements the . | Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 9: Architecting and Designing Software The Process of Design Definition: Design is a problem-solving process whose objective is to find and describe a way: To implement the system’s functional requirements. While respecting the constraints imposed by the quality, platform and process requirements. including the budget And while adhering to general principles of good quality © Lethbridge/Laganière 2005 Design as a series of decisions A designer is faced with a series of design issues These are sub-problems of the overall design problem. Each issue normally has several alternative solutions: design options. The designer makes a design decision to resolve each issue. This process involves choosing the best option from among the alternatives. © Lethbridge/Laganière 2005 Making decisions To make each design decision, the software engineer uses: Knowledge of the requirements the design as created so far the technology available software design principles and ‘best practices’ what has worked well in the past © Lethbridge/Laganière 2005 Design space The space of possible designs that could be achieved by choosing different sets of alternatives is often called the design space For example: © Lethbridge/Laganière 2005 Component Any piece of software or hardware that has a clear role. A component can be isolated, allowing you to replace it with a different component that has equivalent functionality. Many components are designed to be reusable. Conversely, others perform special-purpose functions. © Lethbridge/Laganière 2005 Module A component that is defined at the programming language level For example, methods, classes and packages are modules in Java. © Lethbridge/Laganière 2005 System A logical entity, having a set of definable responsibilities or objectives, and consisting of hardware, software or both. A system can have a specification which is

TÀI LIỆU LIÊN QUAN