blob: b138186faf0437ce485947da3f5cd5dfc980c750 [file] [log] [blame]
<html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Role: Architect</title>
<meta content="Role" name="uma.type">
<meta content="architect" name="uma.name">
<meta content="Architect" name="uma.presentationName">
<meta content="RoleSet:openup_basic_roles:OpenUP/Basic Roles" name="uma.category">
<meta content="Role" name="element_type">
<meta content="description" name="filetype">
<meta content="Architect" name="role">
<link type="text/css" href="./../../css/default.css" rel="StyleSheet">
<script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageResource.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageSection.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageSubSection.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageToolbar.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/contentPage.js"></script><script language="JavaScript" type="text/javascript">
var backPath = './../../';
var imgPath = './../../images/';
var nodeInfo=null;
contentPage.preload(imgPath, backPath, nodeInfo, '', false, false, false);
</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table width="99%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td valign="top"><a name="Top"></a>
<div id="page-guid" value="_0X9iEMlgEdmt3adZL5Dmdw"></div>
<table width="99%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap="true" class="pageTitle">Role: Architect</td><td width="99%">
<div id="contentPageToolbar" align="right"></div>
</td><td align="right" class="expandCollapseLink" width="99%"><a href="./../../index.htm" name="mainIndex"></a><script src="./../../scripts/treebrowser.js" type="text/javascript" language="JavaScript"></script></td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0" width="99%">
<tr>
<td class="pageTitleSeparator"><img height="1" title="" alt="" src="./../../images/shim.gif"></td>
</tr>
</table>
<div class="overview">
<table cellpadding="0" cellspacing="0" border="0" width="97%">
<tr>
<td width="50"><img title="" alt="" src="./../../images/role.gif"></td><td>
<table cellpadding="0" cellspacing="0" border="0" class="overviewTable">
<tr>
<td valign="top">This role is responsible for defining the software architecture, which includes making the key technical decisions that constrain the overall design and implementation of the project.</td>
</tr>
<tr>
<td>Role Sets: <a href="./../../openup_basic/rolesets/openup_basic_roles.html" guid="_TZIJ0O8NEdmKSqa_gSYthg">OpenUP/Basic Roles</a></td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Relationships</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr>
<td align="center" colspan="2" class="sectionTableCell"><p><map name="Architect"><area href="./../../openup_basic/tasks/develop_arch.html" shape="rect" coords="210, 10, 242, 42" alt="Develop the Architecture" title="Develop the Architecture"/><area href="./../../openup_basic/tasks/outline_the_architecture.html" shape="rect" coords="312, 10, 344, 42" alt="Outline the Architecture" title="Outline the Architecture"/><area href="./../../openup_basic/workproducts/architecture_notebook-1.html" shape="rect" coords="210, 87, 242, 119" alt="Architecture Notebook" title="Architecture Notebook"/></map><img border="0" src="architect.jpg" alt="Architect" title="Architect" usemap="#Architect"/></p></td>
</tr>
<tr valign="top">
<th scope="row" class="sectionTableHeading">Additionally Performs</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../openup_basic/tasks/define_vision.html" guid="_0fOAoMlgEdmt3adZL5Dmdw">Define Vision</a>
</li>
<li>
<a href="./../../openup_basic/tasks/find_and_outline_requirements.html" guid="_P9cMUPV_EdmdHa9MmVPgqQ">Find and Outline Requirements</a>
</li>
<li>
<a href="./../../openup_basic/tasks/detail_requirements.html" guid="_0e1mIMlgEdmt3adZL5Dmdw">Detail Requirements</a>
</li>
<li>
<a href="./../../openup_basic/tasks/design_solution.html" guid="_0fshwMlgEdmt3adZL5Dmdw">Design the Solution</a>
</li>
<li>
<a href="./../../openup_basic/tasks/plan_the_project.html" guid="_0lC70MlgEdmt3adZL5Dmdw">Plan Project</a>
</li>
<li>
<a href="./../../openup_basic/tasks/assess_results.html" guid="_0l53cMlgEdmt3adZL5Dmdw">Assess Results</a>
</li>
<li>
<a href="./../../openup_basic/tasks/manage_iteration.html" guid="_8S2aICbYEdqh1LYUOGRh2A">Manage Iteration</a>
</li>
<li>
<a href="./../../openup_basic/tasks/plan_iteration.html" guid="_0keUEMlgEdmt3adZL5Dmdw">Plan Iteration</a>
</li>
</ul>
</td>
</tr>
<tr valign="top">
<th scope="row" class="sectionTableHeading">Modifies</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../openup_basic/workproducts/architecture_notebook-1.html" guid="_0XAf0MlgEdmt3adZL5Dmdw">Architecture Notebook</a>
</li>
<li>
<a href="./../../openup_basic/workproducts/design-2.html" guid="_0WuL8slgEdmt3adZL5Dmdw">Design</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Main Description</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<td class="sectionTableCell"><p>
This role leads or coordinates the technical design of the system and has overall responsibility for facilitating the
major technical decisions expressed as software architecture. This typically includes identifying and documenting the
architecturally significant aspects of the system as views that describe requirements, design, implementation, and
deployment.
</p>
<p>
This role is also responsible for providing the rationale for these decisions, balancing the concerns of the various
stakeholders, reducing technical risks, and ensuring that decisions are effectively communicated, validated, and
followed.
</p>
<p>
This role is closely involved in organizing the team around the architecture by working closely with the&nbsp;<a class="elementLink" href="./../../openup_basic/roles/project_manager.html" guid="_0a0o0MlgEdmt3adZL5Dmdw">Project Manager</a>&nbsp;in staffing and planning the project.
</p></td>
</tr>
</table>
</div>
<div class="sectionHeading">Staffing</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<th scope="row" class="sectionTableHeading">Skills</th><td class="sectionTableCell"><p>
Architects must be well-rounded people with maturity, vision, and a depth of experience that allows for grasping issues
quickly and making educated, critical judgments in the absence of complete information. Specifically, the person must
possess this combination of qualifications:
</p>
<ul>
<li>
<b>Experience</b> <strong>in both problem and software engineering domains</strong>, with evidence of a thorough
understanding of the requirements to solve the problem and active participation in software development. If there
is a team, this experience can be represented by different team members, but at least one person must be able to
provide the overall vision for the project.
</li>
<li>
<b>Leadership ability</b> to motivate and maintain momentum for the technical effort across the various teams and
to make critical decisions under pressure, plus make those decisions stick. To be effective, this role must have
the authority to make technical decisions.
</li>
<li>
<b>Excellent communication</b> <strong>skills</strong> to earn trust, persuade, motivate, and mentor. This role
cannot lead by decree, but only by the consent of the rest of the project team. To be effective, this&nbsp;person
must earn the respect of the team members, the <a class="elementLink" href="./../../openup_basic/roles/project_manager.html" guid="_0a0o0MlgEdmt3adZL5Dmdw">Project Manager</a>, the customer, and the user community, as well as the management
team.
</li>
<li>
<b>Goal-oriented and proactive</b> <strong>orientation</strong> with a relentless focus on results.&nbsp;This
person is the technical driving force behind the project, not a visionary or dreamer. The career of a successful
architect is a long series of sub-optimal decisions made in uncertainty and under pressure. Only those who can
focus on doing what needs to be done will be successful.
</li>
</ul>
<p>
From an expertise standpoint, this role also needs to show both design and implementation abilities. However, from the
design perspective, the effective architect typically exhibits these traits:
</p>
<ul>
<li>
Tends to be a generalist, rather than a specialist, who knows many technologies at a high level rather than a few
technologies at the detail level
</li>
<li>
Makes the broader technical decisions, thereby demonstrating broad knowledge and experience, as well as
communication and leadership skills
</li>
</ul></td>
</tr>
<tr valign="top">
<th scope="row" class="sectionTableHeading">Assignment Approaches</th><td class="sectionTableCell"><p>
This person in this role should be engaged in the project from start to finish.
</p>
<p>
For smaller projects, a single person may act as both Architect and <a class="elementLink" href="./../../openup_basic/roles/project_manager.html" guid="_0a0o0MlgEdmt3adZL5Dmdw">Project Manager</a>. However, it is better to have these roles performed by different people to ensure that the pressures one
role doesn't cause neglect of the other role.&nbsp;The Architect and Project Manager&nbsp;must work together closely.
</p></td>
</tr>
</table>
</div>
<div class="sectionHeading">Key Considerations</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<td class="sectionTableCell">This role&nbsp;places emphasis on the core principle <a class="elementLink" href="./../../openup_basic/guidances/concepts/core_principle_focus.html" guid="_9gocwMvoEdqukPpotm3DYg">Focus on the architecture early to minimize risks and organize development</a>.</td>
</tr>
</table>
</div>
<div class="sectionHeading">More Information</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<th scope="row" class="sectionTableHeading">Concepts</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../openup_basic/guidances/concepts/core_principle_focus.html" guid="_9gocwMvoEdqukPpotm3DYg">Focus on the architecture early to minimize risks and organize development</a>
</li>
<li>
<a href="./../../openup_basic/guidances/concepts/software_architecture.html" guid="__O7tAMVvEduLYZUGfgZrkQ">Software Architecture</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<table cellpadding="0" cellspacing="0" border="0" class="copyright">
<tr>
<td class="copyright"><p>
This program and the accompanying materials are made available under the<br />
<a href="http://www.eclipse.org/org/documents/epl-v10.php" target="_blank">Eclipse Public License v1.0</a> which
accompanies this distribution.
</p><p/><p>
View copyright information here:&nbsp;<a class="elementLink" href="./../../openup_basic/guidances/supportingmaterials/openup_copyright.html" guid="_UaGfECcTEduSX6N2jUafGA">OpenUP Copyright</a>.
</p></td>
</tr>
</table>
</td>
</tr>
</table>
<!-- epfwiki iframe start -->
<script language="JavaScript">
if (location.protocol == "http:") {
aURL = "http://" + location.host + "/toolbar/show?url=" + document.location.href;
document.write(" <div id=\"toolbar\">\n");
document.write(" <iframe width=\"250\" height=\"700\" frameborder=\"0\" src=\"" + aURL + "\" frameborder=\"0\" scrolling=\"auto\" ALLOWTRANSPARENCY=\"TRUE\"></iframe>\n");
document.writeln(" </div>");
}
</script>
<!-- epfwiki iframe end --></body>
<script language="JavaScript" type="text/javascript">
contentPage.onload();
</script>
</html>