0% found this document useful (0 votes)
249 views12 pages

Fundamentals Software Architecture & Design

The document discusses fundamentals of software architecture and design. It defines software architecture as a blueprint that provides abstraction to manage complexity and establish communication between components. It also defines software design as a plan that provides enough detail for development. The document outlines goals of architecture like addressing requirements and quality attributes. Quality attributes are described as non-functional properties like performance, reliability and usability. The role of a software architect is discussed as providing design, domain and technology expertise.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
249 views12 pages

Fundamentals Software Architecture & Design

The document discusses fundamentals of software architecture and design. It defines software architecture as a blueprint that provides abstraction to manage complexity and establish communication between components. It also defines software design as a plan that provides enough detail for development. The document outlines goals of architecture like addressing requirements and quality attributes. Quality attributes are described as non-functional properties like performance, reliability and usability. The role of a software architect is discussed as providing design, domain and technology expertise.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Mindanao State University / College of Information Technology

Mindanao State University / College of Information Technology

Outline:

Software Architecture

Software Design

Goals of Architecture

Quality Attributes

Role of Software Architect


Fundamentals of Software Architecture & Design
Software Architecture & Design

Business
Strategy

The architecture of a system


describes:
IT Quality
 its major components, Environment Attributes

their relationships (structures),


Software
 Architecture

 and how they interact with


each other
Human
Design
Dynamics

Contributory Factors
Fundamentals of Software Architecture & Design
What is Architecture?

It is both the process and the product


of planning, designing, and
constructing buildings or other
structures.
Encyclopedia Britannica. Retrieved 27 October 2017.

A structure is an arrangement and


organization of interrelated elements in
a material object or system, or the
object or system so organized.
Oxford English Dictionary (Online ed.). Retrieved 1
October 2015.
Fundamentals of Software Architecture & Design
What is Software Architecture?
Architecture serves as a blueprint
for a system.

It provides an abstraction to
manage the system complexity and
establish a communication and
coordination mechanism among
components.

It is a plan that gives enough detail


to produce a software design.

((1994)., Retrieved 2012-09-13.)


Fundamentals of Software Architecture & Design
Software Design

To negotiate system requirements, and to set


expectations with customers, marketing, and
management personnel.
It provides a design plan
that describes the
elements of a system, To act as a blueprint during the
development process.
how they fit, and work
together to fulfill the
requirement of the To guide the implementation tasks, including
system. detailed design, coding, integration, and testing.

Software Design Objectives


https://www.bizjournals.com/
Fundamentals of Software Architecture & Design
Goals of Software Architecture
The primary goal of the architecture is to identify requirements
that affect the structure of the application.
Expose the structure of the system, but hide its implementation details.

Realize all the use-cases and scenarios.

Try to address the requirements of various stakeholders.

Handle both functional and quality requirements.

Reduce the goal of ownership and improve the organization’s market position.

Improve quality and functionality offered by the system.

Improve external confidence in either the organization or system.


Fundamentals of Software Architecture & Design
Quality Attributes
Quality attributes are the system properties that are separate
from the functionality of the system.

Business
Design Run-time System User Architecture Non-runtime
quality
Qualities Qualities Qualities Qualities Quality Quality
attributes

Interoperability
Conceptual
Portability
Integrity Cost and
Manageability Supportability
schedule
Reliability

Maintainability Performance Usability Correctness Integrality

Availability

Marketability Testability Marketability


Reusability Modifiability
Security
Fundamentals of Software Architecture & Design
Role of Software Architecture
 Design expertise
 Domain expertise
 Technology expertise
 Methodological expertise

Reinforce the trust and relationship


among team members and protect
team members from the external
forces that could distract them and
bring less value to the project.
SALAMAT
“No human is master of everything.
But one can be a master of anything at a time” -Lucman
BACKUP
Intro to Software Architecture Design
Architecture Re-presentations

 Conceptual View

 Logical View

 Process View

 Physical View

 Development View

[Sommerville, Software Engineering, 10th ed]

You might also like