DESIGN PROCESS AND CONCEPTS. Design process s/w design is an iterative process through which requirements are translated into a “blueprint” for constructing.

Slides:



Advertisements
Similar presentations
Unit-IV Design Engineering
Advertisements

Software Design Fundamentals
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Design Concepts and Principles
Chapter 13 Design Concepts and Principles
Design Phase What’s design?
Design Concepts And Principles Software Design -- An iterative process transforming requirements into a “blueprint” for constructing the software.
Component-Level Design
Software Metrics II Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
Software Engineering CSE470: Systems Engineering 35 Computer System Engineering Computer System Engineering is a problem-solving activity. Itemize desired.
Architectural Design.
Design Concepts "You can use an eraser on the drafting table or a sledge hammer on the construction site." Frank Lloyd Wright.
Chapter 2 The process Process, Methods, and Tools
1/19 Component Design On-demand Learning Series Software Engineering of Web Application - Principles of Good Component Design Hunan University, Software.
CSE 303 – Software Design and Architecture
Design Issues Practice: A generic View Design Principles.
Chapter 9 Design Engineering
 2004 by SEC Chapter 4 Software Design. 2  2004 by SEC Chapter 4 Software Design 4.1 Design Fundamentals 4.2 Design Method 4.3 Architecture Design
SOFTWARE DESIGN.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
SOFTWARE DESIGN Design Concepts Design is a meaningful engineering representation of something that is to be built It can be traced to a customer’s requirements.
Design engineering Vilnius The goal of design engineering is to produce a model that exhibits: firmness – a program should not have bugs that inhibit.
Drexel University CS 451 Software Engineering Winter Yuanfang Cai Room 104, University Crossings
Chapter : Design Engineering. Design Engineering It covers the set of principles, concepts, and practices that lead to the development of a high quality.
Design Concepts and Principles Instructor: Dr. Jerry Gao.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 11 Slide 1 Design.
Chapter 13 Design Concepts and Principles Software Engineering: A Practitioner's Approach, 5/e.
SIM3302 SOFTWARE DESIGN & TESTING
1 Chapter 9 Design Engineering. 2 Analysis Model -> Design Model.
Design Concepts By Deepika Chaudhary.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
Software Design: Principles, Process, and Concepts Getting Started with Design.
Developed by Reneta Barneva, SUNY Fredonia Software Design and Software Engineering.
Design Methods Instructor: Dr. Jerry Gao. Software Design Methods Design --> as a multistep process in which we design: a) data structureb) program structure.
Software Engineering B.Tech IT/II Sem-II Term: Unit-4 PPT SLIDES Text Books:1.Software Engineering, A practitioner’s approach Roger s. Pressman.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Component Design Elaborating the Design Model. Component Design Translation of the architectural design into a detailed (class-based or module- based)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter : 8 Design Concepts
February 19, February 19, 2016February 19, 2016February 19, 2016 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific.
Software Design. Introduction Designing engineering encompasses the set of principles concepts and practices that lead to the development of a high quality.
Architectural Complexity  A useful technique for assessing the overall complexity of a proposed architecture is to consider dependencies between components.
SOFTWARE DESIGN & SOFTWARE ENGINEERING Software design is a process in which data, program structure, interface and their details are represented by well.
Design Engineering 1. Analysis  Design 2 Characteristics of good design 3 The design must implement all of the explicit requirements contained in the.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Design Concepts ch-8
Design (Concepts and Principles)
Chapter 9 Design Engineering
CompSci 280 S Introduction to Software Development
Cmpe 589 Spring 2006.
Chapter 1: Introduction to Systems Analysis and Design
Software Design Principles
Design engineering Prepared By:Jay A.Dave..
Design and Implementation
Lecture 9- Design Concepts and Principles
Software Engineering: A Practitioner’s Approach, 6/e Chapter 11 Component-Level Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Software Quality Engineering
CIS 375 Bruce R. Maxim UM-Dearborn
Chapter 9 Design Engineering
Chapter 5 Designing the Architecture Shari L. Pfleeger Joanne M. Atlee
Object-Oriented Design
Lecture 9- Design Concepts and Principles
Chapter 9 Design Engineering
Design Engineering.
Chapter 9 Architectural Design.
Chapter 1: Introduction to Systems Analysis and Design
Software Modelling and Design
Chapter 1: Introduction to Systems Analysis and Design
DESIGN CONCEPTS AND PRINCIPLES
Presentation transcript:

DESIGN PROCESS AND CONCEPTS

Design process s/w design is an iterative process through which requirements are translated into a “blueprint” for constructing the s/w. There are 3 charecteristics for evaluating a good design 1. The design must implement all the explicit requirements and it must accommodate all the implicit requirements. 2. The design must be readable, understandable for those who generate code and test the s/w. 3. The design must provide a complete picture of the software,addressing the data,functional and behavioral domains.

Cont.. Design Guidelines A design should exhibit an architectural structure A design should be modular A design should contain distinct representations of data, architecture, interfaces, & components A design should lead to data structures that are appropriate for the objects to be implemented A design should lead to components that exhibit independent functional characteristics A design should lead to interfaces that reduce the complexity of connections between modules and external environment A design should be derived using a repeatable method that is driven by information obtained during SW requirement analysis. A design should be represented using a notation

Design Concepts Abstraction Refinement Modularity Architecture Information Hiding Functional Independence

1.Abstraction concentrate on the essential features and ignore details that are not relevant(ie.,low level details) Procedural abstraction is a sequence of instructions that has a specific & limited function Data abstraction is a collection of data that describes a data object Control abstraction implies a program control mechanisms without specify internal details

2.Refinement stepwise refinement is a top down strategy refinement is actually a process of elaboration. develop hierarchy by decompose a procedural abstraction in a stepwise fashion until programming languages are reached abstraction & refinement are complementary concepts Abstraction Refinement

3.Modularity system is decomposed into a number of modules software architecture and design patterns represent modularity 5 criteria to evaluate a design method with respect to its ability to define effective modular system i. Modular decomposability - provides a systematic approach for decomposing the problem into sub problems ii. Modular composability - enables existing design components to be assembled into a new system iii. modular understandability - module can be understood as a standalone unit (no need to refer other modules) iv. modular continuity - small changes to the system requirements result in changes to individual modules v. modular protection - unexpected condition occurs within a module & its effects are constrained within that module.

4.Architecture is the structure or organization of program components (modules) 5 different types of models are used to represent the architectural design : i. structural models : represent architecture as an organized collection of program components ii. framework models : identify repeatable architectural design framework that similar to the types of applications iii. dynamic models : address the behavioral aspects of the program architecture iv. process models : focus on the design of the business or technical process of a system v. functional models : represent functional hierarchy of a system

5. Information Hiding Modules should be specified & designed so that information (procedure & data) contained within a module is inaccessible to other modules that have no need for such information. The use of information hiding for modular systems provides the greatest benefits when modifications are required during testing and later, during s/w maintenance.

6. Functional Independence It is a direct outgrowth of modularity and the concepts of abstraction and information hiding. Cohesion-is a measure of the relative functional strength of a module. Coupling-is a measure of the relative interdependence among modules.