SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .
-
Upload
jesus-foster -
Category
Documents
-
view
221 -
download
0
Transcript of SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .
![Page 1: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/1.jpg)
SAF - An introduction SAF - An introduction
Arnon Rotem-Gal-OzArnon Rotem-Gal-OzProduct Line ArchitectProduct Line Architect
www.rgoarchitects.comwww.rgoarchitects.com
![Page 2: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/2.jpg)
What SAF isn’tWhat SAF isn’t
Detailed guidance on how to design Detailed guidance on how to design your next architectureyour next architecture
Detailed guidance on how to document Detailed guidance on how to document your next architectureyour next architecture
Guidance on the Architect’s soft skillsGuidance on the Architect’s soft skills
Prescriptive ProcessPrescriptive Process
![Page 3: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/3.jpg)
So why do I need SAF So why do I need SAF
Congratulations !!!Congratulations !!! You are the new lead Architect for Project XYou are the new lead Architect for Project X
![Page 4: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/4.jpg)
What SAF isWhat SAF is
An Architecture Framework An Architecture Framework Activities – focus on needsActivities – focus on needs Techniques to help accomplish the Techniques to help accomplish the
activitiesactivities
Focused on Solution/Project Focused on Solution/Project architecturearchitecture Lightweight Lightweight
![Page 5: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/5.jpg)
Core Activities Core Activities
S – identify StakeholdersS – identify Stakeholders P – set Principles, guidelines & constraints P – set Principles, guidelines & constraints A – define quality AttributesA – define quality Attributes M – ModelM – Model M –Map to technology M –Map to technology E – EvaluateE – Evaluate D - DeployD - Deploy
![Page 6: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/6.jpg)
identify Stakeholdersidentify Stakeholders
![Page 7: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/7.jpg)
The Usual SuspectsThe Usual Suspects
CustomerCustomer End-UserEnd-User Project ManagerProject Manager ManagementManagement DevelopersDevelopers MaintainersMaintainers
Security AnalystsSecurity Analysts Project New Project New
comerscomers TestersTesters Customer’s IT Customer’s IT
groupgroup
![Page 8: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/8.jpg)
Mapping StakeholdersMapping Stakeholders
lowlow HighHighlowlow
HighHigh
ConcernConcernImportanceImportance(or Power)(or Power)
InterestInterest
MonitorMonitor(Minimum Effort)(Minimum Effort)
Keep Keep InformedInformed
Keep Keep SatisfiedSatisfied
ManageManageCloselyClosely
Based on Schekkerman - IEAD
![Page 9: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/9.jpg)
set Principles, guidelines & set Principles, guidelines & constraints constraints
![Page 10: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/10.jpg)
Principles & GuidelinePrinciples & Guideline
Set an direction for the solution Set an direction for the solution
Initial directions to consider for the Initial directions to consider for the solutionsolution
![Page 11: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/11.jpg)
ConstraintsConstraints
constraints limit the (architectural) solution space Vs. requirements that set goals for the
system
Stakeholders should therefore not only specify requirements, but also constraints!
![Page 12: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/12.jpg)
OriginsOrigins
Past ExperiencePast Experience StakeholdersStakeholders StandardsStandards
CompanyCompany CustomerCustomer InternationalInternational
![Page 13: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/13.jpg)
Multiple Tiers (1/2)Multiple Tiers (1/2)principle exampleprinciple example What – Hardware architecture, What – Hardware architecture,
deployment unto multiple computersdeployment unto multiple computers
Rationale/Benefits Rationale/Benefits Easier to purchase, deploy, upgradeEasier to purchase, deploy, upgrade Easier to solve security, performance Easier to solve security, performance
issuesissues Enables administrator specializationEnables administrator specialization
![Page 14: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/14.jpg)
Multiple Tiers (2/2)Multiple Tiers (2/2)principle exampleprinciple example Implications Implications
Need to carefully consider Need to carefully consider communications of communications of layers/components/services that cross layers/components/services that cross tier boundariestier boundaries
AlternativesAlternatives Single-Tier Single-Tier N-Tiers (i.e. preset number of tiers)N-Tiers (i.e. preset number of tiers)
Scope Scope Installable modulesInstallable modules
![Page 15: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/15.jpg)
Other examplesOther examples
PrinciplesPrinciples Layered architecture, federated databaseLayered architecture, federated database
GuidanceGuidance At least 2 threads on UIAt least 2 threads on UI
ConstraintsConstraints Technical – Platform/technology (e.g. Technical – Platform/technology (e.g.
use .NET)use .NET) Financial – Budget Financial – Budget (don’t event think about (don’t event think about
that fancy Rule Engine)that fancy Rule Engine)
![Page 16: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/16.jpg)
define quality Attributesdefine quality Attributes
![Page 17: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/17.jpg)
System Quality AttributeSystem Quality Attribute
PerformancePerformance AvailabilityAvailability UsabilityUsability SecuritySecurity
MaintainabilitMaintainabilityy
PortabilityPortability ReusabilityReusability TestabilityTestability
End User’s view
Developer’s view
Time To MarketTime To Market Cost and BenefitsCost and Benefits Projected life timeProjected life time Targeted MarketTargeted Market Integration with Integration with
Legacy SystemLegacy System Roll back Roll back
ScheduleSchedule
BusinessCommunityview
A list of quality attributes exists inA list of quality attributes exists inISO/IEC 9126-2001 Information Technology – Software Product Quality ISO/IEC 9126-2001 Information Technology – Software Product Quality
![Page 18: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/18.jpg)
decompose and refines the business decompose and refines the business goals and quality attributesgoals and quality attributes
The root of the tree is “utility” – the The root of the tree is “utility” – the overall “goodness” of the systemoverall “goodness” of the system
Building a Utility Tree (1/2)Building a Utility Tree (1/2)
![Page 19: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/19.jpg)
Building a Utility Tree (2/2)Building a Utility Tree (2/2)
Select the most important quality goals Select the most important quality goals to be the high-level nodesto be the high-level nodes E.g. performance, modifiability, security, E.g. performance, modifiability, security,
and availabilityand availability
The tree reflects the hierarchical nature The tree reflects the hierarchical nature of quality attributes and provides the of quality attributes and provides the basis for prioritizationbasis for prioritization
![Page 20: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/20.jpg)
Adding Scenarios (1/2)Adding Scenarios (1/2)
Represent stakeholders’ interestsRepresent stakeholders’ interests weighted according to stakeholder consensus of weighted according to stakeholder consensus of
their relative importancetheir relative importance
Help Understand quality attribute Help Understand quality attribute requirementsrequirements
Make the goals concrete and Make the goals concrete and measurablemeasurable
Reflect both run-time and non-run-time Reflect both run-time and non-run-time considerationsconsiderations
![Page 21: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/21.jpg)
Adding Scenarios (2/2)Adding Scenarios (2/2)
Scenarios should cover a range ofScenarios should cover a range of Anticipated uses of (“use case” Anticipated uses of (“use case”
scenarios),scenarios), Anticipated changes to (growth Anticipated changes to (growth
scenarios)scenarios) Unanticipated stresses (“Soap opera Unanticipated stresses (“Soap opera
scenarios”) to the system.scenarios”) to the system. A scenario is a statement that incorporatesA scenario is a statement that incorporates
A context; a stimulus; a responseA context; a stimulus; a response
Scenarios should be as specific as possible.Scenarios should be as specific as possible.
![Page 22: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/22.jpg)
Senarios Examples (1/3)Senarios Examples (1/3) examples examples Use case scenario
Under normal operation, perform a database transaction Under normal operation, perform a database transaction
in under 100 milliseconds.in under 100 milliseconds.
Remote user requests a database report via the Web during peak Remote user requests a database report via the Web during peak period and receives it within 5 seconds.period and receives it within 5 seconds.
Growth scenarioGrowth scenario Add a new data server to reduce latency in scenario 1 to 2.5 Add a new data server to reduce latency in scenario 1 to 2.5
seconds within 1 person-week.seconds within 1 person-week. For a new release, integrate a new component implementation in For a new release, integrate a new component implementation in
three weeks.three weeks. Exploratory scenarioExploratory scenario
Half of the servers go down during normal operation without Half of the servers go down during normal operation without affecting overall system availability.affecting overall system availability.
Context Stimulus
Response
![Page 23: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/23.jpg)
Scenarios examples (2/3)Scenarios examples (2/3)
PerformancePerformance ResponseResponse
Under normal conditions update 100 moving Under normal conditions update 100 moving objects on the map < 200 miliseconsobjects on the map < 200 milisecons
LatencyLatency Under normal or stress conditions, a critical Under normal or stress conditions, a critical
alert generated by the system will be alert generated by the system will be displayed to the user in less than 1 seconddisplayed to the user in less than 1 second
Data lossData loss Under all conditions a message acknowledged Under all conditions a message acknowledged
by the system shall not be lost (10^5 by the system shall not be lost (10^5 probability)probability)
![Page 24: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/24.jpg)
Scenarios example (3/3)Scenarios example (3/3)
Availability Availability Hardware failureHardware failure
When a mission is in progress, upon a server When a mission is in progress, upon a server mal-function, the system will be fully operable mal-function, the system will be fully operable within 30 seconds or lesswithin 30 seconds or less
Changeability Changeability Add FeatureAdd Feature
Add a new sensor-type to the system in 2 Add a new sensor-type to the system in 2 man-months or lessman-months or less
![Page 25: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/25.jpg)
ModelModel
![Page 26: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/26.jpg)
Choose viewsChoose views
To satisfy stakeholders’ concerns To satisfy stakeholders’ concerns
Minimal set of viewsMinimal set of views System contextSystem context Logical (e.g. Packages)Logical (e.g. Packages) Physical (e.g. Deployment)Physical (e.g. Deployment)
![Page 27: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/27.jpg)
Documentation & PresentationDocumentation & Presentation
Keep “Barely good enough”Keep “Barely good enough” Unless required otherwise by Unless required otherwise by
customer/company standardscustomer/company standards
Match the intended audience Match the intended audience
![Page 28: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/28.jpg)
Services & ESB take 1Services & ESB take 1id Serv ice View
UI
«Service»
COP
«Service»
Nav igation
«Service»
OwnSiteESB
«Service»
Alerts
![Page 29: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/29.jpg)
Services & ESB – take 2 Services & ESB – take 2
COPCOP
AlertsAlerts
UIUI OwnOwnSiteSite
NavigatioNavigationnESBESB
![Page 30: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/30.jpg)
Map to tools/technologyMap to tools/technology
![Page 31: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/31.jpg)
MappingMapping
Work in lock-step with designWork in lock-step with design
Buy vs. Make vs. Reuse vs. Customize Buy vs. Make vs. Reuse vs. Customize
The wrong tools can compromise your The wrong tools can compromise your architecture / increase your costs architecture / increase your costs significantly significantly
![Page 32: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/32.jpg)
Example – Mapping Example – Mapping mismatchmismatch
Management introduced a distributed Management introduced a distributed objects framework as a constraintobjects framework as a constraint
Project decided on SOAProject decided on SOA
A lot of energy & effort making the A lot of energy & effort making the distributed objects act like a message distributed objects act like a message busbus
![Page 33: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/33.jpg)
EvaluateEvaluate
![Page 34: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/34.jpg)
Evaluation MethodsEvaluation Methods
On PaperOn Paper SEISEI
ATAM; SAAM; ARIDATAM; SAAM; ARID
LAAAMLAAAM Active Design ReviewsActive Design Reviews
In CodeIn Code POCsPOCs Architectural prototypeArchitectural prototype (GUI Prototype)(GUI Prototype)
![Page 35: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/35.jpg)
Formal Evaluation Example Formal Evaluation Example LAAAMLAAAM
Assessment MatrixAssessment Matrix Evaluate suitability of strategies against Evaluate suitability of strategies against
scenariosscenarios
ValueValueCostCost
Strategies
Scenarios
Based on Jeromy Carriere
![Page 36: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/36.jpg)
LAAAM – Assessment ApproachLAAAM – Assessment Approach
Each dimension is rated on a five point Each dimension is rated on a five point scale, from High to Lowscale, from High to Low
Each dimension is given a weight, to Each dimension is given a weight, to express its importance relative to the other express its importance relative to the other dimensionsdimensions
Assessment is performed in two passes:Assessment is performed in two passes:1.1. Treat each cell as independentTreat each cell as independent
2.2. Normalize across each rowNormalize across each row
ValueValue Development CostDevelopment Cost Operations CostOperations Cost
LowLow 00 22 22
Low-ModerateLow-Moderate .5.5 1.51.5 1.51.5
ModerateModerate 11 11 11
Moderate-HighModerate-High 1.51.5 .5.5 .5.5
HighHigh 22 00 00
Based on Jeromy Carriere
![Page 37: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/37.jpg)
LAAAM – Example (1/2)LAAAM – Example (1/2)
StrategyStrategy
ScenarioScenario AnalysisAnalysis WeightWeight
A. Perform A. Perform no no rearchitectinrearchitecting. Maintain g. Maintain with minimal with minimal effort the effort the existing ABC existing ABC application application architecture. architecture. Introduce Introduce no new no new dependenciedependencies on ABC s on ABC components.components.
B. B. IncrementallIncrementally wrap y wrap existing ABC existing ABC application application components components in the model in the model provided provided with .NET.with .NET.
C. C. CompletelCompletely port y port existing existing ABC ABC applicationapplications to .NET.s to .NET.
D. D. Completely Completely port port existing existing ABC ABC applications applications to J2EE, to J2EE, using using existing existing enterprise enterprise frameworks.frameworks.
1. A new 1. A new application application leverages the leverages the XYZ data store.XYZ data store.
ValueValue 11 ModerateModerate Moderate-Moderate-HighHigh
ModerateModerate ModerateModerate
Development Development CostCost
1.51.5 HighHigh LowLow HighHigh HighHigh
Operations Operations CostCost
11 LowLow Low-Low-ModerateModerate
LowLow Low-Low-ModerateModerate
AssessmentAssessment 33 66 33 2.52.5Based on Jeromy Carriere
![Page 38: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/38.jpg)
LAAAM – Example (2/2)LAAAM – Example (2/2)
ScenarioScenario AnalysisAnalysis WeightWeight AA BB CC DD
2. The XYZ 2. The XYZ application's application's presentation presentation is customized is customized by the user to by the user to determine determine layout and layout and content.content.
ValueValue 11 LowLow Moderate-Moderate-HighHigh
HighHigh HighHigh
Development Development CostCost
1.51.5 N/AN/A ModerateModerate Moderate-Moderate-HighHigh
Moderate-Moderate-HighHigh
Operations Operations CostCost
11 N/AN/A Low-Low-ModerateModerate
LowLow Low-Low-ModerateModerate
AssessmentAssessment 00 4.54.5 4.754.75 4.254.25
3. The peak 3. The peak transaction transaction rate for the rate for the XYZ XYZ application application increases by increases by 10x (after 10x (after scenario 2).scenario 2).
ValueValue 11 LowLow Moderate-Moderate-HighHigh
HighHigh HighHigh
Development Development CostCost
1.51.5 HighHigh Low-Low-ModerateModerate
Moderate-Moderate-HighHigh
HighHigh
Operations Operations CostCost
11 HighHigh ModerateModerate LowLow ModerateModerate
AssessmentAssessment 00 4.754.75 4.754.75 33
Based on Jeromy Carriere
![Page 39: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/39.jpg)
Code Evaluation ExamplesCode Evaluation Examples
POCsPOCs Service Broker suitability for POS Service Broker suitability for POS
scenariosscenarios MSMQ vs. Tibco RV + EMS MSMQ vs. Tibco RV + EMS
PrototypePrototype Moving the first serive to NHibernate Moving the first serive to NHibernate
![Page 40: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/40.jpg)
DeployDeploy
![Page 41: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/41.jpg)
Architecture DeploymentArchitecture Deployment
Making sure the architecture really fits Making sure the architecture really fits the problemthe problem
Making sure the architecture is Making sure the architecture is followedfollowed
Tip: Short iterations allow for better Tip: Short iterations allow for better feedback loopfeedback loop Consider SCRUM’s 30 day sprintsConsider SCRUM’s 30 day sprints
![Page 42: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/42.jpg)
Spiral ProcessSpiral Process
Riskanalys is
Riskanalys is
Riskanalys is
Riskanalysis Proto-
ty pe 1
Prototyp e 2Prototyp e 3
Opera-tionalprotoyp e
Concept o fOperation
Simulations, models, b en ch marks
S/Wrequi rements
Requi rementvalid ation
DesignV&V
Prod uctdesign Detailed
design
CodeUni t t es t
Integr ationtestAccep tance
testServ ice Develop, v erifynext-l evel p rod uct
Ev aluate altern ativesid en tify, resolve risks
Determine ob jectiv esalternatives and
cons traints
Plan next p has e
Integrationand test p lan
Develop mentplan
Requi rements planLife-cycle plan
REVIEW
Bohem
![Page 43: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/43.jpg)
Final WordsFinal Words
![Page 44: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/44.jpg)
SAF SAF
S – identify StakeholdersS – identify Stakeholders P – set Principles, guidelines & constraints P – set Principles, guidelines & constraints A – define quality AttributesA – define quality Attributes M – ModelM – Model M –Map to technology M –Map to technology E – EvaluateE – Evaluate D - DeployD - Deploy
![Page 45: SAF - An introduction Arnon Rotem-Gal-Oz Product Line Architect .](https://reader035.fdocuments.net/reader035/viewer/2022070305/551465ca550346494e8b5b3d/html5/thumbnails/45.jpg)