Home Page Icon
Home Page
Table of Contents for
Cover
Close
Cover
by Eben Hewitt
Semantic Software Design
Preface
Conventions Used in This Book
Using Code Examples
O’Reilly Online Learning
How to Contact Us
Acknowledgments
I. Episteme: The Philosophy of Design
1. Origins of Software Architecture
Software’s Conceptual Origins
Copies and Creativity
Why Software Projects Fail
The Impact of Failures
2. The Production of Concepts
Semantics and the Software Factory
The Myth of Requirements
Semantics and Software Architecture
The Semantic Field
Designers Are Producers of Concepts
Designing Concepts
What Is a Concept?
Accomplish, Avoid, Fix
Outlining Your Concept on the Concept Canvas
Ideas Are Captured in a Lookbook
Fit to Purpose
The Concept Is Expressed in a Parti
An Example
Adding Aspects to the Parti
The Parti Is Based on a Series of Reveals
Understanding Ideas
Sense Certainty
Metacognition
Context
Sets
Relations
Advantages of Semantic Design
3. Deconstruction and Design
Introduction to Deconstruction
Simplexity
(De)composition
Affordance
Give Intention and Use Value to Negative Space
Give Design Decisions at Least Two Justifications
Design from Multiple Perspectives
Create a Quarantine or Embassy
Design for Failure
Design Language
Naming
Start Opposite the User
Platforms
Disappearing
II. Semantic Design in Practice
4. Design Thinking
Why Design Thinking?
Exploring Design Thinking
Principles
The Method
Implementing the Method
Summary
5. Semantic Design Practices and Artifacts
Design Principles
Pair Designing
Murals
Vision Box
Mind Maps
Use Cases
Guidelines and Conventions
Utils
Domain
service-api
service-impl
service-client
Approaches
Design Definition Document
Considerations for Composing Your Design Definition
Position Papers
RAID
Presentations and Multiple Viewpoints
Summary
6. The Business Aspect
Capturing the Business Strategy
Provide a Common Understanding
Align Strategic Objectives and Tactical Demands
Framework Introduction
Scope of the Framework
Create the Business Glossary
Create the Organizational Map
Create a Business Capabilities Model
Create a Process Map
Reengineer Processes
Take Inventory of Systems
Define the Metrics
Institute Appropriate Governance
Business Architecture in Applications
Summary
7. The Application Aspect
Embrace Constraints
Decouple User Interfaces
UI Packages
On Platform Design
Service Resources and Representations
Domain Language
API Guidelines
Deconstructed Versioning
Cacheability and Idempotence
Independently Buildable
Strategies and Configurable Services
Application-Specific Services
Communicate Through Services
Expect Externalization
Design for Resilience
Interactive Documentation
Anatomy of a Service
UI Packages
Orchestrations
Engines
Data Accessors
Eventing
Structure of an Event Message
Contextual Services and Service Mixins
Performance Improvement Checklist
Separating API from Implementation
Languages
Radical Immutability
Specifications
A Comment on Test Automation
A Comment on Comments
Summary
8. The Data Aspect
Business Glossary
Strategies for Semantic Data Modeling
Polyglot Persistence
Persistence Scorecard
Multimodeling
Data Models for Streams
Feature Engineering for Machine Learning
Classpath Deployment and Network Proxies
Peer-to-Peer Persistent Stores
Graph Databases
OrientDB and Gremlin
Data Pipelines
Machine Learning Data Pipelines
Metadata and Service Metrics
Auditing
ADA Compliance
Summary
9. The Infrastructure Aspect
Considerations for Architects
DevOps
Infrastructure as Code
Metrics First
Compliance Map
Automated Pipelines Also First
The Production Multiverse and Feature Toggling
Implementing Feature Toggles
Multi-Armed Bandits: Machine Learning and Infinite Toggles
Infrastructure Design and Documentation Checklist
Chaos
Stakeholder Diversity and Inside/Out
Summary
III. Operations, Process, and Management
10. The Creative Director
The Semantic Designer’s Role
Creative Directors Across Industries
In Fashion
In Film
In Video Games
In Advertising
In Theater
In Technology
What’s In a Name?
11. Management, Governance, Operations
Strategy and Tooling
Oblique Strategies
Lateral Thinking and Working with Concepts
Conceptual Tests
Code Reviews
Demos
The Operational Scorecard
The Service-Oriented Organization
Cross-Functional Teams
The Designed Scalable Business Machine
Managing Modernization as a Program
Change Management
Governance
Goals
Metrics
Service Portfolio
Service Inventory and Metadata
Service Design Checklist
Service Design
Service Operations
Business Processes
Data
Errors
Performance
Security
Quality Assurance
Availability and Support
Deployment
Documentation
Further Reading on Organizational Design
12. The Semantic Design Manifesto
The Manifesto
The Four Ideals
The Key Practices
Opening
A. The Semantic Design Toolbox
The Tools
Thinking Stage
Concept Stage
Design Stage
Operations and Governance
B. Further Reading
Architecture and Design Books
Philosophy Books
Software Books
Index
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Next
Next Chapter
Semantic Software Design
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset