SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
 
 
 
 
 

AW7
Concurrent Session 
11/7/2012 2:15 PM 
 
 
 
 
 
 
 

"Right-sized Architecture:
Integrity for Emerging Designs"
 
 
 

Presented by:
Ken Kubo
Northrop Grumman Corporation
 
 
 
 
 
 
 

Brought to you by: 
 

 
 
340 Corporate Way, Suite 300, Orange Park, FL 32073 
888‐268‐8770 ∙ 904‐278‐0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Ken Kubo
Northrop Grumman Electronic Systems
Ken Kubo is director of software engineering with twenty years of service at Northrop Grumman
Electronic Systems, Intelligence, Surveillance, Reconnaissance, and Targeting Systems
Division, Azusa campus. His work has focused on the development of satellite ground systems,
building the bigger picture from individual bits of data. Information radiators are Ken’s natural
focus in agile development. A certified Lean-Agile ScrumMaster and Certified ICAgile
Professional, he developed and teaches a Lean-Agile Development overview course for NGES.
Ken firmly believes that lean-agile and government acquisition processes are not completely
incompatible.
 
Right-Sized
Architecture

Integrity for Emerging Designs
AW7 - 7 November 2012 – 2:15 PM
Ken Kubo, James Yoshimori, Jason Liu

Agenda

• Software Engineering and Lean-Agile
• Right-Sized Architecture
Right Sized
• Collaborative Design
• Extending the Metaphor
• Retrospective
Acknowledgements

• The team gratefully acknowledges the support and interest of the
Sensor Exploitation Systems/SAIG business area leadership.

3

But First…A Word From Our Sponsor

• Northrop Grumman Corporation (NYSE: NOC) is a leading global security
company providing innovative systems, products and solutions in
aerospace, electronics, information systems, and technical services to
government and commercial customers worldwide The company has
worldwide.
over 120,000 employees in all 50 states and 25 countries around the
world.
• Our core competencies are aligned with the current and future needs of
our customers and address emerging global security challenges in key
areas, such as unmanned systems, cyber-security, C4ISR, and logistics
that are critical to the defense of the nation and its allies.
• Our Electronic Systems sector is a leader in airborne radar, navigation,
y
,
g
,
electronic countermeasures, precision weapons, airspace management,
space payloads, marine and naval systems, communications, biodefense,
and government systems.
The Need for Agility
Increase in Software in DoD Systems

Software Content of Sample Major DoD Weapon Systems 1960 - 2020

18
FCS

16
F-35 Aircraft
and Ground

ESLOC in Millions

14
12
10

DDX

8
6

Virginia SSN

4

Patriot
PAC-3

Aegis System

2

SBIRS
F-22

Polaris A3

0
1960

ACS

1970

1980

Sea Systems

1990

Missiles/Space

2000
Ground Systems

2010

2020

Aircraft

Sources: CARD Data, SEI, CSIS Analysis

5

The Need for Agility

• Defense Science Board Recommends More agile Acquisition Process
(March 2009)

“A new acquisition p ocess for information
ew acqu s t o process o
o at o
• National Defense Authorization Act should be Year 2010 (H.R.2647) on
technology for Fiscal developed—modeled
(Became Public Law No: 111-84 October 2009)

successful commercial practices, for the rapid
• AFEI Task Force 804 Report – June 2010
acquisition and continuous upgrade and
Recommended (Among Other Things):
improvement of IT

capabilities. The process

“Institute continuous, iterative, development,
should be agile and geared
test, and certification processes that drive the to delivering
commercial IT state of the art to deliver more capability in
meaningful increments of
trusted, standard, off-the-shelf building blocks”

approximately 18 months or less—increments
that are prioritized based on need and technical
readiness.”
6
Software Engineering (and other oxymorons)

• Definitions:
– Software: a set of instructions which define and enable the operation of a computer
system to perform a desired task
y
p
– Engineering: the discipline and profession of applying technical, scientific, and
mathematical knowledge to practical problems

• Historical endpoints
– 1968 NATO Software Engineering Conference
– Software Engineering Body of Knowledge (SWEBOK) (IEEE, 2004)

7

Software Engineering Practices

• Systemic view and development lifecycle (requirements analysis,
design, development, testing, deployment, maintenance)
• Risk analysis
• Best practices
– Lessons learned
– Design patterns

• Certification
– Certified Software Development Associate/Professional (CSDA/P)
– PMI-ACP, ICAgile Certified Agile Professional, role certification etc.

8
The Agile Transition
Predictive
Develop FS A
RA

HLD

DD

Develop FS B

I&T

V&V

PDS

Develop FS C
FS A,B,C

Adaptive
RA

…

HLD
PDS
FS A

FS B

FS D

FS C
9

Agile Execution

Analysis
A hit t
Architecture

“Desirement Analysis” with iteration planning
and backlog (work queue) grooming. Also
used for risk identification/mitigation.

Design
Development
I&T

10

Traditional engineering activities all still occur,
but note that they (mostly) happen
collaboratively, not sequentially.
When Engineering Goes Bad…

Traditional predictive practices and “ilities” can commit too early
• Lock-down architecture at the beginning of the project (Big Design Up
Lock down
Front)
• Only discuss design with customer prior to development
• Design for all possible customer
requests, enhancements, and
expandability

Wide focus can be uninformed
11

When Agile Goes Bad…

Agile methodology focus can incur technical debt
• Agile methodology impacts
– Iteration focus can emphasize coding activity – de-emphasizing others
– “Just in time” design can devalue architecture

• Technical debt
– Neglecting the “big picture”
– Decoupling architecture
– Losing sight of system
design integrity

Tight focus can prove short-sighted
12
Agile as a Philosophy

• Execute with lean agility
– Avoid waste
– Creating shared knowledge > creating documentation

• Leverage social interaction
– Use a common “information radiator”
• Artifacts and processes are open to view
• Artifacts are easily accessible
• Single source creates common understanding
– Build a social environment for development
p
• Encourage developers to work closely with one another
• Strengthen trust within the community
– Establish common understanding of artifacts being constructed

Shared understanding drives efficiency
13

Implementing Agile Architecture

• Avoid waste – just enough (George Fairbanks)
“You‘ll be smarter later”
• The Zen of “just enough”
–
–
–
–
–

Avoid big design up front (BDUF)
Decide on the vision for your framework
Pick your focal points (risk and ignorance)
Make design a convenient part of the workflow
Emphasize creating knowledge, not creating diagrams
• Encourage an open team dynamic so team members can say when they have
enough information to code
– Prefer the collaboration dynamic to automation tools
– Don’t force documentation of design sessions
– Be disciplined but not rigid

Just Enough Architecture A Little Before Its Time
14
Roles and Responsibilities

• Initial Design
Objective: identify interfaces, processing partitions/components, general system
sketch, build the framework for the developers
– Architect: maintains big picture, helps identify and define interfaces, keeps focus of
the meeting, controls documentation
– Product Owner: clarifies objectives and done-ness, fills in unstated (“wasn’t that
obvious?”) requirements
– Technical Lead(s): identify where development activity has to occur, help define
interfaces

• Delta Design
Objective: sanity check and impact analysis (not the search for the perfect design)
– Developer(s): present (proposed) solution, highlight any changes/detailing to
architecture
– Architect: helps perform impact analysis, verifies design integrity, controls
documentation
– Technical Lead(s): help perform impact analysis

15

Eyes on the Big Picture

• Apply Agile philosophy
– Understanding > documentation

• How?
– Using my Agile eyes …

• Inspiration
– CRC: class, responsibilities & collaborators (Ward Cunningham)
• Informal grouping of index cards (4”x6”)
• Simple, easily remembered rules
• Visual and collaborative

16
Color Map Affinity Diagrams

• Use colored index cards and push-pins – advanced developers may
use self-adhesive notes
• Assign colors to the various types of high level components you may
have (more details to follow)
• Find sufficient vertical space to place the index cards
• Have fun ☺

17

Example

• Project: Support processing, archive, and display of satellite wideband
data, substantial legacy code
• Team size: 5 members
• Platform: SGI and Linux
• Language: C/C++ and Java

18
Issues with Database to Display Interfaces

• Large amounts of data being transferred to displays on network
– Intermingled with smaller data packets

• Noticing network loading “uncomfortably” increased for single source
on a GigE network
– Anticipating load to increase by 4 times current loading in a year
– Load may increase by more than 18 times in 5 years

• Current display has noticeable lag in processing and rendering
– Display is just one executable so performance degradation is not unexpected

New capabilities have outgrown old paradigm
19

Just Enough Architecture

• Risk driven
• Focus on data stores and display
• Decouple display
– Do not directly attach to principal data stores
– Get away from single executable for display
– Create an infrastructure that supports “drop-in” views

• Find a smarter way to manage the data and their transmission over the
network
• Pay more attention to modularity and scalability qualities

Prioritize what to rearchitect/refactor
20
Color Assignments

• Specific colors do
not matter just be
consistent

• Edge components
that perform I/O
• Processing
components

• 4-5 is usually all I
need

• Persistent
component

• Coincidentally a
stack of colored
index cards have
5 colors
l

• Controller
component
• User Interface

21

High Level Tracking Architecture

Data Ingest

Signal
Processing
g

Tracking

Event
Detection

Pipeline

Wideband

Track Points

Display

22

Events

Simple approach
has issues
Current Display Architecture

Track
Point
View
Events

Data
Service

View

View

View

Wideband

23

Initial Update to Display Architecture

Track
Point

Track
Points
Service
View

View
Events

Wideband

24

Events
Service

Wideband
Service

View

View
Updated Display Architecture

Workstation

Blade

Track
Points

Track
Points
Service
View

View
Events

Events
Service

Wideband

Wideband
Service

View
View

We use blue painters
tape to identify
boundaries
25

Updated Display Architecture

Workstation

Blade

Track
Point

Track
Points
Service

Track
Points
Controller
View

View
Events

Events
Service

Events
Controller

View
View

Wideband

26

Wideband
Service

Wideband
Controller
Display Architecture

Workstation

Blade

Track
Point

Track
Points
Service

Track
Points
Controller

Events

Events
Service

Events
Controller

View

View

View

Exec
Wideband

Wideband
Controller

Wideband
Service

View

Setup

View

27

Display Architecture

Workstation

Blade

Track
Point

Track
Points
Service

Track
Points
Controller

Events

Events
Service

Events
Controller

Wideband

28

Wideband
Service

Wide
Wideband
Controller

View App

Cache

View App

View App

Exec
View App
View App

Setup
Display Architecture

Workstation

Blade

Track
Point

Track
Points
Service

Track
Points
Controller

Events

Events
Service

Events
Controller

Wideband

Wideband
Service

Wide
Wideband
Controller
Exec

View App
View App
View App

View App
View App

Events
Setup

Track
Point

Cache

Wideband

29

Display Architecture

Workstation

Blade

Track
Points

Events

Track Points
Service

Event
Service

Track
Points
P i t
Controller

View App
Vi
A
View App

Events
Controller

View App

Wideband
Controller

View App
View App

Exec
Wideband

30

Wideband
Service
Track
Points

Config
File

Wideband

Event
And Now For Something Different

• Story: As a mission operations monitor, I need an “always on” passive
display that shows wideband data from the satellite point of view
overlaid on map data to provide quick indication that data is flowing
and line of sight is good.
• Approach: Add a new view application which can be standalone or
“boxed” with the others which just provides a wideband data display.

31

Display Architecture

Workstation

Blade

Track
Points

Events

Track Points
Service

Event
Service

Track
Points
P i t
Controller

View App
Vi
A
View App

Events
Controller

View App

Wideband
Controller

View App
View App

Exec
Wideband

32

View App

Wideband
Service
Track
Points

Config
File

Wideband

Event
Information Radiator

250

16
200

14
12

150

10 Ideal

100

ETC

8
50

Committed
Completed

6
4

0
10

9

8

7

6

5

4

3

2

1

0

2
0
10

• Can be physical or virtual
• Must be current
33

Information Radiator

• Iteration goal/vision
• Current iteration task/story status (in play and backlogged), iteration metrics
• Schedule (IMS, Release Plan, milestone calendar)
• Product vision, roadmap, Release Backlog
• Project metrics (velocity, defects found in I&T, bug rates, customer feedback)
• High-level architecture/system overview
• Process/workflow team rules and standards
Process/workflow,
• Team member vacation/leave calendar
• Recognition/appreciation

Build shared knowledge and team direction

9

8

7

6

5

4

3

2

1

0
Extending the Metaphor

• Team-based metaphors (and better note stock)
• Visual design patterns
• Component abstraction
• UML, SysML, MBE, … tools where value-added
• For legacy systems, practical default may be to adopt legacy
standards

Team evolves “design language”
35

The Working System

• “My code works” is only a start; each developer
p
y
must own the performance of the system as a
whole
• “Responding to Change > Following a Plan”
does not mean “Don’t Plan”

36
Retrospective

• Lean-Agile and good engineering practices are not opposed!
• Visual design methodologies can strengthen role of architectural design in
Agile (and predictive!) methodologies
• Be creative (and Agile)
– Focus on goals
• Build shared system understanding
• Incorporate design into workflow
• Facilitate evolution of architecture over project life
• Reduce integration rework
– Right-sized = Do the minimum
– Create a variant or use another technique –
find what works better for your team

• Always keep looking for ways to do better

Keep an Agile eye on design
37

Useful References

• Scott L. Bain, Emergent Design: The Evolutionary Nature of
Professional Software Development (Addison-Wesley, 2008)
• Kent Beck, Ward Cunningham, “A Laboratory for Teaching ObjectOriented Thinking” (OOPSLA 1989)
• George Fairbanks, Just Enough Software Architecture: A Risk-Driven
Approach (Marshall & Brainerd, 2010)

38
Abstract

Lean-Agile development methodologies provide increased flexibility to
deliver a more rapid return on customer investment in the form of
working software. In Agile projects, system architecture ideally
emerges over the course of development. However, if teams primarily
focus on independent user stories, they risk losing sight of the Big
Picture – the product’s vision and the integrity of well-thought-out
architecture. This presentation shares techniques to improve the
chances that a product’s design will emerge into a cohesive and
coherent architecture that will support customer needs now and in the
future. Incorporating contextual design principles and simple, visual
techniques as part of “A Little Before Its Time (ALBeIT) Design”
maintains a focus on architectural integrity You can adopt these
integrity.
practices into your Agile workflow to maintain a shared team
understanding of your product’s vision and the system’s emerging
design.

40
Author Biography

• Ken Kubo is Director of Software Engineering at Northrop Grumman Electronic Systems,
Intelligence, Surveillance, Reconnaissance, and Targeting Systems Division, Azusa
campus with twenty years of service with NGES. His development work has focused on
the development of satellite ground systems, building the bigger picture from individual
bits of data Information radiators are thus his natural focus in Agile development He
data.
development.
holds an MS in Management Science from Cal State Fullerton and a BS in
Engineering/English from Harvey Mudd College. He is also a certified Lean-Agile Scrum
Master and a Certified ICAgile Professional.
• James Yoshimori has over 30 years of experience in software development. His work
has ranged from small embedded signal processing systems to very large radar imaging
and infrared processing systems. He has served in various roles from software engineer
to architect to program management. He currently serves as architect, team lead and
Agile process maven for the Situational Awareness and Global Exploitation (SAGE)
project. He holds an MS in Information and Computer Science and a BS in Civil
Engineering from the University of Hawaii Manoa
Hawaii, Manoa.
• Jason Liu is a Software Engineer currently associated with the SAGE project. He has
been with NGES at the Azusa campus since 2009. Jason holds an MS in Computer
Science from UCLA and a BS in Information Computer Science from the University of
California, Irvine.

41

Contenu connexe

Tendances

One hundred rules for nasa project managers
One hundred rules for nasa project managersOne hundred rules for nasa project managers
One hundred rules for nasa project managersAndreea Mocanu
 
Neil.dennehy
Neil.dennehyNeil.dennehy
Neil.dennehyNASAPMC
 
Innoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and BeyondInnoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and BeyondSarahCraig7
 
People Dimension in Software Projects
People Dimension in Software ProjectsPeople Dimension in Software Projects
People Dimension in Software ProjectsEmanuele Della Valle
 
Who Killed The Virtual Case File; Case Analysis
Who Killed The Virtual Case File; Case AnalysisWho Killed The Virtual Case File; Case Analysis
Who Killed The Virtual Case File; Case AnalysisAhmed Coucha, MBA, MSc
 
Solved case study Virtual case file FBI
Solved case study Virtual case file FBISolved case study Virtual case file FBI
Solved case study Virtual case file FBIAditiee Deshpande
 
20070921 Uni Softwareengineering
20070921 Uni Softwareengineering20070921 Uni Softwareengineering
20070921 Uni SoftwareengineeringTony Bibbs
 
Kremic.tibor
Kremic.tiborKremic.tibor
Kremic.tiborNASAPMC
 
Resource Adaptive Systems
Resource Adaptive SystemsResource Adaptive Systems
Resource Adaptive SystemsTom Mueck
 
Terry.conroy
Terry.conroyTerry.conroy
Terry.conroyNASAPMC
 

Tendances (12)

LSCITS-engineering
LSCITS-engineeringLSCITS-engineering
LSCITS-engineering
 
One hundred rules for nasa project managers
One hundred rules for nasa project managersOne hundred rules for nasa project managers
One hundred rules for nasa project managers
 
Neil.dennehy
Neil.dennehyNeil.dennehy
Neil.dennehy
 
2014 12-10 aimee
2014 12-10 aimee2014 12-10 aimee
2014 12-10 aimee
 
Innoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and BeyondInnoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and Beyond
 
People Dimension in Software Projects
People Dimension in Software ProjectsPeople Dimension in Software Projects
People Dimension in Software Projects
 
Who Killed The Virtual Case File; Case Analysis
Who Killed The Virtual Case File; Case AnalysisWho Killed The Virtual Case File; Case Analysis
Who Killed The Virtual Case File; Case Analysis
 
Solved case study Virtual case file FBI
Solved case study Virtual case file FBISolved case study Virtual case file FBI
Solved case study Virtual case file FBI
 
20070921 Uni Softwareengineering
20070921 Uni Softwareengineering20070921 Uni Softwareengineering
20070921 Uni Softwareengineering
 
Kremic.tibor
Kremic.tiborKremic.tibor
Kremic.tibor
 
Resource Adaptive Systems
Resource Adaptive SystemsResource Adaptive Systems
Resource Adaptive Systems
 
Terry.conroy
Terry.conroyTerry.conroy
Terry.conroy
 

En vedette

Essential Test-Driven Development
Essential Test-Driven DevelopmentEssential Test-Driven Development
Essential Test-Driven DevelopmentTechWell
 
Embracing Uncertainty: A Most Difficult Leap of Faith
Embracing Uncertainty: A Most Difficult Leap of FaithEmbracing Uncertainty: A Most Difficult Leap of Faith
Embracing Uncertainty: A Most Difficult Leap of FaithTechWell
 
The Journey from Manager to Leader: Empowering Your Team
The Journey from Manager to Leader: Empowering Your TeamThe Journey from Manager to Leader: Empowering Your Team
The Journey from Manager to Leader: Empowering Your TeamTechWell
 
Patterns in Test Automation: Issues and Solutions
Patterns in Test Automation: Issues and SolutionsPatterns in Test Automation: Issues and Solutions
Patterns in Test Automation: Issues and SolutionsTechWell
 
ADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s Future
ADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s FutureADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s Future
ADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s FutureTechWell
 
Coaching and Leading Agility: A Discussion of Agile Tuning
Coaching and Leading Agility: A Discussion of Agile TuningCoaching and Leading Agility: A Discussion of Agile Tuning
Coaching and Leading Agility: A Discussion of Agile TuningTechWell
 
Data Collection and Analysis for Better Requirements: Just the Facts, Ma'am
Data Collection and Analysis for Better Requirements: Just the Facts, Ma'amData Collection and Analysis for Better Requirements: Just the Facts, Ma'am
Data Collection and Analysis for Better Requirements: Just the Facts, Ma'amTechWell
 
Disciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the EnterpriseDisciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the EnterpriseTechWell
 
Problem Solving and Decision Making in Software Development
Problem Solving and Decision Making in Software DevelopmentProblem Solving and Decision Making in Software Development
Problem Solving and Decision Making in Software DevelopmentTechWell
 
High-flying Cloud Testing Techniques
High-flying Cloud Testing TechniquesHigh-flying Cloud Testing Techniques
High-flying Cloud Testing TechniquesTechWell
 
A Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingA Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingTechWell
 
Measurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersMeasurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersTechWell
 
Key Test Design Techniques
Key Test Design TechniquesKey Test Design Techniques
Key Test Design TechniquesTechWell
 
Exploratory Testing Explained
Exploratory Testing ExplainedExploratory Testing Explained
Exploratory Testing ExplainedTechWell
 
Critical Thinking for Software Testers
Critical Thinking for Software TestersCritical Thinking for Software Testers
Critical Thinking for Software TestersTechWell
 

En vedette (15)

Essential Test-Driven Development
Essential Test-Driven DevelopmentEssential Test-Driven Development
Essential Test-Driven Development
 
Embracing Uncertainty: A Most Difficult Leap of Faith
Embracing Uncertainty: A Most Difficult Leap of FaithEmbracing Uncertainty: A Most Difficult Leap of Faith
Embracing Uncertainty: A Most Difficult Leap of Faith
 
The Journey from Manager to Leader: Empowering Your Team
The Journey from Manager to Leader: Empowering Your TeamThe Journey from Manager to Leader: Empowering Your Team
The Journey from Manager to Leader: Empowering Your Team
 
Patterns in Test Automation: Issues and Solutions
Patterns in Test Automation: Issues and SolutionsPatterns in Test Automation: Issues and Solutions
Patterns in Test Automation: Issues and Solutions
 
ADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s Future
ADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s FutureADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s Future
ADC-BSC EAST 2013 Keynote: Reading the Tea Leaves: Predicting a Project’s Future
 
Coaching and Leading Agility: A Discussion of Agile Tuning
Coaching and Leading Agility: A Discussion of Agile TuningCoaching and Leading Agility: A Discussion of Agile Tuning
Coaching and Leading Agility: A Discussion of Agile Tuning
 
Data Collection and Analysis for Better Requirements: Just the Facts, Ma'am
Data Collection and Analysis for Better Requirements: Just the Facts, Ma'amData Collection and Analysis for Better Requirements: Just the Facts, Ma'am
Data Collection and Analysis for Better Requirements: Just the Facts, Ma'am
 
Disciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the EnterpriseDisciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the Enterprise
 
Problem Solving and Decision Making in Software Development
Problem Solving and Decision Making in Software DevelopmentProblem Solving and Decision Making in Software Development
Problem Solving and Decision Making in Software Development
 
High-flying Cloud Testing Techniques
High-flying Cloud Testing TechniquesHigh-flying Cloud Testing Techniques
High-flying Cloud Testing Techniques
 
A Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingA Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software Testing
 
Measurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersMeasurement and Metrics for Test Managers
Measurement and Metrics for Test Managers
 
Key Test Design Techniques
Key Test Design TechniquesKey Test Design Techniques
Key Test Design Techniques
 
Exploratory Testing Explained
Exploratory Testing ExplainedExploratory Testing Explained
Exploratory Testing Explained
 
Critical Thinking for Software Testers
Critical Thinking for Software TestersCritical Thinking for Software Testers
Critical Thinking for Software Testers
 

Similaire à Right-sized Architecture: Integrity for Emerging Designs

Unlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analyticsUnlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analyticssource{d}
 
IT Architecture and Architects
IT Architecture and ArchitectsIT Architecture and Architects
IT Architecture and ArchitectsAndreDovgal1
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLESIvano Malavolta
 
Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?Jeff Jakubiak
 
Lecture 3 software_engineering
Lecture 3 software_engineeringLecture 3 software_engineering
Lecture 3 software_engineeringmoduledesign
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor routBikram Rout
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor routBikram Rout
 
CPIN 269 Final Documentation
CPIN 269 Final DocumentationCPIN 269 Final Documentation
CPIN 269 Final DocumentationJennifer Cordes
 
2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use it2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use itMark Windholtz
 
Bridging the Gap: from Data Science to Production
Bridging the Gap: from Data Science to ProductionBridging the Gap: from Data Science to Production
Bridging the Gap: from Data Science to ProductionFlorian Wilhelm
 
Lecture 3 software_engineering
Lecture 3 software_engineeringLecture 3 software_engineering
Lecture 3 software_engineeringmoduledesign
 
Maximize Big Data ROI via Best of Breed Patterns and Practices
Maximize Big Data ROI via Best of Breed Patterns and PracticesMaximize Big Data ROI via Best of Breed Patterns and Practices
Maximize Big Data ROI via Best of Breed Patterns and PracticesJeff Bertman
 
Resume_Sunil_Faroz
Resume_Sunil_FarozResume_Sunil_Faroz
Resume_Sunil_FarozSunil Faroz
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineeringHitesh Mohapatra
 
Agile Development – Why requirements matter
Agile Development – Why requirements matterAgile Development – Why requirements matter
Agile Development – Why requirements matterAgile Austria Conference
 
Data Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data StackData Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data StackAnant Corporation
 
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsUnderstanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsCREST @ University of Adelaide
 

Similaire à Right-sized Architecture: Integrity for Emerging Designs (20)

Unlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analyticsUnlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analytics
 
IT Architecture and Architects
IT Architecture and ArchitectsIT Architecture and Architects
IT Architecture and Architects
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES
 
Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?Who needs EA… when we have DevOps?
Who needs EA… when we have DevOps?
 
Lecture 3 software_engineering
Lecture 3 software_engineeringLecture 3 software_engineering
Lecture 3 software_engineering
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
 
CPIN 269 Final Documentation
CPIN 269 Final DocumentationCPIN 269 Final Documentation
CPIN 269 Final Documentation
 
Prasad Degala CV
Prasad Degala CVPrasad Degala CV
Prasad Degala CV
 
2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use it2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use it
 
Bridging the Gap: from Data Science to Production
Bridging the Gap: from Data Science to ProductionBridging the Gap: from Data Science to Production
Bridging the Gap: from Data Science to Production
 
Lecture 3 software_engineering
Lecture 3 software_engineeringLecture 3 software_engineering
Lecture 3 software_engineering
 
Maximize Big Data ROI via Best of Breed Patterns and Practices
Maximize Big Data ROI via Best of Breed Patterns and PracticesMaximize Big Data ROI via Best of Breed Patterns and Practices
Maximize Big Data ROI via Best of Breed Patterns and Practices
 
Resume_Sunil_Faroz
Resume_Sunil_FarozResume_Sunil_Faroz
Resume_Sunil_Faroz
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Agile Development – Why requirements matter
Agile Development – Why requirements matterAgile Development – Why requirements matter
Agile Development – Why requirements matter
 
Data Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data StackData Engineer's Lunch #85: Designing a Modern Data Stack
Data Engineer's Lunch #85: Designing a Modern Data Stack
 
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsUnderstanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
 
resume4
resume4resume4
resume4
 

Plus de TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and RecoveringTechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartTechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyTechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowTechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityTechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyTechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipTechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsTechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GameTechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsTechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationTechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessTechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateTechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessTechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTechWell
 

Plus de TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Dernier

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 

Dernier (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 

Right-sized Architecture: Integrity for Emerging Designs

  • 1.           AW7 Concurrent Session  11/7/2012 2:15 PM                "Right-sized Architecture: Integrity for Emerging Designs"       Presented by: Ken Kubo Northrop Grumman Corporation               Brought to you by:        340 Corporate Way, Suite 300, Orange Park, FL 32073  888‐268‐8770 ∙ 904‐278‐0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. Ken Kubo Northrop Grumman Electronic Systems Ken Kubo is director of software engineering with twenty years of service at Northrop Grumman Electronic Systems, Intelligence, Surveillance, Reconnaissance, and Targeting Systems Division, Azusa campus. His work has focused on the development of satellite ground systems, building the bigger picture from individual bits of data. Information radiators are Ken’s natural focus in agile development. A certified Lean-Agile ScrumMaster and Certified ICAgile Professional, he developed and teaches a Lean-Agile Development overview course for NGES. Ken firmly believes that lean-agile and government acquisition processes are not completely incompatible.  
  • 3. Right-Sized Architecture Integrity for Emerging Designs AW7 - 7 November 2012 – 2:15 PM Ken Kubo, James Yoshimori, Jason Liu Agenda • Software Engineering and Lean-Agile • Right-Sized Architecture Right Sized • Collaborative Design • Extending the Metaphor • Retrospective
  • 4. Acknowledgements • The team gratefully acknowledges the support and interest of the Sensor Exploitation Systems/SAIG business area leadership. 3 But First…A Word From Our Sponsor • Northrop Grumman Corporation (NYSE: NOC) is a leading global security company providing innovative systems, products and solutions in aerospace, electronics, information systems, and technical services to government and commercial customers worldwide The company has worldwide. over 120,000 employees in all 50 states and 25 countries around the world. • Our core competencies are aligned with the current and future needs of our customers and address emerging global security challenges in key areas, such as unmanned systems, cyber-security, C4ISR, and logistics that are critical to the defense of the nation and its allies. • Our Electronic Systems sector is a leader in airborne radar, navigation, y , g , electronic countermeasures, precision weapons, airspace management, space payloads, marine and naval systems, communications, biodefense, and government systems.
  • 5. The Need for Agility Increase in Software in DoD Systems Software Content of Sample Major DoD Weapon Systems 1960 - 2020 18 FCS 16 F-35 Aircraft and Ground ESLOC in Millions 14 12 10 DDX 8 6 Virginia SSN 4 Patriot PAC-3 Aegis System 2 SBIRS F-22 Polaris A3 0 1960 ACS 1970 1980 Sea Systems 1990 Missiles/Space 2000 Ground Systems 2010 2020 Aircraft Sources: CARD Data, SEI, CSIS Analysis 5 The Need for Agility • Defense Science Board Recommends More agile Acquisition Process (March 2009) “A new acquisition p ocess for information ew acqu s t o process o o at o • National Defense Authorization Act should be Year 2010 (H.R.2647) on technology for Fiscal developed—modeled (Became Public Law No: 111-84 October 2009) successful commercial practices, for the rapid • AFEI Task Force 804 Report – June 2010 acquisition and continuous upgrade and Recommended (Among Other Things): improvement of IT capabilities. The process “Institute continuous, iterative, development, should be agile and geared test, and certification processes that drive the to delivering commercial IT state of the art to deliver more capability in meaningful increments of trusted, standard, off-the-shelf building blocks” approximately 18 months or less—increments that are prioritized based on need and technical readiness.” 6
  • 6. Software Engineering (and other oxymorons) • Definitions: – Software: a set of instructions which define and enable the operation of a computer system to perform a desired task y p – Engineering: the discipline and profession of applying technical, scientific, and mathematical knowledge to practical problems • Historical endpoints – 1968 NATO Software Engineering Conference – Software Engineering Body of Knowledge (SWEBOK) (IEEE, 2004) 7 Software Engineering Practices • Systemic view and development lifecycle (requirements analysis, design, development, testing, deployment, maintenance) • Risk analysis • Best practices – Lessons learned – Design patterns • Certification – Certified Software Development Associate/Professional (CSDA/P) – PMI-ACP, ICAgile Certified Agile Professional, role certification etc. 8
  • 7. The Agile Transition Predictive Develop FS A RA HLD DD Develop FS B I&T V&V PDS Develop FS C FS A,B,C Adaptive RA … HLD PDS FS A FS B FS D FS C 9 Agile Execution Analysis A hit t Architecture “Desirement Analysis” with iteration planning and backlog (work queue) grooming. Also used for risk identification/mitigation. Design Development I&T 10 Traditional engineering activities all still occur, but note that they (mostly) happen collaboratively, not sequentially.
  • 8. When Engineering Goes Bad… Traditional predictive practices and “ilities” can commit too early • Lock-down architecture at the beginning of the project (Big Design Up Lock down Front) • Only discuss design with customer prior to development • Design for all possible customer requests, enhancements, and expandability Wide focus can be uninformed 11 When Agile Goes Bad… Agile methodology focus can incur technical debt • Agile methodology impacts – Iteration focus can emphasize coding activity – de-emphasizing others – “Just in time” design can devalue architecture • Technical debt – Neglecting the “big picture” – Decoupling architecture – Losing sight of system design integrity Tight focus can prove short-sighted 12
  • 9. Agile as a Philosophy • Execute with lean agility – Avoid waste – Creating shared knowledge > creating documentation • Leverage social interaction – Use a common “information radiator” • Artifacts and processes are open to view • Artifacts are easily accessible • Single source creates common understanding – Build a social environment for development p • Encourage developers to work closely with one another • Strengthen trust within the community – Establish common understanding of artifacts being constructed Shared understanding drives efficiency 13 Implementing Agile Architecture • Avoid waste – just enough (George Fairbanks) “You‘ll be smarter later” • The Zen of “just enough” – – – – – Avoid big design up front (BDUF) Decide on the vision for your framework Pick your focal points (risk and ignorance) Make design a convenient part of the workflow Emphasize creating knowledge, not creating diagrams • Encourage an open team dynamic so team members can say when they have enough information to code – Prefer the collaboration dynamic to automation tools – Don’t force documentation of design sessions – Be disciplined but not rigid Just Enough Architecture A Little Before Its Time 14
  • 10. Roles and Responsibilities • Initial Design Objective: identify interfaces, processing partitions/components, general system sketch, build the framework for the developers – Architect: maintains big picture, helps identify and define interfaces, keeps focus of the meeting, controls documentation – Product Owner: clarifies objectives and done-ness, fills in unstated (“wasn’t that obvious?”) requirements – Technical Lead(s): identify where development activity has to occur, help define interfaces • Delta Design Objective: sanity check and impact analysis (not the search for the perfect design) – Developer(s): present (proposed) solution, highlight any changes/detailing to architecture – Architect: helps perform impact analysis, verifies design integrity, controls documentation – Technical Lead(s): help perform impact analysis 15 Eyes on the Big Picture • Apply Agile philosophy – Understanding > documentation • How? – Using my Agile eyes … • Inspiration – CRC: class, responsibilities & collaborators (Ward Cunningham) • Informal grouping of index cards (4”x6”) • Simple, easily remembered rules • Visual and collaborative 16
  • 11. Color Map Affinity Diagrams • Use colored index cards and push-pins – advanced developers may use self-adhesive notes • Assign colors to the various types of high level components you may have (more details to follow) • Find sufficient vertical space to place the index cards • Have fun ☺ 17 Example • Project: Support processing, archive, and display of satellite wideband data, substantial legacy code • Team size: 5 members • Platform: SGI and Linux • Language: C/C++ and Java 18
  • 12. Issues with Database to Display Interfaces • Large amounts of data being transferred to displays on network – Intermingled with smaller data packets • Noticing network loading “uncomfortably” increased for single source on a GigE network – Anticipating load to increase by 4 times current loading in a year – Load may increase by more than 18 times in 5 years • Current display has noticeable lag in processing and rendering – Display is just one executable so performance degradation is not unexpected New capabilities have outgrown old paradigm 19 Just Enough Architecture • Risk driven • Focus on data stores and display • Decouple display – Do not directly attach to principal data stores – Get away from single executable for display – Create an infrastructure that supports “drop-in” views • Find a smarter way to manage the data and their transmission over the network • Pay more attention to modularity and scalability qualities Prioritize what to rearchitect/refactor 20
  • 13. Color Assignments • Specific colors do not matter just be consistent • Edge components that perform I/O • Processing components • 4-5 is usually all I need • Persistent component • Coincidentally a stack of colored index cards have 5 colors l • Controller component • User Interface 21 High Level Tracking Architecture Data Ingest Signal Processing g Tracking Event Detection Pipeline Wideband Track Points Display 22 Events Simple approach has issues
  • 14. Current Display Architecture Track Point View Events Data Service View View View Wideband 23 Initial Update to Display Architecture Track Point Track Points Service View View Events Wideband 24 Events Service Wideband Service View View
  • 15. Updated Display Architecture Workstation Blade Track Points Track Points Service View View Events Events Service Wideband Wideband Service View View We use blue painters tape to identify boundaries 25 Updated Display Architecture Workstation Blade Track Point Track Points Service Track Points Controller View View Events Events Service Events Controller View View Wideband 26 Wideband Service Wideband Controller
  • 17. Display Architecture Workstation Blade Track Point Track Points Service Track Points Controller Events Events Service Events Controller Wideband Wideband Service Wide Wideband Controller Exec View App View App View App View App View App Events Setup Track Point Cache Wideband 29 Display Architecture Workstation Blade Track Points Events Track Points Service Event Service Track Points P i t Controller View App Vi A View App Events Controller View App Wideband Controller View App View App Exec Wideband 30 Wideband Service Track Points Config File Wideband Event
  • 18. And Now For Something Different • Story: As a mission operations monitor, I need an “always on” passive display that shows wideband data from the satellite point of view overlaid on map data to provide quick indication that data is flowing and line of sight is good. • Approach: Add a new view application which can be standalone or “boxed” with the others which just provides a wideband data display. 31 Display Architecture Workstation Blade Track Points Events Track Points Service Event Service Track Points P i t Controller View App Vi A View App Events Controller View App Wideband Controller View App View App Exec Wideband 32 View App Wideband Service Track Points Config File Wideband Event
  • 19. Information Radiator 250 16 200 14 12 150 10 Ideal 100 ETC 8 50 Committed Completed 6 4 0 10 9 8 7 6 5 4 3 2 1 0 2 0 10 • Can be physical or virtual • Must be current 33 Information Radiator • Iteration goal/vision • Current iteration task/story status (in play and backlogged), iteration metrics • Schedule (IMS, Release Plan, milestone calendar) • Product vision, roadmap, Release Backlog • Project metrics (velocity, defects found in I&T, bug rates, customer feedback) • High-level architecture/system overview • Process/workflow team rules and standards Process/workflow, • Team member vacation/leave calendar • Recognition/appreciation Build shared knowledge and team direction 9 8 7 6 5 4 3 2 1 0
  • 20. Extending the Metaphor • Team-based metaphors (and better note stock) • Visual design patterns • Component abstraction • UML, SysML, MBE, … tools where value-added • For legacy systems, practical default may be to adopt legacy standards Team evolves “design language” 35 The Working System • “My code works” is only a start; each developer p y must own the performance of the system as a whole • “Responding to Change > Following a Plan” does not mean “Don’t Plan” 36
  • 21. Retrospective • Lean-Agile and good engineering practices are not opposed! • Visual design methodologies can strengthen role of architectural design in Agile (and predictive!) methodologies • Be creative (and Agile) – Focus on goals • Build shared system understanding • Incorporate design into workflow • Facilitate evolution of architecture over project life • Reduce integration rework – Right-sized = Do the minimum – Create a variant or use another technique – find what works better for your team • Always keep looking for ways to do better Keep an Agile eye on design 37 Useful References • Scott L. Bain, Emergent Design: The Evolutionary Nature of Professional Software Development (Addison-Wesley, 2008) • Kent Beck, Ward Cunningham, “A Laboratory for Teaching ObjectOriented Thinking” (OOPSLA 1989) • George Fairbanks, Just Enough Software Architecture: A Risk-Driven Approach (Marshall & Brainerd, 2010) 38
  • 22. Abstract Lean-Agile development methodologies provide increased flexibility to deliver a more rapid return on customer investment in the form of working software. In Agile projects, system architecture ideally emerges over the course of development. However, if teams primarily focus on independent user stories, they risk losing sight of the Big Picture – the product’s vision and the integrity of well-thought-out architecture. This presentation shares techniques to improve the chances that a product’s design will emerge into a cohesive and coherent architecture that will support customer needs now and in the future. Incorporating contextual design principles and simple, visual techniques as part of “A Little Before Its Time (ALBeIT) Design” maintains a focus on architectural integrity You can adopt these integrity. practices into your Agile workflow to maintain a shared team understanding of your product’s vision and the system’s emerging design. 40
  • 23. Author Biography • Ken Kubo is Director of Software Engineering at Northrop Grumman Electronic Systems, Intelligence, Surveillance, Reconnaissance, and Targeting Systems Division, Azusa campus with twenty years of service with NGES. His development work has focused on the development of satellite ground systems, building the bigger picture from individual bits of data Information radiators are thus his natural focus in Agile development He data. development. holds an MS in Management Science from Cal State Fullerton and a BS in Engineering/English from Harvey Mudd College. He is also a certified Lean-Agile Scrum Master and a Certified ICAgile Professional. • James Yoshimori has over 30 years of experience in software development. His work has ranged from small embedded signal processing systems to very large radar imaging and infrared processing systems. He has served in various roles from software engineer to architect to program management. He currently serves as architect, team lead and Agile process maven for the Situational Awareness and Global Exploitation (SAGE) project. He holds an MS in Information and Computer Science and a BS in Civil Engineering from the University of Hawaii Manoa Hawaii, Manoa. • Jason Liu is a Software Engineer currently associated with the SAGE project. He has been with NGES at the Azusa campus since 2009. Jason holds an MS in Computer Science from UCLA and a BS in Information Computer Science from the University of California, Irvine. 41