|
|
|
Tutorial
A |
Building Solid Ground System Architectures: Architecture Principles and UML Views |
Length: |
Full
Day |
Fee: |
$300 |
Time: |
8
A.M. - 4:30 P.M. |
Overview: |
Defining
an effective software architecture is essential to the successful
development of distributed ground system software. The definition
of an architecture that meets the project's needs and the
communication of this complex set of information can be a
daunting task for even the most experienced software architects.
This
tutorial provides an overview of software architecture views
and principles. Initially the tutorial describes the development
of component and deployment views based on IEEE 1471 and
UML. Next, software architecture principles such as abstraction,
separation of concerns, coupling and cohesion, and modularity
are discussed in the context of software architecture. For
each principle, the tradeoffs and issues are illustrated
using the previously described architectural views.
The techniques
and principles described in this tutorial are based on a significant
experience base architecting large software systems including
several satellite ground systems. As a result, the approaches,
principles, and examples described here form a practical
basis for software architects working on such systems. The
tutorial includes hands-on exercises to give students a chance
to apply the techniques for themselves. |
Instructor: |
Jeff Garland, CrystalClear Software, Inc. |
Biography: |
Jeff Garland has worked on many large-scale software projects over the past
20+ years, in many different domains, including telephone switching,
industrial process control, satellite ground control, and financial systems.
He has served as both the lead architect and a member of the architecture team
on several of these projects. Mr. Garland holds a Master's degree in Computer
Science from Arizona State University and a Bachelor of Science in Systems
Engineering from the University of Arizona. He is currently President and
Principal Consultant for CrystalClear Software, a consulting firm that
specializes in the development of software architectures for large-scale
systems. |
Who
Should Attend: |
Attendee pre-requisite:
Basic understanding of UML. Experience as a software developer. Interest in
software architecture. Experience with large software systems beneficial. |
|
|
|