Software Design Methodologies



MCA09.5.1 SOFTWARE   DESIGN   METHODOLOGY
UNIT  I:
Basic concepts of  Design: Introduction, Characteristics of design activities
Essential elements of designs
Design Quality: Software quality models: Hierarchical models, Relational models
The effect of design on software quality: efficiency, Correctness and reliability, Portability, Maintainability, Reusability, Interoperability

UNIT II:
Quality attributes of software design: Witt, Baker and Merritt’s design objectives , Parnas and Weiss’s requirements of good designs, Quality of development process
Design Principles: Basic rules of software design: Causes of difficulties, Vehicles to overcome difficulties, Basic rules of software design
Design processes: The context of design in software development process, Generic design process: descriptive models, structure of software design methods

UNIT III:
Software Architecture:
The notion of architecture:  Architecture in the discipline of buildings, Architecture in the discipline of computer hardware, the general notion of architecture: The notion of software architecture: Prescriptive models, Descriptive models, Multiple view models, the roles of architecture in software design, software architectural style:  Introductory examples, the notion of software architectural style

UNIT IV:
Description of Software Architectures: The visual notation: Active and passive elements, Data and control Relationships, Decomposition/Composition of architectural elements

UNIT V:
Typical Architectural Styles: Data flow:  The general data flow styles, the pipe- and filter sub-style, the batch sequential processing sub-style
Independent components: the general independent components style, the event-based implicit invocation systems sub-style
Call and return: The general call and return style, the layered systems sub-style, data abstraction: the abstract data type and object-oriented sub-styles, Data-centred style, Virtual machine Architecture.


UNIT VI:
Using Styles In Design:
Choices of styles, Combinations of styles, Hierarchical heterogeneous styles, simultaneously heterogeneous styles, Locationally heterogeneous styles, Case Study: Keyword frequency vector: specification of the problem, designs in various styles, Analysis and comparison
Architectural Design space: Theory of design spaces: Structure of design spaces, solving design synthesis and analysis problems, Design space of architectural elements: Behavior features, static features, Static features
Design space of architectural styles:
Characteristic features of architectural styles, Classification of styles

UNIT VII:
Analysis and Evaluation: The concept of scenario, scenarios for evaluating modifiability: Scenarios for evaluating reusability, specification of operational profiles, evaluation and analysis of performance, Scenarios for evaluating reusability:
Analysis and Evaluation of Modifiability: the SAAM Method:
The input and output, the process (Activities in SAAM Analysis)

UNIT VIII:
Quality Trade- Off Analysis: The ATAM Method: ATAM analysis process, ATAM analysis activities
Model-Based Analysis: The HASARD Method: Representation of quality models, construction of quality models, Hazard identification, Cause- consequence analysis, assembling graphic model, Identification of quality concerns
Derivation of quality features: contribution factors of a quality concern, sensitive quality attributes of a component, Quality risks, trade-off points.

TEXT BOOK:
1.      Software Design Methodology: From Principles to Architectural Styles , Hong zhu, Elsevier,2009
 

REFERENCE BOOKS:

1.     Software Architecture: Perspectives on an Emerging discipline, Shaw, M.,Garlan, PEA, 2008.
2.     Software Architecture in Practice, Bass, L., Clements P,Kazman, PEA,2003   
3.     Evaluating Software Architectures: Methods and Case Studies, Clements, Kazman,  Klien, PEA, 2002
4.     Tutorial on Software Design Techniques, Freeman, Wasserman, A.I.(Es), IEEE, 1980
5.     Design and Use of Software Architectures- Adopting  and Evolving  a product – Line Approach, Bosch, J., ACM Press , Addison Wesley, 2000
6.     Software Architecture and  Design, Bernard Witt,  Baker,  Merritt, Von Nostrand Reinhold,NY, 1994.

 
Copyright (c) 2010 jntukme by Balu