Role: Application Architect

advertisement
Application Architect
Information Methodologies, Inc.
Application Architect
Given the complexity of Stanford’s applications, and the broad set of technologies support and
define the application environment, we recommend that an Application Architect be
designated for each major Stanford application. At best, the role of application architect is
provided unevenly and with inconsistent standards across Stanford applications and projects.
The application architect will be responsible for the detailed architectural and environmental
documentation of each application environment. The application architect will coordinate
with the TSS enterprise architect to ensure that a common and broad-based understanding of
the architectural components exists and that ITSS standards are employed to describe them.
Lack of an application architect has slowed crisis-level response to application software events,
limited early troubleshooting and decision-making capabilities, and generally hindered problem
analysis. It has also resulted in architectural misunderstandings between application technical
staff and TSS staff.
Applications:








Persona
Axess (Shared with Persona?)
Delphi
ReportMart
Hyperion
Data Warehouse (Shared with ReportMart?)
Registry
Others?
Workload:
Varies by size/complexity of application – Rough guideline:
 During development & implementation & upgrade projects: Full-time role
 During operations & maintenance: < ¼ time role
Staffing:
Ideally an existing technical team member used to working with some or all of the
architectural components, e.g., technical manager, or lead developer. For new projects, this
role should be identified and filled early.
Training:
Application architects should be familiarized with the various types of architectures they are
expected to document and maintain (technical, data, application, network, etc.). They should
also be familiarized with best practices for completing proofs of concept, defining and testing
technical environments, etc. Support and standards should come from the TSS enterprise
architect, especially as a QA and validation exercise.
3/6/2016 9:41:00 AM
imi Proprietary and Confidential
Page 1 of 3
Application Architect
Information Methodologies, Inc.
Role: Application Architect
Senior technologist, with a fundamental understanding of the application business processes,
responsible for planning, documenting, defining and evaluating technical integration
information for a major application and across application components. Will assist with
definition and will document technology platforms and dependencies for multiple environments
(development, test, production, etc.).
Responsibilities include:
















Understand, document, and monitor application layering dependencies (User-Interface,
Deployment, Public Interface, Application Domain, Application Infrastructure, Technical
Frameworks, and Platforms) and application component dependencies.
Understand and monitor impacts to and dependencies between existing technical and
network environments.
Define and direct proof-of-concept tasks for proposed architectural interactions.
Monitor software product, supporting tool, and platform licensing taxonomies for
compliance and readiness.
Define, plan, propose, and select enabling technologies to support packaged or custom
applications.
Prepare approach papers listing technology options, risks, and impacts of various
architectural options.
Define data dependencies within, between, and among various applications and application
components.
Define and direct coordination among database instances between, and across, various
applications and application components.
Document and maintain technical architecture, network architecture, application
architecture, and technical application architecture diagrams and descriptions, including
releases and versions of software.
Document and maintain context diagrams, functional architectures, data architecture, and
messaging architecture diagrams and descriptions.
Ensure that architectural components optimally address business requirements.
Lead / Participate in technical and infrastructure requirements engineering initiatives.
Coordinate with other architects, project managers, and team leads to ensure the
development matches the system model.
Coordinate activities with the TSS enterprise architect to ensure broad understanding of
architectural approaches and standards across ITSS.
Define architecture risk mitigation plans.
Monitor emerging technologies and technical releases from product vendors to evaluate
applicability toward current efforts.
Experience: Three or more years of experience as an application developer or application
technical designer, plus two or more years of experience managing technical teams as a
development manager, project manager, or team lead plus one to two years of experience as a
junior architect, software architect, technical architect or data architect plus a deep
knowledge and understanding of information technology approaches, applications, and
architectures, tools, and methodologies.
3/6/2016 9:41:00 AM
imi Proprietary and Confidential
Page 2 of 3
Application Architect
Information Methodologies, Inc.
Recommended Application Architect Deliverables
Application Context Diagram: Depicts and describes the application’s interaction with other
systems and directionally describes the data or messages that flow into or away from the
application.
Functional (Business) Architecture: Depicts and describes logical components of the
application and describes the basic domain functionality managed by that component.
Technical Architecture: Depicts and describes the physical layout of the application across
hardware platforms including servers and clients with embedded application architectures.
Network Architecture: Depicts and describes the physical layout of the application across
hardware and network devices. Protocols and client access methods are depicted.
Application Architecture: Depicts and describes logical layering of application software across
all physical or logical platforms.
Data Architecture: Depicts and describes data movement between application components
and between external entities and application components. Describes messaging formats and
timing of data interactions.
Instance Map: Depicts the use and purpose of application database instances over time.
3/6/2016 9:41:00 AM
imi Proprietary and Confidential
Page 3 of 3
Download