- •1 Этапы разработки по.
- •2 Проблемы разработки по
- •3 Технологии организации разработки по. 4 и 5.
- •6. Модельные техники.
- •8. Как моделируются данные и их движение?
- •9. Откуда берутся спецификации.
- •10. Откуда берутся требования.
- •11. Как управлять проектом.
- •Сопутствующие процессы при управлении проектом
- •Планирование, отслеживание и контроль за проектом
- •12. Какие (драйвера) движущие силы проекта.
- •13. Как можно разделить различные подходы к управлению проектами. ГосТы
- •14. Что такое требования и как с ними работать.
- •Проверка требований
- •Анализ требований
- •Документирование требований
- •15. Роли и обязанности участников проекта. Менеджер проекта
- •16. Риски проекта.
- •18. Use case, отличие от историй пользователя.
- •20/19. Диаграммы uml
- •21. Чего не хватает в umi.
- •Скорость загрузки
- •Управление файлами
- •22. Как структурировать программу?
- •23. Что такое компонента и компонентная разработка?
- •Языки программирования
- •Отличия от ооп
- •25. Основные принципы ооп.
- •26. Чем класс отличается от объекта и от интерфейса.
- •Классы и объекты, понятие экземпляра класса, понятие членов класса
- •Интерфейс и реализация, наследование реализации
- •27. Что такое программирование по контракту и как выразить контракт класса.
- •Описание
- •28. Unit test. Автоматическое тестирование.
- •29. Паттерны проектирования их применение.
- •30. Архитектура, типы.
- •31. Сервис ориентированная архитектура web сервисы и как тут работает xml.
- •Достоинства
- •Недостатки
- •32. Примеры основных диаграмм uml.
- •33. Чем отличается требования спецификации тех проект и проект разработки по?
- •34. Возможно ли тестирование на разных этапах проекта на ранних или поздних чем оно отличается? см 1
21. Чего не хватает в umi.
коммерческая система управления сайтом (CMS), написанная на языке программирования PHP. Создаётся с 2004 года командой российских разработчиков «Юмисофт». В массовую продажу поступила в 2007 году. Существует в бесплатной и коммерческой версиях.
Главная идеологическая особенность UMI.CMS — user-friendly интерфейс [2]. Например, поддерживается изменение структуры сайта с использованием drag & drop. В последних версиях используется способ редактирования содержания страницы и компонентов страниц на самом сайте без перехода в административный интерфейс и диалоговых окон.
Быстродействие
Давайте откроем рекламный проспект UMI.CMS и пробежимся по нему глазами. У вас его, наверное, нет, но я постараюсь по памяти сформулировать один из пунктов: “UMI.CMS выдерживает несколько миллионов посетителей в день”.
Предположим, что если день - 12 часов, а “несколько миллионов” - минимум 2 миллиона (для сравнения - у ЖЖ примерно 2-4 млн). То есть в час у нас примерно 166 667 посетителей или 2778 посетителей в минуту. Выглядит круто, правда? На практике это не так: получив в течение 1 минуты 2000 запросов сайт UMI.CMS умирает.
Скорость загрузки
Что касается удобства использования, то проблемы начинаются сразу как только пользователь входит в админку. Интерфейс в UMI.CMS тяжеловесный, как и в любой системе подобного рода. При загрузке на сервер отправляется аж 99 (!) HTTP-запросов и время порой больше 30 секунд.
При входе пользователь видит перед собой дерево сайта, которое подгружается по частям аяксом. Если у вас (не дай Бог) в каком-нибудь разделе накопилось свыше сотни подразделов, то подгрузка и отображение списка займет секунд 10-20.
Управление файлами
Пожалуй, особого внимания заслуживает просто чудовищный способ работы с файлами (точнее, способы). У вас есть минимум 3 способа добавить файл в текст и столько же их загрузить на сервер. Для эстетов есть файловый менеджер (модуль Файловая система), который позволяет загружать файлы на сервер поодиночке. При этом файлы можно рассовывать в папки, но просматривать их превью или скачивать их нельзя.
Программирование в UMI.CMS
Каждый модуль в UMI.CMS - класс. Правда, этот класс разбит на несколько файлов (как - не спрашивайте) и может содержать только public методы ;). Последний факт в корне меняет стандартные представления об объектно-ориентированном программировании, заставляя придумывать все большие ухищрения для работы. Отладка функций, которые вы добавляете в класс крайне затруднена: сообщения об ошибках не выводятся (а если и выводятся, то в совсем уж критических случаях). Жуть!
22. Как структурировать программу?
Структу́рное программи́рование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом. В соответствии с данной методологией
Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:
последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы;
ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;
цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается.
Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде т. н. подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.
Разработка программы ведётся пошагово, методом «сверху вниз».