Перейти к основному содержимому

Software Architecture


AITU
Запись на курс закрыта

About This Course

Students will explore with various notations and formalisms as they learn the relationship between these structures and key quality attributes and their impact on system implementation. The use of various notations is explored, with a focus on UML, and the role of architecture and detailed design specifications are considered from the perspective of risk management.
Course objectives include:
• Use risk management processes, methods and techniques as the basis for deciding what to express and how best to express it, as well as what does not need documenting.
• Draft detailed design documents consistent with a specified architecture for moderate to small systems using UML design notations.
• To design module interfaces to support concurrent design and development by teams.
• Develop draft architecture documents for moderate to small systems employing one or more views.
• Demonstrate understanding design intent required to implement modules, subsystems and systems.
• Create views to capture and communicate key aspects of a design element for a specific and targeted audience
• Use architectural styles and design patterns.
• Describe how software architecture and design can be used during software maintenance as well as describing major issues involved.
• Discuss architecture styles and the relationship each has with various standard quality attributes and design patterns, as well as the advantages and disadvantages of their use.
After completing this course, students will be able to demonstrate the following knowledge, assessed through class discussions and assessments:
• The importance of taking a risk-based approach to software development.
• Why doing so aids an organization in determining how much architecture is enough for a given project.
• Given a requirements document, students will be able to identify risks and discuss how to mitigate them.
• How software architecture can be used to ensure quality goals will be met.
• Be able to discuss the purpose for creating different views of software architecture and be able to contribute to discussions in determining which are appropriate for a given project.
• Knowledgeably discuss architectural choices, the short-term and long-term consequences associated with each choice and the rationale for selecting one choice over the others.
• What encapsulation means and why it is important to preserve architectural integrity
Students will also be able to identify the flow of a system solution, from requirements to quality attributes and architectural structures to design patterns and detailed design, to implementation, testing, integration, sustainment and future reengineering as required to extend a system’s life.

This is paragraph 2 of the long course description. Add more paragraphs as needed. Make sure to enclose them in paragraph tags.

Requirements

Add information about the skills and knowledge students need to take this course.

Course Staff

Course Staff Image #1

Assel Smaiyl

Assel Smaiyl is a Director of the Department of Computer Engineering at Astana IT University, Nur-Sultan, Kazakhstan. She defended her PhD dissertation in Computer Science on the topic “Models and methods of intellectual information and training system”. She has teaching experience of 10 years. She has presented several research papers in international journals. Her scientific interest is in the field of data science and smart technologies in education

Frequently Asked Questions

What web browser should I use?

The Open edX platform works best with current versions of Chrome, Edge, Firefox, Internet Explorer, or Safari.

How to work with platform

You can see video tutorial here.