ebook img

Microsoft Architects Journal PDF

59 Pages·2004·0.442 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Microsoft Architects Journal

Enterprise Architecture Business Process Best Practice for Rule- Design and the Integrated Decomposition and Based Application Architecture Framework Service Identification Development Andrew Macaulay,CGE&Y using Communication Dennis Merritt,Amzi! Inc. pp 04 – 09 Patterns pp 39 – 48 Gerke Geurts and Adrie Geelhoed, LogicaCMG pp 18 – 27 Understanding Service Metadata-driven DasBlog: Notes from Oriented Architecture Application Design and Building a Distributed David Sprott and Lawrence Development .NET Collaboration Wilkes,CBDI Forum Kevin S Perera,Temenos System pp 10 – 17 pp 28 – 38 Clemens Vasters,newtelligence AG pp 49 – 58 JOURNAL1 JOURNAL1 MICROSOFT ARCHITECTS JOURNAL JANUARY 2004 A NEW PUBLICATION FOR SOFTWARE ARCHITECTS Dear Architect personal and business technologies. Adapting to change has always been These enable you to access and use important to business success and important information,whenever today change is more rapid than ever. and wherever it is needed.The final Companies merge,markets shift, result you desire is an integrated, competitors develop new products, cost-effective IT architecture that and customers demand change,all empowers your business.Information with unprecedented speed.In today’s once isolated in back-end systemsis now business environment,staying ahead available to all your employees via means continuously adapting to change streamlined and automated processes – and making change work in your that can span multiple systems. favour.To do that,business leaders need IT systems that support and It gives me great pleasure to introduce enable their strategic decisions. the very first issue of the new ‘Microsoft There is a growing consensus in ArchitectsJournal’ – a platform where the industry that the way to create authoritative software architects from this kind of adaptive,agile IT all corners of Microsoft’s architect architecture is through Web services – community will discuss the connection discrete units of software,based on between opportunities once out of industry-standard protocols that reach and the solutions that now make interoperate across platforms and them possible. programming languages. We hope you will enjoy your journal. Whether or not you build IT systems and Web service-based connectivity Simon Brown using Microsoft®Windows™and General Manager, Microsoft®.NET,you still need to Developer and Platform connect together a broad range of Evangelism Group,Microsoft EMEA Editorial By Arvindra Sehmi Dear Architect The responsibilities and required ensuring quality and architectural Welcome to the inaugural issue capabilities of the architect vary, implementation conformance to the of JOURNAL! Software architecture depending on the particular role that design.The architect may also is a tough thing – a vast,interesting is being fulfilled during the enterprise optimise the architecture,as the and largely unexplored subject area. solutions development cycle.Typically, problem domain becomes better As an art,it requires intuition and during the early business and IT understood.In all stages,the architect understanding of well-established strategy phases,the architect provides will perform as part of the assignment architectural disciplines.As an a supporting role.This involvement team,and frequently a team will fulfil engineering practice,it leads to serves to add value in visioning and the architecture role.An indicative list formation of system models consisting scoping,helping to reduce complexity of typical architect responsibilities is: of parts;with descriptions of their and risks,and ensuring the strategy is shape and form in terms of properties, viable and feasible.The architect also – Support business visioning and relationships and constraints.The gains knowledge of the business and scoping activities rationale for their existence often its aspirations,which will provide – Translate between business and IT derives from the system requirements. the basis for architecture design.The requirements And of course,everyone has or wants architect can translate between the – Communicate with stakeholders, to say something about it! technology view and business view both within business and IT of the strategy. – Weigh different interests The richness of this topic is one of the – Determine solution alternatives reasons we have launched JOURNAL As the organisation moves into – Create a viable and feasible design – ‘Microsoft Architects Journal’.It will enterprise and project architecture – Choose solutions be a platform for thought leadership design phases,the architect role – Manage quality on a wide range of subjects on becomes much more significant.The – Manage complexity enterprise application architecture, architect is responsible for structuring, – Mitigate risks design and development.Authors modelling and design of the architecture. – Communicate will discuss various business and ‘soft’ concerns that play a key role Finally,as the organisation moves This requires a diverse range of skills, in enterprise systems development. through subsequent phases to including knowledge of architecture It will provide a unique source of implement,deploy and maintain design,workgroup and communications information previously not available the solution,the architect performs skills,and consultancy skills.In this through any other Microsoft offering. a guiding and verification role: issue of JOURNAL,we reflect the Keep updated with additional information at http://msdn.microsoft.com/architecture/journal JOURNAL1 | Editorial 2 wide variety of architectural issues communication patterns and their He describes the lessons he learned in today’s software industry – from role in defining business processes while designing and implementing Service-Oriented Architecture and and services.They assert that such ‘dasBlog’ – a Web service based best practices for rule-based systems patterns afford decomposition of Weblog engine built using Microsoft to the role of Blogging in an enterprise business processes into business, .NET technologies. solution.Our authors come from informational and infrastructural organizations throughout the world, services and the definition of their I’m certain you’ll find something of and each offers a unique perspective dependencies,thus providing a solid interest and value in JOURNAL. on software architecture and design. basis for enterprise information and We’ll be keeping you updated application architecture. with additional information at Andrew Macaulay,a technical [http://msdn.microsoft.com/architecture/ architect at Cap Gemini Ernst & Kevin Perera,systems architect with journal] where you’ll also be able Young,writes about enterprise Temenos,will present a pragmatic to download the articles for your architecture design and the Integrated ‘late-bound’ approach using metadata added convenience. Architecture Framework,and describes descriptions of artifacts at design a model for enterprise architecture time,to make development time Finally,if you have an idea for an and its importance in helping software implementation of his applications article you’d like to submit for a architects understand the business as extremely flexible. future issue of JOURNAL,please a whole. send a brief outline and resume Dennis Merrit,a principal in Amzi! Inc., to me – [email protected]. David Sprott and Lawrence Wilkes, discusses the problem of encoding analysts at CBDI Forum,provide logical rules,and argues for a rules Please also e-mail me any comments an insight into Service-Oriented processing engine based approach to on JOURNAL. Architecture.In their article they business automation in which the rules outline some of the principles of are abstracted from the process. Arvindra Sehmi architecting solutions with services Architect,Developer and Platform and emphasize the importance of a Clemens Vasters,an executive team Evangelism Group,Microsoft EMEA service-oriented environment. member at newtelligence AG and prominent ‘blogger’,expounds the Gerke Geurts and Adrie Geelhoed, merits of Weblogs as a means architects at LogicaCMG,discuss of sharing knowledge and ideas. JOURNAL1 | Editorial 3 Enterprise Architecture Design and the Integrated Architecture Framework By Andrew Macaulay, CGE&Y Enterprise Architecture in context to work together,collaborate or Project-level Architecture (as Over the past few years,and as integrate where and when required. standards and guidelines) to ensure software and systems engineering best-practice and conformance to has matured,it has become accepted Project-Level Architecture– the overall architecture. that there is a clear need for an defines the form and function of the ‘architectural view’ of systems.This systems (business and IT) in a project When considering how organisations need has grown as a result of the or programme,within the context of typically manage business change and increasing complexity of systems and the enterprise as a whole and not just IT enablement,traditional approaches their interactions within and between the individual systems in isolation. to strategic business change use a top businesses.Furthermore,continued This project-level architecture will down view of the business in terms pressure to reduce IT costs and refine,conform to and work within of its people and processes.However, deliver real,quantifiable business the defined Enterprise Architecture. the traditional software and systems benefit from solutions necessitate a engineering approaches tend to focus clear understanding of how systems Application Architecture– on identifying and delivering the support and enable the business. defines the form and function of the specific functionality required to applications that will be developed to automate a task or activity.Less The ‘architectural view’ of systems deliver the required functionality of the importance is attached to how the (both business and IT systems) is system.Some of this architecture may resulting system will interact with defined in the ANSI/IEEE Standard be defined in the Enterprise and other systems and the rest the 1471-2000 as:‘the fundamental Figure 1.Business and Systems Alignment organization of a system,embodied in its components,their relationships to Business Business each other and the environment,and Drivers Drivers the principles governing its design and evolution’.Further to this high- level definition,and in the same way Business Vision and Strategy as there are different levels of architecture within building (city plans,zoning plans and building IS and IT Strategy plans),it is important to classify Drives M business and IT architecture into a Business Enterprise Technical i n a number of different levels: Architecture Architecture Architecture ta i n Supports & enables a Enterprise Architecture– defining n d tsehynestt eoervmpersri as(elbl u (fisonirncmleus dasin nadgn dfpu aInTrct)tn iaeocrnrs o oasfsn dan ogramme FSrtaamnedwaorrdks & FSrtaamnedwaorrdks & Evolve r Guidance Guidance organisations forming the extended P e enterprise),and providing a ng a framework,standards and guidelines Ch for project-level architectures.The Information, Development vision provided by the Enterprise Organisation Projects Architecture allows the development and Process (Project of consistent and appropriate systems Architectures) across the enterprise with the ability “Over the past few years, and as software and systems engineering has matured, it has become accepted that there is a clear need for an ‘architectural view’ of systems.” JOURNAL1 | Enterprise Architecture 4 business in order to deliver wider and other business-driven aspects project-level architectures know as the business benefit.As a result,there as well as functionality. Integrated Architecture Framework is often a gap between the high level (IAF).This approach,now its third vision and structure of the business, Although enterprise architecture major revision,has been developed and the systems implemented to should ideally be designed using a top at a global level based on the support them (in other words the down approach,many organisations experience of Cap Gemini Ernst & alignment between business and have severe budget constraints for Young architects on real projects, IT is poor). strategic IT initiatives which do not together with a formal review process readily offer short-term return on including academics.IAF has been To bridge this gap,many investment or quantifiable business successfully used on many hundreds organisations are developing an benefit.For this reason,many of engagements,both large and small, enterprise architectureto provide enterprise architectures are initially across the globe. a clear and holistic vision of how created as part of an approved large systems (both manual and automated) project or programme.Once in place IAF breaks down the overall problem will support and enable their business. there are opportunities to refine it into a number of the related aspect An effective enterprise architecture further and to start demonstrating areas covering Business(people comprises a comprehensive view of the benefit and value by providing and process),Information(including business,including its drivers,vision standards and guidelines for knowledge),Information Systems,and and strategy;the organisation and subsequent projects. Technology Infrastructure,with two services required to deliver this vision specialist areas addressing the and strategy;and the information, Cap Gemini Ernst & Young’s Governanceand Securityaspects systems and technology required for Integrated Architecture across all of these.Analysis of each the effective delivery of these services Framework of these areas is structured into four (see Figure 1). Cap Gemini Ernst & Young has, levels of abstraction:Contextual, over the past 10 years,developed Conceptual,Logicaland Physical, Defining an enterprise architecture an approach to the analysis and as shown in Figure 2. is complex,because it encompasses development of enterprise and the systems within the context of Figure 2.Integrated Architecture Framework the whole enterprise.To simplify this,an enterprise architecture is Contextual Contextual answers the typically structured by considering question 'why do we need a business or system as a series Why? ains atrhceh iotveecrtaulrle ?c'o natnedx t'?w'hat of components (or services) with Security inter-relationships,without having Governance to consider the detailed design within the individual components. Business Information Information Technology systems infra-structure Both the components and their inter- Conceptual Conceptual answers the question 'what are the relationships must be viewed in terms what? requirements and what is the vision of a solution?' of the services that they provide,and Logical Logical answers the the characteristics,such as security, question 'how are these how? requirements to be met?' scalability,performance,integration, required of those services.These Physical Physical answers the question 'with what is components can then be grouped by with what? the solution built?' service characteristics,distribution JOURNAL1 | Enterprise Architecture 5 This approach allows the pragmatic Conceptual level are service-based – How should the logical components deployment of the framework in many (that is they do not detail specific be grouped (for example,providing different scenarios,both by using only products or standards),they remain a multi-channel customer logon the relevant parts of the framework stable unless the business itself service with separate channel- and by supporting iterative working fundamentally changes its vision and specific/optimised authentication across the streams.This flexibility objectives;providing a solid foundation components alongside a common minimises the traditional effects of from which the logical architecture can authentication support component a waterfall approach and ensures be derived.Key decisions taken at this using a central directory)? coherency across the aspect areas.For level include: – How will logical components example,a project architecture using – What areas of the business to use be shared across systems (these IAF will,in many cases,only need to IT to support? components could be presented use sufficient of the Business and – Which overall business architecture as Web Services)? Information aspect areas to provide (e.g.moving to a front-office,mid- – How a central integration hub the overall context for the project.An office,back-office model) will be used? supports the various business enterprise architecture will concentrate – How systems will reflect the systems,or the way in which mainly on the contextual,conceptual organisation/business architecture, collaboration tools are used alongside and logical levels. the level to which department databases applications and systems are consolidated into a suite integration to support virtual team? The Contextuallevel brings together of core applications or are allowed the business and other drivers,vision departmental flexibility witha central Typically,at the logical level,there and strategy and their resulting integration service? might be more than one way to priorities into a set of principles approach the solution (which reflects all of which are described with their The Logicallevel describes the the various drivers,for example cost, implications and priorities.This solution as product-independent flexibility,security,manageability).The comprehensive set of statements is services or components,includes a key decision at this level is then to then used in a consistent manner in clear definition of the integration and select (with the business) the solution the decision making process,providing collaboration contracts between these alternative that delivers the services traceability back to the original services or components.By remaining required,in a way that best addresses business drivers,strategy and vision, independent of products,this level of the guiding principles. and demonstrating the required the architecture can remain relatively business-systems alignment. stable.It can change to reflect top-down The Physicallevel details the design changes,including new fundamental principles,standards and guidelines, Although much of the work done business models (for example a move including component grouping in at this stage is concerned with data towards a Customer-Centric model), critical areas as well as deployment gathering,the importance of this stage as well as bottom-up changes,such models.This provides the framework cannot be overstressed.It will provide as opportunities for technology within which the detailed design can the basis for the entire architecture enablement (such as CRM) or be undertaken,as well as selection design by creating and documenting fundamental changes in technology criteria (not functional specifications) an understanding of the scope from paradigm (for example Services for products to be either developed an overall business perspective. Architecture or Grid).Through this, or purchased. the impact of change at the business The Conceptuallevel details the or technology level can be assessed It is at this level that solution services and the interactions between in a clear and consistent manner. frameworks and architectures such as these services in support of the the Microsoft Systems Architecture principles defined in the Contextual Key decisions taken at this (MSA) can be used at this level to level.As the models defined in the level include: accelerate development of the physical JOURNAL1 | Enterprise Architecture 6 architecture,improve the quality of architecture needs to be communicated the enterprise architecture requires the architecture (by using proven at many different levels,using the ongoing maintenance,especially solutions) and reduce project risks. appropriate visual representations and around the more physical areas such language:For senior management,the as technical standards.This ensures Examples of key decisions taken at architecture must show how the that the enterprise architecture this level are: business goals and drivers will be remains valid and relevant to the – Which physical components which supported,and how benefit can be business as it changes.The enterprise will be part of a package solution derived.The focus of business users is architecture should be under the control (e.g.using physical components more on their own individual business of an enterprise-wide governance from the ERP solution). areas and is more functionally-biased. function that ensures its maintenance – What additional components will be IT management and staff will want and verifies the ongoing conformance required around this package,and to focus on the technical components, of systems.Even where,for clear and the standards and guidelines for including how they will be able to justified business reasons,conformance developing these components (e.g. provide the required levels of support. is not possible,this function is then language,tools,etc.)? Project-level architects will be able to make sure that the business – What are the standards and detailed concerned with the standards and understands the real costs of product selection criteria for the guidelines which will provide re-use implementing non-conformant systems, infrastructure products to be opportunities or impose constraints for example increased running costs or deployed? – leading onto a candidate on their individual designs. lack of future flexibility. list for selection.If there is a clear product or vendor strategy,this Programmes and projects must Linking Architecture and Design candidate list becomes the product conform to the enterprise architecture As the use of the term ‘architecture’ has standards to be taken forward. to ensure that business benefits can grown within business and IT,there be realised,and that the systems and have been many areas of confusion: Communication and software engineering activities can for example,in many organisations, Architecture Governance benefit from the analysis already done architecture and design are seen as Because of the large number of in defining the enterprise architecture. being the same thing.It is Cap Gemini potential stakeholders,the enterprise Furthermore,as with all architectures, Ernst & Young’s view that this is not Table 1.Comparing Architecture and Design Delivers Does Not Deliver Architecture – Non-functional requirements – Prototypes – Functional scope and – Comprehensive functional requirements responsibilities (who does what) – Detailed data analysis – Key design and product choices – Built and implemented systems – High level design – Design constraints Design – Functional requirements and – Solution Vision how they will be met – Comprehensive and traceable non- – Detailed data analysis and functional requirements data model as necessary – Security and governance architectures – System design documentation – Built and implemented systems “Programmes and projects must conform to the enterprise architecture to ensure that business benefits can be realised.” JOURNAL1 | Enterprise Architecture 7 the case because design and comprehensive and consistent With IAF,a project-level technical architecture offer different and framework in support of this. architecture uses the same basic complimentary perspectives on the Furthermore,the enterprise approach as the enterprise solution – in fact,Cap Gemini Ernst architecture will provide much architecture,albeit with different & Young use IAF and the Rational of the context and other inputs levels of detail,with more focus on Unified Process (RUP;a software required by the project architecture, the logical and physical level of development approach) on projects to whilst the project architecture will information,information systems, deliver a complete design approach cater for the unique requirements technology infrastructure,governance from architectureto code.Table 1 of the solution.In projects with and security aspects (using the shows the comparison between significant potential risk,especially context and business architecture architecture (IAF) and design (RUP, on complex or large projects,the defined in the enterprise architecture). including application architecture): use of the architectural approach at project-level will mitigate many of As a result,the output from the As with the architecture of buildings, the risks by ensuring that there is enterprise architecture can be used software architecture and (detailed) a clear and holistic understanding directly as the input into the project- design are,in fact,part of an overall of the overall context of the solution level technical architecture.From the ‘design continuum’ required to deliver including external systems and drivers project-specific technical architecture, a complete solution.Aligning IAF and that may affect the solution. the detailed and specific design RUP processes provides a principles,guidelines,standards,and Figure 3.IAF and RUP IAF Contextual Architecture Conceptual Architecture Logical Architecture Physical Architecture RUP Business Modelling Requirements Analysis & Design Implementation Test Deployment Configuration & Change Management Project Management Environment Inception Elaboration Construction Transition JOURNAL1 | Enterprise Architecture 8 constraints,which then guide the by helping architects understand the impact of changes,some of which may detailed software and systems business as a whole and by placing the result from the design stage,can be engineering design activities,can be solution being designed into the overall evaluated in business terms. derived.In the case of IAF,the output business and technical context within – Drives,contextualises,and constrains from the project-level technical which the project is being delivered. the design.The design for the architecture can be mapped onto RUP application or infrastructure will design artefacts such as business use The key objectives of an enterprise need to be governed by the cases,system use cases,and non- architecture are to understand … architecture in order to fully deliver functional specification.These mappings – The relevant parts of whole business, the complete solution including the typically are not one-to-one,but do in context (incl.external partners) non-functional requirements. provide traceability through from the – The end-to-end processes (including – Is clearly scoped,understood and architecture to the physical detailed external processes/actors) clearly defines the responsibilities design,as well as helping accelerate the – Non-functional requirements of each element. overall design process from architecture (including security & governance) through to delivered systems. which results in a solution that … and provides the rationale … This helps accelerate the design/ – Supports the non-functional – For decisions,standards and product development effort whilst continuing requirements.This may need specific selections that support the business to mitigate project risks. component organization to support, goals and drivers. for example,specific cross-domain Summary security requirements,or a service- Further Reading Enterprise architectures are becoming based approach to provide the Cap Gemini Ernst & more important today as the level of required flexibility. Young Technology Services complexity and inter-operation – Is seen in the context of the http://www.cgey.com/technology between systems and business whole business and end-to-end increases,and as there is even more processes.For example,service Services Architecture need for business-system alignment level objectives may exist for overall http://www.cgey.com/technology/ and cost-effective use of IT to deliver transaction times that span more sa/index.shtml business benefit.Enterprise than one business – understanding architecture (and project-level the limitations of this allow these Adaptive IT technical architecture) provides measures to be refined. http://www.cgey.com/adaptive/ valuable input into application – Links to,and is traceable to,the solutions/adaptive-it-overview.shtml architecture and detailed design business principles so that the Andrew Macaulay Andrew Macaulay joined Cap engagements,both at an Enterprise [email protected] Gemini Ernst & Young as a Technical and the Project level,and has been Architect in 1993 following ten years instrumental in developing,delivering as a Technical Consultant.He has and training Cap Gemini Ernst & been an Architect and Technical Young’s approach to architecture, Consultant on many major Integrated Architecture Framework. JOURNAL1 | Enterprise Architecture 9 Understanding Service Oriented Architecture By David Sprott and Lawrence Wilkes, CBDI Forum If there was a hit parade of Over time,the level of abstraction Oriented Architecture is the IT acronyms,Service Oriented at which functionality is specified, consideration of Web services.However Architecture,or SOA,would surely published and or consumed has Web services are not inherently service be number one.Yet for all the gradually become higher and higher. oriented.A Web service merely exposes media comment,how many really We have progressed from modules, a capability which conforms to Web understand what SOA is? How to objects,to components,and now to services protocols.In this article we will does it affect what architects, services.However in many respects the identify the characteristics of a well CIOs,project managers,business naming of SOA is unfortunate.Whilst formed service,and provide guidance analysts and lead developers SOA is of course about architecture, for architects and designers on how to do? In this article we provide it is impossible to constrain the deliver service oriented applications. a concise explanation that discussion to architecture,because we anticipate will baseline matters such as business design and Principles and Definitions the subject. the delivery process are also important Looking around we see the term or considerations.A more useful acronym SOA becoming widely used, Introduction nomenclature might be Service but there’s not a lot of precision in the It seems probable that eventually most Orientation (or SO).There are actually way that it’s used.The World Wide software capabilities will be delivered a number of parallels with object Web Consortium (W3C) for example and consumed as services.Of course orientation (or OO) and component refers to SOA as ‘A set of components they may be implemented as tightly based development (CBD): which can be invoked,and whose coupled systems,but the point of usage – Like objects and components,services interface descriptions can be published – to the portal,to the device,to another represent natural building blocks that and discovered’.We see similar endpoint,and so on,will use a service allow us to organizecapabilities in definitions being used elsewhere;it’s based interface.We have seen the ways that are familiar to us. a very technical perspective in which comment that architects and designers – Similarly to objects and components, architecture is considered a technical need to be cautious to avoid everything a service is a fundamental building implementation.This is odd,because becoming a service.We think this is block that the term architecture is more incorrect and muddled thinking. a.Combines information generally used to describe a style or It might be valid right now given the and behaviour. set of practices – for example the style maturity of Web Service protocols and b.Hides the internal workings in which something is designed and technology to question whether from outside intrusion. constructed,for example Georgian everything is implemented using Web c.Presents a relatively simple buildings,Art Nouveau decoration services,but that doesn’t detract from interface to the rest of the or a garden by Sir Edwin Lutyens the need to design everything from a organism. and Gertrude Jekyll . service perspective.The service is the – Where objects use abstract data major construct for publishing and types and data abstraction,services CBDI believes a wider definition should be used at the point of each can provide a similar level of of Service Oriented Architecture significant interface.Service Oriented adaptability through aspect or is required.In order to reach this Architecture allows us to manage context orientation. definition,let’s start with some existing the usage (delivery,acquisition, – Where objects and components definitions,and compare some W3C consumption,and so on) in terms of, can be organized in class or service offerings with CBDI recommendations. and in sets of,related services.This hierarchies with inherited behaviour, We’ll begin by looking at definitions of will have big implications for how we services can be published and basic Service concepts. manage the software life cycle – right consumed singly or as hierarchies from specification of requirements as and or collaborations. Service services,design of services,acquisition – A Component capable of performing and outsourcing as services,asset For many organizations,the logical a task.A WSDL service:A collection management of services,and so on. starting place for investigating Service of end points (W3C). JOURNAL1 | Understanding SOA 10

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.