Компонентное программирование



Компонентное программирование – представляет собой развитие объектно-ориентированной технологии. В отличие от ООП введен следующий уровень абстракции – классы объединяются в компоненты.

Компонент:

· программный код в виде самостоятельного модуля;

· может быть использован в неизменном виде;

· может допускать настройку;

· обладает поведением (функциональностью).

Основной принцип компонентного программирования: сборка приложения из готовых компонент, в общем случае написанных на разных языках.

Компонент изолирован от внешнего мира своим интерфейсом – набором методов (их сигнатурами).

Компонентная программа – набор независимых компонент, связанных друг с другом посредством интерфейсов.

Выводы

- Программирование (Computer science) – молодая, активно развивающаяся область, за полвека своего развития преодолевшая огромный путь. Будучи как искусством, так и наукой, в наше время термин программирование приобрел качественно новую окраску, став одной из отраслей бизнеса.

- Под IT-проектами можно понимать любые проекты в области информационных технологий, в частности те, целью которых является разработка программного обеспечения - программные проекты.

- Программное обеспечение (Software) – набор компьютерных программ, процедур и связанной с ними документации и данных. Таким образом, программное обеспечение – это не просто программа. Это еще и документация и руководство пользователя. Вместо термина программное обеспечение часто используют термин программный продукт.

- Для того чтобы бизнес, связанный с разработкой ПО, был успешным, необходимо выпускать качественное ПО, интересное потенциальным пользователям, делать это в срок, укладываться в имеющийся бюджет. К сожалению, доля проваленных проектов по-прежнему катастрофически высока.

- Основными причинами неудачи IT-проектов являются:

Причина 1. Нереалистичные временные рамки.

Причина 2. Недостаток количества исполнителей.

Причина 3. Размытые границы проекта.

Причина 4. Недостаток средств.

Причина 5. Нехватка квалифицированных кадров.

- Технологии программирования – путь к успеху в разработке ПО. Использование различных технологий позволяет преодолевать сложность решаемых задач и, соответственно, сложность создания качественного ПО. Среди основных технологий можно выделить следующие: структурное программирование, модульное программирование, объектно-ориентированное программирование, компонентное программирование.

 

Лекция 2 - Элементы программной инженерии

Основные понятия программной инженерии

Инженеры и программные инженеры

Инженер (франц. ingénieur, от лат. ingenium – способность, изобретательность), специалист с высшим техническим образованием. Первоначально – название лиц, управлявших военными машинами. Итак, инженер – дипломированный специалист, имеющий высшее техническое образование. Нетрудно догадаться, что программный инженер – инженер в области разработки программного обеспечения.

Программная инженерия как инженерная дисциплина

Программная инженерия (инженерия программного обеспечения, software engineering) – инженерная дисциплина, связанная с теорией, методами и средствами профессиональной разработки ПО.

Как было выяснено ранее, программное обеспечение представляет собой собственно программы плюс вся сопутствующая документация. На протяжении последних десятилетий стоимость разработки ПО неуклонно растет, в результате чего эта стоимость становится весьма высокой. Программная инженерия способствует решению этой проблемы.

Область действия программной инженерии

Программная инженерия имеет дело со всеми аспектами создания ПО.

В западной литературе часто используются термины: software engineering, system engineering и computer science. В чем разница?

Computer science имеет дело с теорией и основами разработки ПО.

System engineering связано с вопросами разработки систем с участием компьютеров (архитектура, дизайн, интеграция, ПО...).

Software engineering – часть System engineering, имеющая дело с разработкой ПО.

Итак, computer science предоставляет собой безусловно важный, но преимущественно теоретический базис. На практике его недостаточно. К числу открытых можно отнести следующие проблемы:

- Поиск финансирования.

- Работа с заказчиком.

- Подбор персонала.

- Этические вопросы. Микроклимат в коллективе. Команда.

- Обеспечение качества программного продукта.

- ...

Всем этим занимается программная инженерия и программные инженеры.

Цели программных инженеров

Целями программных инженеров являются:

- Создать качественный продукт.

- Уложиться в бюджет.

- Уложиться в сроки.

Разберем по очереди эти вопросы.

Качественный программный продукт:

- Должен предоставлять требуемую функциональность.

Если вы создали продукт, который не нужен конечным пользователям, вы не сможете его продать и не только не получите прибыль, но и не окупите затраты на его создание.

- Должен быть удобным в сопровождении.

ПО должно допускать развитие в связи с изменением потребностей пользователей. Если Вы начинаете разрабатывать программный продукт, обязательно учитывайте, что мир не стоит на месте. Допустим, вы автоматизируете крупное предприятие, ориентируясь на его конкретную структуру. Подумайте над таким вопросом: какие изменения и как вы будете вносить в программную систему в том случае, если на предприятии добавится пара новых подразделений? Ваш проект должен быть достаточно гибким, чтобы поддерживать его расширение без ущерба для реализованной ранее части. Поймите, что клиент будет готов оплатить модификацию, но не создание программы с нуля.

- Должен быть надежным.

Возможные неполадки в работе не должны нанести существенный, тем более невосполнимый, ущерб. Если ваша программа рассчитывает орбиту полета спутника, вам придется потратить уйму времени на то, чтобы убедиться, что она работает правильно.

- Должен быть эффективным.

ПО должно эффективно использовать имеющиеся ресурсы. Вряд ли клиент согласится полностью поменять свою аппаратную базу без должного обоснования. Вот в этот момент и придется задуматься об алгоритмической оптимизации, оптимизации кода…

- Должен быть удобным в использовании.

ПО должно приниматься пользователями «на ура», работа должна быть удобной и естественной. Помните, что персонал, которому предстоит работать с программой, скорее всего не придет в восторг от ее появления. Постарайтесь сделать процесс обучения как можно более простым.

Создание ПО должно укладываться в бюджет:

Если вы не укладываетесь в бюджет, вам придется просить дополнительные деньги на разработку. Иногда вам пойдут на встречу, иногда нет. В любом случае, ваша репутация пострадает. Посмотрим, из чего чаще всего состоят расходы на создание ПО:

- 60% – разработка;

- 40% – тестирование.

Думая о том, сколько денег потратить разработку, не забывайте, что последующие этапы отнимут не меньше средств.

Расходы на развитие иногда могут превысить расходы на создание, впрочем, многое тут зависит от того, как вы выполнили проектирование. Детали зависят от специфики предметной области, требований к ПО, используемых подходов к организации разработки.

Создание ПО должно укладываться в сроки:

Залог успеха – строгое соблюдение следующих принципов:

- Грамотное планирование.

- Анализ возможных рисков и способы реагирования.

- Борьба за четкие границы проекта.

- Мотивирование сотрудников.


Дата добавления: 2019-02-22; просмотров: 278; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!