Разработка на софтуер Flashcards
Тест 1
Софтуерна архитектура
Съвкупност от важни решения за организацията на програмните системи
Монолитна архитектура
Всички модули съществуват като едно приложение
Всички приложения са зависими едно от друго
Слоеве в трислойната архитектура
- презентационен
- слой за услуги/бизнес
- слой за данни
Различни програмни езици и средства
Сървис-ориентирана архитектура
Програмните компоненти предоставят услуги на други програмни компоненти чрез някакъв комуникационен протокол
Микросървис-ориентирана архитектура
Приложенията се структурират около колекция от малки автономни сървъри
Трислойна архитектура
Слой за данни
DAL
Достъп до данните и съхранение в хранилището
Трислойна архитектура
Слой за услуги
Бизнес/логически слой
Защитава данните от директен достъп
Осъществява връзката м/у другите 2 слоя
Трислойна архитектура
Слой за потребителски интерфейс
UI layer, презентационен
Приема информация от потребителя и връща някакъв резултат
MVC модел
- Model
- View
- Controller
MVC
Model
Управлява данните и логиката на приложението
MVC
View
Слой за представяне
Презентационен слой
MVC
Controller
Преобразува входните данни в команди и ги изпраща към изгледа или модела
MVVM
Model - ViewModel - View
Изгледът не зависи от конкретна платформа на модела
Улеснява отделянето на GUI разработката
MVVM
Model
Отговаря за абстракцията на източниците на данни
MVVM
View
Информира ViewModel за действието на потребителя
Не съдържа никаква логика
MVVM
ViewModel
Връзка м/у модела и изгледа
Излага потоците от данни, които са подходящи за View
Софтуерен продукт
- програми
- данни
- документация
Софтуерен процес
Начало - възникване на идеята
Край - преустановяване на използването на продукта
Модели на софтуерни процеси
- линейни последователни
- непоследователни
- гъвкави (Agile)
Софтуерни процеси
Гъвкав модел
Agile
Проектирането и разработката се препокриват
Непредсказуемост
Адаптивност
Инкрементна стратегия за разработка