Книга: Основы объектно-ориентированного программирования
Соотношение спецификации и проектирования
Соотношение спецификации и проектирования
Предыдущее наблюдение помогает уточнить один из центральных вопросов, возникающих при изучении ПО: различие между начальным этапом разработки ПО - его спецификацией, называемым также анализом, - и более поздними стадиями такими, как проектирование и реализация.
В литературе по разработке программ обычно объясняется, что это различие между "определением задачи" и "построением ее решения". Будучи в принципе правильным, такое объяснение не всегда применимо на практике и иногда бывает трудно понять, где заканчивается спецификация и начинается проектирование. Даже в среде исследователей люди запросто критикуют друг друга в связи с этой темой: "вы рекламируете язык x как язык спецификаций, но на самом деле он предназначен для проектирования". Наивысшим оскорблением считается обвинение некоторой системы обозначений в обслуживании реализации (подробнее об этом в одной из следующих лекций).
Приведенное выше определение дает более точный критерий: пересечь Рубикон между спецификацией и проектированием - это перейти от неявного к явному, другими словами:
Определение: переход от анализа (спецификации) к проектированию
Перейти от спецификации к проектированию - это идентифицировать каждую абстракцию с декартовым произведением ее простых запросов.
Последующий переход - от проектирования к реализации - это просто движение от одного явного вида к другому: форма при проектировании более абстрактна и ближе к математическим понятиям, а при реализации более конкретна и ближе к компьютеру, но обе они являются явными. Этот переход менее драматичен, чем предыдущий - действительно, при дальнейшем чтении станет понятно, что объектная технология почти стирает различие между проектированием и реализацией. При хорошей системе ОО-нотации нашими компьютерами непосредственно выполняется (с помощью компиляторов) то, что в не ОО-мире часто рассматривалось бы как проекты.
- Соотношение классов и записей
- Общеязыковые спецификации
- Ошибки проектирования базы данных
- 7.4. Модель системы автоматизированного проектирования защиты информации
- В функциональной спецификации нет ни грамма функциональности
- Модификаторы спецификации преобразования, используемые в функции printf( )
- Этапы проектирования базы данных
- 2.5.1. Основные положения метода структурного проектирования
- Ключевые слова, используемые для спецификации типа данных
- Общее соотношение категорий в ассортименте
- Глава 1 МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ ПРОЕКТИРОВАНИЯ ПРОГРАММ
- Официальное закрытие этапа Концептуального проектирования