Skip to main content

Certified Enterprise Architect Professional (CEAP) - Module 9: Application Architecture

Software Architecture vs Application Architecture:

While both terms are related to designing software systems, "software architecture" refers to the high-level design of an entire system, encompassing its components, interactions, and overall structure, while "application architecture" focuses specifically on the structure and design of a single application within that system, defining how its various components interact to achieve desired functionality; essentially, application architecture is a subset of software architecture concerned with the details of a particular application.

Example:

Enterprise architecture example:

Enterprise architecture create overall architecture of a e-commence platform which includes Hardware, RDBS, Cloud, Networking etc. 

Software architecture example:

Choosing a microservices architecture for an entire e-commerce platform, where different services (user management, product catalog, payment processing) are loosely coupled and can be independently developed and scaled. 

Application architecture example:

Designing the user interface, backend logic, and database interactions for the "cart" feature within that e-commerce platform.

Application architecture involves:

  • Allows agility, reliability, and scalability
  • It ensures an organisation can implement change effectively and swiftly.
  • Simplify complicated applications by decomposing them into two or more applications.
  • Identify logical applications and the most appropriate physical applications.
  • Develop matrices across the architecture by relating applications to business service, business function, data, process, etc.
  • Elaborate a set of Application Architecture views by examining how the application will function, capturing integration, migration, development, and operational concern
Application portfolio management:
An organisation and processes designed to catalogue, describe, and value the applications
of an enterprise, with a view to rationalisation or optimisation of those applications.

Applications Architecture Structural Model
  1. A diagram that displays applications and the data flows that pass between them
  2. Typically drawn using some kind of Data Flow Diagram
  3. Where there are too many data flows, they may be abstracted into dependencies in some kind of dependency diagram

Applications Architecture Behavioural Model
  1. A diagram that shows how a process works by illustrating the interaction of users and applications
  2. Often drawn using some kind of interaction diagram
  3. Frequently used to inspect where time is lost in or between application processing stages

Comments

Popular posts from this blog

Certified Enterprise Architect Professional (CEAP) - Module 5 - Architecture Frameworks

Architecture Frameworks: An Architecture Framework is a theoretical structure that has the purpose of developing, executing, and maintaining an Enterprise Architecture. Advantages of EA framework: Simplify Breaks down areas of the business process Organise business components and create and identify relationships between business Determine the scope Customization in the existing framework Disadvantages of EA framework: Need to follow process Provides only direction and not information It's based on goal and objective Need creativity and proactive thinking Zachman Framework: The Zachman Framework is a widely used model in Enterprise Architecture (EA) that provides a structured way to classify and organize an organization's information infrastructure by defining different perspectives from various stakeholders, allowing for a holistic view of the enterprise and facilitating alignment between business needs and technology solutions; essentially acting as a template to organize arc...

Daily Agile Scrum stand-up meeting guidelines

Followers of the Scrum method of project management will typically start their day with a " stand-up meeting ". In short, this is a quick daily meeting (30 minutes or less) where the participants share the answers to the three questions with each other: • What did I accomplish yesterday?  • What will I do today?  • What obstacles are impeding my progress?  Some people are talkative and tend to wander off into Story Telling .  Some people want to engage in Problem Solving immediately after hearing a problem. Meetings that take too long tend to have low energy and participants not directly related to a long discussion will tend to be distracted. These are the minimum number of questions that satisfy the goals of daily stand-ups. Other topics of discussion (e.g., design discussions, gossip, etc.) should be deferred until after the meeting.  Here are few tips for running a smooth daily meeting:  • Everyone should literally stand-up and no one should sit down ...

Empiricism (Scrum)

Empiricism asserts that knowledge comes from experience and making decisions based on what is observed. Pillars of  Empiricism . Various practices exist to forecast progress, like burn-downs, burn-ups, or cumulative flows. While proven useful, these do not replace the importance of empiricism . In complex environments, what will happen is unknown. Only what has already happened may be used for forward-looking decision making. Each artifact contains a commitment to ensure it provides information that enhances transparency and focus against which progress can be measured: ● For the Product Backlog it is the Product Goal. ● For the Sprint Backlog it is the Sprint Goal. ● For the Increment it is the Definition of Done. These commitments exist to reinforce empiricism . The sum of the Increments is presented at the Sprint Review thus supporting empiricism .