SlideShare a Scribd company logo
Domain specific Software Architecture
INTRODUCTION TO DSSA
 DSSA is basically ‘Software Architecture focused on a
particular domain.’
 Why is it focused to a particular domain?
a) To constraint the problem space
b) Facilitate focused development
 DSSA is a collection of structures of the system which
comprise of:
a) Software elements
b) Externally visible properties of those elements
c) Relationship among those components
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Applications of DSSA
The process of
developing and
implementing
a DSSA is
called domain
engineering.
The process of
developing an
application
based on a
DSSA is called
application
engineering.
D
S
S
A
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Problem Space & Solution Space
.
.
..
.
Problem Space
General Solution Space
Problem Space
divided as per the domain
.
.
.
.
?
General Solution Space
divided as per the domain
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
DSSA Components
(Classification of requirements)
Domain Model
• Defines the behaviour of applications in the system.
• Standardizes the domain terminologies & provides the system data flow.
• Provides standardized descriptions of problems to be solved in the domain.
Reference
Requirements
• Supports the design of the reference architecture.
• Divides the customers requirement into functional and non-functional
components.
• The requirements may be mandatory, optional or variable.
Reference
Architecture
• Describes a general computational framework.
• Represents a set of principal design decisions simultaneously applicable to
multiple related systems.
• Includes explicitly defined points of variation.
(Collect info. about the domain)
(Develop a generalized framework)
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
DSSA Components(cont.)
Domain
Model
Problem
Space
The problem space is simplified through the
creation of a domain model.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Reference
Architecture
Reference
Requirements
Solution
Space
DSSA Components(cont.)
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Main Advantages of DSSA
• The overall cost is minimized as the
assets can be reused.
• The market share of the
organization can be increased by
developing related applications for
different users.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
MODULE 1:
DOMAIN MODEL
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Domain Model
Before the requirements can be determined, it is
necessary to understand the characteristics of the
system.
Domain model:
 Defines the behaviour of applications in the
system
 Standardizes the domain terminologies &
provides the system data flow.
 Provides standardized descriptions of problems
to be solved in the domain.
 Provides the vocabulary to formulate the
reference requirements.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Components of the Domain Model
 Scenarios
 Domain Dictionary
 Context/Block Diagram
 Entity-Relationship Diagram
 Object Model
 Data Flow Model
 State Transition Models
Information
model
Operational
model
Feature model
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Scenario
Scenarios are a list of events which are helpful in
eliciting the requirements from the customer in an
informal manner.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Domain Dictionary
It consists of the explanation of the terms used in
the scenarios and the customer needs statement.
Example:
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Context Information Diagram
It describes the high-level data flow between
the major components in the system.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Entity/Relationship (ER) Diagram
Represents the aggregation and generalization
relationships between entities.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Object diagram
An object-oriented approach is followed to identify
the objects which are mentioned along with their
attributes and operations.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Data-Flow Diagram
It focuses on the data exchanged within the
system, with no notion of control.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
State-Transition Diagram
It describes the events and states that take
place in the domain.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
MODULE 2:
REFERENCE REQUIREMENTS
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Reference Requirements
Reference requirements are responsible for identifying
the portion of solution space that the domain model
(problem space) will map into.
Reference Requirements:
 Support the design of the reference architecture.
 Divides the customers requirement into functional
and non-functional components.
 The requirements may be mandatory, optional or
variable.
 Constrains the architecture and the implementation.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Components of Reference Requirements
 Functional Requirements
 Non-functional Requirements
 Design Requirements
 Implementation Requirements
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Functional Requirements
Describes the functions to be performed as per the domain .
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Non-Functional Requirements
Example: Security, Performance, Reliability.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Design Requirements
Example: Architecture style, User interface style.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Implementation Requirements
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
MODULE 3:
REFERENCE ARCHITECTURE
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Reference Architecture Perquisites
There are no predefined standards for designing the
reference architecture
• This is one of the reasons, that it is supported by an extensive
documentation.
Architecture does not define implementation
• The architecture establishes constraints on downstream activities,
and those activities must produce finer-grained designs and code
that are compliant with the architecture.
Architecture is design but not all design is architecture
• There are many design decisions that are left unbound by the
architecture, and are happily left to the discretion and good
judgment of downstream designers and implementers.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Reference Architecture Perquisites
‘Design’ is a general term, don’t confuse it
with ‘System Design’ , which refers to the in-
depth view of the structure of the system.
An ‘architecture’ is a reusable design and a
‘reference architecture’ is a reusable design
for a family of systems in a particular domain.
Reference Architecture Model can also be
called as the architectural style of the system
which may be layered, pipe and filter etc.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Reference Architecture
It is a generic architecture focused on
fundamental abstractions of the domain.
• Describes a general computational
framework based on the chosen
architectural style.
• Represents a set of principal design
decisions simultaneously applicable to
multiple related systems.
• Includes explicitly defined points of
variation.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Architecture Hierarchy
Reference
Architecture
• First, a
generalized
architecture
is selected.
Application
Specific
Architecture
• Using the reference architecture,
an application specific
architecture is created.
Implementation
• The
implementation
of the
architecture is
carried out.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Components of Reference Architecture
 Reference Architecture Model
 Configuration Decision Tree
 Architecture Schema
 Dependency Diagram
 Component Interface Description
 Constraints
 Rationale
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Reference Architecture Model
All designs start out with some simple
abstraction based on the architecture style.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Configuration Decision Tree
A subset of reference requirements is chosen and
a configuration decision tree is made accordingly.
Configuration is done at reference architecture
instantiation time.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Architecture Schema
Name/Type
Description
Reference
requirements satisfied
Data flow and control
flow diagrams
Design rationale
Interface and architecture
specifications and
dependencies
It is a collection point for knowledge about the components that
make up a DSSA.
All such details
are to be listed
for every
component
involved.GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Dependency Diagram
The reference architecture dependency diagram reveals
component connections at a level of granularity reflecting
the architectural style chosen by the system architect.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Component Interface Description
The focus is on, how elements interact with their environments, not on how
elements are implemented. An Interface Description Language(IDL) is used
to describe the interface as per the syntax of the language chosen.
Ex: LILENNA
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Constraints
Constraints are the ranges of parameter
values, relationships between parameter
values or components etc. which have to be
considered throughout the development of
a system.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
Rationale
Rationales capture the motivation behind various
decisions, such as the partitioning of the system
into discrete elements and the formation of the
architecture in terms of connecting elements.
Rationales are inferences that can be structured as
an argument with the design decision being the
conclusion.
GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]

More Related Content

What's hot (20)

PPT
CBAM
Asim Shahzad
 
PPTX
Software Quality Attributes
Hayim Makabee
 
PPTX
Cost Benefit Analysis Method
Himanshu
 
PDF
System requirements engineering
Animesh Chaturvedi
 
PPTX
Presentation on uml
Shruti Dalela
 
PPTX
Object Modeling Techniques
Shilpa Wadhwani
 
PDF
SE_Lec 05_System Modelling and Context Model
Amr E. Mohamed
 
PPTX
Statistical Software Quality Assurance.pptx
KarthigaiSelviS3
 
PPTX
software project management Artifact set(spm)
REHMAT ULLAH
 
PPT
5 architecture
Adarsh Kumar
 
PPTX
Model Based Software Architectures
Munazza-Mah-Jabeen
 
PPTX
Software requirement and specification
Aman Adhikari
 
PDF
Domain Modeling
Harsh Jegadeesan
 
PDF
Introduction to SOFTWARE ARCHITECTURE
Ivano Malavolta
 
PPT
State Machine Diagram
Niloy Rocker
 
PPTX
Component Based Software Engineering
SatishDabhi1
 
PDF
Online examination system
Mr. Vikram Singh Slathia
 
PPTX
Major issues in data mining
Slideshare
 
PDF
Full report on blood bank management system
Jawhar Ali
 
PPTX
Web Engineering - Web Applications versus Conventional Software
Nosheen Qamar
 
Software Quality Attributes
Hayim Makabee
 
Cost Benefit Analysis Method
Himanshu
 
System requirements engineering
Animesh Chaturvedi
 
Presentation on uml
Shruti Dalela
 
Object Modeling Techniques
Shilpa Wadhwani
 
SE_Lec 05_System Modelling and Context Model
Amr E. Mohamed
 
Statistical Software Quality Assurance.pptx
KarthigaiSelviS3
 
software project management Artifact set(spm)
REHMAT ULLAH
 
5 architecture
Adarsh Kumar
 
Model Based Software Architectures
Munazza-Mah-Jabeen
 
Software requirement and specification
Aman Adhikari
 
Domain Modeling
Harsh Jegadeesan
 
Introduction to SOFTWARE ARCHITECTURE
Ivano Malavolta
 
State Machine Diagram
Niloy Rocker
 
Component Based Software Engineering
SatishDabhi1
 
Online examination system
Mr. Vikram Singh Slathia
 
Major issues in data mining
Slideshare
 
Full report on blood bank management system
Jawhar Ali
 
Web Engineering - Web Applications versus Conventional Software
Nosheen Qamar
 

Viewers also liked (20)

PPT
1. Overview of Distributed Systems
Daminda Herath
 
PPT
Architectural Design in Software Engineering SE10
koolkampus
 
PPTX
Software Architecture Lab
Henry Muccini
 
PPTX
Group Decision Making to improve Software Resilience
Henry Muccini
 
PDF
20 examples on Domain-Specific Modeling Languages
Juha-Pekka Tolvanen
 
PPTX
A summary of software architecture guide
Triet Ho
 
PPTX
Domain Driven Design 101
Richard Dingwall
 
PDF
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
mircea.lungu
 
PDF
Software Engineering - Ch11
Siddharth Ayer
 
PPT
Types of Network Architecture
sabari Giri
 
PPTX
Architectural styles and patterns
Himanshu
 
PDF
Software Architecture: Styles
Henry Muccini
 
PPT
Distributed & parallel system
Manish Singh
 
PPT
5.state diagrams
APU
 
PPTX
ARCHITECTURAL STYLES
Architecture Faculty
 
PDF
software architecture
Manidheer Babu
 
PPT
Information system
hiddensoul
 
PPT
Three Software Architecture Styles
Jorgen Thelin
 
PPTX
Layered Software Architecture
Lars-Erik Kindblad
 
PPT
Distributed Systems
Rupsee
 
1. Overview of Distributed Systems
Daminda Herath
 
Architectural Design in Software Engineering SE10
koolkampus
 
Software Architecture Lab
Henry Muccini
 
Group Decision Making to improve Software Resilience
Henry Muccini
 
20 examples on Domain-Specific Modeling Languages
Juha-Pekka Tolvanen
 
A summary of software architecture guide
Triet Ho
 
Domain Driven Design 101
Richard Dingwall
 
Software Architecture Recovery: The 5 Questions You Always Asked Yourself Abo...
mircea.lungu
 
Software Engineering - Ch11
Siddharth Ayer
 
Types of Network Architecture
sabari Giri
 
Architectural styles and patterns
Himanshu
 
Software Architecture: Styles
Henry Muccini
 
Distributed & parallel system
Manish Singh
 
5.state diagrams
APU
 
ARCHITECTURAL STYLES
Architecture Faculty
 
software architecture
Manidheer Babu
 
Information system
hiddensoul
 
Three Software Architecture Styles
Jorgen Thelin
 
Layered Software Architecture
Lars-Erik Kindblad
 
Distributed Systems
Rupsee
 
Ad

Similar to Domain specific Software Architecture (20)

ODP
Software Patterns
Sudarsun Santhiappan
 
PDF
Systems and Software Architecture: an introduction to architectural modelling
CARLOS III UNIVERSITY OF MADRID
 
PPTX
Software Architecture: Introduction to the abstraction (May 2014_Split)
Henry Muccini
 
PPT
Architectural design
SHREEHARI WADAWADAGI
 
PPTX
Software architecture introduction to the abstraction gssi_nov2013
Henry Muccini
 
DOC
Class notes
Pitchairaj Bhuvaneswari
 
PPT
Chapter1
Hoang Vu Dinh
 
PDF
Modeling software architecture with uml
International Journal of Science and Research (IJSR)
 
PPTX
Software architecture simplified
Prasad Chitta
 
PPT
vu-re-lecture-45 requirement engineering.ppt
ubaidullah75790
 
PPTX
Swis modeling
Prof. Amir Tomer
 
PPTX
SA_UNIT_1.pptx
ShwetaGajbhiye12
 
PDF
V5 i3201613
kisekkaVicent2
 
PPTX
Diksha sda presentation
dikshagupta111
 
PPT
Slides 6 design of sw arch using add
Javid iqbal hashmi
 
PPT
Ch6.ppt
UrviKhatri3
 
PPT
Software Architecture in Architecture design .ppt
guruswamyd785
 
PPTX
Ch6 - Architectural Design
Harsh Verdhan Raj
 
PPT
Unit 1
KRAMANJANEYULU1
 
PPTX
Software requirement specification Unit 3.pptx
SomnathMule5
 
Software Patterns
Sudarsun Santhiappan
 
Systems and Software Architecture: an introduction to architectural modelling
CARLOS III UNIVERSITY OF MADRID
 
Software Architecture: Introduction to the abstraction (May 2014_Split)
Henry Muccini
 
Architectural design
SHREEHARI WADAWADAGI
 
Software architecture introduction to the abstraction gssi_nov2013
Henry Muccini
 
Chapter1
Hoang Vu Dinh
 
Modeling software architecture with uml
International Journal of Science and Research (IJSR)
 
Software architecture simplified
Prasad Chitta
 
vu-re-lecture-45 requirement engineering.ppt
ubaidullah75790
 
Swis modeling
Prof. Amir Tomer
 
SA_UNIT_1.pptx
ShwetaGajbhiye12
 
V5 i3201613
kisekkaVicent2
 
Diksha sda presentation
dikshagupta111
 
Slides 6 design of sw arch using add
Javid iqbal hashmi
 
Ch6.ppt
UrviKhatri3
 
Software Architecture in Architecture design .ppt
guruswamyd785
 
Ch6 - Architectural Design
Harsh Verdhan Raj
 
Software requirement specification Unit 3.pptx
SomnathMule5
 
Ad

Recently uploaded (20)

PDF
Design Thinking basics for Engineers.pdf
CMR University
 
DOCX
8th International Conference on Electrical Engineering (ELEN 2025)
elelijjournal653
 
PDF
Introduction to Productivity and Quality
মোঃ ফুরকান উদ্দিন জুয়েল
 
DOC
MRRS Strength and Durability of Concrete
CivilMythili
 
PDF
International Journal of Information Technology Convergence and services (IJI...
ijitcsjournal4
 
PPTX
Introduction to Neural Networks and Perceptron Learning Algorithm.pptx
Kayalvizhi A
 
DOCX
CS-802 (A) BDH Lab manual IPS Academy Indore
thegodhimself05
 
PPTX
Shinkawa Proposal to meet Vibration API670.pptx
AchmadBashori2
 
PDF
Unified_Cloud_Comm_Presentation anil singh ppt
anilsingh298751
 
PPT
PPT2_Metal formingMECHANICALENGINEEIRNG .ppt
Praveen Kumar
 
PPTX
Day2 B2 Best.pptx
helenjenefa1
 
PPTX
美国电子版毕业证南卡罗莱纳大学上州分校水印成绩单USC学费发票定做学位证书编号怎么查
Taqyea
 
PPTX
Lecture 1 Shell and Tube Heat exchanger-1.pptx
mailforillegalwork
 
PPTX
Damage of stability of a ship and how its change .pptx
ehamadulhaque
 
PPTX
Mechanical Design of shell and tube heat exchangers as per ASME Sec VIII Divi...
shahveer210504
 
PPTX
GitOps_Repo_Structure for begeinner(Scaffolindg)
DanialHabibi2
 
PDF
MAD Unit - 1 Introduction of Android IT Department
JappanMavani
 
PPTX
Types of Bearing_Specifications_PPT.pptx
PranjulAgrahariAkash
 
PPTX
GitOps_Without_K8s_Training_detailed git repository
DanialHabibi2
 
PDF
Biomechanics of Gait: Engineering Solutions for Rehabilitation (www.kiu.ac.ug)
publication11
 
Design Thinking basics for Engineers.pdf
CMR University
 
8th International Conference on Electrical Engineering (ELEN 2025)
elelijjournal653
 
Introduction to Productivity and Quality
মোঃ ফুরকান উদ্দিন জুয়েল
 
MRRS Strength and Durability of Concrete
CivilMythili
 
International Journal of Information Technology Convergence and services (IJI...
ijitcsjournal4
 
Introduction to Neural Networks and Perceptron Learning Algorithm.pptx
Kayalvizhi A
 
CS-802 (A) BDH Lab manual IPS Academy Indore
thegodhimself05
 
Shinkawa Proposal to meet Vibration API670.pptx
AchmadBashori2
 
Unified_Cloud_Comm_Presentation anil singh ppt
anilsingh298751
 
PPT2_Metal formingMECHANICALENGINEEIRNG .ppt
Praveen Kumar
 
Day2 B2 Best.pptx
helenjenefa1
 
美国电子版毕业证南卡罗莱纳大学上州分校水印成绩单USC学费发票定做学位证书编号怎么查
Taqyea
 
Lecture 1 Shell and Tube Heat exchanger-1.pptx
mailforillegalwork
 
Damage of stability of a ship and how its change .pptx
ehamadulhaque
 
Mechanical Design of shell and tube heat exchangers as per ASME Sec VIII Divi...
shahveer210504
 
GitOps_Repo_Structure for begeinner(Scaffolindg)
DanialHabibi2
 
MAD Unit - 1 Introduction of Android IT Department
JappanMavani
 
Types of Bearing_Specifications_PPT.pptx
PranjulAgrahariAkash
 
GitOps_Without_K8s_Training_detailed git repository
DanialHabibi2
 
Biomechanics of Gait: Engineering Solutions for Rehabilitation (www.kiu.ac.ug)
publication11
 

Domain specific Software Architecture

  • 2. INTRODUCTION TO DSSA  DSSA is basically ‘Software Architecture focused on a particular domain.’  Why is it focused to a particular domain? a) To constraint the problem space b) Facilitate focused development  DSSA is a collection of structures of the system which comprise of: a) Software elements b) Externally visible properties of those elements c) Relationship among those components GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 3. Applications of DSSA The process of developing and implementing a DSSA is called domain engineering. The process of developing an application based on a DSSA is called application engineering. D S S A GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 4. Problem Space & Solution Space . . .. . Problem Space General Solution Space Problem Space divided as per the domain . . . . ? General Solution Space divided as per the domain GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 5. DSSA Components (Classification of requirements) Domain Model • Defines the behaviour of applications in the system. • Standardizes the domain terminologies & provides the system data flow. • Provides standardized descriptions of problems to be solved in the domain. Reference Requirements • Supports the design of the reference architecture. • Divides the customers requirement into functional and non-functional components. • The requirements may be mandatory, optional or variable. Reference Architecture • Describes a general computational framework. • Represents a set of principal design decisions simultaneously applicable to multiple related systems. • Includes explicitly defined points of variation. (Collect info. about the domain) (Develop a generalized framework) GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 6. DSSA Components(cont.) Domain Model Problem Space The problem space is simplified through the creation of a domain model. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 8. Main Advantages of DSSA • The overall cost is minimized as the assets can be reused. • The market share of the organization can be increased by developing related applications for different users. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 9. MODULE 1: DOMAIN MODEL GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 10. Domain Model Before the requirements can be determined, it is necessary to understand the characteristics of the system. Domain model:  Defines the behaviour of applications in the system  Standardizes the domain terminologies & provides the system data flow.  Provides standardized descriptions of problems to be solved in the domain.  Provides the vocabulary to formulate the reference requirements. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 11. Components of the Domain Model  Scenarios  Domain Dictionary  Context/Block Diagram  Entity-Relationship Diagram  Object Model  Data Flow Model  State Transition Models Information model Operational model Feature model GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 12. Scenario Scenarios are a list of events which are helpful in eliciting the requirements from the customer in an informal manner. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 13. Domain Dictionary It consists of the explanation of the terms used in the scenarios and the customer needs statement. Example: GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 14. Context Information Diagram It describes the high-level data flow between the major components in the system. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 15. Entity/Relationship (ER) Diagram Represents the aggregation and generalization relationships between entities. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 16. Object diagram An object-oriented approach is followed to identify the objects which are mentioned along with their attributes and operations. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 17. Data-Flow Diagram It focuses on the data exchanged within the system, with no notion of control. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 18. State-Transition Diagram It describes the events and states that take place in the domain. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 19. MODULE 2: REFERENCE REQUIREMENTS GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 20. Reference Requirements Reference requirements are responsible for identifying the portion of solution space that the domain model (problem space) will map into. Reference Requirements:  Support the design of the reference architecture.  Divides the customers requirement into functional and non-functional components.  The requirements may be mandatory, optional or variable.  Constrains the architecture and the implementation. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 21. Components of Reference Requirements  Functional Requirements  Non-functional Requirements  Design Requirements  Implementation Requirements GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 22. Functional Requirements Describes the functions to be performed as per the domain . GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 23. Non-Functional Requirements Example: Security, Performance, Reliability. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 24. Design Requirements Example: Architecture style, User interface style. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 25. Implementation Requirements GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 26. MODULE 3: REFERENCE ARCHITECTURE GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 27. Reference Architecture Perquisites There are no predefined standards for designing the reference architecture • This is one of the reasons, that it is supported by an extensive documentation. Architecture does not define implementation • The architecture establishes constraints on downstream activities, and those activities must produce finer-grained designs and code that are compliant with the architecture. Architecture is design but not all design is architecture • There are many design decisions that are left unbound by the architecture, and are happily left to the discretion and good judgment of downstream designers and implementers. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 28. Reference Architecture Perquisites ‘Design’ is a general term, don’t confuse it with ‘System Design’ , which refers to the in- depth view of the structure of the system. An ‘architecture’ is a reusable design and a ‘reference architecture’ is a reusable design for a family of systems in a particular domain. Reference Architecture Model can also be called as the architectural style of the system which may be layered, pipe and filter etc. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 29. Reference Architecture It is a generic architecture focused on fundamental abstractions of the domain. • Describes a general computational framework based on the chosen architectural style. • Represents a set of principal design decisions simultaneously applicable to multiple related systems. • Includes explicitly defined points of variation. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 30. Architecture Hierarchy Reference Architecture • First, a generalized architecture is selected. Application Specific Architecture • Using the reference architecture, an application specific architecture is created. Implementation • The implementation of the architecture is carried out. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 31. Components of Reference Architecture  Reference Architecture Model  Configuration Decision Tree  Architecture Schema  Dependency Diagram  Component Interface Description  Constraints  Rationale GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 32. Reference Architecture Model All designs start out with some simple abstraction based on the architecture style. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 33. Configuration Decision Tree A subset of reference requirements is chosen and a configuration decision tree is made accordingly. Configuration is done at reference architecture instantiation time. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 34. Architecture Schema Name/Type Description Reference requirements satisfied Data flow and control flow diagrams Design rationale Interface and architecture specifications and dependencies It is a collection point for knowledge about the components that make up a DSSA. All such details are to be listed for every component involved.GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 35. Dependency Diagram The reference architecture dependency diagram reveals component connections at a level of granularity reflecting the architectural style chosen by the system architect. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 36. Component Interface Description The focus is on, how elements interact with their environments, not on how elements are implemented. An Interface Description Language(IDL) is used to describe the interface as per the syntax of the language chosen. Ex: LILENNA GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 37. Constraints Constraints are the ranges of parameter values, relationships between parameter values or components etc. which have to be considered throughout the development of a system. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]
  • 38. Rationale Rationales capture the motivation behind various decisions, such as the partitioning of the system into discrete elements and the formation of the architecture in terms of connecting elements. Rationales are inferences that can be structured as an argument with the design decision being the conclusion. GNDU, Amritsar [M.Tech. Software Systems 2012-2014 batch]