Технология программирования


НазваТехнология программирования
Дата конвертації18.02.2013
Розмір445 b.
ТипРегламент



Технология программирования – это совокупность методов, способов, приемов, средств автоматизации, технологического оснащения и регламентированного порядка их использования для разработки, производства и применения ПП в заданных требованиях и с заданными показателями качества.

  • Технология программирования – это совокупность методов, способов, приемов, средств автоматизации, технологического оснащения и регламентированного порядка их использования для разработки, производства и применения ПП в заданных требованиях и с заданными показателями качества.

  • ТП - путь к индустрии программ.



  • ІНДУСТРІЯ – виробництво різних видів

  • продуктів для масового використання

  • Ідея В.М.Глушкова – Фабрики програм за принципом сборочного конвеєра (1975).

  • Постанова ДКНТ СМ СРСР – «Создание ГосФАП и РФАП» (1966-1996) та «Программные средства как продукция производственно-технического назначения» (1972).

  • Програмна інженерія – якість, продуктивність, індустрія Технологія програмування (1968).

  • Системи автоматизації виробництва програм і систем 1976-1990 (ПРИЗ, РТК, ПРОЕКТ, АПРОП, ДИСУППП, ДЕЛЬТАСТАТ, АЛЬФА, БЕТА…).

  • Композиционнное программирование (1979).

  • Програмостроительній институт (1982-1984).

  • Сборочное программирование Ершов А.П., Лаврищева Е. М. (1980-1988).

  • “От ручного труда к конвейрной сборки программ” К. Чернецки, У.Айзенекер (2005).

  • Continuous integration M. Fowler (2006).

  • “Фабрики программ. Потоковая сборка программ” Дж.Гринфильд, Г.Ленц, “Технологіческая схема фабрики” В. Авдошин –(2007, 2010).

  • “Фабрики програм у інформаційному світі” (2009).

  • Сборочный конвеєр ЕПАМ (Белоруссия) -2010

  • Экспериментальная фабрика КНУ имени Тараса Шевченко.



«Пройдет 20–30 лет, программы будут выпускаться, как на сборочном конвейере автомобилей из готовых «деталей» фабрики Форда.

  • «Пройдет 20–30 лет, программы будут выпускаться, как на сборочном конвейере автомобилей из готовых «деталей» фабрики Форда.

  • Появятся фабрики программ, работающие по принципу сборки в автомобильной промышленности».

  • Глушков считал, что в перспективе выпуск программной продукции будет на индустриальной основе и будет осуществляться на линиях сборочного конвейера.

  • Концепция сборочного конвейера постоянно развивается как инструмент индустрии



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

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

  • модульная система автоматизации программирования «АПРОП» развивается из стандартизованных программных заготовок «снизу-вверх»;

  • метод формализованных технических заданий для проектирования сложных программных комплексов с использованием нескольких алгоритмических языков для описания отдельных блоков на уровнях последовательной детализации проекта;

  • Р-технология программирования предоставляет графические средства проектирования «сверху- вниз», начиная с описания структур данных в системах управления».

  • Актуальной задачей перспективного развития ТП Глушков В.М. считал «развитие технологии комплексного проектирования вычислительных систем, когда проектирование технических средств системы совмещено в едином процессе с проектированием ее базисного матобеспечения».



Перспективные направления 1985– 1995 гг.

  • Перспективные направления 1985– 1995 гг.

  • «Второе направление борочное программирование)

  • Язык спецификации регламентирован.

  • Переход от протопипа к промышленной версии регламентирован.

  • Язык разработки – формализованный язык высокого уровня со средствами модуляризации.

  • Язык программирования объединен с языком разработки.

  • допуская комплексирование с ассемблерными модулями….».

  • «Было бы полезно выработать норматив по технологии второго поколения, который не затрагивая конкретного методологического или языкового наполнения, унифицировал бы:

  • общую этапность разработки программного продукта;

  • нормативы производительности и надежности продукта;

  • организационно-документационную структуру;

  • вычислительную инструментальную среду;

  • межмодульный интерфейс, поддерживающий принцип сборочного программирования.



Модульное программирование

  • Модульное программирование

  • Система алгоритмических алгебр (Цейтлин Г.Е.)

  • Синтезирующее программирование (Тыугу Э.Х.)

  • Алгебраическое программирование (Летичевский А.А.)

  • Сборочное программирование (Лаврищева Е.М.)

  • Визуальное Р-программирование (Вельбицкий И.В.)

  • Композиционное программирование (Редько В.Н.)

  • Структурное программирование (Иордан Е.)

  • Венский метод проектирования -VDM, Raise (Д.Бьернер, С.Джонис)

  • Процедурное программирование

  • Функциональное программирование…



Объектно-ориентированное программирование (Г.Буч)

  • Объектно-ориентированное программирование (Г.Буч)

  • UML (Г.Буч, Дж.Рамбо, А. Джекобсон)

  • Императивный концепторный язык (Коваль В.Н.)

  • компонентное программирование

  • Генерирующее программирование (К.Чернецки, У.Айзенакер)

  • Распределенное конструирование объектов ORB (В.Эммерих)

  • Сервисно-ориентированное программирование

  • Программирование в сематик Веб Интернет

  • Программирование в ЯП (C++, C#, Java, VBasic, Ada, Ruby, Python, …) для современных сред.







Основные перспективные направления развития ТП:

  • Основные перспективные направления развития ТП:

  • 1. ООП к проектированию прикладных систем(ПС);

  • 2. Компьютерные CASE-системы проектирования ПС;

  • 3. Приобретение и представление знаний об объектах и функциях приложений с помощью компонентов повторного использования - КПИ;

  • 4. Стандартизация методов интеграции и сборки ПС из КПИ;

  • 5. Новые подходы к реализации интерфейса компонентов;

  • 6. Инженерия качества – подходы к достижению надежности и качества ПС.



Работы по качеству в рамках СЭВ (с 1987г.)

  • Работы по качеству в рамках СЭВ (с 1987г.)

  • Проекты по качеству при ДКНТ (с 1992г.) Кулаков А.Ф. Стандарт качества ПС.

  • Парадигма инженерии качества для СОД в МО Украины. 10 методик (1998-2002).

  • Методы тестирования и оценки качества ПП

  • Диссертации (Коваль Г.И., Коротун Т.М., Задорожная Н.Т., Слабоспицкая О.А.).

  • Монография «Основы инженерии качества программных систем.- Ф.И. Андон … (2002, 2007).







по научным проектам ГКНТ и НАНУ в

  • по научным проектам ГКНТ и НАНУ в

  • Институте программных систем:

  • ГКНТ Украины

  • - технология качественных программ (1992-1996),

  • - разработка технологии статистической обработки в АСНИ(1992-1994),

  • - технология доказательного программирования (1994-1998),

  • НАН Украины

  • - Стандартизация качества, процессов ЖЦ (1998-2001),

  • - объектно-ориентированное (1998-2001) НАНУ,

  • - компонентное программирование (2002-2006) НАНУ,

  • - генерирующее программирование (2007-2011) НАНУ.



Технологические и индустриальные средства

  • Технологические и индустриальные средства

  • Модели

  • - модели разработки (MDD, MDA, SOA, PIM, PSM, GDM тощо);

  • - новые модели, построенные в фундаментальных проектах ІПС НАНУ

  • взаемодействия программ, систем и сред (interoperability),

  • вариабельности (variability, variatnts, змінюваність),

  • живучести (reliability, portability);

  • - модели жизненного цикла (спиральная, ТЛ, Product Line) для производства ПП;

  • - модели конфигурационные, cборочные, интеграционные, трансформационные, генерационные и др.

  • Методы разработки ПП

  • - компонентный, сборочный, генерационный, сервисный, аспектный, композиционный.

  • Методы тестирования и оценки ПП

  • - тестирование программ, систем, веб-приложений и др.;

  • - методы верификации и доказательства,

  • - оценка качества, стоимости, затрат, уровня процессов.

  • Стандарти SE, IT

  • - ISO/IEC 12207 -ЖЦ, ISO/IEC 11404 –GDT, ДСТД 9126-качество…



 

  •  









готовые программные компоненты (артефакты, программы, системы, reuses, assets, КПИ и т.п.);

  • готовые программные компоненты (артефакты, программы, системы, reuses, assets, КПИ и т.п.);

  • интерфейс, как спецификатор паспортных данных готовых разнородных ресурсов, независимо от языка программирования, в языке спецификации интерфейса (IDL, API, SIDL, WSDL, RAS и т.п.);

  • операционная среда, содержащая системные программные средства и инструменты для поддержки сборки (интеграции) разнородных ресурсов;­

  • ТЛ, продуктовые линии (Product Lines) производства ПП;

  • метод разработки (сборка, композиция КПИ, UML, DSL и др.);

  • сборочный конвейер (конфигурация, комплекс, пакет).



Технології індустріального напряму

  • Технології індустріального напряму

  • Технологія проектування КПВ і ПС

  • об’єктно-компонентний метод (ОКМ),

  • компонентний, генерувальний метод,

  • сервісно-орієнтований підхід.

  • Технологія розробки ПП за:

  • ЖЦ, продуктовими лініями, ТЛ.

  • графомовами DSL, WorkFlow, Use case, UML2.

  • конструювання по БП СПС із КПВ, assets.

  • Технологія взаємодії програм, систем і середовищ.

  • Технологія варіабельності ПС і СПС.

  • Технологія навчання прийомам виробництва ПС.

  • ІТК сайт – http://sestudy.edu-ua.net





Компоненты повторного использования (КПИ);

  • Компоненты повторного использования (КПИ);

  • Репозиторий онтологии программной инженерии на основе КПИ

  • Компонентная алгебра сборки КПИ.

  • Программная система, семейство систем

  • Монография 2 издание «Сборочное программирование»

  • Инструментально-технологический комплекс (ИТК) изготовления СПС из КПИ.









основано на

  • основано на

  • наличии большого количества разнообразных КПИ и ГОР, как объектов сборки; 

  • паспортизации объектов сборки;

  • наборе стандартных правил сопряжения объектов и средств автоматизации процесса сборки;

  • метод представления ТЛ (последовательность операций постепенного изготовления и установления связей между разнородными объектами, образовывая системы или семейства ПП.



Сборочное программирование - способ объединения, комплексирования, конфигурирования ПС из готовых разнородных объектов посредством интерфейса (межмодульного, межъязыкового и технологического).

  • Сборочное программирование - способ объединения, комплексирования, конфигурирования ПС из готовых разнородных объектов посредством интерфейса (межмодульного, межъязыкового и технологического).

  • Межмодульный интерфейс – это модуль-посредник между двумя связываемыми программными объектами, выполняющий функции передачи, приема и преобразования нерелевантных данных между ними.

  • Межъязыковый интерфейс – совокупность средств и методов представления и преобразования структур данных и языков программирования друг в друга с помощью алгебраических систем.

  • Технологический интерфейс – совокупность методов и средств для осуществления процессов и операций ТЛ при реализации программного продукта.



Монографии

  • Монографии

  • «Связь разноязыковых модулей в ОС ЕС» (М.:1982, Финансы и статистика, 127с.). Дано описание языка спецификации интерфейса и библиотеки межъязыкового интерфейса (64 функции);

  • «Сборочное программирование. Основы индустрии программных продуктов» (2009). Теория сборки и основы индустрии, стандарты, языки описания интерфейсов - API, IDL, SIDL и др.



Обеспечение качества компонентов на процессах создания СПС в среде ГП;

  • Обеспечение качества компонентов на процессах создания СПС в среде ГП;

  • Разработка теории интероперабельности (интерфейса взаимодействии программ, ПС, СПС), вариабельности (изменения вариантов ПС, адаптивности), жизнедеятельности (безотказности и живучести ПС);

  • Методология сборочного конвейера объектов и компонентов;

  • Объектно-компонентный метод - ОКМ;

  • Алгебра компонентов и КПИ для ведения репозитория;

  • Генерация типов данных передаваемых между разноязыковыми программами;

  • Конфигурационный метод реализации модели GDM;

  • Онтология доменов, СПС;

  • Технология обучения C#, Java, SE;

  • Инструментальные средства поддержки ГП.











Модель варіабельності в СПС – це трійка взаємопов’язаних моделей:

  • Модель варіабельності в СПС – це трійка взаємопов’язаних моделей:

  • 1) варіабельності структури СПС ( SV );

  • 2) варіабельності артефактів СПС ( AV );

  • 3) інтегрована модель оцінювання рівня варіабельності ( EV ).

  • 1). SV відображає характеристики (features) СПС

  • SV =  CF;  Gt, TRt , t = 1,2,3,4; Constr; Dep , (1)

  • де CF = SF, LF – граф характеристик (SF) і варіантного підпорядкування (LF);

  • Gt = Ft, LFt – граф з унікальною вершиною(Ft) артефактів (вимог, архітектури, систем тощо), поєднаних зв’язками LFt;

  • TRt – двосторонні зв’язки трасовності графуt

  • Constr і Dep – предикати на множині CF(t=1,…,4Ft) обмежень й залежностей властивостей продуктів СПС.

  • 2). AV уніфіковано завдання продуктів СПС (програмні й непрограмні), що є в репозиторії модель має вигляд

  • AV =  AF1, AF2, AF3, AF4 , f(aft) = rt;  gt, trt, t = 1,2,3,4; con; dep, (2)

  • де AFt={f(aft)} – множина формальних подань артефактів СПС типу t; елементи кортежу f(aft) – підграфи відповідних графів з моделі (1); con і dep – звуження предикатів Constr і Dep з (1).





доменів та застосувань, орієнтований на безвідмовне функціонування ПС в процесі супроводження та доробки (реінженерії) компонентів під нові вимоги замовника СПС. Модель життєздатності ПС включає: –         модель програмної системи сімейства у UML; –         узагальнені сценарії функціонування ПС; –         модель простежування змін основних сценаріїв функціонування ПС; –         показники життєздатності ПС (адаптовність,        стабільність, відмовостійкість,    тестовність); –         метрики та методи оцінки показників життєздатності ПС.

  • доменів та застосувань, орієнтований на безвідмовне функціонування ПС в процесі супроводження та доробки (реінженерії) компонентів під нові вимоги замовника СПС. Модель життєздатності ПС включає: –         модель програмної системи сімейства у UML; –         узагальнені сценарії функціонування ПС; –         модель простежування змін основних сценаріїв функціонування ПС; –         показники життєздатності ПС (адаптовність,        стабільність, відмовостійкість,    тестовність); –         метрики та методи оцінки показників життєздатності ПС.



прийняття і обґрунтування рішень стосовно розроблення якісних

  • прийняття і обґрунтування рішень стосовно розроблення якісних

  • членів сімейств ПС починаючи з визначення вимог;

  • інженерія ПС за базовим ЖЦ і КПВ;

  • генерація нових ПС із готових ресурсів з регульованими показниками якості в процесі при конструюванні структури СПС із готових КПВ;

  • оцінювання показників якості КПВ на процесах ЖЦ

  • Модель якості компонентів і ПС

  • Мяк = {Q, A, M, W},

  • де Q = {q1, q2, …, qi }i = 1, 6 – множина характеристик якості (Quality – Q);

  • A = {a1, a2,…, aj}j=1,…,J – множина атрибутів (Attributes – A) для властивості qi;

  • M = {m1, m2,…, mk}k=1,K – множина метрик (Metrics – M) для кожного елемента aj атрибута характеристики якості;

  • W = {w1, w2,…, wn}n=1,N – множина вагомих коефіцієнтів (Weights – W ) для метрик множини M.





1. Моделювання функційних і нефункційних вимог СПС.

  • 1. Моделювання функційних і нефункційних вимог СПС.

  • 2. Оцінювання специфікацій СПС.

  • 3. Оцінка архітектури ПС в залежності від вимог.

  • 4. Оцінювання якості КПВ.

  • 5. Оцінювання якості членів СПС за характеристиками.

  • Базові характеристики якості ПС:

  • q1: функціональність (functionality),

  • q2: надійність (realibility),

  • q3: зручність застосування (usability),

  • q4: ефективність (efficiency),

  • q5: супроводженість (maitainability),

  • q6: переносність (portability).

  • 6

  • q1 = a1j m1j w1j

  • j=1



Ця методологія є відповіддю на виклик керівництва держави щодо індустрії програмної продукції

  • Ця методологія є відповіддю на виклик керівництва держави щодо індустрії програмної продукції

  • Містить комплексну технологію виробництва за новими дисциплінами SE різних складових елементів СПС шляхом виконання технологічних ліній в ІТК:

  • розробки окремих КПВ,

  • сервісного обслуговування КПВ за інтерфейсами у репозиторію,

  • збирання, конфігурування різномовних КПВ у СПС,

  • взаємодії Visual Studio Eclipse, CORBA Visual Studio Eclipse,

  • тестування КПВ і інтерфейсів членів СПС,

  • оцінювання якісних показників СПС та затрат на розробку,

  • навчання МП C#, Java, VBasic,

  • навчання дисциплінам SE.





(http://sestudy.edu-ua.net)

  • (http://sestudy.edu-ua.net)

  • підтримує спектр технологій виробництва СПС із готових КПВ і ГОР за простішими лініями поступового виробництва окремих елементів СПС і зборки їх у готовий ПП, інтероперабельний відносно названих гетерогенних середовищ.



  • ТЛ (их 15) изготовления разных программ и КПИ в ЯП;

  • технологии сборки готовых КПИ в новые ПП;

  • методам взаимодействия систем и сред;

  • технологическим средствам и стандартам электронного учебника «Программная инженерия» на http://programsfactory.univ.kiev.ua

  • Технология обучения в ИТК включает:

  • стандарты жизненного цикла (ЖЦ);

  • преобразование (генерацию) типов данных GDT–FDT (ISO/IEC 11404) для обработки данных в гетерогенных средах;

  • языки DSL (Domain Specific Language) описания онтологий доменов (ЖЦ и вычислительная геометрия);

  • взаимодействию программ, систем и сред;

  • онтологии доменов ЖЦ и вычислительной геометрии;

  • технологии программирования в ЯП среды VS.Net;

  • веб-сервис для выполнении операторов ИТК конвейерного типа.



1. Программные средства поддержки

  • 1. Программные средства поддержки

  • линий разработки КПИ и СПС, взаимодействия ПС и сред, конфигурации вариантов СПС из КПИ, генерации данных;

  • технологии работы с Eclipse и Protégé;

  • сборки и интеграции КПИ;

  • оценки качества ПП,

  • электронного обучения программированию в языках C#, Java, SE.

  • 2. Инструментальные средства

  • загальносистемні засоби (Corba, JAVA, VS.Net, IBM, Protege, MCF й Tools DSL MS.Net тощо);

  • засоби спеціального призначення (Eclipse, Protégé) для моделювання моделей предметних областей та додавання до репозиторію;

  • системи програмування з МП Visual Basic, C++, Java та мови в межах VS.Net (C#, F#, C++ , Visual Basic), системи CORBA (C++, C, Lisp, Smalltalk, Java, Pascal, PL/1, Python) та Java/RMI;

  • засоби з підтримки мови DSL (Tools DSL VS.Net, Eclipse-DSL, Work Flow);

  • засоби тестування й оцінювання програм і КПВ.





Розроблено набір функцій для генерації типів даних в мові XML:

  • Розроблено набір функцій для генерації типів даних в мові XML:

  • функцій перебудови типів даних МП1, …, МП n;

  • функцій подання типів даних ФДТ;

  • функцій представлення GDT для оброблення з апробованої схеми ФДТ;

  • функцій відображення GDT<=>FDT.



1) Розроблення алгоритмів функцій для перетворення типів даних GDT (примітивних, агрегатних і генерованих) до FDT типів даних (простим, структурним і складним) МП і використання в середовища взаємодії різномовних компонентів, підсистем і проектів ІТК;

  • 1) Розроблення алгоритмів функцій для перетворення типів даних GDT (примітивних, агрегатних і генерованих) до FDT типів даних (простим, структурним і складним) МП і використання в середовища взаємодії різномовних компонентів, підсистем і проектів ІТК;

  • 2) Технологія специфікації зовнішніх типів даних компонентів, підсистем і систем засобами GDT із накопиченням їх в бібліотеки середовища фабрики ГП;

  • 3) Розробка сервісу опису формату нових посередників stub з операціями звертання до відповідних функцій GDT<=>FDT для передачі взаємодіючому компонентові перебудованих нерелевантних типів даних.

  • 4) Адоптація функцій до середовища типа Grid.





  • – це теоретичні (наукові артефакти), прикладні ресурси (reuses, assets) та ПП.

  • ФАБРИКА - інтегрована інфраструктура (середовище), що призначено для:

  • - збору теоретичних артефактів, як продуктів наукової діяльності студентів з дисциплін - прикладна математика, інформатика, комп’ютерні науки;

  • - накопичення їх у репозиторіях чи бібліотеках знань;

  • - автоматизованого виготовлення софтвера, програм, ПП.

  • - використання викладачами та студентами ВНЗ України та Росії (звернень більш 4350) технології виробництва складних програм і систем.  

  • Веб-сайт буде англомовним, що розширить коло користувачів в інформаційному світі.



  • 1) розробка нових SSW, програм за ТЛ, Product Lines за допомогою засобів, інструментів і

  • сервісів відповідного середовища.

  • 2) Опис специфікатора артефакту або програми за стандартами.

  • 3) Запис артефактів, програм і їх специфікаторів у репозиторії

  • 4) зборка готових програм у ПП.

  • 5) тестування і оцінювання ПП.











Включає

  • Включає

  • теорії взаємодії, варіабельності та життєздатності; комплексну технологія виробництва різних складових елементів СПС;

  • технологічні лінії розробки окремих КПВ;

  • сервісного їх обслуговування у репозиторію за стандартизованими інтерфейсами;

  • збирання шляхом конфігурування різномовних КПВ, тестування , оцінювання якісних показників СПС та витрат на розробку.

  • Ця методологія є своєчасною на виклик керівництва держави щодо індустрії програмної продукції, дає усі необхідні засади для регламентованого процесу виготовлення програмного продукту колективом розробників.









Схожі:

Технология программирования icon1. Методика применения вебинаров в учебном процессе.(теория, методика, технология) Методика применения вебинаров в учебном процессе.(теория, методика, технология)
Организационные вебинары, связанные с учебными и образовательными проектами (проектная деятельность преподавателей, студентов школьников...
Технология программирования icon1. Методика применения вебинаров в учебном процессе.(теория, методика, технология) Методика применения вебинаров в учебном процессе.(теория, методика, технология)
Организационные вебинары, связанные с учебными и образовательными проектами (проектная деятельность преподавателей, студентов школьников...
Технология программирования icon1. Брауде Э. Д. Технология разработки программного обеспечения: Перевод с англ. – М., 2004, 654 с
Брауде Э. Д. Технология разработки программного обеспечения: Перевод с англ. М., 2004, 654 с
Технология программирования iconКурс «Програмування» Курс «Програмування»
Язык программирования си для персонального компьютера/ Под общ ред. П. И. Садчикова. М.: Радио и связь, 1990. 384 с
Технология программирования iconСписок рекомендованої літератури Список рекомендованої літератури Шпак З. Я. Програмування мовою С: Навчальний посібник. Львів: Оріяна-Нова, 2006
Язык программирования си для персонального компьютера/ Под общ ред. П. И. Садчикова. М.: Радио и связь, 1990. 384 с

Додайте кнопку на своєму сайті:
dok.znaimo.com.ua


База даних захищена авторським правом ©dok.znaimo.com.ua 2013
звернутися до адміністрації
dok.znaimo.com.ua
Головна сторінка