SlideShare a Scribd company logo
Slide 1 Ran Levy Nokia Siemens Networks / NWS / PN
I insert classification level © Nokia Siemens Networks
Documenting SW Architecture
Ran Levy
ran.levy@nsn.com
Slide 2 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Content
 Why documenting the architecture?
 How to document the architecture?
 Preserving quality attributes using architecture document.
 Summary
Slide 3 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Why Documenting the Architecture?
Architecture is what makes the sets of parts work together as a
successful whole;
architecture documentation
is what tells developers how to make it so.
Slide 4 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Why documenting the architecture?
• Education.
• Basis for architecture analysis.
• Manifests the earliest set of decisions:
– Constraints on implementation.
– Dictates organizational structure.
• Supports SW maintainability:
– Understanding effect of changes.
Slide 5 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Why Documenting the Architecture?
• Communication vehicle between stakeholders.
SW Arch
Document
Requirements Eng.
Designers &
Architects
Implementors
Testers
Managers
Self
Slide 6 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Content
 Why documenting the architecture?
 How to document the architecture?
 Preserving quality attributes using architecture document.
 Summary
Slide 7 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch - Preface
You are NOT DONE when the document is done….
Slide 8 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – The 7 Rules
1. Documentation should be written
from the point of view of the
reader, not the writer.
2. Avoid unnecessary repetition.
3. Avoid ambiguity.
4. Use a standard organization.
Slide 9 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – The 7 Rules Con’t
5. Record rationale (and considered alternatives).
• Important for tracking and remembering decisions.
• Prevents endless re-discussions about alternatives.
5. Keep documentation current but not too current.
6. Early review of the documentation.
Slide 10 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch
• IEEE 1471 - Recommended Practice for Architectural Description of
Architectural Description of Software-Intensive Systems.
• “A Template for Documenting Software and Firmware
Architectures” - HP, 2000.
Adobe Acrobat
Document
Slide 11 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Views
• Key Point: Different stakeholders have different needs.
• Perhaps the most important concept associated with software
architecture documentation is that of the view.
Slide 12 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Views
• Philippe Kruchten – “4+1” approach to architecture
documentation:
– Logical view
– Process view
– Development view
– Physical/Deployment view
– Plus 1: binds all views together
Slide 13 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Logical View
• Primarily supports the functional requirements - what the
system should provide in terms of services to its users.
• Designers decompose the system into a set of key
abstractions – objects and relationships between them.
• In addition to aiding functional analysis, decomposition
identifies mechanisms and design elements that are
common across the system.
Slide 14 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Logical View
• Logical view is expressed by:
– Architecture styles (e.g. Layered, MVC, …)
– Components and interfaces description: CRC-R cards
– Object, class, package and components diagrams.
– For each section document the rationale:
• Why this architecture style was chosen?
• Why this component is not allowed to interact others?
• Why the interface is based on messages?
• …
Slide 15 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Logical View
• Example – CRC-R card
Component Management I/F
Responsibilities Provide support for management operations via SNMP and CLI. It provides Management Agents
functionality together with unified management FW for allowing general way of accessing specific
Network Services components.
Provided Interfaces 1.Configure node.
2.Monitor node's configuration.
3.Get node's statuses and statistics.
4.Perform node's maintenance operations.
5.Notify NE events to be delegated to the operator.
6.Get response from NS on required operation.
Rationale Management I/F components allow access of the operator to the NE for management operations.
Unified Management FW allows single interface usage for accessing Network Service that will serve all
Management Interfaces and allow extension to additional interfaces in the future.
Collaborators 1.Network Services
2.Platform Services Components
3.Operator
Notes
Quality Attributes 1.Usability:
•Management I/F should be user friendly, include guideline/help during each operation and provide the
ability to configure and to display the full relevant and mandatory values in one command.
•Management interfaces should allow range configurations.
1.Portability:
Separation of Management I/F from the NS via Management FW.
Issues All supported Management Interfaces should be passed through Management FW, which allow single
management interface for a Network Service which does not depend on type of the called management
interface and should not be changed in case when additional management interface is added.
Slide 16 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Process View
• Maps logical view into execution unit.
• Takes into account quality attributes such as performance
and availability.
• Addresses concurrency and distribution, system integrity,
and fault-tolerance.
• Expressed by:
– Class diagrams (using thread and process annotations).
– Sequence Diagrams
– Communication Diagrams
– Activity Diagrams
– Timing Diagrams
– Interaction Overview Diagrams
Slide 17 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Process View
• Examples
Slide 18 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Development View
• Focuses on the organization of the actual software modules
in the software-development environment.
• Help managers in work assignments and teams
establishment.
• Expressed by:
– Components diagrams.
– Implementation mapping description.
Slide 19 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Development View
• Implementation Rules:
– For each logical component a directory is
created that contains all code files
belonging to that
▪ Header files should be places under pub
directory.
▪ Implementation files under src directory.
– For each class (except inner class) a
separate file is created.
• Example
Slide 20 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Physical/Deployment View
• Maps the various elements identified in the logical, process,
and development views—networks, processes, tasks, and
objects—onto the processing nodes.
• Focuses on distribution, communication and provisioning.
• Accommodates quality attributes such as availability,
reliability, performance, throughput and scalability.
• Expressed by deployment diagrams.
Slide 21 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Physical/Deployment View
• Examples
Slide 22 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Scenarios
• This view represents the scenarios that tie the four views
together.
• The scenarios describe sequences of interactions between
objects, and between processes. They are used to identify
architectural elements and to illustrate and validate the
architecture design.
• They also serve as a starting point for tests of an
architecture prototype.
• Expressed by use cases diagram.
Slide 23 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Scenarios
• Important scenarios to document:
– Init & upgrade.
– Scale up and down.
– Handling events with hard deadlines.
– Fault handling.
Slide 24 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Documenting the Arch – Scenarios
• Example –
System Initialization
Layer Phase
Init
Create
Basic
Services
HW
Packages/Operations
OS
Status at end
of phase
Services register each
other ready for
restoration
Services:File System, Transaction Management,
CDB, System upgrade (e.g. CDB convert), SFC
redundancy, FTP,TFTP, TELNET, Error trace,
Recording.
Service objects
created and ready to
register each other
Ready for internal
services creation in
case of active init or
ready to cold take over
in case of standby init
Card is ALIVE, BIT
passedCreate drivers to perform Deep BIT
Resource Management, OS, Serial, basic memory,
card basic HW initialization, Seabridge OS
wrappers
Restore
Pre
Active
System long operations before active (e.g. upgrade
LICs, internal transaction for converts in application
layer, apply restored configuration; in case of
hot-standby perform transient data full sync from
active)
Ready to be active in
short period. The card
in Hot Standby state
Active
Move required services into active state (e.g.
Cards Management starts to load cards
configuration)
The card is in Active
state. Except specific
services that require to
pass Post Active state
Enhance
Services
Services fully restored
ready to be executed
Create,Init
Create,Init
Basic
Services
Phase
1
Retrieve
ShelfConf
Basic
Services
Phase
2
Shelf configuration is
ready to be used by
external/internal services
Services created,
wait for external
configuration
ColdStandbyHotStandbyActive
Active
Init as standby
Init as active
Retreive SFC shelf information e.g., IP and MAC
addresses; redundancy role
CDB Convert, SFC redundancy perform NVRAM
full sync in case of standby init
Run
Services are ready to
operate
Services restore internal data from CDB
Services register to each other creating
relationships between serivces
Services creates internal structure.
Services moved into RUN state
PostActive
Provide a way to support late activation for
specific services that do not support hot-standby.
These services require to perform init phases
starting from the restore up to active state.
All services in the
SFC are in active
state.
Slide 25 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Content
 Why documenting the architecture?
 How to document the architecture?
Preserving quality attributes using architecture
document.
 Summary
Slide 26 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Preserving Quality Attributes
• Be explicit In ALL relevant sections.
• Quality attributes requirements section:
– List all relevant attributes, detail them and specify how the
architecture support each one.
–Availability:
▪System shall support 99.999% up time.
▪No data plane affect due to system failures.
▪…
–The architecture of the system supports security by the
following means:
▪Hitless upgrade
▪Support for specific module replacement without downtime.
▪…
Slide 27 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Preserving Quality Attributes
• Logical View:
– Define the “rules” of the used architecture style.
▪ E.g.: Strict layered architecture to support maintainability, extensibility.
– Add to the CRC-R card quality attributes.
▪ E.g.: Logger component must not exceed 5% of CPU consumption.
– Document collaborators
Slide 28 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Preserving Quality Attributes
• Process View:
– Add constraints to diagrams
▪ Time constraints, components that must be used as part of the sequence
(e.g. Authentication), parallel execution…
– Use timing diagrams when needed.
Slide 29 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Preserving Quality Attributes
• Scenarios:
– Documenting scenarios are a major key for many quality attributes.
– Do NOT skip this section:
▪ Upgrade Flow – supports availability and maintainability.
▪ Fault Management flows – supports availability, fault localization,
security.
▪ Events handling flows – supports performance, scalability.
Slide 30 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Content
 Why documenting the architecture?
 How to document the architecture?
 Preserving quality attributes using architecture document.
 Summary
Slide 31 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
Summary
• Documenting the architecture is very important as mean for
communicating the architecture and translating the
architects ideas into practice.
• Architecture documentation must be described by several
views, that all together provides the complete view of the
architecture.
• The architecture document is major key for preserving the
quality attributes of the system.
Slide 32 Ran Levy Nokia Siemens Networks / NWS/ PN
I insert classification level © Nokia Siemens Networks
References
• “Software Architecture in Practice”, Bass, Clements and
Kazman, Addison Wesley, 2003.
• “Documenting Software Architectures”, Clements, Bachman,
et al., Addison Wesley, 2001.
• “A Template for Documenting Software and Firmware
Architectures”, Ogush, Coleman et al., Hewlett-Packard
Product Generation Solutions, 2000.
• Wikipedia
• “Software Architecture - Why what and how”, Alexander
Katz.
Slide 33 Ran Levy Nokia Siemens Networks / NWS / PN
I insert classification level © Nokia Siemens Networks
Thank You

More Related Content

What's hot

RedHat Linux Administrator
RedHat Linux AdministratorRedHat Linux Administrator
RedHat Linux Administrator
sowmya devi
 
Resume_Serma_Professional (2)
Resume_Serma_Professional (2)Resume_Serma_Professional (2)
Resume_Serma_Professional (2)
Sermaselvan Uthirapandian
 
Myresume1A (1)
Myresume1A (1)Myresume1A (1)
Myresume1A (1)
John Foster jr
 
Nice Pm Introduction Cert
Nice Pm Introduction CertNice Pm Introduction Cert
Nice Pm Introduction Cert
guest78aa88
 
Resume
ResumeResume
Resume_sapthagiri
Resume_sapthagiriResume_sapthagiri
Resume_sapthagiri
sapthagirimandya
 
Mike-Romolino10[2]
Mike-Romolino10[2]Mike-Romolino10[2]
Mike-Romolino10[2]
Michael Romolino
 
A Reference Architecture for Distributed Software Deployment
A Reference Architecture for Distributed Software DeploymentA Reference Architecture for Distributed Software Deployment
A Reference Architecture for Distributed Software Deployment
Sander van der Burg
 
GouthamLaveti
GouthamLavetiGouthamLaveti
GouthamLaveti
Goutham Laveti
 
WilliamsAlvin-Final08.11.15
WilliamsAlvin-Final08.11.15WilliamsAlvin-Final08.11.15
WilliamsAlvin-Final08.11.15
Alvin J Williams
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Tools
ghodgkinson
 
Waleed Abdel Wahab
Waleed Abdel WahabWaleed Abdel Wahab
Waleed Abdel Wahab
Waleed Abdel Wahab
 
Cooper, Mark Resume.Final.8.2.16
Cooper, Mark Resume.Final.8.2.16Cooper, Mark Resume.Final.8.2.16
Cooper, Mark Resume.Final.8.2.16
Mark Cooper
 
Hamm, Philip - Resume
Hamm, Philip - ResumeHamm, Philip - Resume
Hamm, Philip - Resume
Philip Hamm
 

What's hot (14)

RedHat Linux Administrator
RedHat Linux AdministratorRedHat Linux Administrator
RedHat Linux Administrator
 
Resume_Serma_Professional (2)
Resume_Serma_Professional (2)Resume_Serma_Professional (2)
Resume_Serma_Professional (2)
 
Myresume1A (1)
Myresume1A (1)Myresume1A (1)
Myresume1A (1)
 
Nice Pm Introduction Cert
Nice Pm Introduction CertNice Pm Introduction Cert
Nice Pm Introduction Cert
 
Resume
ResumeResume
Resume
 
Resume_sapthagiri
Resume_sapthagiriResume_sapthagiri
Resume_sapthagiri
 
Mike-Romolino10[2]
Mike-Romolino10[2]Mike-Romolino10[2]
Mike-Romolino10[2]
 
A Reference Architecture for Distributed Software Deployment
A Reference Architecture for Distributed Software DeploymentA Reference Architecture for Distributed Software Deployment
A Reference Architecture for Distributed Software Deployment
 
GouthamLaveti
GouthamLavetiGouthamLaveti
GouthamLaveti
 
WilliamsAlvin-Final08.11.15
WilliamsAlvin-Final08.11.15WilliamsAlvin-Final08.11.15
WilliamsAlvin-Final08.11.15
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Tools
 
Waleed Abdel Wahab
Waleed Abdel WahabWaleed Abdel Wahab
Waleed Abdel Wahab
 
Cooper, Mark Resume.Final.8.2.16
Cooper, Mark Resume.Final.8.2.16Cooper, Mark Resume.Final.8.2.16
Cooper, Mark Resume.Final.8.2.16
 
Hamm, Philip - Resume
Hamm, Philip - ResumeHamm, Philip - Resume
Hamm, Philip - Resume
 

Similar to Documenting sw acrchitecture

System%20security%20Engineer%20#1 (2)
System%20security%20Engineer%20#1 (2)System%20security%20Engineer%20#1 (2)
System%20security%20Engineer%20#1 (2)
Mike Sanders
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
raginihacks
 
Network Function Virtualisation: a tutorial
Network Function Virtualisation: a tutorialNetwork Function Virtualisation: a tutorial
Network Function Virtualisation: a tutorial
APNIC
 
Delma Hagen 2010 Resume
Delma Hagen 2010 ResumeDelma Hagen 2010 Resume
Delma Hagen 2010 Resume
delhagen
 
Devtest Orchestration for SDN & NFV
Devtest Orchestration for SDN & NFVDevtest Orchestration for SDN & NFV
Devtest Orchestration for SDN & NFV
Alex Henthorn-Iwane
 
NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...
NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...
NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...
Christian Esteve Rothenberg
 
SDN and NFV Friends or Enemies ?
SDN and NFV Friends or Enemies ?SDN and NFV Friends or Enemies ?
SDN and NFV Friends or Enemies ?
Kedar Raval
 
Know about SDN and NFV
Know about SDN and NFVKnow about SDN and NFV
Know about SDN and NFV
Kedar Raval
 
NFV ISG – Phase 2 Begins
NFV ISG – Phase 2 BeginsNFV ISG – Phase 2 Begins
NFV ISG – Phase 2 Begins
CableLabs
 
Billmresume3-2015
Billmresume3-2015Billmresume3-2015
Billmresume3-2015
bill mcgrath
 
SDN and NFV: Friends or Enemies
SDN and NFV: Friends or EnemiesSDN and NFV: Friends or Enemies
SDN and NFV: Friends or Enemies
Justyna Bak
 
IBM Software Defined Networking = Brave New World of IT
IBM Software Defined Networking = Brave New World of  ITIBM Software Defined Networking = Brave New World of  IT
IBM Software Defined Networking = Brave New World of IT
Steve Cole
 
Putting the M in MANO: Major new Ensemble release delivers NFV management and...
Putting the M in MANO: Major new Ensemble release delivers NFV management and...Putting the M in MANO: Major new Ensemble release delivers NFV management and...
Putting the M in MANO: Major new Ensemble release delivers NFV management and...
ADVA
 
Resume_Achhar_Kalia
Resume_Achhar_KaliaResume_Achhar_Kalia
Resume_Achhar_Kalia
Achhar Kalia
 
SDN and NFV
SDN and NFVSDN and NFV
SDN and NFV
Richard Kuo
 
Radisys/Orange/Strategy Analytics Webinar 090618
Radisys/Orange/Strategy Analytics Webinar 090618Radisys/Orange/Strategy Analytics Webinar 090618
Radisys/Orange/Strategy Analytics Webinar 090618
Radisys Corporation
 
Ashni rai 2.3years_.net
Ashni rai 2.3years_.netAshni rai 2.3years_.net
Ashni rai 2.3years_.net
Ashni Rai
 
Open Source Carrier Networking
Open Source Carrier NetworkingOpen Source Carrier Networking
Open Source Carrier Networking
Dirk Kutscher
 
CIS 293 Imagine Your Future/newtonhelp.com   
CIS 293 Imagine Your Future/newtonhelp.com   CIS 293 Imagine Your Future/newtonhelp.com   
CIS 293 Imagine Your Future/newtonhelp.com   
bellflower44
 
Technical Publication Process
Technical Publication ProcessTechnical Publication Process
Technical Publication Process
Radhika Puthiyetath
 

Similar to Documenting sw acrchitecture (20)

System%20security%20Engineer%20#1 (2)
System%20security%20Engineer%20#1 (2)System%20security%20Engineer%20#1 (2)
System%20security%20Engineer%20#1 (2)
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Network Function Virtualisation: a tutorial
Network Function Virtualisation: a tutorialNetwork Function Virtualisation: a tutorial
Network Function Virtualisation: a tutorial
 
Delma Hagen 2010 Resume
Delma Hagen 2010 ResumeDelma Hagen 2010 Resume
Delma Hagen 2010 Resume
 
Devtest Orchestration for SDN & NFV
Devtest Orchestration for SDN & NFVDevtest Orchestration for SDN & NFV
Devtest Orchestration for SDN & NFV
 
NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...
NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...
NECOS Industrial Workshop Technical highlights by Prof. Alex Galis (Universit...
 
SDN and NFV Friends or Enemies ?
SDN and NFV Friends or Enemies ?SDN and NFV Friends or Enemies ?
SDN and NFV Friends or Enemies ?
 
Know about SDN and NFV
Know about SDN and NFVKnow about SDN and NFV
Know about SDN and NFV
 
NFV ISG – Phase 2 Begins
NFV ISG – Phase 2 BeginsNFV ISG – Phase 2 Begins
NFV ISG – Phase 2 Begins
 
Billmresume3-2015
Billmresume3-2015Billmresume3-2015
Billmresume3-2015
 
SDN and NFV: Friends or Enemies
SDN and NFV: Friends or EnemiesSDN and NFV: Friends or Enemies
SDN and NFV: Friends or Enemies
 
IBM Software Defined Networking = Brave New World of IT
IBM Software Defined Networking = Brave New World of  ITIBM Software Defined Networking = Brave New World of  IT
IBM Software Defined Networking = Brave New World of IT
 
Putting the M in MANO: Major new Ensemble release delivers NFV management and...
Putting the M in MANO: Major new Ensemble release delivers NFV management and...Putting the M in MANO: Major new Ensemble release delivers NFV management and...
Putting the M in MANO: Major new Ensemble release delivers NFV management and...
 
Resume_Achhar_Kalia
Resume_Achhar_KaliaResume_Achhar_Kalia
Resume_Achhar_Kalia
 
SDN and NFV
SDN and NFVSDN and NFV
SDN and NFV
 
Radisys/Orange/Strategy Analytics Webinar 090618
Radisys/Orange/Strategy Analytics Webinar 090618Radisys/Orange/Strategy Analytics Webinar 090618
Radisys/Orange/Strategy Analytics Webinar 090618
 
Ashni rai 2.3years_.net
Ashni rai 2.3years_.netAshni rai 2.3years_.net
Ashni rai 2.3years_.net
 
Open Source Carrier Networking
Open Source Carrier NetworkingOpen Source Carrier Networking
Open Source Carrier Networking
 
CIS 293 Imagine Your Future/newtonhelp.com   
CIS 293 Imagine Your Future/newtonhelp.com   CIS 293 Imagine Your Future/newtonhelp.com   
CIS 293 Imagine Your Future/newtonhelp.com   
 
Technical Publication Process
Technical Publication ProcessTechnical Publication Process
Technical Publication Process
 

More from Ran Levy

Resilience Testing
Resilience Testing Resilience Testing
Resilience Testing
Ran Levy
 
CD presentation march 12th, 2018
CD presentation march 12th, 2018CD presentation march 12th, 2018
CD presentation march 12th, 2018
Ran Levy
 
MyHeritage backend 2015 summary
MyHeritage backend 2015 summaryMyHeritage backend 2015 summary
MyHeritage backend 2015 summary
Ran Levy
 
Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritage
Ran Levy
 
MyHeritage backend group - build to scale
MyHeritage backend group - build to scaleMyHeritage backend group - build to scale
MyHeritage backend group - build to scale
Ran Levy
 
MyHeritage Kakfa use cases - Feb 2014 Meetup
MyHeritage Kakfa use cases - Feb 2014 Meetup MyHeritage Kakfa use cases - Feb 2014 Meetup
MyHeritage Kakfa use cases - Feb 2014 Meetup
Ran Levy
 

More from Ran Levy (6)

Resilience Testing
Resilience Testing Resilience Testing
Resilience Testing
 
CD presentation march 12th, 2018
CD presentation march 12th, 2018CD presentation march 12th, 2018
CD presentation march 12th, 2018
 
MyHeritage backend 2015 summary
MyHeritage backend 2015 summaryMyHeritage backend 2015 summary
MyHeritage backend 2015 summary
 
Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritage
 
MyHeritage backend group - build to scale
MyHeritage backend group - build to scaleMyHeritage backend group - build to scale
MyHeritage backend group - build to scale
 
MyHeritage Kakfa use cases - Feb 2014 Meetup
MyHeritage Kakfa use cases - Feb 2014 Meetup MyHeritage Kakfa use cases - Feb 2014 Meetup
MyHeritage Kakfa use cases - Feb 2014 Meetup
 

Recently uploaded

Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Envertis Software Solutions
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 

Recently uploaded (20)

Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 

Documenting sw acrchitecture

  • 1. Slide 1 Ran Levy Nokia Siemens Networks / NWS / PN I insert classification level © Nokia Siemens Networks Documenting SW Architecture Ran Levy ran.levy@nsn.com
  • 2. Slide 2 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Content  Why documenting the architecture?  How to document the architecture?  Preserving quality attributes using architecture document.  Summary
  • 3. Slide 3 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Why Documenting the Architecture? Architecture is what makes the sets of parts work together as a successful whole; architecture documentation is what tells developers how to make it so.
  • 4. Slide 4 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Why documenting the architecture? • Education. • Basis for architecture analysis. • Manifests the earliest set of decisions: – Constraints on implementation. – Dictates organizational structure. • Supports SW maintainability: – Understanding effect of changes.
  • 5. Slide 5 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Why Documenting the Architecture? • Communication vehicle between stakeholders. SW Arch Document Requirements Eng. Designers & Architects Implementors Testers Managers Self
  • 6. Slide 6 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Content  Why documenting the architecture?  How to document the architecture?  Preserving quality attributes using architecture document.  Summary
  • 7. Slide 7 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch - Preface You are NOT DONE when the document is done….
  • 8. Slide 8 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – The 7 Rules 1. Documentation should be written from the point of view of the reader, not the writer. 2. Avoid unnecessary repetition. 3. Avoid ambiguity. 4. Use a standard organization.
  • 9. Slide 9 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – The 7 Rules Con’t 5. Record rationale (and considered alternatives). • Important for tracking and remembering decisions. • Prevents endless re-discussions about alternatives. 5. Keep documentation current but not too current. 6. Early review of the documentation.
  • 10. Slide 10 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch • IEEE 1471 - Recommended Practice for Architectural Description of Architectural Description of Software-Intensive Systems. • “A Template for Documenting Software and Firmware Architectures” - HP, 2000. Adobe Acrobat Document
  • 11. Slide 11 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Views • Key Point: Different stakeholders have different needs. • Perhaps the most important concept associated with software architecture documentation is that of the view.
  • 12. Slide 12 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Views • Philippe Kruchten – “4+1” approach to architecture documentation: – Logical view – Process view – Development view – Physical/Deployment view – Plus 1: binds all views together
  • 13. Slide 13 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Logical View • Primarily supports the functional requirements - what the system should provide in terms of services to its users. • Designers decompose the system into a set of key abstractions – objects and relationships between them. • In addition to aiding functional analysis, decomposition identifies mechanisms and design elements that are common across the system.
  • 14. Slide 14 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Logical View • Logical view is expressed by: – Architecture styles (e.g. Layered, MVC, …) – Components and interfaces description: CRC-R cards – Object, class, package and components diagrams. – For each section document the rationale: • Why this architecture style was chosen? • Why this component is not allowed to interact others? • Why the interface is based on messages? • …
  • 15. Slide 15 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Logical View • Example – CRC-R card Component Management I/F Responsibilities Provide support for management operations via SNMP and CLI. It provides Management Agents functionality together with unified management FW for allowing general way of accessing specific Network Services components. Provided Interfaces 1.Configure node. 2.Monitor node's configuration. 3.Get node's statuses and statistics. 4.Perform node's maintenance operations. 5.Notify NE events to be delegated to the operator. 6.Get response from NS on required operation. Rationale Management I/F components allow access of the operator to the NE for management operations. Unified Management FW allows single interface usage for accessing Network Service that will serve all Management Interfaces and allow extension to additional interfaces in the future. Collaborators 1.Network Services 2.Platform Services Components 3.Operator Notes Quality Attributes 1.Usability: •Management I/F should be user friendly, include guideline/help during each operation and provide the ability to configure and to display the full relevant and mandatory values in one command. •Management interfaces should allow range configurations. 1.Portability: Separation of Management I/F from the NS via Management FW. Issues All supported Management Interfaces should be passed through Management FW, which allow single management interface for a Network Service which does not depend on type of the called management interface and should not be changed in case when additional management interface is added.
  • 16. Slide 16 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Process View • Maps logical view into execution unit. • Takes into account quality attributes such as performance and availability. • Addresses concurrency and distribution, system integrity, and fault-tolerance. • Expressed by: – Class diagrams (using thread and process annotations). – Sequence Diagrams – Communication Diagrams – Activity Diagrams – Timing Diagrams – Interaction Overview Diagrams
  • 17. Slide 17 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Process View • Examples
  • 18. Slide 18 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Development View • Focuses on the organization of the actual software modules in the software-development environment. • Help managers in work assignments and teams establishment. • Expressed by: – Components diagrams. – Implementation mapping description.
  • 19. Slide 19 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Development View • Implementation Rules: – For each logical component a directory is created that contains all code files belonging to that ▪ Header files should be places under pub directory. ▪ Implementation files under src directory. – For each class (except inner class) a separate file is created. • Example
  • 20. Slide 20 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Physical/Deployment View • Maps the various elements identified in the logical, process, and development views—networks, processes, tasks, and objects—onto the processing nodes. • Focuses on distribution, communication and provisioning. • Accommodates quality attributes such as availability, reliability, performance, throughput and scalability. • Expressed by deployment diagrams.
  • 21. Slide 21 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Physical/Deployment View • Examples
  • 22. Slide 22 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Scenarios • This view represents the scenarios that tie the four views together. • The scenarios describe sequences of interactions between objects, and between processes. They are used to identify architectural elements and to illustrate and validate the architecture design. • They also serve as a starting point for tests of an architecture prototype. • Expressed by use cases diagram.
  • 23. Slide 23 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Scenarios • Important scenarios to document: – Init & upgrade. – Scale up and down. – Handling events with hard deadlines. – Fault handling.
  • 24. Slide 24 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Documenting the Arch – Scenarios • Example – System Initialization Layer Phase Init Create Basic Services HW Packages/Operations OS Status at end of phase Services register each other ready for restoration Services:File System, Transaction Management, CDB, System upgrade (e.g. CDB convert), SFC redundancy, FTP,TFTP, TELNET, Error trace, Recording. Service objects created and ready to register each other Ready for internal services creation in case of active init or ready to cold take over in case of standby init Card is ALIVE, BIT passedCreate drivers to perform Deep BIT Resource Management, OS, Serial, basic memory, card basic HW initialization, Seabridge OS wrappers Restore Pre Active System long operations before active (e.g. upgrade LICs, internal transaction for converts in application layer, apply restored configuration; in case of hot-standby perform transient data full sync from active) Ready to be active in short period. The card in Hot Standby state Active Move required services into active state (e.g. Cards Management starts to load cards configuration) The card is in Active state. Except specific services that require to pass Post Active state Enhance Services Services fully restored ready to be executed Create,Init Create,Init Basic Services Phase 1 Retrieve ShelfConf Basic Services Phase 2 Shelf configuration is ready to be used by external/internal services Services created, wait for external configuration ColdStandbyHotStandbyActive Active Init as standby Init as active Retreive SFC shelf information e.g., IP and MAC addresses; redundancy role CDB Convert, SFC redundancy perform NVRAM full sync in case of standby init Run Services are ready to operate Services restore internal data from CDB Services register to each other creating relationships between serivces Services creates internal structure. Services moved into RUN state PostActive Provide a way to support late activation for specific services that do not support hot-standby. These services require to perform init phases starting from the restore up to active state. All services in the SFC are in active state.
  • 25. Slide 25 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Content  Why documenting the architecture?  How to document the architecture? Preserving quality attributes using architecture document.  Summary
  • 26. Slide 26 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Preserving Quality Attributes • Be explicit In ALL relevant sections. • Quality attributes requirements section: – List all relevant attributes, detail them and specify how the architecture support each one. –Availability: ▪System shall support 99.999% up time. ▪No data plane affect due to system failures. ▪… –The architecture of the system supports security by the following means: ▪Hitless upgrade ▪Support for specific module replacement without downtime. ▪…
  • 27. Slide 27 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Preserving Quality Attributes • Logical View: – Define the “rules” of the used architecture style. ▪ E.g.: Strict layered architecture to support maintainability, extensibility. – Add to the CRC-R card quality attributes. ▪ E.g.: Logger component must not exceed 5% of CPU consumption. – Document collaborators
  • 28. Slide 28 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Preserving Quality Attributes • Process View: – Add constraints to diagrams ▪ Time constraints, components that must be used as part of the sequence (e.g. Authentication), parallel execution… – Use timing diagrams when needed.
  • 29. Slide 29 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Preserving Quality Attributes • Scenarios: – Documenting scenarios are a major key for many quality attributes. – Do NOT skip this section: ▪ Upgrade Flow – supports availability and maintainability. ▪ Fault Management flows – supports availability, fault localization, security. ▪ Events handling flows – supports performance, scalability.
  • 30. Slide 30 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Content  Why documenting the architecture?  How to document the architecture?  Preserving quality attributes using architecture document.  Summary
  • 31. Slide 31 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks Summary • Documenting the architecture is very important as mean for communicating the architecture and translating the architects ideas into practice. • Architecture documentation must be described by several views, that all together provides the complete view of the architecture. • The architecture document is major key for preserving the quality attributes of the system.
  • 32. Slide 32 Ran Levy Nokia Siemens Networks / NWS/ PN I insert classification level © Nokia Siemens Networks References • “Software Architecture in Practice”, Bass, Clements and Kazman, Addison Wesley, 2003. • “Documenting Software Architectures”, Clements, Bachman, et al., Addison Wesley, 2001. • “A Template for Documenting Software and Firmware Architectures”, Ogush, Coleman et al., Hewlett-Packard Product Generation Solutions, 2000. • Wikipedia • “Software Architecture - Why what and how”, Alexander Katz.
  • 33. Slide 33 Ran Levy Nokia Siemens Networks / NWS / PN I insert classification level © Nokia Siemens Networks Thank You

Editor's Notes

  1. its end users. Designers decompose the system into a set of key abstractions, taken mainly from the problem domain. These abstractions are objects or object classes that exploit the principles of abstraction, encapsulation, and inheritance. In addition to aiding functional analysis, decomposition identifies mechanisms and design elements that are common across the system. • The process view addresses concurrency and distribution, system integrity, and fault-tolerance. The process view also specifies which thread of control executes each operation of each class identified in the logical view. The process view can be seen as a set of independently executing logical networks of communicating programs (“processes”) that are distributed across a set of hardware resources, which in turn are connected by a bus or local area network or wide area network. • The development view focuses on the organization of the actual software modules in the software-development environment. The units of this view are small chunks of software—program libraries or subsystems— that can be developed by one or more developers. The development view supports the allocation of requirements and work to teams, and supports cost evaluation, planning, monitoring of project progress, and reasoning about software reuse, portability, and security. • The physical view takes into account the system's requirements such as system availability, reliability (fault-tolerance), performance (throughput), and scalability. This view maps the various elements identified in the logical, process, and development views—networks, processes, tasks, and objects—onto the processing nodes.