Novo Nordisk's journey in developing an open-source application on Neo4j
Dependency-Oriented Thinking Sydney Workshop Brochure and Schedule (Feb 15 2014)
1. Introduction to Dependency-Oriented Thinking
A Lightweight SOA Analysis & Design Method for Business Analysts and Solution
Architects
Date: Saturday Feb 15, 2014
(9 AM to 5 PM)
Venue: Harbour Room, The Portside Centre, Symantec House Level 5, 207 Kent Street, Sydney
CBD
Workshop overview:
This workshop is conducted by Ganesh Prasad and Rahul Singh, two experienced SOA architects.
Ganesh is the author of the lightweight SOA method called "Dependency-Oriented Thinking", and
this workshop is based on Volume 1 (Analysis and Design) of the publication.
Volume 1 (Analysis and Design): http://slidesha.re/1cPwPD2
Volume 2 (Governance and Management): http://slidesha.re/1fEjz7A
Both volumes are downloadable free of charge (free Slideshare registration may be required).
The workshop is aimed at Solution Architects, Senior Designers and Senior Analyst-Programmers
who are looking to improve the quality and maintainability of their solution designs. It will also help
them analyse existing systems and review other practitioners' designs more critically.
Business Analysts who want to develop greater insights into the core nature of business systems
and evaluate the business rationale of each function would also benefit greatly from this workshop.
It is pitched at an intermediate level of detail, neither too abstract nor programming-oriented. It is
about an approach to analysis and design, and will stay focused on practical problems faced by
organisations. The class size is restricted to a maximum of 10 participants for optimal interaction.
Please download and scan Volume 1 to evaluate if this workshop will be right for you. (Volume 2
pertains to Governance and Management, and will be of interest to Enterprise Architects and
Managers. Please let us know of your interest in this topic to help us plan a separate workshop.)
Why you should attend:
* Become more insightful: Adopting Dependency-Oriented Thinking will give you a new and
powerful way of looking at complex, inter-connected systems to understand how they work and
how they ought to work.
* Produce superior designs: Dependency-Oriented Thinking will equip you in designing more
flexible and scalable solutions through an understanding of which is the superior option in every
situation. It will also help you as a reviewing architect to identify potential problem areas at a
glance, and suggest remedies.
* Differentiate your career: Your professional calibre will see a quantum jump when you learn to
adopt Dependency-Oriented Thinking, because very few IT professionals are trained to think in this
way, and the difference will show in the quality of your output.
Course fees:
$4
50 + GST (regular)
$4
00 + GST (early bird price, applicable for all payments on or before Jan 26, 2014
)
Contact us on courses@eignertech.com to register and for payment details.
2. Workshop schedule
Session 1 (0900-0945) Inculcating Dependency-Oriented Thinking
Goal:
By the end of this session, participants must have internalised the core concept of dependencies and must be capable of identifying the
major dependencies in any given situation, whether from their area of work or from day-to-day life.
Topics:
- Introduction
- Case studies (interactive)
- Notation (UML) for inter-system dependencies
- Surrogate principles and why they don't always apply
- Exercises (interactive)
Session 2 (0945-1030) Dependency-Oriented Thinking as a Formal Approach
Goal:
By the end of this session, participants must have understood how to use a formal method based on the BAIT and TOGAF models to
analyse and design systems according to dependency principles.
Topics:
- The BAIT Model of the enterprise
- Entities and Relationships in the TOGAF Model (interactive)
- The core elements applicable to Analysis and Design
- Dependency principles
- The Method
Morning tea (1030-1045)
3. Session 3 (1045-1130) The Business Layer
Goal:
By the end of this session, participants must have understood the dependency principles of Domain Insight, Traceability and Minimalism
and be able to use these to create a coherent Business Architecture for an organisation or business unit.
Topics:
- Business Intent
- The Chain from Vision to Process Step
- Traceability and Minimalism
- The role of Domain Insight
- Dealing with changing requirements (intent versus detail)
Session 4 (1130-1215) Process Design
Goal:
By the end of this session, participants must have understood the dependency principle of Business Process Coordination Style, and be
capable of designing business processes using both the orchestration and choreography styles.
Topics:
- The generic business process
- Human workflow and asynchronous process steps
- Orchestration and Choreography
- "Orchestrable" and "Choreographable" Operations
Lunch (1215-1245)
4. Session 5 (1245-1330) The Application Layer
Goal:
By the end of this session, participants must have understood the dependency principles of High Cohesion ("Belonging"), Decoupling of
Internals from Interfaces, "Goldilocks" Signatures and Shared Semantics. They should be able to organise the Process Steps
(Operations) produced by the Business layer into a set of cohesive Products and/or Services. They should also be able to design a
version numbering scheme that minimises disruption to service consumers.
Topics:
- What is an "Application"?
- The principles of High Cohesion and Decoupling of Internals from Interfaces
- "Goldilocks" Signatures (Stability versus Precision of Interfaces)
- Variants, Versions and dealing with change
- Shared Semantics for effective Choreography
Session 6 (1330-1415) The Information Layer
Goal:
By the end of this session, participants must have understood the dependency principles of Decoupling Internal Data from Interface
Data, Low External Coupling, Type Hierarchy, Identity Association and the Isolation of Context from Content. They should be able to
design service interfaces that are stable in the face of change.
Topics:
- "Data on the Outside versus Data on the Inside"
- Elements of Low Coupling
- Type Hierarchy and Interface Abstraction
- Identity Association
- Context versus Content
Afternoon tea (1415-1430)
5. Session 7 (1430-1515) The Technology Layer
Goal:
By the end of this session, participants must have understood the dependency principles of Extraneous Constraints, Logic Bundling,
State ("Stickiness"), Topology Hotspots and Late Binding. They should know when to use a Service Container, a Broker and a Process
Coordinator. They should be able to design SOAP- and/or REST-based applications that are flexible and maintainable.
Topics:
- Standards, Bundling and Tooling
- Standards and Standards Families - SOAP and REST
- Bundling - Data, Logic, Physical Components and their association
- Tooling - the core and supporting components of a distributed solution
- Implementing a logical design
Session 8 (1515-1630) Worked-out Examples
Goal:
By the end of this session, participants must have gained a deep understanding of how Dependency-Oriented Thinking may be used
end-to-end, from analysis to design, to create a flexible and maintainable solution that meets business requirements now and in the
future. They should have the confidence to return to their workplace with the insights and skills to do their jobs differently and with
enhanced effectiveness.
Option 1: Detailed analysis of participants' own design problems
Option 2: Canned case studies:
- Conducting a post-mortem based on dependency principles
- Designing a system based on an orchestrated business process
- Designing a system based on a choreographed business process
- Designing an interface data model to cater to change (Type Hierarchy and Goldilocks Signatures)
Session 9 (1630-1700) Summary and wrap-up