Software Architect Tomek Marsza Wsinf 2016 Who is

  • Slides: 13
Download presentation
Software Architect Tomek Marszał Wsinf 2016

Software Architect Tomek Marszał Wsinf 2016

Who is Software Architect A software architect is a software expert who makes high-level

Who is Software Architect A software architect is a software expert who makes high-level design choices and dictates technical standards, including software coding standards, tools, and platforms. The leading expert is referred to as the chief architect

History The software architect concept began to take hold whenobject-oriented programming (OOP) was coming

History The software architect concept began to take hold whenobject-oriented programming (OOP) was coming into more widespread use (in the late 1990 s and early years of the 21 st century). OOP allowed ever -larger and more complex applications to be built, which in turn required increased highlevel application and system oversight.

Responsibilities The main responsibilities of a software architect include: Limit choices available during development

Responsibilities The main responsibilities of a software architect include: Limit choices available during development by choosing a standard way of pursuing application development creating, defining, or choosing an application framework for the application

Responsibilities Recognize potential reuse in the organization or in the application by observing and

Responsibilities Recognize potential reuse in the organization or in the application by observing and understanding the broader system environment creating the component design having knowledge of other applications in the organization

Responsibilities Subdivide a complex application, during the design phase, into smaller, more manageable pieces

Responsibilities Subdivide a complex application, during the design phase, into smaller, more manageable pieces Grasp the functions of each component within the application Understand the interactions and dependencies among components Communicate these concepts to developers

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or standardized model and symbol sets such as Unified Modeling Language(UML) and OOP to represent systems or develop artifacts.

Duties The role of software architect generally has certain common traits: Architects makes high-level

Duties The role of software architect generally has certain common traits: Architects makes high-level design choices much more often than low-level choices. In addition, the architect may sometimes dictate technical standards, including coding standards, tools, or platforms. Software architects may also be engaged in the design of the architecture of the hardware environment, or may focus entirely on the design methodology of the code.

Duties The role of software architect generally has certain common traits: Architects makes high-level

Duties The role of software architect generally has certain common traits: Architects makes high-level design choices much more often than low-level choices. In addition, the architect may sometimes dictate technical standards, including coding standards, tools, or platforms. Software architects may also be engaged in the design of the architecture of the hardware environment, or may focus entirely on the design methodology of the code.

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or standardized model and symbol sets such as Unified Modeling Language(UML) and OOP to represent systems or develop artifacts.

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or standardized model and symbol sets such as Unified Modeling Language(UML) and OOP to represent systems or develop artifacts.

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or

Responsibilities In order to perform these responsibilities effectively, software architects often use tools or standardized model and symbol sets such as Unified Modeling Language(UML) and OOP to represent systems or develop artifacts.

Responsibilities Subdivide a complex application, during the design phase, into smaller, more manageable pieces

Responsibilities Subdivide a complex application, during the design phase, into smaller, more manageable pieces Grasp the functions of each component within the application Understand the interactions and dependencies among components Communicate these concepts to developers