Agile Architecture And Design

Similar documents
IBM Continuous Engineering augmenting PLM with ALM and Systems Engineering

Application Lifecycle Management for SAP Powered by IBM Rational

Introduction to Disciplined Agile Delivery

1. Which CLM capability does the Analyst role have full read/write access to?

Connect heterogeneous ALM tools together

Fast Forward Shareholder Value from your SAP Investment using IBM Rational

Accelerate modernization of enterprise assets using IBM s Rational Asset Analyzer

Building a Platform for Innovation: Architecture and Agile as Key Enablers

IBM Rational Software

Improving the business process of software delivery for Financial Services

Architecture & Construction Keynote Architecture Management

Fast, Lean Enterprise Software Delivery Through IBM DevOps

IBM Rational RequisitePro

DevOps with UrbanCode

Effective Test Automation of SAP Implementations

Actionable enterprise architecture management

Customizing IBM Rational Team Concert Work Items and Process

Elevate Your Business Insight: Measured Improvement Realized in Rational Insight

What's New With Rational Team Concert (TM)

IBM Innovate A Change Management Request Portal. Robert Kennedy Geoffrey Clemm

New and noteworthy in Rational Asset Manager V7.5.1

Succeed with Agile at Scale

Rational Developer for IBM i (RDi) Introduction to Enterprise Modernization

IBM Rational Software

Enterprise Architecture Management

IBM Rational Extensions for SAP Applications Application lifecycle management for consistent governance

Telelogic DOORS Web Access

The IBM Rational strategy for integrating with Product Lifecycle Management (PLM)

IBM Rational Software

Intelligence, a powerful

Managing the Business of IT - Integrating Enterprise Architecture and Application Portfolio Management

Building a Platform for Innovation

Agenda. ClearQuest 8.0 What s New. Positioning Integrations Collaboration Administration New Features Deprecations Q&A

Collaborative DevOps with Rational and Tivoli

Implementing an Agile Transformation Using Discipline Agile Delivery Michael J Lyons World Wide Solution Deployment Architect, IBM Rational

A lifecycle approach to systems quality: because you can t test in quality at the end.

Adopting DevOps at Enterprise Scale

IBM Software Rational. Five tips for improving the ROI of your software investments

IBM Rational Software

Collaborative ALM Interoperability

Toolbox for Architecture Framework Discussions at The Open Group. SKF Group, February 2018

IBM Collaborative Lifecycle Management & SAFe

ORACLE SOA GOVERNANCE SOLUTION

Achieve Competitive Advantage with IBM DevOps

Adaptive work environments

Dramatically improve the way work gets done with IBM Business Process Manager

Achieving Application Readiness Maturity The key to accelerated service delivery and faster adoption of new application technologies

Enterprise Modeling to Measure, Analyze, and Optimize Your Business Processes

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2

IBM Rational Asset Manager made practical

The IBM Rational Software Development Platform

Development Environment Definition

Transforming software delivery with cloud

IBM Rational Systems Developer, Version 7.0

The Aras PLM Platform

2013 Rational Software Open Labs

Testking.M questions

Accenture Enterprise Services for Energy. Delivering high performance in enterprise resource planning

Fueled with ALM Octane

Delivering Business-Critical Solutions with SharePoint 2010

Achieving Business Results from your Enterprise Architecture

Integrating Configuration Management Into Your Release Automation Strategy

Oracle Service Cloud. New Feature Summary. Release 18C ORACLE

What makes you Rational? Effective Software Development with Rational

Getting ready for ALM Octane

Address system-on-chip development challenges with enterprise verification management.

THE FUTURE OF PROCESS HAS BEGUN

Scale. Making the Case for the Lean Enterprise

CONTENT AND EXPERIENCE CLOUD. Deliver Engaging Digital Experiences Across Multiple Channels

Integration Competency Center Deployment

CA Release Automation Continuous Delivery Edition and CA Agile Central

Build a Future-Ready Enterprise With NTT DATA Modernization Services

SOLUTION BRIEF MAINFRAME SERVICES FROM CA TECHNOLOGIES

2 Business Processes and Forms with Office SharePoint Server 2007

Building smart products: best practices for multicore software development

What is your definition of DevOps?

Delight Customers. Always. ASUG and SAP Solution Manager Education Summit November 28-30, 2017 Newtown Square, PA.

IBM Sterling Order Management drop ship capabilities

IBM Service Management Buyer s guide: purchasing criteria. Choose a service management solution that integrates business and IT innovation.

ORACLE SYSTEMS MIGRATION SERVICES FOR IBM ENVIRONMENTS

In Pursuit of Agility -

Systems and Software Engineering with RELM

You can plan and execute tests across multiple concurrent projects and people by sharing and scheduling software/hardware resources.

IBM Software IBM Business Process Manager

Effective SOA governance.

Watson Internet of Things. Agile Development Why requirements matter

Agile Projects 7. Agile Project Management 21

DocAve Governance Automation

IBM IoT Continuous Engineering on Cloud and IBM Collaborative Lifecycle Management on Cloud

Analyze, Design, and Develop Applications

Exam Questions OG0-091

Prepare for a more efficient SAP implementation: Take data issues off the critical path

Deliver Winning Software Solutions with Full Quality Assurance Management

IBM Innovate 2010 Managing Requirements for Your Agile Team

A new approach to verifying and validating medical device development.

You can plan and execute tests across multiple concurrent projects and people by sharing and scheduling software/hardware resources.

Business Agility for Smarter Banking

IBM Business Analytics

Experiences in deploying

New Intelligence, Better Insight Jack Esselink Business Analytics Evangelist

Transcription:

Agile Architecture And Design Vishy Ramaswamy (vramaswa@ca.ibm.com) Senior Technical Staff Member Design Management Server Architect Collaborative Architecture, Design and Analysis IBM Rational Software

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 2

Application Lifecycle Management (ALM) Community (http://bit.ly/ibmalm) Establish ALM community as YOUR community where you can find useful and usable information and make it the most desirable community to became its member Place to discuss ideas and issues in ALM that go beyond the tools, as well as follow trends that affect the software lifecycle emerging from many disciplines By forming this community on developerworks, we are able to tap into a talented network of practitioners and enthusiasts from not only software development and delivery, but cloud, big data, agile, mobile, middleware, etc. To become a member and share information about ALM community read Welcome to ALM Community blog Members gets notification when useful information is available Send feedback and suggestion here 3

Office Hours Schedule Agile Architecture April 5th, 2013 from 11:00 AM - 12:00 PM EST Curing your Time to Market Blues for Software Delivery May 3rd, 2013 from 11:00 AM - 12:00 PM EST Plan a number of additional topics like Rational Cloud offering, SAP, outsourcing, etc. Want you to share your experience? Send email to fariz@us.ibm.com. Where can I find office hours slides? Each office hours event will have associated blog. For example, you will be able to download today s event slides from ALM Community Office Hours Kickoff and Learn about Design Factory Team blog. I missed office hour event. Will these events be recorded? Yes, office hours events will be recorded and you will be able to download recordings from each office hours event blog. 4

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 5

Complexity is the biggest challenge facing organizations today! Today s complexity is only expected to rise, and more than half of CEOs doubt their ability to manage it. IBM 2010 Global CEO Study: 1500 face-to-face interviews, Companies of all sizes across 60 countries, representing 33 industries.(ibm CEO study) Whether IT or device-based, software-based applications continue to grow in size and complexity. Globally distributed and diverse teams, outsourcing and supply chain dependencies lead to increased challenges in the timely launch of competitive products and services. Organizations struggle to balance agility and complexity. It s not enough to manage development, the design process itself must become more streamlined and efficient. 6

Common Software Development Challenges 7 How can we become more agile in responding to changes when it s so risky to make a change? How do I reduce duplication across my applications when I have distributed and independent development teams? How do I provide integrated solutions when parts are developed in-house, parts are outsourced, and parts are purchased as commercial-off-theshelf? How can I reduce the risk and improve the reliability of deployments? Design tools often focus on the practitioner and lack team integration Teams cannot easily share designs and get feedback from stakeholders Linking designs to other lifecycle artifacts is difficult, leading to a lack of traceability and understanding of the impact of changes Too many tasks are tedious, manual, and inefficient such as: Conducting design reviews Creating reports across multiple designs and lifecycle elements for specifications, communication, regulatory compliance, and auditing Ultimately this leads to teams working in silos, limiting the value designs provide to others

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 8

Design and Application Lifecycle Management (ALM) To overcome these challenge and realize the full value of design Collaborative Lifecycle Management Design needs to be a key part of the overall application lifecycle. Requirements Management Design Management Quality Management Design needs to be integrated into ALM. Not done once and forgotten. Software Change and Configuration Design Management provides a more collaborative approach to design. Open Lifecycle Integration Platform Forrester defines ALM as: The coordination of development life-cycle activities, including requirements, modeling, development, build, and testing, through: Traceability: management of relationships between development artifacts used or produced by activities (integration). Process automation: enforcement of processes that span these activities. Reporting: reporting on progress of the development effort as a whole. 9

Collaborative Design Management A collaborative approach to design helps teams: Broaden their understanding of architecture and design goals, reducing costly architectural mistakes Shrink design time and adopt an iterative approach to design Improve quality by collaborating with peers and stakeholders. Iterative and collaborative software design helps teams address these challenges by: Providing a higher level of abstraction to evaluate alternatives and arrive at the best and simplest solution Communicating a shared understanding across independent & distributed teams Improving quality with early analysis and validation Reducing development time by generating implementation resources Enabling informed decisions on changes from blueprints of IT systems Design is important across the application lifecycle Quickly capture and collaborate on initial design ideas with sketching Define solution architectures and identify reusable services Ensure successful and repeatable deployments with deployment planning 10

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 11

Architecture and Agile: a contradiction? No architect role does not mean no architectural tasks Architecture & design is the responsibility of the whole team Design activities does not imply models nor documentation Brainstorming Creative thinking Problem solving Agile thought leaders recommend agile architecture 12

Agile Model Driven Development Scott Ambler Agile Modeling Principles - http://www.agilemodeling.com/principles.htm Agile Modeling Best Practices - http://www.agilemodeling.com/practices.htm What is Agile Model Driven Development - http://www.agilemodeling.com/essays/amdd.htm 13

Agile Model Driven Development Scott Ambler Requirements Envisioning http://www.agilemodeling.com/ess ays/initialrequirementsmodeling.ht m#usagemodel Usage Models, Domain Models, User Interface Models Architecture Envisioning - http://www.agilemodeling.com/ess ays/initialarchitecturemodeling.htm Technology diagrams, User interface (UI) flow, Domain models, Change cases Iteration Modeling and Model Storming UI sketches, Flow Diagrams, CRC Cards, UI Interaction Diagrams, Data Models Agile Enterprise Architecture - http://www.agiledata.org/essays/en terprisearchitecture.html 14

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 15

Architecture in Agile projects «Continuous attention to technical excellence and good design enhances agility.» - Agile Manifesto, principle #9 «The best architectures, requirements, and designs emerge from self-organizing teams.» - Agile Manifesto, principle #11 Some key architectural activities your team can t ignore, whether you are Agile or not: 1. Define the approach for developing the system Identify key best practices & patterns to leverage Drive technical decisions 2. Identify and select reusable assets (frameworks, components ) 3. Identify the appropriate technical components too meet: Functional requirements Non-functional requirements (availability, security, performance ) 4. Define the structure of the system (runtime and deployment) 5. Continuously validate architectural consistency 6. Continuously communicate with all stakeholders (wherever they may be located) 7. Continuously validate against (possibly volatile) requirements 16

Just Enough Expressions and Traceability within Agile Architecture and Design 17

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 18

Architectural and design expressions suitable for "just enough" Architecture Inclusive Models Component Architecture Conceptual Data Model Live Architecture Documents Deployment Architecture FreeForm Diagrams 19

Architectural and design expressions suitable for "just enough" design Inclusive Models Flow Diagrams Collaboration Diagram Live Design Documents CRC Cards UI Mockup 20

Architectural and Design Expressions Variants 21

Expressing Architecture and Design Goals Platform Independent Models Business Process Model Notation (BPMN) UML models + domain and implementations extensions Deployment Topologies 22

Live Design Documents Create living design documents Rich text documents with embedded design links Add to any design project Keep current as designs change 23

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 24

Learn from the past Quickly search across all of your organizations designs on the server for learning, review, analysis, or to identify potential reuse Search directly on the server; no need to load designs into a client first Simple full text search over model content (name, description, type) Powerful query based searching 25

Architecture Decision Knowledge (ADK) ADK is a simple way to manage information about architecture/design issues and decisions rationale and enables agile architecture/design practices. In collaborative design this information can then be shared with other users so they can benefit from the decision making process the original user went through to resolve the problem. First class resources capture concepts like Guidance, Topic, Issue, Alternative, Decision and Outcome 26

Leverage architectural and design decisions From The Past Identify decisions for specific issues and their rationale and reuse 27

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 28

Working as a Team Increase team knowledge through an enterprise-wide software design repository Analysts, SMEs, testers, and other extended team members can access designs through a Web client Designs become URL addressable Search across all of the organizations existing designs to discover knowledge Navigate designs and visualize relationships 29

In-Context Collaboration always shows the latest Rich hovers provide quick access to information to determine if additional details are required! Threaded discussions on software and systems designs 30

Everyone stays connected Dashboards provide an easy way to stay connected with design activities Design comments, recent links, most active, design reviews, design changes Create mashup dashboards with viewlets from across the application lifecycle 31

Reviews drive agreement & prevent re-work Reviews & approvals insures artifacts are reviewed and/or approved by key team members and captures compliance requirements. Requirements Designs Test Artifacts Work Items 32

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 33

Team leads have visibility into coverage & completeness Proactively respond to gaps (in red) as they surface throughout the project Issues are quickly highlighted and resolved (in yellow) 34

Automate Impact Analysis New graphical impact analysis diagram that includes design and linked lifecycle artifacts Analysis Configuration defines the parameters for the analysis Upstream level, downstream level, which links types to include Can be used be shared by multiple analysis Analysis applies the configuration to a selected element to perform the impact analysis Save and re-run at a later time 35

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 36

Generating or creating formal models from the informal expressions Informal expressions can seed the content for formal models Can convert individual shapes and connections into formal model elements 37

Model RESTful Services and Generate JAX-RS Based Web Services Generate JAX-RS based Web Service from Model Generate Model from JAX-RS based Web Service Deployed on Application Server Model RESTful Service in RSA 38

Deployment Planning and Automation 39

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 40

Enable Continuous Upgrades Deal With Change Deal with data format changes Deal with data structure changes Deal with technology changes Deal with reference model changes Automate the upgrades Support incremental data migration 41

Enable Continuous Upgrades Self-hosting is Key 42

Agenda ALM Community Office Hours Complexity and Risk Good Design Better Outcomes Agile Architecture and Design What are the methodologists saying? How are we approaching this? Architecture and Design Simplicity Learn From The Past Enable Continuous Collaboration Enable Life Cycle Traceability To Deal with Change Enable Automation For Continuous Validation Enable Continuous Upgrades The Million Dollar Question 43

If you are rolling out Agile methodology, what type of training do you recommend (i.e. just in time or company wide) to get people on board and up to speed? The following can be used for Green field development or any maintenance initiatives: Educate team on the development process to be used (for example scrum etc). Make sure that the process is tailored to suit your needs. It can be an optimization of any existing development process. Make sure there is an aspect of light weight governance. Educate team on the artifacts and resources that will be created as part of this process change requests, user stories, design documents, informal expressions, test cases etc. Leverage existing deliverables and simplify them Educate team on some sample templates for the above artifacts sample content which indicates what is just enough Educate team on the collaboration environment to be used with your stakeholders need tools and practices to facilitate active collaboration scrum meetings, collaboration and commenting software etc Educate the leaders (scrum masters, product owners etc) on what are the boundaries of their empowerment what decisions can they make and what are the decisions they can t make. This way we reduce the turn around time for making decisions Should encourage constant evolution of process, artifacts created, deleted and maintained. Everything used must have value of some kind. 44

Next Steps (Ref URLs) Ask questions https://jazz.net/forum - Please use the tag designmanagement Pragmatic architecture for agile application lifecycle management: http://ibm.co/pa4alm RSA Community: https://www.ibm.com/developerworks/mydeveloperworks/groups/service/ht ml/communityview?communityuuid=a8b06f94-c701-42e5-a15fe86cf8a8f62e Design Management Community: http://jazz.net/projects/designmanagement/ Design Management articles and videos: https://jazz.net/library/#project=design-management Try it out: https://jazz.net/downloads/design-management/releases/4.0.1 45

www.ibm.com/software/rational 46

www.ibm.com/software/rational Copyright IBM Corporation 2011. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 47

Backup 48

Agile scaling factors: needs for a more disciplined approach Team size Compliance requirement Under 10 developers 1000 s of developers Low risk Critical, audited Geographical distribution Co-located Global Enterprise discipline Project focus Enterprise focus Agile scaling factors Domain Complexity Straight -forward Intricate, emerging Organization distribution (outsourcing, partnerships) Collaborative Contractual Organizational complexity Technical complexity Flexible Rigid Homogenous Heterogeneous, legacy 49

Collaborative Design Management Integrating and collaborating on designs across IT and domains. Business Process Models...the application and engineering lifecycles...levels of abstraction Service Models Requirements Analysis Enterprise Architecture Data Architecture Deployment Plans Implementation Models Design OSLC Deployment Solution / Product Line Architecture Systems System Models Implement Test Project Designs Plant Models Software Models Electrical Models Control Models Enabling better collaboration, automation, reporting, and agility while reducing complexity and risk. 50

Real-Time Agility: The Harmony/ESW Method for Real-Time and Embedded Systems Development Bruce Powel Douglass Real-time and embedded systems face the same development challenges as traditional software Bruce introduces the Harmony/ESW process: How Model-Driven Development (MDD) and agile methods work synergistically The Harmony/ESW process, including roles, workflows, tasks, and work products Phases in the Harmony/ESW microcycle and their implementation Initiating a real-time agile project, including the artifacts you may (or may not) need Agile analysis, including the iteration plan, clarifying requirements, and validation The three levels of agile design: architectural, mechanistic, and detailed Continuous integration strategies and end-of-the-microcycle validation testing How Harmony/ESW s agile process self-optimizes by identifying and managing issues related to schedule, architecture, risks, workflows, and the process itself 51

Real-Time Agility: The Harmony/ESW Method for Real-Time and Embedded Systems Development Bruce Powel Douglass http://www- 01.ibm.com/software/rational/agile/embeddeda gile/ http://www.ibm.com/developerworks/rational/lib rary/agile-analysis-practices-safety-critical- development/index.html?ca=drs- &utm_source=dlvr.it&utm_medium=twitter http://www- 01.ibm.com/software/rational/workbench/syste ms/ Architectural And Design Views 52