Download presentation
Presentation is loading. Please wait.
Published byRosa Thornton Modified over 8 years ago
1
dynamicpartnerconnections.com Solution architecture of Dynamics AX and how to design the best solution Speaker: Sergei Zhidkov Solution Architect Celenia Software webinar series Functional and technical architecture, roles and responsibilities
2
Agenda 1.Introduction 2.Objectives 3.Solution architecture types, definition, quality metrics and contributors 4.SA pillars overview: documents, roles, process 5.Roles exploration 6.Case study 7.Lessons learned 8.Q&A
3
Introduction Solution architecture applied to product delivery Roles in the context of solution architecture Webinar mixed case study format – Real projects – Practical knowledge – Challenges and resolutions
4
Objectives Explain solution architecture types, quality metrics and contributors – Functional solution architecture – Technical solution architecture Describe the roles that drive solution architecture – Roles and responsibilities – Activities on the project map Learn project challenges and case studies
5
Functional solution architecture Definition – FSA is the architecture of all functional\business aspects of the system: business logic, features and functions, supported business processes, user interfaces, integrations with other systems, security, reporting, etc. Quality metrics – Design quality and functional compliance Solution design meets functional requirements Solution is integrated correctly with the standard system and other modules of the solution Global product compliance: security and system configuration – Solution supportability (serviceability) Ability to upgrade at ease (when the footprint into the standard system is minimized) – Solution extensibility (a system design principle where the implementation takes future growth into consideration) Enables sustainable growth of the solution without functional re-architecting of the solution – Performance\Scalability – Implementation efficiency Staff hours spent on life cycle activities – Usability (effective UI patterns) Primary roles – Designer\FSA\SME\Product manager Secondary roles – TSA\Tester\Developer
6
Technical solution architecture Definition – TSA is the architecture that includes all technical aspects of the system: system code design, database design, development technology, technical infrastructure, environments and frameworks. Quality metrics – Solution supportability (serviceability) The right technical architecture allows fixing bugs easily The right technical architecture minimizes bug fixing aftereffects to adjacent functionality (minimal regression testing is needed) Ability to upgrade at ease (when the footprint into the standard system is minimized) – Solution extensibility (a system design principle where the implementation takes future growth into consideration) Enables sustainable growth of the solution without re-architecting\deep code refactoring – Performance\Scalability – General quality (no bugs) Primary roles – TSA\Developer Secondary roles – Designer\FSA
7
Agenda\Progress 1.Introduction 2.Objectives 3.Solution architecture types, definition, quality metrics and contributors 4.SA pillars overview: documents, roles, process 5.Roles exploration 6.Case study 7.Lessons learned 8.Q&A
8
SA pillars overview\Documents Design Requirements Vision Design flow Functional design document (FDD) Functional overview in the solution context Assumptions\Dependencies Design specifications - business\functional layer Design specifications - functional\technical layer Functions specifications Data model Processes\ Algorithms User interfaces Security System configuration Functional requirements document (FRD) Functional requirements Business scenarios Technology considerations\ User interface requirements Scope\ Out of scope Priorities Functional vision document (FVD) Solution roadmap\ Company business strategy Existing customer requirements Target markets\Sales cycles\ Market events\ Competitors Microsoft Dynamics AX anticipated releases\ Microsoft technology stack evolution Team and methodology considerations\ Budget considerations
9
SA pillars overview\Roles Product manager Throughout all the stages of the product development process, the product manager represents the needs of end-users, evaluates market trends and competition, and uses this information to determine what features to build Prepares Functional Vision Document (FVD) Subject Matter Expert (SME) It is a professional with expertise in some field of application; Its purpose is to provide in-depth knowledge of the customer’s vision, goals, and requirements for a business process Explains existing business processes Evaluates gaps and collects requirements Prepares Functional Requirements Document (FRD) Designer Provides in-depth knowledge of the Microsoft Dynamics application and industry experience to evaluate the required business processes against the standard Microsoft Dynamics functionality to design the solution Creates functional design for design team\customer understanding and accepting in Functional design documents (FDD) Creates development design specifications in Functional design documents (FDD) Functional Solution Architect Responsible for overall solution design and coordinates all design related activities Supports analysis, design and planning of the system and the proposed solutions Reviews and signs off all the design documentation
10
SA pillars overview\Roles Technical Solution Architect Responsible for the overall technical solution design and technical governance of the of the product build Provides guidance for business decisions from a technical perspective on issues such as: performance, scalability, reliability, and security Developer Develops the product to meet the specifications from the Designer Tester Conducts testing
11
SA pillars overview\Process EnvisioningAnalysisDesignDev & TestDocumenting FVD FRD FDD FVD FRD FDD Update requests FDD Approval Main activities: Vision drafting Requirements drafting Main activities : Requirements analysis Requirements review and sign-off meetings Main activities : Functional design Design meetings Design review and sign-off Main activities: Compulsory FDD overview meetings Technical design Update requests Primary roles: Product manager SME Primary roles : Product manager SME FSA Designer Primary roles : Designer FSA SME Primary roles : Developer TSA Tester Designer
12
Agenda\Progress 1.Introduction 2.Objectives 3.Solution architecture types, definition, quality metrics and contributors 4.SA pillars overview: documents, roles, process 5.Roles exploration 6.Case study 7.Lessons learned 8.Q&A
13
Documents Roles\ Envisioning stage Envisioning AnalysisDesign Dev & Test Documenting Functional vision (FVD) Functional requirements (FRD) FSA TSA SME Product manager Evaluates market trends and competition Scopes releases according to the market value Defines product vision and roadmap Prepares Functional Vision Document (FVD) Evaluates market trends and competition Scopes releases according to the market value Defines product vision and roadmap Prepares Functional Vision Document (FVD) Evaluates gaps (Fit\Gap analysis) and collects requirements Prepares Functional Requirements Document (FRD) Evaluates gaps (Fit\Gap analysis) and collects requirements Prepares Functional Requirements Document (FRD) Provides knowledge of the Microsoft Dynamics application Facilitates Fit\Gap analysis and requirements gathering Facilitates and arbitrates decision making process throughout the phase Provides knowledge of the Microsoft Dynamics application Facilitates Fit\Gap analysis and requirements gathering Facilitates and arbitrates decision making process throughout the phase Technical advisory to the Functional Solution Architect and the Product manager Provides guidance for business decisions from a technical perspective on issues such as: performance, scalability, reliability, and security Technical advisory to the Functional Solution Architect and the Product manager Provides guidance for business decisions from a technical perspective on issues such as: performance, scalability, reliability, and security Design quality and functional compliance o Solution is integrated correctly with the standard system and other modules of the solution Solution extensibility (a system design principle where the implementation takes future growth into consideration) Performance\Scalability Design quality and functional compliance o Solution is integrated correctly with the standard system and other modules of the solution Solution extensibility (a system design principle where the implementation takes future growth into consideration) Performance\Scalability Functional quality metrics
14
Roles\ Analysis stage Envisioning Analysis DesignDev & TestDocumenting TSA FRD Product manager Designer FSA SME Updates Functional Vision Document (FVD) and supports its review and sign-off Reviews and signs -off FRD Drives the product backlog and scopes releases according to the market value Updates Functional Vision Document (FVD) and supports its review and sign-off Reviews and signs -off FRD Drives the product backlog and scopes releases according to the market value Updates Functional Requirements Document (FRD) and supports its review and sign-off Reviews and signs-off FVD Transfers knowledge, explains existing business processes and future requirements to the FSA, Designers and the Product manager Updates Functional Requirements Document (FRD) and supports its review and sign-off Reviews and signs-off FVD Transfers knowledge, explains existing business processes and future requirements to the FSA, Designers and the Product manager Bridges the gaps in understanding between SMEs and Designers Facilitates product backlog and scope definition Facilitates Fit\Gap analysis and requirements gathering Facilitates and arbitrates decision making process throughout the phase Reviews and signs off FVD and FRD Bridges the gaps in understanding between SMEs and Designers Facilitates product backlog and scope definition Facilitates Fit\Gap analysis and requirements gathering Facilitates and arbitrates decision making process throughout the phase Reviews and signs off FVD and FRD Provides in-depth knowledge of the Microsoft Dynamics application Facilitates Fit\Gap analysis and requirements gathering Reviews and signs-off FRD Provides in-depth knowledge of the Microsoft Dynamics application Facilitates Fit\Gap analysis and requirements gathering Reviews and signs-off FRD Technical advisory to the FSA, Designers and the Product manager Provides guidance for business decisions from a technical perspective on issues such as: performance, scalability, reliability, and security Technical advisory to the FSA, Designers and the Product manager Provides guidance for business decisions from a technical perspective on issues such as: performance, scalability, reliability, and security Documents Functional vision (FVD) Functional requirements (FRD) Design quality and functional compliance o Solution is integrated correctly with the standard system and other modules of the solution Solution extensibility (a system design principle where the implementation takes future growth into consideration) Performance\Scalability Usability (effective UI patterns) Design quality and functional compliance o Solution is integrated correctly with the standard system and other modules of the solution Solution extensibility (a system design principle where the implementation takes future growth into consideration) Performance\Scalability Usability (effective UI patterns) Functional quality metrics
15
Roles\ Design stage EnvisioningAnalysis Design Dev & TestDocumenting Product manager TSA Facilitates and arbitrates decision making process throughout the phase Signs-off updates to the product backlog Signs-off solution design (FDD) Facilitates and arbitrates decision making process throughout the phase Signs-off updates to the product backlog Signs-off solution design (FDD) Provides guidance for Designers in any technical level questions to optimize technical architecture and meet the required level quality metrics: performance, scalability, reliability, and security Documents Functional design (FDD) Functional requirements (FRD) Designer FSA SME Provides clarification on business requirements Makes business decisions when issues occur Signs-off solution design (FDD) Provides clarification on business requirements Makes business decisions when issues occur Signs-off solution design (FDD) Establishes the efficient design process: Defines the communication standards for effective design, including documentation, design meetings and review flows Defines design documentation requirements Shares solution design best practices Keeps sight of relevant architecture related solution metrics, their level and acts to meet those Bridges the gaps in understanding between SMEs and Designers Facilitates product backlog changing and scope adjustments Facilitates and arbitrates decision making process throughout the phase Reviews solution is integrated correctly with the standard system and other modules of the solution Signs-off solution design (FDD) Establishes the efficient design process: Defines the communication standards for effective design, including documentation, design meetings and review flows Defines design documentation requirements Shares solution design best practices Keeps sight of relevant architecture related solution metrics, their level and acts to meet those Bridges the gaps in understanding between SMEs and Designers Facilitates product backlog changing and scope adjustments Facilitates and arbitrates decision making process throughout the phase Reviews solution is integrated correctly with the standard system and other modules of the solution Signs-off solution design (FDD) Designs the solution meeting the required solution architecture metrics Creates functional design for design team\customer understanding and accepting in Functional design documents (FDD) Creates development design specifications in Functional design documents (FDD) Designs the solution meeting the required solution architecture metrics Creates functional design for design team\customer understanding and accepting in Functional design documents (FDD) Creates development design specifications in Functional design documents (FDD) Functional design (FDD) Design quality and functional compliance o Solution design meets functional requirements o Solution is integrated correctly with the standard system and other modules of the solution o Global product compliance: security and system configuration Solution supportability (serviceability) o Ability to upgrade at ease (when the footprint into the standard system is minimized) Solution extensibility (a system design principle where the implementation takes future growth into consideration) o Enables sustainable growth of the solution without functional re-architecting of the solution. Performance\Scalability Implementation efficiency o Staff hours spent on life cycle activities Usability (effective UI patterns) Design quality and functional compliance o Solution design meets functional requirements o Solution is integrated correctly with the standard system and other modules of the solution o Global product compliance: security and system configuration Solution supportability (serviceability) o Ability to upgrade at ease (when the footprint into the standard system is minimized) Solution extensibility (a system design principle where the implementation takes future growth into consideration) o Enables sustainable growth of the solution without functional re-architecting of the solution. Performance\Scalability Implementation efficiency o Staff hours spent on life cycle activities Usability (effective UI patterns) Functional quality metrics
16
Roles\ Development stage EnvisioningAnalysisDesign Development Documenting Product Manager\ SME\ FSA Signs-off required changes in FDDs Documents Functional design (FDD) Developer TSA Validates FDD as for their completeness, technical feasibility and overall solution compliance Controls that technical architecture of the solution meets the required level of quality metrics: performance, scalability, reliability, and security Controls technical architecture of the solution when several developers work in the same area, coordinates development activities Conducts code reviews for the development team Leads the technical best practices and principles and makes sure they are adhered to Validates FDD as for their completeness, technical feasibility and overall solution compliance Controls that technical architecture of the solution meets the required level of quality metrics: performance, scalability, reliability, and security Controls technical architecture of the solution when several developers work in the same area, coordinates development activities Conducts code reviews for the development team Leads the technical best practices and principles and makes sure they are adhered to Reviews FDDs and provides feedback\requests for changes (if any) to the Designer\TSA Responsible for the local technical design Develops the product to meet specifications of the FDD and required solution metrics levels Adheres technical best practices and established development principles Tests modifications for validity of results, accuracy, reliability, and conformance to established standards Reviews FDDs and provides feedback\requests for changes (if any) to the Designer\TSA Responsible for the local technical design Develops the product to meet specifications of the FDD and required solution metrics levels Adheres technical best practices and established development principles Tests modifications for validity of results, accuracy, reliability, and conformance to established standards Designer Conducts FDD overview meeting for Developers Provides support to developers Updates FDD on the base of the TSA\Developer feedback Conducts FDD overview meeting for Developers Provides support to developers Updates FDD on the base of the TSA\Developer feedback Solution supportability (serviceability) o The right technical architecture allows fixing bugs easily o The right technical architecture minimizes bug fixing aftereffect to adjacent functionality (minimal regression testing is needed) o Ability to upgrade at ease (when the footprint into the standard system is minimized) Solution extensibility (a system design principle where the implementation takes future growth into consideration) o Enables sustainable growth of the solution without re-architecting\deep code refactoring Performance\Scalability General quality (no bugs) Solution supportability (serviceability) o The right technical architecture allows fixing bugs easily o The right technical architecture minimizes bug fixing aftereffect to adjacent functionality (minimal regression testing is needed) o Ability to upgrade at ease (when the footprint into the standard system is minimized) Solution extensibility (a system design principle where the implementation takes future growth into consideration) o Enables sustainable growth of the solution without re-architecting\deep code refactoring Performance\Scalability General quality (no bugs) Technical quality metrics Design quality and functional compliance o Solution is integrated correctly with the standard system and other modules of the solution o Global product compliance: security and system configuration NB! Through feedback. Design quality and functional compliance o Solution is integrated correctly with the standard system and other modules of the solution o Global product compliance: security and system configuration NB! Through feedback. Functional quality metrics
17
Roles\ Testing stage EnvisioningAnalysisDesign Testing Documenting Documents TesterDesigner Reviews FDDs and provides feedback\requests for changes (if any) to the Designer Creates test plans and test scenarios Conducts testing Reviews FDDs and provides feedback\requests for changes (if any) to the Designer Creates test plans and test scenarios Conducts testing Conducts FDD overview meeting for the Tester Provides support to testers Updates FDD on the base of the Tester feedback Signs-off test plans Conducts acceptance testing (business process testing) Conducts FDD overview meeting for the Tester Provides support to testers Updates FDD on the base of the Tester feedback Signs-off test plans Conducts acceptance testing (business process testing) Functional design (FDD) Design quality and functional compliance o Solution design meets functional requirements o Solution is integrated correctly with the standard system and other modules of the solution o Global product compliance: security and system configuration Performance\Scalability Usability (effective UI patterns) NB! Through feedback. Design quality and functional compliance o Solution design meets functional requirements o Solution is integrated correctly with the standard system and other modules of the solution o Global product compliance: security and system configuration Performance\Scalability Usability (effective UI patterns) NB! Through feedback. Functional quality metrics Product Manager\ SME\ FSA Signs-off required changes in FDDs Conducts acceptance testing Signs-off required changes in FDDs Conducts acceptance testing Developer Fixes bugs
18
Agenda\Progress 1.Introduction 2.Objectives 3.Solution architecture types, definition, quality metrics and contributors 4.SA pillars overview: documents, roles, process 5.Roles exploration 6.Case study 7.Lessons learned 8.Q&A
19
Case study\ Introduction One of our large ISV builds experienced some decent growth of scope per release, with keeping the release delivery timeframe unchanged. In order to do that: – We had to scale up the development* team in order to produce more solution within the same delivery time frame. – Make several developers working over the same solution area or modification. – Hot swap developers from other projects when we didn't have enough development capacity in the dedicated team. *Most challenging for us was the development team growth, that’s why it will be reviewed in the current case study.
20
Case study\Challenges Narrow developer focus Developers become narrowly focused and don’t see the entire solution picture any more, because the solution becomes bigger and developer count grows. Without overall solution context (entire set of related business processes), which the modification should be in compliance with, technical architecture suffers in the following aspects – General quality (bugs)\Supportability. It is more difficult to create reliable code. – Extensibility. Developers don't always see where the solution might grow when there is not enough solution context. – Performance\Scalability. Not always this kind of information\requirements is obvious or described in the documentation when a developer is working in a narrow solution area. Redundant or harmful code Developers write the redundant code when they are not well in sync with other developers working in the current or adjacent areas, or even affect each other functionality. The technical architecture suffers in: – General quality (bugs)\ Technical integrity. The same function implemented by different developers may return some different results. Developers may affect each other code in a bad way. – Supportability. You may need to change several places instead of one when you want to change a function logic. One thing\multiple approaches Developers may use different technical approaches to reach one functional goal. The technical architecture suffers in: – General quality (bugs)\ Technical integrity. Same function implemented differently may return some different results. – Supportability. You may need to change several places when you want to change a function logic instead of one. Hot swapping Hot swapped developers need assistance to comply with current solution architecture, tech. design patterns and requirements.
21
Case study\ Action and results Action – We introduced a role of Technical Solution Architect (with responsibilities covered in this session). Results – TSA is responsible for the overall technical architecture of the solution. TSA widens developer focus where needed, by providing additional insight into the bigger solution scope, requirements (including future), metrics and technical solution architecture requirements. – TSA controls that technical architecture of the solution meets the required level of quality metrics: performance, scalability, reliability, and security. So now we have a person that is fully in charge for the metrics and provides the corresponding assistance, review and control over the development team. So we don't have to rely on developers any more to reach those quality metrics. – TSA controls the technical architecture of the solution when several developers work in the same area and coordinates their development activities. This eliminates the challenges related to scaling up the development team to shorten delivery time, including Redundant or harmful code, One thing\multiple approaches and Hot swapping.
22
Lessons learned Technical and functional solution architecture definitions, metrics and contributors Roles that drive solution architecture – Primary and secondary roles – Responsibilities – Deliverables (documents) – Activities on the project map Case studies and project challenges
23
Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.