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

New way of product development

Today is the era of fast-paced world and competitive world. Companies are realizing that the old sequential approach to developing new products won’t get the job done and product can’t be reached to market when compared to competitors. The 4 stages of product development are as follows – R&D, Growth, Maturation, and Decline. Instead of sequential approach, companies are using holistic approach – as in rugby game, the ball gets passed within the team as it moves as a unit up the field. This holistic approach has six characteristics: 1)     Build-in-instability 2)   Self-organizing project teams 3)   Overlapping development phases 4)   Multi-learning 5)   Subtle (very clear and strong) control 6)   Organizational change to explore and learning The above six characteristics forming a fast and flexible process for new product development with advantage of act as a change agent, creative, market driven ideas, flexi...

Delivering a project within budget

 Here are some tips for delivering a project within budget: Set a realistic budget Define the project's scope and necessary resources, and create a budget that's realistic. Cost estimate Segment the project into smaller tasks and milestones to plan how to use resources and provide clarity. Divide the project plan Break down the project into tasks to avoid late deliverables and over-budget projects. Monitor progress Regularly track the project's progress to identify and prevent cost overruns. Use progress reports to compare actual costs to the budget. Anticipate and revise changes Communicate with stakeholders to identify and assess risks, and assign owners to each risk. Consider different scenarios Estimation can be difficult for complex projects with many potential outcomes. Tracking: Tracking time spent on tasks, Tracking expenses per project, and Using project management software. Use Historical Data Your project is likely not the first to try and accomplish a specific o...

Product Manager vs Product Owner

Both the product manager and the product owner work towards a common goal, to build and improve products that create meaningful value for customers and all stakeholders within the company. This usually happens by delivering and optimizing product features. Product Manager Product Owner The product manager discovers what users need, prioritizes what to build next, and rallies the team around a product roadmap. The product owner is responsible for maximizing the value of the product by creating and managing the product backlog. This person creates user stories for the development team and communicates the voice of the customer in the Scrum process.      Product Manager and Product Owner's work on below vacuum. Product manager focus on: Business Strategy Long term Product Vision Long term Product Strategy Product Roadmap Alignment with Product Owner Product owner focus on: Release Plan (Product Backlog ie: ...