- •1. Етапи проектування програм
- •4) Побудова моделі.
- •2. Основні особливості і проблеми сучасних програмних проектів
- •3. Сучасні тенденції в програмній інженерії
- •4. Проблеми проектування складних програмних систем
- •5. Основні проблеми при проектуванні програмних засобів
- •6. Етапи проектування складних програмних засобів
- •Технічне проектування:
- •8. Проектування програм
- •9. Вимоги до сучасного програмного комплексу для побудови інтегрованої системи безпеки середнього або крупного підприємства Масштабованість
- •Універсальність
- •Розширюваність
- •Переносимість
- •Відвертість
8. Проектування програм
Мікропрограмування неефективного
алгоритму не робить його ефективним.
(Закон Роше)
KISS-ПРИНЦИП (keep it simple stupid - роби простіше, дурень!) передбачає постійну боротьбу за зниження чинника складності. Підготовка складних ізольованих програм веде до дорожчання відладки, супроводу і експлуатації. Від замовника необхідно добиватися максимальної точності при визначенні завдання - це припускає опис замовником істоти завдання. Будь-який перегляд узгодженого технічного завдання повинен відкладатися на пізніший час і вести до перегляду договору.
Необхідно правильно вибрати алгоритм.
Приклад:
обчислити
1 спосіб:
function S(n: integer): integer;
var i, j, p: integer;
begin
s:=0;
for i:=1 to n do
begin
p:=1;
for j:=1 to i do
p:=p*(-1);
s:=s+p*i;
end;
end.
2 спосіб:
function S(n: integer): integer;
var i, j, p: integer;
begin
s:=0;
for i:=1 to n do
begin
p:=-1;
for j:=2 to i do
p:=-p;
s:=s+p*i;
end;
end.
3 спосіб:
function S(n: integer): integer;
var i: integer;
begin
s:=0; i:=1;
while i<=n do
begin
s:=s-i; i:=i+2;
end;
i:=2;
while i<=n do
begin
s:=s+i; i:=i+2;
end;
end.
4 спосіб.
function S(n: integer): integer;
begin
s:=n div 2;
if (n mod 2)=1 then s:=s-n;
end.
9. Вимоги до сучасного програмного комплексу для побудови інтегрованої системи безпеки середнього або крупного підприємства Масштабованість
Програмний комплекс повинен володіти хорошою масштабованістю, тобто здатністю працювати як на малих, так і на дуже великих об'єктах. Залежно від розміру об'єкту використовують різні варіанти розгортання програмних комплексів. На малих об'єктах це може бути автономна система, що працює на одному комп'ютері, на середніх – система з централізованим підключенням устаткування і можливістю управління з декількох робочих місць, на великих – розподілена система з розподіленим підключенням устаткування і можливістю управління з будь-якого комп'ютера локальної мережі або з будь-якої точки миру.
Дана властивість особлива зручно, якщо існує необхідність пов'язати крупний центральний офіс з видаленими невеликими філіалами організації. Установка одного і того ж ПК у філіалах різного масштабу спрощує інтеграцію і знижує вартість супроводу систем.
Надійність
Серед всіх вимог особливе положення займають питання надійності системи безпеки. Система повинна мати надійний захист від несанкціонованих дій операторів. Крім того, працездатність всієї системи в цілому не повинна залежати від працездатності її окремих модулів. При виході з ладу або виключенні робочих станцій або серверів, обслуговуючих устаткування, можуть відключатися певні сегменти системи (устаткування при цьому повинне переходити в автономний режим роботи), частина системи, що проте залишилася, повинна продовжувати функціонувати в повному об'ємі.
