This presentation touches on the classic skills and disciplines of being a Software Architect or Application Architect. Topics include Kruchten 4+1, UML, TOGAF ADM, Agile Architecture, Enterprise Architecture, Architecture Review Boards, and many others.
This document discusses IT architecture and architects. It begins by noting that the main purpose of architecture is to deal with the complexity of information systems. It then provides examples of how systems have become more complex over time. The document discusses different types of architectures, including software architecture, solution architecture, and enterprise architecture. It defines the roles of software architects, solution architects, and enterprise architects. It also discusses competencies for architects and typical architecture deliverables. The document aims to provide clarity on different architecture roles and contexts.
It is well known that an effective PMO is key to successful and efficient program and project execution. In other words, doing things “right”. Enterprise Architecture is the discipline that plans and monitors enterprise transformation and aligns the business strategy with information technology capabilities. In other words, doing the “right things” to support the business.
Why is it organizations despite having both of these disciplines still struggle with effective enterprise transformation? What can we done to use these disciplines more effectively to effect better business outcomes? What are the roles of each discipline and how do they work together to create business value?
In this presentation, Riaz will address these questions and will provide real life examples that can help build a strong relationship between the PMO and Enterprise Architecture.
Learning Objectives:
• How to build a strong relationship between the PMO and Enterprise Architecture (EA) to deliver positive outcomes for your organization
• Identify the different roles and functions of the PMO and EA as well as their similarities
Integrating It Frameworks, Methodologies And Best Practices Into It Delivery ...Alan McSweeney
The document proposes an integrated IT solution and operations management approach consisting of two pillars: 1) Architecture and Realisation, which is concerned with enterprise vision, strategy, architecture, implementation and operation. 2) Management and Processes, which addresses management of initiatives, programmes, projects and associated processes. It suggests grouping relevant frameworks under these pillars to provide guidance on core functions. Frameworks can help organizations quickly develop core competencies across functions like quality management, resource management, and financial management.
An introduction to fundamental architecture conceptswweinmeyer79
(Note: This is a very dated version of this popular deck, as SlideShare does not provide authors with a mechanism to update their documents. If interested in the latest version, feel free to message me on LinkedIn or at wweinmeyer@gmail.com. Also, feel free to ask SlideShare to bring back the ability to update posted documents.)
A discussion of the fundamentals you need to nail in your architecture practice:
- Architecture vs. Design
- Conceptual vs. Logical vs. Physical architecture
- Viewpoint Frameworks
- Architecture Domains
- Architecture Tiers
You are free to use/copy this information but if you do so, please include an acknowledgement
How do you begin to engineer the world's best software application? As you live in an Agile world today, how do you use architecture disciplines like Kruchten 4+1, UML, TOGAF, and Zachman? What do they mean? Where do you start?
In this presentation, Brad Beiermann will take you on a journey through the past, present and future disciplines of being a software architect. As you come out of this session, you will be equipped with the concepts of continuous design, and what it means to be design driven in today's fast paced development environment.
Solution Architecture Centre Of ExcellenceAlan McSweeney
This is an extract from the book An Introduction to Solution Architecture (https://www.amazon.com/dp/1797567616) that discusses the topic of a Solution Architecture Centre Of Excellence.
The solution architecture function should aspire to be a Solution Architecture Centre Of Excellence (SACOE). This is concerned with developing a mature function that is highly-skilled at solution architecture and design and provides solution and consulting leadership to the organisation.
Developing an SACOE requires vision and resources of both the solution architecture function and information technology management.
The solution architecture function has the capability to develop both the business insight and solution and technology expertise to act as the business/technology authority and be the bridge between the business and technology domains of the organisation.
This document provides an overview of enterprise architecture using TOGAF methodology. It includes numerous sample templates for business, data, application, and technology architecture segments. The key phases of TOGAF include developing baseline and target architectures for each segment, performing gap analyses, and defining roadmaps. Examples of sample templates are provided for elements like architecture visions, catalogs, matrices, diagrams, and gap analyses.
This presentation is on leveraging Enterprise Architecture Governance and Project Portfolio Management Best Practices to:
Accelerate project execution
Manage project and architecture inter-dependencies
Deliver realised value
Improve Enterprise and PMO collaboration
This document discusses IT architecture and architects. It begins by noting that the main purpose of architecture is to deal with the complexity of information systems. It then provides examples of how systems have become more complex over time. The document discusses different types of architectures, including software architecture, solution architecture, and enterprise architecture. It defines the roles of software architects, solution architects, and enterprise architects. It also discusses competencies for architects and typical architecture deliverables. The document aims to provide clarity on different architecture roles and contexts.
It is well known that an effective PMO is key to successful and efficient program and project execution. In other words, doing things “right”. Enterprise Architecture is the discipline that plans and monitors enterprise transformation and aligns the business strategy with information technology capabilities. In other words, doing the “right things” to support the business.
Why is it organizations despite having both of these disciplines still struggle with effective enterprise transformation? What can we done to use these disciplines more effectively to effect better business outcomes? What are the roles of each discipline and how do they work together to create business value?
In this presentation, Riaz will address these questions and will provide real life examples that can help build a strong relationship between the PMO and Enterprise Architecture.
Learning Objectives:
• How to build a strong relationship between the PMO and Enterprise Architecture (EA) to deliver positive outcomes for your organization
• Identify the different roles and functions of the PMO and EA as well as their similarities
Integrating It Frameworks, Methodologies And Best Practices Into It Delivery ...Alan McSweeney
The document proposes an integrated IT solution and operations management approach consisting of two pillars: 1) Architecture and Realisation, which is concerned with enterprise vision, strategy, architecture, implementation and operation. 2) Management and Processes, which addresses management of initiatives, programmes, projects and associated processes. It suggests grouping relevant frameworks under these pillars to provide guidance on core functions. Frameworks can help organizations quickly develop core competencies across functions like quality management, resource management, and financial management.
An introduction to fundamental architecture conceptswweinmeyer79
(Note: This is a very dated version of this popular deck, as SlideShare does not provide authors with a mechanism to update their documents. If interested in the latest version, feel free to message me on LinkedIn or at wweinmeyer@gmail.com. Also, feel free to ask SlideShare to bring back the ability to update posted documents.)
A discussion of the fundamentals you need to nail in your architecture practice:
- Architecture vs. Design
- Conceptual vs. Logical vs. Physical architecture
- Viewpoint Frameworks
- Architecture Domains
- Architecture Tiers
You are free to use/copy this information but if you do so, please include an acknowledgement
How do you begin to engineer the world's best software application? As you live in an Agile world today, how do you use architecture disciplines like Kruchten 4+1, UML, TOGAF, and Zachman? What do they mean? Where do you start?
In this presentation, Brad Beiermann will take you on a journey through the past, present and future disciplines of being a software architect. As you come out of this session, you will be equipped with the concepts of continuous design, and what it means to be design driven in today's fast paced development environment.
Solution Architecture Centre Of ExcellenceAlan McSweeney
This is an extract from the book An Introduction to Solution Architecture (https://www.amazon.com/dp/1797567616) that discusses the topic of a Solution Architecture Centre Of Excellence.
The solution architecture function should aspire to be a Solution Architecture Centre Of Excellence (SACOE). This is concerned with developing a mature function that is highly-skilled at solution architecture and design and provides solution and consulting leadership to the organisation.
Developing an SACOE requires vision and resources of both the solution architecture function and information technology management.
The solution architecture function has the capability to develop both the business insight and solution and technology expertise to act as the business/technology authority and be the bridge between the business and technology domains of the organisation.
This document provides an overview of enterprise architecture using TOGAF methodology. It includes numerous sample templates for business, data, application, and technology architecture segments. The key phases of TOGAF include developing baseline and target architectures for each segment, performing gap analyses, and defining roadmaps. Examples of sample templates are provided for elements like architecture visions, catalogs, matrices, diagrams, and gap analyses.
This presentation is on leveraging Enterprise Architecture Governance and Project Portfolio Management Best Practices to:
Accelerate project execution
Manage project and architecture inter-dependencies
Deliver realised value
Improve Enterprise and PMO collaboration
Using togaf™ in government_enterprise_architecture_to_describe_the_it_archite...johnpolgreen
The document discusses using The Open Group Architecture Framework (TOGAF) in conjunction with the United States Government's Federal Enterprise Architecture (FEA) and Federal Segment Architecture Methodology (FSAM) to describe the IT architecture for a government agency. It maps the phases of the TOGAF Architecture Development Method (ADM) to the FEA reference models and FSAM steps. Case studies are presented on how TOGAF was used successfully with the FEA for IT architecture projects at the US Department of Agriculture and in the UK government.
This document provides an overview of TOGAF 9.1, including:
- TOGAF is an enterprise architecture framework developed by The Open Group to help design, plan, implement, and govern an enterprise information technology architecture.
- The key component of TOGAF is the Architecture Development Method (ADM), which provides a process for developing enterprise architectures in a standardized and systematic way.
- The ADM supports iteration across its nine phases: preliminary, architecture vision, business architecture, data architecture, application architecture, technology architecture, opportunities & solutions, migration planning, and implementation governance.
EA Intensive Course "Building Enterprise Architecture" by mr.danairatSoftware Park Thailand
This document outlines the agenda for a two-day course on building enterprise architecture. Day one covers introductions, current architecture challenges, the need for enterprise architecture, definitions of enterprise architecture, reference architecture frameworks, and group workshops. Day two covers maturity models, technology platforms, the TOGAF standard, cloud computing roadmaps, governance, and building a target architecture.
2019 07 Bizbok with Archimate 3 v3 [UPDATED !]COMPETENSIS
ARCHIMATE & BIZBOK templates
Here is an interpretation on how to implement the BIZBOK recommendation with Archimate 3.
This is an update of the previous documents published in 2018 and 2017.
Any comments or requirements to chdessus@competensis.com
Practical Enterprise Architecture in Medium-size Corporation using TOGAFMichael Sukachev
This document discusses establishing an enterprise architecture practice at a medium-sized corporation using the TOGAF framework. It outlines current challenges like rapidly changing business needs and a lack of architecture governance. It then defines what enterprise architecture is and why it is important to establish an EA practice to gain benefits like increased agility and reuse. The document recommends practical steps to get started, including selecting an EA framework and tool, customizing them to the organization, and implementing the practice incrementally. It emphasizes establishing principles, governance and stakeholder collaboration.
Driving your BA Career - From Business Analyst to Business ArchitectEnterprise Architects
IIBA endorsed Webinar presented by Craig Martin, Chief Architect at Enterprise Architects. Participants of this Webinar are eligible for 1 Continuing Development Unit (CDU) to go towards re-certification.
These slides will touch on areas such as; shifts occurring in the market, where the Business Architect and the Business Analyst provide value, how are the disciplines are merging and what the future could look like.
The Open Group Architecture Framework (TOGAF) is an enterprise architecture framework developed and maintained by The Open Group. TOGAF provides a method and set of supporting tools for developing enterprise architecture and transitioning enterprises to a target architecture. It includes the Architecture Development Method which is a step-by-step approach to developing an enterprise architecture. TOGAF also includes an architecture content framework for structuring and categorizing architecture artifacts. The framework helps optimize business and IT alignment, reduce costs, and minimize implementation risks.
The document discusses the major changes in TOGAF 9.2 including restructuring the framework and introducing the TOGAF Library. Key changes include enhancements to business architecture with new artifacts related to value streams and business capabilities, updated terms and definitions, and additional details in the ADM. Security architecture was also enhanced with its own guide. The presentation provides an overview of ITpreneurs' TOGAF training offerings and pathways for architects to become certified or take additional courses in related frameworks like DevOps and CCC.
The TOGAF® Architecture Development Method recommends that "an architecture description be encoded in a standard language". As the Open Group standard for enterprise modeling, Archimate is a strong candidate for this role. This presentation will explore how a diversified financial services company selected and is using Archimate for its TOGAF® implementation. The speaker will compare available enterprise modeling languages and explain why Archimate was selected, and will explain how his organization developed an enabling metamodel and diagram templates using a leading enterprise modeling tool. Methodology transition will also be covered, including how existing diagram types were mapped to TOGAF®, and how TOGAF® diagram content was mapped to Archimate.
Delivered at February 2011 Open Group San Diego Conference
Digital Transformation And Solution ArchitectureAlan McSweeney
Digital strategy is a statement about the organisation’s digital positioning, competitors and customer and collaborator needs and behaviour to achieve a direction for innovation, communication, transaction and promotion. Digital strategy needs to be defined in the same framework structure as the proposed digital architecture platform.
Achieving the target digital organisation means deploying solutions that enable the digital architecture. Solution architecture needs to design solutions that fit into the target digital architecture framework. This requires:
• Solution architecture team operating in an integrated manner designing solutions to a set of common standards and that run on the platform
• Solution architecture team leadership ensuring solutions conform to the common standards
• Solution architecture technical leadership to develop and maintain common solution design standards
• Solution architecture updates the digital reference architecture based on solution design experience
Digital solution design requires greater discipline to create an integrated set solutions that operate within the rigour of the digital architecture framework. The solution architecture function must interact with other IT architecture disciplines to ensure the set of solutions that implement the digital framework operate together. This requires greater solution architecture team leadership. This needs to be supplemented and supported by a well-defined set of digital solution design standards.
This follows-on from the previous presentation: Digital Transformation And Enterprise Architecture
https://www.slideshare.net/alanmcsweeney/digital-transformation-and-enterprise-architecture.
Building a strong Data Management capability with TOGAF and ArchiMateBas van Gils
This is the deck that I used for my presentation at the EAM conference in 2013. It gives a high-level overview of the need for a solid data management capability before giving and overview of how enterprise architecture methods can be used to build this capability.
This document provides an overview of implementing an effective enterprise architecture program. It begins with some disclaimers about competing perspectives on EA. It then discusses the architecture continuum from enterprise to system level. Key aspects of a successful EA program covered include gaining executive sponsorship, starting small and showing quick wins, formalizing governance processes, and planning for both centralization initially and eventual federation. The presentation emphasizes communicating value and celebrating successes.
The document discusses delivering enterprise architecture using TOGAF and ArchiMate. It introduces BiZZdesign, an experienced consultancy firm that provides tools and training for enterprise architecture. The proposed schedule covers topics like enterprise architecture, ArchiMate core language and extensions, TOGAF ADM process, and examples of modeling with ArchiMate. The case study involves applying TOGAF and ArchiMate to help a insurance company consolidate their fragmented IT systems by migrating to a single back-office system.
Solution architects must be aware of the need for solution security and of the need to have enterprise-level controls that solutions can adopt.
The sets of components that comprise the extended solution landscape, including those components that provide common or shared functionality, are located in different zones, each with different security characteristics.
The functional and operational design of any solution and therefore its security will include many of these components, including those inherited by the solution or common components used by the solution.
The complete solution security view should refer explicitly to the components and their controls.
While each individual solution should be able to inherit the security controls provided by these components, the solution design should include explicit reference to them for completeness and to avoid unvalidated assumptions.
There is a common and generalised set of components, many of which are shared, within the wider solution topology that should be considered when assessing overall solution architecture and solution security.
Individual solutions must be able to inherit security controls, facilities and standards from common enterprise-level controls, standards, toolsets and frameworks.
Individual solutions must not be forced to implement individual infrastructural security facilities and controls. This is wasteful of solution implementation resources, results in multiple non-standard approaches to security and represents a security risk to the organisation.
The extended solution landscape potentially consists of a large number of interacting components and entities located in different zones, each with different security profiles, requirements and concerns. Different security concerns and therefore controls apply to each of these components.
Solution security is not covered by a single control. It involves multiple overlapping sets of controls providing layers of security.
An Introduction into the design of business using business architectureCraig Martin
The document is an introduction to business architecture presented by Enterprise Architects. It discusses discovering business architecture and developing the business architecture. Key points include:
- Business architecture addresses business challenges and the need for business flexibility and innovation. It focuses on capabilities, processes, and value delivery.
- Developing an effective business architecture involves understanding the business motivation, defining business strategies and models, assessing capabilities, and decomposing capabilities into operational components.
- The business architecture framework includes engagement models, services, and methods to organize content and execute business architecture work. It supports translating strategies into tangible outcomes.
When a company invests in ITIL, very often Architecture is not much involved: this is a mistake because there is much overlap, and Architecture can end up side-lined by the ITIL juggernaut. But there are a lot of benefits Architecture can bring to an ITIL-oriented organization.
This slide deck goes a step or two further than the white-papers out there I've found to date in providing some concrete guidance on how to actually integrate Architecture activities into ITIL. The deck uses TOGAF as the reference framework, but the concepts can be applied to any modern Architecture practice, since the discussion focuses on the types of deliverables and activities, which analogously exist in most frameworks.
The document provides an agenda for an enterprise architecture presentation covering topics such as EA introductions, frameworks, content modeling, repositories, development methods, and updates to business architecture and EA tools. It includes diagrams to illustrate EA concepts such as relating EA to Lego blocks, architecture domains, and the enterprise continuum for categorizing architecture. The presentation aims to provide an overview of enterprise architecture and discuss best practices.
This document provides an introduction to software design principles and methods. It discusses the overall goal of teaching a systematic and repeatable approach to software architecture design. Key topics covered include software products and design, abstraction and modeling, different types of design, the role of design in the software lifecycle, and an introduction to the Agile software engineering design method. The document provides definitions and explanations of important software design concepts.
This document summarizes the role of an architect and key aspects of architecture. It discusses that an architect understands architectural drivers, designs technical strategies while considering things that are costly to change. An architect fits between the product owner and project manager. The document also covers architecture frameworks, modeling approaches, technical architecture styles, non-functional requirements, and testing non-functional requirements.
Using togaf™ in government_enterprise_architecture_to_describe_the_it_archite...johnpolgreen
The document discusses using The Open Group Architecture Framework (TOGAF) in conjunction with the United States Government's Federal Enterprise Architecture (FEA) and Federal Segment Architecture Methodology (FSAM) to describe the IT architecture for a government agency. It maps the phases of the TOGAF Architecture Development Method (ADM) to the FEA reference models and FSAM steps. Case studies are presented on how TOGAF was used successfully with the FEA for IT architecture projects at the US Department of Agriculture and in the UK government.
This document provides an overview of TOGAF 9.1, including:
- TOGAF is an enterprise architecture framework developed by The Open Group to help design, plan, implement, and govern an enterprise information technology architecture.
- The key component of TOGAF is the Architecture Development Method (ADM), which provides a process for developing enterprise architectures in a standardized and systematic way.
- The ADM supports iteration across its nine phases: preliminary, architecture vision, business architecture, data architecture, application architecture, technology architecture, opportunities & solutions, migration planning, and implementation governance.
EA Intensive Course "Building Enterprise Architecture" by mr.danairatSoftware Park Thailand
This document outlines the agenda for a two-day course on building enterprise architecture. Day one covers introductions, current architecture challenges, the need for enterprise architecture, definitions of enterprise architecture, reference architecture frameworks, and group workshops. Day two covers maturity models, technology platforms, the TOGAF standard, cloud computing roadmaps, governance, and building a target architecture.
2019 07 Bizbok with Archimate 3 v3 [UPDATED !]COMPETENSIS
ARCHIMATE & BIZBOK templates
Here is an interpretation on how to implement the BIZBOK recommendation with Archimate 3.
This is an update of the previous documents published in 2018 and 2017.
Any comments or requirements to chdessus@competensis.com
Practical Enterprise Architecture in Medium-size Corporation using TOGAFMichael Sukachev
This document discusses establishing an enterprise architecture practice at a medium-sized corporation using the TOGAF framework. It outlines current challenges like rapidly changing business needs and a lack of architecture governance. It then defines what enterprise architecture is and why it is important to establish an EA practice to gain benefits like increased agility and reuse. The document recommends practical steps to get started, including selecting an EA framework and tool, customizing them to the organization, and implementing the practice incrementally. It emphasizes establishing principles, governance and stakeholder collaboration.
Driving your BA Career - From Business Analyst to Business ArchitectEnterprise Architects
IIBA endorsed Webinar presented by Craig Martin, Chief Architect at Enterprise Architects. Participants of this Webinar are eligible for 1 Continuing Development Unit (CDU) to go towards re-certification.
These slides will touch on areas such as; shifts occurring in the market, where the Business Architect and the Business Analyst provide value, how are the disciplines are merging and what the future could look like.
The Open Group Architecture Framework (TOGAF) is an enterprise architecture framework developed and maintained by The Open Group. TOGAF provides a method and set of supporting tools for developing enterprise architecture and transitioning enterprises to a target architecture. It includes the Architecture Development Method which is a step-by-step approach to developing an enterprise architecture. TOGAF also includes an architecture content framework for structuring and categorizing architecture artifacts. The framework helps optimize business and IT alignment, reduce costs, and minimize implementation risks.
The document discusses the major changes in TOGAF 9.2 including restructuring the framework and introducing the TOGAF Library. Key changes include enhancements to business architecture with new artifacts related to value streams and business capabilities, updated terms and definitions, and additional details in the ADM. Security architecture was also enhanced with its own guide. The presentation provides an overview of ITpreneurs' TOGAF training offerings and pathways for architects to become certified or take additional courses in related frameworks like DevOps and CCC.
The TOGAF® Architecture Development Method recommends that "an architecture description be encoded in a standard language". As the Open Group standard for enterprise modeling, Archimate is a strong candidate for this role. This presentation will explore how a diversified financial services company selected and is using Archimate for its TOGAF® implementation. The speaker will compare available enterprise modeling languages and explain why Archimate was selected, and will explain how his organization developed an enabling metamodel and diagram templates using a leading enterprise modeling tool. Methodology transition will also be covered, including how existing diagram types were mapped to TOGAF®, and how TOGAF® diagram content was mapped to Archimate.
Delivered at February 2011 Open Group San Diego Conference
Digital Transformation And Solution ArchitectureAlan McSweeney
Digital strategy is a statement about the organisation’s digital positioning, competitors and customer and collaborator needs and behaviour to achieve a direction for innovation, communication, transaction and promotion. Digital strategy needs to be defined in the same framework structure as the proposed digital architecture platform.
Achieving the target digital organisation means deploying solutions that enable the digital architecture. Solution architecture needs to design solutions that fit into the target digital architecture framework. This requires:
• Solution architecture team operating in an integrated manner designing solutions to a set of common standards and that run on the platform
• Solution architecture team leadership ensuring solutions conform to the common standards
• Solution architecture technical leadership to develop and maintain common solution design standards
• Solution architecture updates the digital reference architecture based on solution design experience
Digital solution design requires greater discipline to create an integrated set solutions that operate within the rigour of the digital architecture framework. The solution architecture function must interact with other IT architecture disciplines to ensure the set of solutions that implement the digital framework operate together. This requires greater solution architecture team leadership. This needs to be supplemented and supported by a well-defined set of digital solution design standards.
This follows-on from the previous presentation: Digital Transformation And Enterprise Architecture
https://www.slideshare.net/alanmcsweeney/digital-transformation-and-enterprise-architecture.
Building a strong Data Management capability with TOGAF and ArchiMateBas van Gils
This is the deck that I used for my presentation at the EAM conference in 2013. It gives a high-level overview of the need for a solid data management capability before giving and overview of how enterprise architecture methods can be used to build this capability.
This document provides an overview of implementing an effective enterprise architecture program. It begins with some disclaimers about competing perspectives on EA. It then discusses the architecture continuum from enterprise to system level. Key aspects of a successful EA program covered include gaining executive sponsorship, starting small and showing quick wins, formalizing governance processes, and planning for both centralization initially and eventual federation. The presentation emphasizes communicating value and celebrating successes.
The document discusses delivering enterprise architecture using TOGAF and ArchiMate. It introduces BiZZdesign, an experienced consultancy firm that provides tools and training for enterprise architecture. The proposed schedule covers topics like enterprise architecture, ArchiMate core language and extensions, TOGAF ADM process, and examples of modeling with ArchiMate. The case study involves applying TOGAF and ArchiMate to help a insurance company consolidate their fragmented IT systems by migrating to a single back-office system.
Solution architects must be aware of the need for solution security and of the need to have enterprise-level controls that solutions can adopt.
The sets of components that comprise the extended solution landscape, including those components that provide common or shared functionality, are located in different zones, each with different security characteristics.
The functional and operational design of any solution and therefore its security will include many of these components, including those inherited by the solution or common components used by the solution.
The complete solution security view should refer explicitly to the components and their controls.
While each individual solution should be able to inherit the security controls provided by these components, the solution design should include explicit reference to them for completeness and to avoid unvalidated assumptions.
There is a common and generalised set of components, many of which are shared, within the wider solution topology that should be considered when assessing overall solution architecture and solution security.
Individual solutions must be able to inherit security controls, facilities and standards from common enterprise-level controls, standards, toolsets and frameworks.
Individual solutions must not be forced to implement individual infrastructural security facilities and controls. This is wasteful of solution implementation resources, results in multiple non-standard approaches to security and represents a security risk to the organisation.
The extended solution landscape potentially consists of a large number of interacting components and entities located in different zones, each with different security profiles, requirements and concerns. Different security concerns and therefore controls apply to each of these components.
Solution security is not covered by a single control. It involves multiple overlapping sets of controls providing layers of security.
An Introduction into the design of business using business architectureCraig Martin
The document is an introduction to business architecture presented by Enterprise Architects. It discusses discovering business architecture and developing the business architecture. Key points include:
- Business architecture addresses business challenges and the need for business flexibility and innovation. It focuses on capabilities, processes, and value delivery.
- Developing an effective business architecture involves understanding the business motivation, defining business strategies and models, assessing capabilities, and decomposing capabilities into operational components.
- The business architecture framework includes engagement models, services, and methods to organize content and execute business architecture work. It supports translating strategies into tangible outcomes.
When a company invests in ITIL, very often Architecture is not much involved: this is a mistake because there is much overlap, and Architecture can end up side-lined by the ITIL juggernaut. But there are a lot of benefits Architecture can bring to an ITIL-oriented organization.
This slide deck goes a step or two further than the white-papers out there I've found to date in providing some concrete guidance on how to actually integrate Architecture activities into ITIL. The deck uses TOGAF as the reference framework, but the concepts can be applied to any modern Architecture practice, since the discussion focuses on the types of deliverables and activities, which analogously exist in most frameworks.
The document provides an agenda for an enterprise architecture presentation covering topics such as EA introductions, frameworks, content modeling, repositories, development methods, and updates to business architecture and EA tools. It includes diagrams to illustrate EA concepts such as relating EA to Lego blocks, architecture domains, and the enterprise continuum for categorizing architecture. The presentation aims to provide an overview of enterprise architecture and discuss best practices.
This document provides an introduction to software design principles and methods. It discusses the overall goal of teaching a systematic and repeatable approach to software architecture design. Key topics covered include software products and design, abstraction and modeling, different types of design, the role of design in the software lifecycle, and an introduction to the Agile software engineering design method. The document provides definitions and explanations of important software design concepts.
This document summarizes the role of an architect and key aspects of architecture. It discusses that an architect understands architectural drivers, designs technical strategies while considering things that are costly to change. An architect fits between the product owner and project manager. The document also covers architecture frameworks, modeling approaches, technical architecture styles, non-functional requirements, and testing non-functional requirements.
This document discusses object-oriented design and architectural design. It begins by outlining topics related to determining how to build a system using object-oriented design, including design goals, architectural designs, class modeling, design patterns, state chart modeling, collaboration modeling, and more. It then discusses what software design is, including that it is a problem-solving process to implement functional requirements while meeting non-functional constraints. Design involves making decisions to resolve issues while choosing from design alternatives. The document also discusses top-down and bottom-up design approaches, software design principles, and the object-oriented design process.
Are You an Accidental or Intentional Architect?iasaglobal
The first step in preparing for capability on demand is to set up for capacity on demand, but this can only occur after a CIO gets the IT house in order operationally. An IT organization that cannot manage operations effectively because it lacks understanding of costs relating to business performance and outcomes will have trouble evaluating the price-for-performance trade-offs offered by external suppliers.
Chap 6 - Software Architecture Part 1.pptkhalidnawaz39
The document discusses architectural design and the design process. It defines design as a problem-solving process to implement functional requirements while respecting constraints. It discusses top-down and bottom-up design approaches. Key principles for good design discussed are dividing problems into smaller parts for increased understandability and changeability, increasing cohesion by grouping related parts, and reducing coupling between modules.
Chap 6 - Software Architecture Part 1.pptxssuser0ed5b4
The document discusses architectural design and the design process. It defines design as a problem-solving process to implement functional requirements while respecting constraints. It discusses top-down and bottom-up design approaches. Key principles for good design discussed are dividing problems into smaller parts for easier management (divide and conquer), increasing cohesion where related parts are grouped together, and reducing coupling between modules. It discusses different types of cohesion and coupling to aim for and avoid in design.
Agile Modeling using the Architecture Tools in VS 2010Gary Pedretti
This document discusses agile modeling using Visual Studio 2010 Ultimate and Feature Pack 2. It provides an overview of UML and modeling capabilities in VS 2010, including diagram types. It then discusses agile development and modeling approaches, including modeling problems that can arise and how agile modeling seeks to address these. Finally, it demonstrates an example agile modeling workflow using VS 2010 capabilities.
The document provides information on a course titled "Software Engineering" taught by Dr. P. Visu at Velammal Engineering College. It includes the course objectives, outcomes, syllabus, and learning resources. The objectives are to understand software project phases, requirements engineering, object-oriented concepts, enterprise integration, and testing techniques. The outcomes cover comparing process models, formulating requirements engineering concepts, understanding object-oriented fundamentals, applying software design procedures, and finding errors with testing techniques. The syllabus covers topics like software processes, requirements analysis, object-oriented concepts, software design, and testing and management over 5 units. Recommended textbooks and online references are also provided.
The software management and engineering in the AI-oriented projects tutorialrpietruszkiewicz
This document discusses software project management techniques that can be applied to AI-oriented software projects. It begins with an introduction to AI projects and software project management. It then covers topics like software design methodologies, programming languages, libraries, testing, and examples of AI software implemented using different technologies. The overall message is that AI projects require specialized software and can benefit from established project management practices to help deal with their unpredictable nature.
The document discusses object-oriented analysis and design (OOAD) and the Unified Process (UP). It covers key concepts in OOAD like requirements analysis, use cases, domain modeling, interaction diagrams, and design class diagrams. It also discusses iterative development approaches like the Unified Process, which emphasizes iterative development through short iterations with analysis, design, implementation, and testing in each iteration and feedback between iterations.
The document provides information on a course titled "Software Engineering" taught by Dr. P. Visu at Velammal Engineering College. It includes the course objectives, outcomes, syllabus, and learning resources. The objectives are to understand software project phases, requirements engineering, object-oriented concepts, enterprise integration, and testing techniques. The outcomes cover comparing process models, requirements engineering, object-oriented fundamentals, software design, and testing techniques. The syllabus covers topics like software processes, requirements analysis, object-oriented concepts, software design, testing, and project management over 5 units. Recommended textbooks and online references are also provided.
OOAD Part A Question with answer and Part B & C questions.
References :
1) Previous University Questions.
2) Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development by Craig Larman.
3) Google search engine for text and images.
This document provides an overview of software design engineering concepts in 3 sentences or less:
The document outlines the key concepts in software design including the design process, design quality, abstraction, architecture, patterns, modularity, information hiding, and functional independence. It also summarizes design models, principles of data design, architectural styles like layered architectures, and common architectural patterns for concurrency, persistence, and distribution.
This document provides an overview of Object Oriented Analysis and Design (OOAD). It discusses the history and basics of OOAD, including the importance of modeling, principles of modeling, and object-oriented modeling. It also introduces the Unified Modeling Language (UML) and provides an example of key OOAD steps like defining use cases, domain models, interaction diagrams, and design class diagrams using a dice game as an example. The conceptual model of UML is also explained, focusing on its basic building blocks, rules, and common mechanisms.
Software Engineering- Crisis and Process ModelsNishu Rastogi
The document discusses various software engineering process models including the waterfall model, iterative waterfall model, prototyping model, evolutionary model, rapid application development model, and spiral model. It provides details on the key activities and stages in each model's software development life cycle. The document also compares the different models and discusses when each may be best applied based on factors like the problem's understandability, decomposability into modules, and tolerance for incremental delivery.
Introduction to UX for Mesiniaga AcademyZainul Zain
The document provides an introduction to UX (user experience) design. It begins by distinguishing UX from UI (user interface), noting that UX design is based on thorough user research and testing, while UI focuses only on visual screen elements. The key aspects of UX include user research, prototyping, design, and development with the goal of intuitive, effective experiences. User research, especially getting accurate user requirements, is described as the most important part of UX design to avoid scope creep and ensure projects meet user needs. The document then discusses wireframing as a method for capturing content, organization and interactions before development begins.
Same Patterns Different Architectures - Colombo Architecture Meetup - Session-0399X Technology
This document discusses software architecture and design patterns. It begins by outlining key objectives like mapping business requirements to design patterns and understanding pattern relationships. It then defines concepts like object-oriented programming, design patterns, and software architecture. The remainder of the document discusses filling in the gaps between architecture and design, perceived understanding versus principles and patterns, and an example banking architecture with layers and modules.
The document provides an overview of object-oriented analysis and design (OOAD). It discusses key OOAD concepts like iterative development, the Unified Process, UML notation, thinking in terms of objects and their services/responsibilities. It explains the differences between object-oriented analysis, which focuses on identifying domain objects, and object-oriented design, which defines software objects and how they collaborate. The document uses a dice game example to illustrate domain modeling with objects, interaction diagrams to show message flows, and a class diagram to define class attributes and methods.
Similar to How to Speak the Language of Application Architecture (20)
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/how-axelera-ai-uses-digital-compute-in-memory-to-deliver-fast-and-energy-efficient-computer-vision-a-presentation-from-axelera-ai/
Bram Verhoef, Head of Machine Learning at Axelera AI, presents the “How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-efficient Computer Vision” tutorial at the May 2024 Embedded Vision Summit.
As artificial intelligence inference transitions from cloud environments to edge locations, computer vision applications achieve heightened responsiveness, reliability and privacy. This migration, however, introduces the challenge of operating within the stringent confines of resource constraints typical at the edge, including small form factors, low energy budgets and diminished memory and computational capacities. Axelera AI addresses these challenges through an innovative approach of performing digital computations within memory itself. This technique facilitates the realization of high-performance, energy-efficient and cost-effective computer vision capabilities at the thin and thick edge, extending the frontier of what is achievable with current technologies.
In this presentation, Verhoef unveils his company’s pioneering chip technology and demonstrates its capacity to deliver exceptional frames-per-second performance across a range of standard computer vision networks typical of applications in security, surveillance and the industrial sector. This shows that advanced computer vision can be accessible and efficient, even at the very edge of our technological ecosystem.
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
5th LF Energy Power Grid Model Meet-up SlidesDanBrown980551
5th Power Grid Model Meet-up
It is with great pleasure that we extend to you an invitation to the 5th Power Grid Model Meet-up, scheduled for 6th June 2024. This event will adopt a hybrid format, allowing participants to join us either through an online Mircosoft Teams session or in person at TU/e located at Den Dolech 2, Eindhoven, Netherlands. The meet-up will be hosted by Eindhoven University of Technology (TU/e), a research university specializing in engineering science & technology.
Power Grid Model
The global energy transition is placing new and unprecedented demands on Distribution System Operators (DSOs). Alongside upgrades to grid capacity, processes such as digitization, capacity optimization, and congestion management are becoming vital for delivering reliable services.
Power Grid Model is an open source project from Linux Foundation Energy and provides a calculation engine that is increasingly essential for DSOs. It offers a standards-based foundation enabling real-time power systems analysis, simulations of electrical power grids, and sophisticated what-if analysis. In addition, it enables in-depth studies and analysis of the electrical power grid’s behavior and performance. This comprehensive model incorporates essential factors such as power generation capacity, electrical losses, voltage levels, power flows, and system stability.
Power Grid Model is currently being applied in a wide variety of use cases, including grid planning, expansion, reliability, and congestion studies. It can also help in analyzing the impact of renewable energy integration, assessing the effects of disturbances or faults, and developing strategies for grid control and optimization.
What to expect
For the upcoming meetup we are organizing, we have an exciting lineup of activities planned:
-Insightful presentations covering two practical applications of the Power Grid Model.
-An update on the latest advancements in Power Grid -Model technology during the first and second quarters of 2024.
-An interactive brainstorming session to discuss and propose new feature requests.
-An opportunity to connect with fellow Power Grid Model enthusiasts and users.
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Conversational agents, or chatbots, are increasingly used to access all sorts of services using natural language. While open-domain chatbots - like ChatGPT - can converse on any topic, task-oriented chatbots - the focus of this paper - are designed for specific tasks, like booking a flight, obtaining customer support, or setting an appointment. Like any other software, task-oriented chatbots need to be properly tested, usually by defining and executing test scenarios (i.e., sequences of user-chatbot interactions). However, there is currently a lack of methods to quantify the completeness and strength of such test scenarios, which can lead to low-quality tests, and hence to buggy chatbots.
To fill this gap, we propose adapting mutation testing (MuT) for task-oriented chatbots. To this end, we introduce a set of mutation operators that emulate faults in chatbot designs, an architecture that enables MuT on chatbots built using heterogeneous technologies, and a practical realisation as an Eclipse plugin. Moreover, we evaluate the applicability, effectiveness and efficiency of our approach on open-source chatbots, with promising results.
In the realm of cybersecurity, offensive security practices act as a critical shield. By simulating real-world attacks in a controlled environment, these techniques expose vulnerabilities before malicious actors can exploit them. This proactive approach allows manufacturers to identify and fix weaknesses, significantly enhancing system security.
This presentation delves into the development of a system designed to mimic Galileo's Open Service signal using software-defined radio (SDR) technology. We'll begin with a foundational overview of both Global Navigation Satellite Systems (GNSS) and the intricacies of digital signal processing.
The presentation culminates in a live demonstration. We'll showcase the manipulation of Galileo's Open Service pilot signal, simulating an attack on various software and hardware systems. This practical demonstration serves to highlight the potential consequences of unaddressed vulnerabilities, emphasizing the importance of offensive security practices in safeguarding critical infrastructure.
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving
Manufacturing custom quality metal nameplates and badges involves several standard operations. Processes include sheet prep, lithography, screening, coating, punch press and inspection. All decoration is completed in the flat sheet with adhesive and tooling operations following. The possibilities for creating unique durable nameplates are endless. How will you create your brand identity? We can help!
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
How information systems are built or acquired puts information, which is what they should be about, in a secondary place. Our language adapted accordingly, and we no longer talk about information systems but applications. Applications evolved in a way to break data into diverse fragments, tightly coupled with applications and expensive to integrate. The result is technical debt, which is re-paid by taking even bigger "loans", resulting in an ever-increasing technical debt. Software engineering and procurement practices work in sync with market forces to maintain this trend. This talk demonstrates how natural this situation is. The question is: can something be done to reverse the trend?
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsDianaGray10
Join us to learn how UiPath Apps can directly and easily interact with prebuilt connectors via Integration Service--including Salesforce, ServiceNow, Open GenAI, and more.
The best part is you can achieve this without building a custom workflow! Say goodbye to the hassle of using separate automations to call APIs. By seamlessly integrating within App Studio, you can now easily streamline your workflow, while gaining direct access to our Connector Catalog of popular applications.
We’ll discuss and demo the benefits of UiPath Apps and connectors including:
Creating a compelling user experience for any software, without the limitations of APIs.
Accelerating the app creation process, saving time and effort
Enjoying high-performance CRUD (create, read, update, delete) operations, for
seamless data management.
Speakers:
Russell Alfeche, Technology Leader, RPA at qBotic and UiPath MVP
Charlie Greenberg, host
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
What is an RPA CoE? Session 1 – CoE VisionDianaGray10
In the first session, we will review the organization's vision and how this has an impact on the COE Structure.
Topics covered:
• The role of a steering committee
• How do the organization’s priorities determine CoE Structure?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
6. 6
1. Software Application - Designs the structure of applications
Titles: Software Architect, Application Architect, Framework
Architect
2. Sales & Support - Involved in the implementation of products
Titles: Solution Architect, Field Architect
3. Systems - Skilled in infrastructure design
Titles: System Architect, Cloud Architect, Infrastructure Architect
4. Operations - Skilled in business enterprise functions and design
Titles: Enterprise Architect, Network Architect
POPULAR IT ARCHITECTURE ROLES
7. 7
● Familiarity with an architectural modeling language
● Fluent in creating diagrams or visual feature representations
● Architecture frameworks (ie. TOGAF, Zachman, ITIL,...etc.)
● Comfort around a codebase...but development is not a focus
● Present a vision of how something is built end-to-end holistically
● Derive costs effective designs and options
CLASSIC SOFTWARE ARCHITECT DISCIPLINES
What are the essential skills?...
8. 8
● Growing and mentoring Architects -- not really happening today.
● It is hard to measure design as an investment
● Selling design is not much different than selling vitamins
● Design slows development mentality
● “The code is our documentation” mentality
● Agile development
○ Envisioning step not done correctly
○ No design discipline guidelines
○ Code delivery prioritized over design
● Complete abandonment of architecture skills used in waterfall
It is an industry sacrilege to say anything bad about the Agile
manifesto, but it has some gaps...
“DEBATES & SYMPTOMS”
9. 9
As a Developer...
- Nature of the work in more instant gratification.
Example: Write -> Run -> Results
- An application’s success is measurable
- Your product is a codebase
- The code is viewable, you can actually see it.
- Low abstraction
As an Architect...
- Nature of the work is more delayed gratification.
- The success of architecture is hard to measure.
- Your product is a vision
- EA governance is invisible, yet omnipresent.
- High abstraction
GOING FROM DEVELOPER TO APPLICATION ARCHITECT
10. 10
Step 1: Be design driven.
Where do you start?...
Step 2: Refer back to Step 1.
11. 11
GETTING INTO THE ARCHITECT ROLE
● Ease into it. Don’t rush. This is a discipline.
● Think about how something (ie. business,
customer,...etc.) works and the strategy
behind it.
● Resist the urge to just hurry up and draw
something, or rush into patterns.
● Architecture involves articulation. It’s easy to
overwhelm an audience.
● Think BIG, but start small.
12. 12
Our code tells us what is being done.
The code is merely a set of instructions.
Architecture tells us why something is being
done, and how it is being done.
The architecture is a vision and strategy.
CODE VS. STRATEGY
14. 14
CONTINUOUS DESIGN
● Continuous Design (Incremental Design) - The practice of creating and
modifying the design of a system as it is developed (Agile), rather than
purporting to specify the system completely before development starts
(Waterfall)
● Continuous Design was popularized by
eXtreme Programming (XP).
● Continuous Design also uses test driven
development (TDD) and refactoring
practices.
What is it?...
17. 17
CONTINUOUS DESIGN PRINCIPLES
● Incremental design: Design just enough to build the sprint
release, but build upon the application’s holistic view.
● Build to change, instead of building to last.
● Model to analyze and reduce risk.
● Use design to identify key engineering decisions.
● Recognize delayed gratifications in a design.
● Use models and visualizations as a communication and
collaboration tool.
20. 20
KRUCHTEN 4+1
Logical View
(Structural View)
Process View
(Behavioral View)
Development View
(Implementation View)
Physical View
(Environment View)
Scenario
(User View)
● Developed by Philippe Kruchten
● The “4+1” view model is rather
“generic”
● Used for describing the
architecture of software-intensive
systems, based on the use of
multiple, concurrent views.
21. 21
Scenario is to help capture the requirements so that all the stakeholders
understand how the system is intended to be used.
Artifacts: Use Case, User Story, Epic
Logical view is designed to address the end user's concerns about ensuring
that all of their desired functionality is captured by the system. In an
object-oriented system, this is often at the class level.
Artifacts: UML Class Diagram
Process view is designed for people designing the whole system and then
integrating the subsystems or the system into a system of systems.
Artifacts: UML Sequence Diagram
4 + 1 VIEWS
22. 22
Development view is primarily for developers who will be building the modules
and the subsystems. It should show dependencies and relationships between
modules, how modules are organized, reuse, and portability.
Artifacts: UML Component/Artifact Diagram
Physical view is primarily for system designers and administrators who need
to understand the physical locations of the software, physical connections
between nodes, deployment and installation, and scalability.
Artifacts: Network Diagram, UML Deployment Diagram, Infrastructure Diagram
4 + 1 VIEWS
24. 24
1. Ad Hoc (i.e. no method)
2. Industry Standard Modeling
3. Roll Your Own (RYO)
DOIN’ IT!
Three ways architecture design often happens...
Architecture is omnipresent, but not always visible.
25. 25
THE EVOLUTION OF SOFTWARE ARCHITECTURE & MODELLING
Modelling
Fragmentation
mid-1960s to
mid-1990s
1st Generation
Methods &
Modeling
Languages
2nd Generation
Methods &
Modeling
Languages
Booch ‘91
Booch ‘93
OMT1 OMT2
Shlaer-Mellor
1980s
SASD
1960s &
1970s
Smalltalk
(v1 1972)
OOA-
OOD
1981
Smalltalk-80
(v2 1980)
Martin/Odell
OOM 1973
UML 2.0
2005
UML 2.5
2015
UML 2.6
Exp 2019
MOF
Meta-Object
Family
2006
UML 2.x
OCL 2005
OOSE
1992
Rational
Software
1994
Rational
Rose
1994
IBM
Acquires
Rational
2003
Kruchten 4+1
Framework
1995
RUP
1996
UML 1.0
1997
OMG
Adopts
UML 1.1
Fall 1997
UML 1.5
2003
XP
1999
Agile
Manifesto
2001
Arrival of
Modern
Modern Web
Frameworks
BPMN
2008
SOA
Microservices
2014
IaS
2016
27. 27
THE UNIFIED MODELLING LANGUAGE
● Developed by the Three Amigos:
○ Grady Booch - Booch 91 & 93 for abstraction techniques
○ James Rumbaugh - Object Modeling Technique OMT1 & OMT2
○ Ivar Jacobson - Often known as the “father of Use Cases”,
developed Object Oriented Software Engineering (OOSE)
● Is a visual modeling language
● Applies to modeling and systems
● Is used for expressing the artifacts of a
system-intensive process.
● Is based on the object-oriented paradigm
28. 28
WHAT UML IS AND IS NOT
Not a visual programming language
A visual modeling language
Not a tool or repository specification
Modeling language specification
Not a process
Enables processes
29. 29
“A good 70 percent of UML was a useless farce to sell overpriced clunky tools
(looking at you, Rational Rose). Don’t learn UML to go around annoying
people with useless class diagrams. Do learn the basics so you can read a
sequence diagram and learn to think this way.”
Andrew Oliver
InfoWorld
7 Books You Must Read to be a Real Software Developer
April 19, 2018
Today’s UML...
30. 30
USE CASE
Actor
Use Case
Use Case
Boundary
● A use case is an end-to-end process
description.
● Ivar Jacobson -- Father of the Use Case
● It includes many steps or transactions
● It is not normally an individual step activity or
process.
● Identify by: “The actor can…”
● It has:
○ Pre-Condition
○ Action
○ Post-Condition
33. 33
DECOMPOSITION (INTO CONCEPTUAL MODEL)
● The quintessential object-oriented step in analysis or investigation is the
decomposition of the problem into individual concepts -- the things we are
aware of.
● Conceptual Model - A representation of concepts in a problem domain.
● The focus of a conceptual model may show:
○ Concepts
○ Associations between concepts
○ Attributes of concepts
Flight
date
time
Real-world concept
not a software class
or artifact. A container.
FlightDatabase
date[ ]
time[ ]
Software artifact. NOT
a real-world concept
AVOID
YES!
34. 34
DECOMPOSITION (INTO CLASSES)
Flight
date
number
time
In UML definition...
Class - A description for a set of things that share the same attributes, methods,
relationships, and semantics.
Operation - A service that can be requested from an object to different behavior.
Airport
name
Flies-to
Flight
date
time
FlightDescription
number
Described-by
* 1
Airport
name
Describes-flights-to
1
*
WORSE BETTER!
Conceptual Model
(ie. containers of real world concepts)
More software oriented
(ie. classes, operations)
35. 35
WHY DECOMPOSITION INTO CONCEPTUAL MODEL?
● Decomposition into a conceptual model is an intermediary
step.
● Going straight to classes can be more challenging to
decompose into proper abstraction without a conceptual
model.
TIP: If you are struggling to find your class abstractions, go
back to your conceptual model.
36. 36
● Shows a particular course of events
within a use case.
● Shows the external actors that
interact directly with the system.
● Shows the system events that the
actors generate
● The ordering of events should
follow their order in the use case
SYSTEM SEQUENCE DIAGRAM
message()
message()
Id 1:
Class
Id 2:
Class
39. 39
CLASS DIAGRAM
● Illustrates the specifications for
software classes and interfaces.
● Shows definitions for software
entities rather than real-world
concepts.
● Identifies the classes
participating in the software
solution.
● Shows class relationships.
association-name
ClassName 1
attribute
...
+method()
...
1 1
run()
<<interface>>
Runnable 1
Multiplicity
41. 41
COMPONENT/ARTIFACT DIAGRAM
● Useful because it provides us a
high-level, architectural view of the
system that we will will be building.
● Allow an architect to verify that a
system's required functionality is
being implemented
● As of UML 2.x components are now
strictly logical, design-time
constructs.
● Show run time dependencies
● An artifact can be a physical unit, a
file (ie. csv, gem, modules,...etc.),
executable (apps), script, database,
etc.
i18n (gem) home.erb
Senario: Internationalization
43. 43
PHYSICAL/DEPLOYMENT DIAGRAM
● Shows the hardware for the system
and any cloud instances
● Shows any software that is installed
on the hardware.
● Displays the connectivity of the
disparate machines to one another.
45. 45
● In software engineering, a design pattern is a general reusable
solution to a commonly occurring problem in software design.
● A design pattern is not a finished design that can be transformed
directly into code. Rather, it is a description or template for how to solve a
problem that can be used in many different situations.
● Patterns originated as an architectural concept by Christopher Alexander
around the late 70s.
DEFINING SOFTWARE ARCHITECTURE PATTERNS
46. 46
● Design patterns gained popularity in computer
science after the book Design Patterns: Elements of
Reusable Object-Oriented Software was published in
1994 by the so-called "Gang of Four"
● The book's authors are Erich Gamma, Richard Helm,
Ralph Johnson and John Vlissides -- known as GoF
● Introduced patterns by “Type”
○ Creational
○ Structural
○ Behavioral
○ Data Access (later)
GoF
47. 47
Supporters
Q. Why DO patterns?
A. Design patterns can speed up the development process and productivity
by providing tested, proven development paradigms.
Critics
Q. Why NOT DO patterns?
A. They are viewed a work arounds for core features missing in a language
framework, or sometimes viewed as a lack of good abstractioning and
barrier to creativity.
THE ARGUMENTS
48. 48
Creational patterns are ones that create objects for you, rather than
having you instantiate objects directly. This gives your program more
flexibility in deciding which objects need to be created for a given case.
Structural patterns concern class and object composition. They use
inheritance to compose interfaces and define ways to compose objects to
obtain new functionality.
Behavioral patterns are specifically concerned with communication
between objects.
THREE PATTERN TYPES
50. 50
● ARB (Architecture Review Board)
● Ultimately align design with the company
business goals, strategies, and objectives.
● Improve the quality of our products.
● Define technical design standards, policies,
and principles for the company overall.
WHY DO AN ARB?
52. 52
Short Term Goals:
● Establish architecture baseline and promote architecture best practices
● Establish an architectural framework that can be used for design
● Create architecture roadmaps that supports your business
● Support an “Agile Mindset”
Long Term Goals:
● Prevent framework bloat and achieve a platform that can easily be maintenanced
● Reduce long term technical debt
● Help keep our technology costs inline
● Reduce onboarding time for new resources
ARB GOALS
53. 53
- Start with the end in mind
- Design the EA program for maximum scale and flexibility upfront
- Create a maturity roadmap and follow it
- Don’t try to boil the ocean
- Focus on quick wins
- Show results early and often
Start Small
Plan Big
KEYS TO SUCCESS FOR THE ARB
56. 56
ENTERPRISE ARCHITECTURE
● Enterprise Architecture is a strategy to
minimize IT and business mistakes
● Many competing perspectives and
approaches to Enterprise Architecture exist
● There is no single, agreed upon Enterprise
Architecture standard.
57. 57
ENTERPRISE ARCHITECTURE FRAMEWORKS
● Just like software frameworks, there are EA frameworks.
● EA frameworks help us be productive in creating and managing our designs.
● There are many frameworks to choose from:
❏ FEAF
❏ Gartner Model
❏ TOGAF
❏ Poldat
❏ DoDAF-TAFIN
❏ C4ISR AE
❏ DOE AE
❏ TOGAF-ADM
❏ Zachman
❏ ITIL
❏ IT4IT
❏ COBIT
58. 58
TOGAF
● Current version is 9.1
● http://pubs.opengroup.org/architecture/togaf9
-doc/arch/
● Often the go-to framework for enterprise
architecture and system architecture
● Maintained by:
● TOGAF - The Open Group Architectural Framework
TOGAF
ADM