My Account Log in

1 option

Software architecture fundamentals.

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Video
Contributor:
Ford, Neal, instructor.
Richards, Mark, instructor.
O'Reilly (Firm)
Language:
English
Subjects (All):
Software architecture.
Computer software--Development.
Computer software.
Physical Description:
1 online resource (1 video file (13 hr., 16 min.)) : sound, color.
Edition:
Third Edition.
Place of Publication:
[Sebastopol, California] : O'Reilly Media, Inc., 2025.
Summary:
Join experts Neal Ford and Mark Richards on a comprehensive software architecture journey, guiding you from foundational principles to advanced enterprise strategies. This course is broken into three sections--fundamentals, intermediate, and advanced, designed for every stage of your career. Start with the fundamentals, learning core concepts, patterns, and the role of an architect--ideal for aspiring architects. Then, move on to the intermediate course to apply your skills, working with microservices, event-driven architectures, and managing design trade-offs. Finally, master the complexities of large-scale systems in the advanced section. Tackle scalability, resilience, and strategic leadership to drive major projects and align technical decisions with business goals. Whether you are an aspiring, practicing, or senior architect, this complete learning path provides the insights you need to excel. What you'll learn and how to apply it Fundamentals Explain the key differences between software architecture and software design Describe the fundamental principles of software architecture and the role of a software architect Define software modularity and articulate the benefits of a modular design Identify different architectural styles, including monolithic and distributed architectures Create simple diagrams to represent a software system's structure and behavior Recognize the importance of non-functional requirements (e.g., performance, security, reliability) in shaping an architecture Analyze the influence and implications of data on architectural decisions Intermediate Design software architectures that meet a given set of functional and non-functional requirements Explain and compare advanced architectural styles, including service-based, microservices, and event-driven architectures Identify and prioritize the critical non-functional requirements for a specific software system Apply architectural frameworks, tools, and fitness functions to ensure compliance and validate architectural decisions Evaluate different architectural solutions for a given problem, making informed decisions based on trade-offs Design flexible and adaptable architectures based on the principles of evolutionary architecture Effectively lead a team through the design and implementation of a software architecture using strong communication and collaboration skills Advanced Master the design and implementation of complex, large-scale distributed systems, addressing challenges like concurrency, scalability, and fault tolerance Demonstrate a deep understanding of current industry trends and challenges in software architecture, such as cloud computing, big data, and the Internet of Things (IoT) Drive architectural decisions by effectively communicating, negotiating, and collaborating with business stakeholders and product teams Lead and coordinate the architectural design process in large-scale enterprise projects Conduct formal architectural reviews and audits to identify potential issues and recommend strategic improvements Align architectural decisions with overarching business goals, constraints, and objectives Contribute to the advancement of the software architecture field through thought leadership, such as publishing articles, giving talks, or participating in standardization efforts This course is for you because You want to learn more about software architecture, from the fundamentals to advanced concepts and skills. You want to become more proficient at software architecture. Software architecture is an adjacent technology or one that you work with and would like to understand better. You are looking to move into a new role from developer to architect, from senior software developer or tech lead to software architect, or from software architect to senior architecture roles. Prerequisites Can identify and describe the main components of a software system, such as databases, servers, and user interfaces. Can use a programming language to implement a simple software system following a given architecture. Can identify and describe the main stages of the software development lifecycle, including requirements analysis, design, implementation, testing, and maintenance.
Notes:
OCLC-licensed vendor bibliographic record.
OCLC:
1530938660
Publisher Number:
0642572016094

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account