Archive for the 'A Practical Guide using UML' Category

Many organizational issues can have a significant impact on the ability of the software architect to function effectively. As much as possible, the architect should focus on the definition of an effective architecture that meets the requirements. Distractions caused by a poorly defined or misaligned development organization can detract from this focus. A few of [...]

In order to function effectively, the software architect must not become detached from the other technical leadership. This includes the chief software engineer, the software systems engineering lead, and the development team leads. The approach that works best for communication of both the top level and subsystem level of the software architecture is to [...]

A software architect should have most or all of the following skills, background, and attributes.
Extensive software design and development experience is required to create an effective overall design, and the software architect must understand and explain how this will map to the implementation. In order to do this, the software architect should have significant development [...]

The following roles are usually found in large-scale software development. Each role has an associated relationship with the software architect. Note that no organization will necessarily have all these roles, nor will each role be assigned to separate individuals. Often in smaller organizations, two or more of the roles can be combined and assigned [...]

This chapter will provide an understanding of the role of the software architect and how this role relates to other key roles on the development team. In addition, the skills required for the software architect, key approaches for leading the software architecture team, and traps and pitfalls associated with the software architect are discussed. [...]

The following summarizes the architectural viewpoints described in later  chapters. These viewpoints are built by applying the various UML diagram  types to specific architecture development tasks. Each viewpoint has specific  modeling goals and stakeholders. Additionally, we have used the IEEE 1471  framework to describe the rationale for each of the viewpoints. These descriptions  should assist [...]

It has become standard practice in the software industry to engage in a process of software analysis and design along with coding. This design facilitates  understanding the structure of the developed software. Architecting simply  recognizes the need to focus on the bigger picture of the software design and  to provide guidance to the development team [...]

The many web pages and books on software architecture have provided  dozens, if not hundreds, of definitions of software architecture and related  terms. Given this plethora of definitions, we must settle on a set of key  definitions for the purposes of communicating software architecture concepts. What follows are some key definitions required for a discussion [...]