Upload
shanky-jain
View
222
Download
0
Embed Size (px)
Citation preview
7/29/2019 Application Design & Architecture
1/19
Application Design & Architecture
7/29/2019 Application Design & Architecture
2/19
Architecture Definition
Architecture is defined by the recommended practice as the fundamentalorganization of a system, embodied in its components, their relationships toeach other and the environment, and the principles governing its design andevolution.
This definition is intended to encompass a variety of uses of the termarchitecture by recognizing their underlying common elements. Principal amongthese is the need to understand and control those elements of system design
that capture the systems utility, cost, and risk. In some cases, these elements are the physical components of the system and
their relationships. In other cases, these elements are not physical, but instead, logical
components. In still other cases, these elements are enduring principles or patterns that
create enduring organizational structures. The definition is intended toencompass these distinct, but related uses, while encouraging more rigorousdefinition of what constitutes the fundamental organization of a system withinparticular domains.
* Reference: ANSI / IEEE Std 1471-2000, Recommended Practice for Architectural Description of Software-Intensive Systems
7/29/2019 Application Design & Architecture
3/19
Architecture Drivers - Business
Functional Requirements
Time to Market
Technology Enabled Solutions to create competitive
edge in business marketplace Ability to respond to changes in business
marketplace effectively
7/29/2019 Application Design & Architecture
4/19
Architecture Drivers - Technical
Quality Attributes
Scalability
Reliability
Performance
Extensibility
Define & Implement Standards
Leverage existing organizational assets
Cost Effective solutions
Vendor Management (Product & Software vendors)
7/29/2019 Application Design & Architecture
5/19
Success Factors
Technology as an enabler for Business
Meeting Business Requirements & Objectives
Timeliness and Effectiveness of the solution
Repeatable & Reusable Components Quality of Service
7/29/2019 Application Design & Architecture
6/19
The Multi-Million Dollar Question
Build Buy
7/29/2019 Application Design & Architecture
7/19
Architecture Evolution
As separation of the business rules and the dynamic sequencing of the process stepsbecomes common, it will enable the late binding of business applications and theirorchestrating processes. This late binding allows for the most-agile dynamically linked
applications with instantly controlled outcomes, thus enabling management to make changesinstantly, if desired.. from Gartner, February 2005
7/29/2019 Application Design & Architecture
8/19
Approach Alternatives
Enterprise Architecture Approach
Application Driven (Object Oriented)
Data Driven
Distributed Systems Component Driven
Service Oriented
7/29/2019 Application Design & Architecture
9/19
Enterprise Architecture Approach
7/29/2019 Application Design & Architecture
10/19
Enterprise Architecture Framework
BusinessArchitecture
ApplicationArchitecture
DataArchitecture Technology
Architecture
Alignment of IT strategy and planning withcompany's business goals.
Optimization of information managementapproaches through an understanding of
evolving business needs and technologycapabilities.
Long-term strategic responsibility for thecompany's IT systems.
Promotion of shared infrastructure and
applications to reduce costs and improveinformation flows.
Management of the risks associated withinformation and IT assets throughappropriate standards and securitypolicies.
7/29/2019 Application Design & Architecture
11/19
Enterprise Architecture Principles
Security: applications should ensure data and access
security
Ownership: clear and explicit ownership of enterprise
data Leverage assets: leverage existing services and
capabilities
Accessibility: be aware of to needs of all users
(location & disabilities)
Real-time: Minimize latency of data updates
Standards: promote consistency using standards
7/29/2019 Application Design & Architecture
12/19
Enterprise Architecture Deliverables
Current State
System ContextDiagram
Key SystemsInventory
System Logical andPhysical Architecture
DiagramsContext
Services Matrix
Integration Inventory Systems on a Page
Business Process Flowsand Scenarios
Future State
TechnologyStandards Business StrategyFuture State Services
Matrix
Future State Logical Architecture Vision
Road Map
List of Initiatives
Prioritization Model
Architecture MigrationMaps
Short Term Roadmap
Long Term Roadmap
Timeless/Evolutionary
Enterprise Data Model
Architectural Review
Process
IT Governance Process
Architectural
Principles
7/29/2019 Application Design & Architecture
13/19
Business Architecture
Blue Print for the Business - The Enterprise BusinessArchitecture defines the formal link between the enterprisebusiness strategy and the results predicted from supportingstrategic initiatives.
The Business Architecture is necessary as a means of
demonstrating the business value of subsequent TechnicalArchitecture work to key stakeholders, and the return oninvestment to those stakeholders from supporting andparticipating in the subsequent work.
Allows the business to grow by design rather than by seat-of-pants
Some available models:
BPM
Use Case Model
Class Model
7/29/2019 Application Design & Architecture
14/19
Application Architecture
An Enterprises Application architecture needs to span acrossall business units of an organization deliver appropriatesolutions as technology and business requirements evolve andnew business processes emerge over time.
Key questions to answer
Application Strategy "What To Deliver?" Technology Strategy "What To Deliver It On?"
Design Strategy "How To Build It? (in the most cost-effective and flexible way)
Goal of an Enterprise Architecture is Integration of diverse
business applications to provide Data (information) integration
Process integration: linking business processes acrossapplications.
Vendor independence
Common facade
7/29/2019 Application Design & Architecture
15/19
Data Architecture
Data architecture defines how data is stored, managed, andused in a system. It establishes common guidelines for dataoperations that make it possible to predict, model, gauge, andcontrol the flow of data in the system.
Some Key Questions:
how data is persistently stored
how components and processes reference and manipulatethis data
how external/legacy systems access the data
interfaces to data managed by external/legacy systems implementation of common data operations
7/29/2019 Application Design & Architecture
16/19
Technology Architecture
A Technology Architecture blueprints the strategy of informationtechnology to be utilized as part of the organization's overallbusiness strategy.
It should provide metrics to assess the value of IT investments
prioritize IT initiatives
channel IT spending to increase the return on investmentwhile maintaining an acceptable risk-reward balance.
This architecture will comprise of:
Logical architecture of all IT systems
Physical architecture of all IT systems
7/29/2019 Application Design & Architecture
17/19
MICROSOFT
.NET FrameWork Common Language Runtime
(CLR) Microsoft .NET Microsoft Certifications - Links Microsoft Cluster Services Microsoft Component Object
Model (COM) Microsoft Office Software Microsoft Technologies for
Designing E-Commerce Web Sites Microsoft Solutions for Mobile
App. Development Visual C++
Visual Basic (VB) Links Visual Basic (VB) .NET Visual Studio .NET Microsoft Internet Information
Server (IIS) Microsoft Transaction Server
(MTS)
Windows XP Editions Windows Server 2003 Microsoft ODBC Windows 2000 Links Windows CE Links Windows on Linux Tools
Windows NT Utilities Windows Programming Windows XP Links Windows Vista ActiveX SQL Server COM DOM ASP
http://www.peterindia.net/DotNETFrameWork.htmlhttp://www.peterindia.net/CommonLanguageRuntime(CLR).htmlhttp://www.peterindia.net/CommonLanguageRuntime(CLR).htmlhttp://www.peterindia.net/DotNETView.htmlhttp://www.peterindia.net/MicrosoftCertificationResources.htmlhttp://www.peterindia.net/MicrosoftClusterServices.htmlhttp://www.peterindia.net/COMOverview.htmlhttp://www.peterindia.net/COMOverview.htmlhttp://www.peterindia.net/MicrosoftOffice.htmlhttp://www.peterindia.net/MicrosoftE-commerce.htmlhttp://www.peterindia.net/MicrosoftE-commerce.htmlhttp://www.peterindia.net/MicrosoftMobileSolutions.htmlhttp://www.peterindia.net/MicrosoftMobileSolutions.htmlhttp://www.peterindia.net/VisualC++.htmlhttp://www.peterindia.net/VBALinks.htmlhttp://www.peterindia.net/VBdotNET.htmlhttp://www.peterindia.net/VisualStudiodotNET.htmlhttp://www.peterindia.net/MicrosoftInternetInformationServer(IIS).htmlhttp://www.peterindia.net/MicrosoftInternetInformationServer(IIS).htmlhttp://www.peterindia.net/MTS.htmlhttp://www.peterindia.net/MTS.htmlhttp://www.peterindia.net/WindowsXPView.htmlhttp://www.peterindia.net/Windows2003Links.htmlhttp://www.peterindia.net/ODBCLinks.htmlhttp://www.peterindia.net/Windows2000Links.htmlhttp://www.peterindia.net/WindowsCELinks.htmlhttp://www.peterindia.net/WindowsOnLinuxTools.htmlhttp://www.peterindia.net/WindowsNTUtilities.htmlhttp://www.peterindia.net/WindowsProgrammingResources.htmlhttp://www.peterindia.net/WindowsXPLinks.htmlhttp://www.peterindia.net/WindowsVista.htmlhttp://www.peterindia.net/ActiveXLinks.htmlhttp://www.peterindia.net/SQLServerLinks.htmlhttp://www.peterindia.net/COMLinks.htmlhttp://www.peterindia.net/DOMLinks.htmlhttp://www.peterindia.net/ASPLinks.htmlhttp://www.peterindia.net/ASPLinks.htmlhttp://www.peterindia.net/DOMLinks.htmlhttp://www.peterindia.net/COMLinks.htmlhttp://www.peterindia.net/SQLServerLinks.htmlhttp://www.peterindia.net/ActiveXLinks.htmlhttp://www.peterindia.net/WindowsVista.htmlhttp://www.peterindia.net/WindowsXPLinks.htmlhttp://www.peterindia.net/WindowsProgrammingResources.htmlhttp://www.peterindia.net/WindowsNTUtilities.htmlhttp://www.peterindia.net/WindowsOnLinuxTools.htmlhttp://www.peterindia.net/WindowsCELinks.htmlhttp://www.peterindia.net/Windows2000Links.htmlhttp://www.peterindia.net/ODBCLinks.htmlhttp://www.peterindia.net/Windows2003Links.htmlhttp://www.peterindia.net/WindowsXPView.htmlhttp://www.peterindia.net/MTS.htmlhttp://www.peterindia.net/MTS.htmlhttp://www.peterindia.net/MicrosoftInternetInformationServer(IIS).htmlhttp://www.peterindia.net/MicrosoftInternetInformationServer(IIS).htmlhttp://www.peterindia.net/VisualStudiodotNET.htmlhttp://www.peterindia.net/VBdotNET.htmlhttp://www.peterindia.net/VBALinks.htmlhttp://www.peterindia.net/VisualC++.htmlhttp://www.peterindia.net/MicrosoftMobileSolutions.htmlhttp://www.peterindia.net/MicrosoftMobileSolutions.htmlhttp://www.peterindia.net/MicrosoftE-commerce.htmlhttp://www.peterindia.net/MicrosoftE-commerce.htmlhttp://www.peterindia.net/MicrosoftE-commerce.htmlhttp://www.peterindia.net/MicrosoftE-commerce.htmlhttp://www.peterindia.net/MicrosoftOffice.htmlhttp://www.peterindia.net/COMOverview.htmlhttp://www.peterindia.net/COMOverview.htmlhttp://www.peterindia.net/MicrosoftClusterServices.htmlhttp://www.peterindia.net/MicrosoftCertificationResources.htmlhttp://www.peterindia.net/MicrosoftCertificationResources.htmlhttp://www.peterindia.net/MicrosoftCertificationResources.htmlhttp://www.peterindia.net/MicrosoftCertificationResources.htmlhttp://www.peterindia.net/DotNETView.htmlhttp://www.peterindia.net/CommonLanguageRuntime(CLR).htmlhttp://www.peterindia.net/CommonLanguageRuntime(CLR).htmlhttp://www.peterindia.net/DotNETFrameWork.html7/29/2019 Application Design & Architecture
18/19
SUN
Application and Integration Services Application Development
Desktop Multimedia, Web Browsers Enterprise Computing
Solaris Enterprise System
Sun Java Enterprise System Sun Java System Suites
Hardware Drivers
High Performance Computing Shared Visualization Identity Management
Java and Technologies
Operating Systems Solaris, Sun Cobalt Patches and Updates
Systems Administration
7/29/2019 Application Design & Architecture
19/19
ORACLE
BI and Data Warehousing
Embedded
Java Developer
Linux PHP Developer
PL/SQL
Service-Oriented Architecture
XML