РЕФЕРАТ
Бұл дипломдық жұмыста «ЦентрКредит Банкінің» депозиттік бөлімін мысалға ала
Осы автоматтандырылған ақпараттық жүйе мәліметтер қорына жаңа мәлімет қосуға,
Дипломдық жұмыс 5 бөлімнен тұрады, барлығы 55 бетті қамтиды.
Қолданылған кілттік сөздер: ДҚ – деректер қоры, ДҚБЖ –
Программа ORACLE деректер қорында жасалынды, программа SQL, PL/SQL тілдерінде
МАЗМҰНЫ
КІРІСПЕ .......................................................................................................................3
1 САРАПТАМАЛЫҚ ШОЛУ ЖӘНЕ ТАПСЫРМАНЫҢ ҚОЙЫЛУЫ................5
1.1 Деректер қоймасы (Data Warehouse)………………………………………......9
1.1.1 Клиент пен сервердегі OLAP……………………………………………..11
1.1.2 Деректерді көп өлшемді сақтаудың техникалық аспектілері..................13
1.2 Деректер қоры серверінің түсінігі....................................................................14
1.2.1 Деректер қоры серверінің базалық архитектурасы...................................14
1.3 Деректер қорының тілдері………………………………………………….....15
1.4 Oracle компаниясының тарихы мен серверлік өнімдері.................................17
1.4.1 Oracle………………………………...……………………………………...18
1.4.2 Oracle-дің деректер қоры.............................................................................20
1.5 Тапсырманы қою: Депозит АЖ-нің сараптамалық деректер қорын жобалау
1.5.1 Транзакцияларды басқару............................................................................26
1.5.2 Журналға енгізу............................................................................................27
1.6 Деректер қорын жобалау бойынша тапсырмаларды суреттеу.......................29
2 ЕСЕПТІ ШЕШУ АЛГОРИТМІН ҚҰРУ...............................................................37
2.1 Есептен алып тастау және есепке кіргізу операциялары................................37
2.2 Пайыз қосу операциясы.....................................................................................37
3 АҚПАРАТТЫҚ ҚАМТАМАСЫЗДАНДЫРУ.....................................................38
4. ПРОГРАММАЛЫҚ ҚАМТАМАСЫЗДАНДЫРУ.............................................44
4.1 Мәліметтер қорының құрылымы......................................................................44
4.2 Қолданбалы интерфейстің жобалануы.............................................................47
4.3 Программаның орындалуын сипаттау..............................................................50
5 ЖОБАНЫҢ ЭКОНОМИКАЛЫҚ ТИІМДІЛІГІН БАҒАЛАУ............................56
ҚОРЫТЫНДЫ...........................................................................................................59
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ………………………………………...60
ҚОСЫМША...............................................................................................................61
КІРІСПЕ
Компьютерлік индустрияның жеткілікті ұзақ тарихында екі негізгі бағытты бөлуге
Әрине, пайдаланудың нақты саласына тәуелді ақпараттық жүйелер өздерінің қызметтері,
Және де қайтадан айта кететініміз, есептеуіш программалық жүйелерінде дамыған
1 САРАПТАМАЛЫҚ ШОЛУ ЖӘНЕ ТАПСЫРМАНЫҢ ҚОЙЫЛУЫ
Жоғарыда айтып кеткеніміздей, кез-келген ақпараттық жүйе ақпаратты жинау, сақтау
Ақпараттық жүйелерді ұйымдастырудың дәстүрлі әдісі - "клиент-сервер" екі буынды
1-cурет. "Клиент-сервер" дәстүрлі екі буынды архитектурасы
2-сурет. Қосымшалардың бөлінген сервері бар "клиент-сервер" үш буынды
Айта кететініміз, үш буындылықтың кейбір белгілері екі буынды архитектурада
Клиент-серверлік қосымша деп біз деректер қоры серверін пайдалануға негізделген
Клиенттің тарапынан қосымшаның коды орындалады, оған міндетті түрде есептемелерді
Қосымшаның клиенттік бөлігі деректер қорын басқаруды программалық қамтамасыз етудің
3-сурет. "Клиент-сервер" архитектурасындағы ақпараттық жүйенің жалпы көрінісі
Қосымшаның клиенттік бөлігі мен деректер қоры серверінің клиенттік бөлігі
Мұнда тағы да екі ескертулерді жасау керек.
1. Деректер қорының дамыған серверлерін шығаратын компаниялар әдетте, өз
2. SQL тілі негізіндегі интерфейс туралы айтқан кезімізде, осы
Ендігі кезекте, деректер қоры серверінің тарапында не болып жатқанын
Сервер қолға алынған оператордың компиляциясын жүргізеді. Бұл жерде біз
Ары қарай (егер компиляция сәттілікті аяқталса) оператордың орындауы болады.
Оператор деректер қоры объектілерін (нақтырақ және дұрысырақ айтсақ, деректер
Операторлардың сұраумен қарастырылатын кестелердің мазмұны негізінде және деректер қорында
Операторлардың деректер қорының мазмұнын модификациялауды орындағандары кезінде (INSERT, UPDATE,
Операторлардың деректер қоры жобасын модификациялауын орындау кезінде де (істегі
Ұқсас түрінде, триггерлер деректер қоры жобасының объектілерін (домендерді, кестелерді,
SQL тілі операторларының ерекше сыныбын ертеректе анықталған және сақталынатын
Оператордың транзакцияны аяқтауды орындағаны кезінде сервер бүтінділіктің кейінге қалдырылған
1.1 Деректер қоймасы (Data Warehouse)
Деректер қоймасы (Data Warehouse) – бұл деректердің жеке қоры,
Басшылардың уақытын үнемдеу мақсаттарында кез-келген сұрау салған ақпарат өте
Тәртіп бойынша, деректер қоймалары ақпараттың ауқымды көлемдерімен жұмыс жасайды,
Қоймадағы деректердің құрылымы пайдаланушыларға түсінікті болуы тиіс.
Үнемі: күн сайын, апта сайын, тоқсан сайын модифицирленетін статистикалық
SQL бекітілімдерінің көптігін дәстүрлі реляциялық ДҚБЖ-де талап ете алатын
Мыңдаған немесе миллион жазбаларының тізбекті өңделуін талап ететін SQL
Нақ осы талаптарды орындау деректер қоймасының құрылымын реляциялық ДҚБЖ-нің
Шешімдерді қабылдауды қолдау жүйелері әдетте, пайдаланушыға қабылдау мен талдау
Деректерді кешенді көп өлшемді талдау технологиясы OLAP деген атына
FASMI тесті:
Fast (Жылдам) – талдау ақпараттың барлық аспектілері бойынша бірдей
Analysis (Сараптама) – қосымшаны өңдеуші алдын ала анықтаған немесе
Shared (Бөлінетін) – көптеген пайдаланушылар деректерге қол жеткізулері тиіс,
Multidimensional (Көп өлшемді) – бұл OLAP-тің негізгі, анағұрлым маңызды
Information (Ақпараттар) – қосымшада оның көлемі мен сақталу орнына
Біз транзакцияларды жедел өңдеуге емес (On-Line Transaction Processing –
Біз білетініміздей, OLAP-ты пайдаланудың түпкілікті мақсаты – деректерді талдау
Клиент пен сервердегі OLAP
Деректерді көп өлшемді талдау әртүрлі құралдардың көмегімен жүргізілуі мүмкін,
Клиенттік OLAP-құралдары дегеніміз агрегаттық деректердің (сомалардың, орташа көлемдердің, максималды
Егер бастапқы деректері үстелдік ДҚБЖ-де болса, агрегаттық деректерін есептеу
Тәртіп бойынша, OLAP-қызметтілігі деректердің статистикалық өңдеу құралдарында (осы сыныптағы
Өңдеудің көптеген құралдарында қарапайым OLAP-қызметтілігін іске асыратын қосымшаларын дамытуға
Айта кететіні, клиенттік OLAP-құралдары тәртіп бойынша, өлшемдердің аз саны
Көптеген (бірақ барлығы емес!) клиенттік OLAP-құралдары агрегаттық деректері бар
Агрегаттық деректері бар кэшті файл түрінде сақтау идеясы өзінің
Клиенттік OLAP-құралдарымен салыстырғанда серверлік OLAP-құралдарын пайдалану артықшылықтары үстелдіктерімен салыстырғанда
1.1.2 Деректерді көп өлшемді сақтаудың техникалық аспектілері
Көп өлшемді деректер қоймаларында нақтылықтың әртүрлі деңгейдегі агрегаттық деректері
Айта кететіні, барлық агрегаттық деректерін сақтау әрдайым дерлік ақталымды
Бастапқы, сондай-ақ, агрегаттық деректері реляциялық немесе көп өлшемді құрылымдарында
MOLAP (Multidimensional OLAP) –— бастапқы және агрегаттық деректері деректердің
ROLAP (Relational OLAP) — бастапқы деректер олар бастапқыда болған
HOLAP (Hybrid OLAP) — бастапқы деректер олар бастапқыда болған
Кейбір OLAP-құралдары деректердің сақталуын тек қана реляциялық құрылымдарында қолдайды,
1.2 Деректер қоры серверінің түсінігі
"Деректер қоры сервері" ұғымын әдетте, "клиент-сервер" архитектурасына негізделген, соның
Қолданбалы программадан немесе пайдаланушының деректер қорына кіруі жүйенің клиенттік
Интерфейстері тек қана SQL тіліне негізделген деректер қоры серверлерінің
Деректер қоры серверінің базалық архитектурасы
Деректер қорының типтік сервері келесідей төменгі қызметтердің орындалуына жауап
файлдардың логикалық келістірілген жиынын қолдау;
манипуляциялау тілін деректермен қамтамасыз ету;
әртүрлі істен шығулардан кейін ақпаратты орнына келтіру;
бірнеше пайдаланушылардың нақты параллельдік жұмысын ұйымдастыру.
Деректер қорының тілдері
Деректер қорымен жұмыс істеу үшін арнайы тілдері қолданылады, олар
Қазіргі заманғы ДҚБЖ-де әдетте, бірегей интеграцияланған тілі қолданылады, ол
SQL тілі 1970-жылдардың ортасында IBM фирмасымен System-R РДҚБЖ прототипі
SQL тілінің мүмкіндіктері:
- SQL тілі командаларының құрылымы жазылуы бойынша табиғи ағылшынға
- SQL тілі процедуралық емес: сіз ақпаратты алуды емес,
- SQL жеке жазуларымен емес, жазбалардың жиынымен жұмыс істейді.
- SQL қолданушылардың, соның ішінде, әкімшілік, қолданбалы программисттер, басқарушы
Ең бастапқы кезекте, SQL тілі DDL мен DML құралдарын
PL/SQL – бұл Oracle-ға тиесілі болып келетін SQL-дің, реляциялық
PL/SQL – бұл блоктармен құрылымдастырылған тіл. Бұл дегеніміз, PL/SQL
4-сурет көрсетіп тұрғанындай, PL/SQL блогының үш бөлігі бар: декларативтік
┌─────────────────────────────────────────────┐
│ DECLARE
│ ┌────────────────────────────────┐
│ |
│ └────────────────────────────────┘
│ BEGIN
│ ┌────────────────────────────────┐
│ │ Выполняемые предложения
│ └────────────────────────────────┘
│ EXCEPTION
│ ┌────────────────────────────────┐
│ │ Обработчики исключений
│ └────────────────────────────────┘
│ END;
└─────────────────────────────────────────────┘
4-сурет. PL/SQL блогының құрылымы. PL/SQL блогы
Әрбір блокта басқа блоктары болуы мүмкін; басқа сөзбен айтқанда,
Oracle компаниясының тарихы мен серверлік өнімдері
Oracle (Oracle V.2) ДҚБЖ-нің тапсырыс берушілерге қол жеткізімді бірінші
Oracle-ді пайдаланушыларға SQL продуцирлік емес реляциондық тілдің негізінде деректер
Oracle V.3 ДҚБЖ жарыққа 1983 жылы шыққан болатын. Ол
1985 ж. нарықта Oracle V.5 ДҚБЖ-сі пайда болды. Осы
Жүйенің алтыншы нұсқауы OLTP режимінде орындалатын корпоративтік ақпараттық қосымшаларын
Алтыншы нұсқаудың маңыздылықты жаңалықты енгізушілері ретінде PL/SQL программалаудың процедуралық
Oracle ДҚБЖ-нің жетінші нұсқауы нарықта 1994 жылы пайда болды.
PL/SQL тілін пайдалану мүмкіндіктері маңызды деңгейде кеңейтілді. Oracle V.7-де
Oracle V.7 бөлінген нұсқауында деректерді репликациялау мүмкіндігі қолданады және
Oracle
Oracle компаниясының деректер қоймасы шеңберіндегі шешімі екі факторларға негізделеді:
Oracle 7-де реляциялық ДҚБЖ-нің бар болуы, ол деректер қоймасының
деректер қоймасы өңдеулерінің мүмкіндіктерін қамтамасыз ететін дайын қосымшалар жиынының
компанияның деректерді талдау саласындағы жоғары технологиялық әлеуеті;
өзге компаниялары өңдейтін өнімдердің бірқатарының қол жеткізімділігі.
Деректер қорының программалық қамтамасыз етілуі – бұл ақпаратты басқару
үлкен көлемдегі деректер қорын басқару мен кеңістікті басқаруға бақылау
Деректер қорының бір уақыттағы көптеген қолданушылары. Oracle бір уақытта
Транзакцияларды өңдеудің жоғары өнімділігі. Oracle жүйенің соммалық өнімділігінің жоғары
Дайындықтың жоғары деңгейі. Кейбір орнатылымдарында Oracle деректер қорының өткізімдік
Басқарылатын қол жеткізімділік. Oracle деректер қоры деңгейінде, сонымен бірге,
Өнеркәсіптік стандарттары. Oracle деректерге, операциялық жүйелеріне, пайдаланушымен және желілік
Басқарылатын қорғаныс. Деректер қорына заңсыз кіруден қорғау үшін Oracle
Бүтінділікті автоматтандырылған қамтамасыз ету. Oracle деректердің сәйкес келу стандарттарын
Клиент/сервер айналасы (бөлінген өңдеу). Берілген компьютерлік жүйеден немесе желіден
Бөлінген деректер қорының жүйелері. Желілермен біріктірілген компьютерлік орталарда
Көтерімділік. Oracle программалық қамтамасыз етілуі әртүрлі операциялық жүйелері арасында
Үйлесімділік. Oracle программалық қамтамасыз етуі өнеркәсіптік стандарттарымен, соның ішінде
Байласымдылық. Oracle программалық қамтамасыз етуі сан алуан түрдегі компьютерлер
Oracle-дің деректер қоры
Бұл бөлімде Oracle деректер қорының архитектурасын, соның ішінде деректер
Деректер қорын басқару жүйелері иерархиялықтан желіліктерге, содан кейін, олар
Құрылымдар. Құрылымдар – бұл деректер қорының деректерін сақтайтын жақсы
Операциялар. Операциялар – бұл нақты анықталған әрекеттер, олар қолданушыға
Бүтінділік тәртіптері. Бүтінділік тәртіптері – бұл қандай операциялардың деректерге
Oracle Деректер Қоры – бұл бірлік ретінде қарастырылатын деректердің
Деректер қорын ашу мен жабу
Oracle деректер қоры АШЫҚ (қол жеткізімді) немесе ЖАБЫҚ (қол
Деректер қорының құрылымы
Oracle деректер қорының физикалық, сондай-ақ, логикалық құрылымы болады. Деректер
Деректер қорының физикалық құрылымы. Oracle деректер қорының физикалық құрылымы
Деректер қорының логикалық құрылымы. Oracle деректер қорының логикалық құрылымы
Тапсырманы қою: Депозит АЖ-нің сараптамалық деректер қорын жобалау («ЦентрКредит
Ақпараттық жүйенің шешілуі тиіс нақты тапсырмалары жүйенің арналған қолданбалы
Бірақ, қолданбалы саланың ерекшелігіне тәуелді болмайтын міндеттердің кейбір санын
Әрине, ақпараттың сенімділік деңгейі мен сақтау ұзақтығы көбінесе, корпорацияның
Ақпараттық жүйелердің көпшілігі, соның ішінде «Bank CenterCredit» ақпараттық жүйесі
Осындай тәсілді пайдалану кезінде ақпараттық жүйе деректерді сақтауды ұйымдастыру
Топтық немесе корпоративтік ақпараттық жүйелері туралы айтатын болсақ, онда
Осындай талқылаулар классикалық транзакция түсінігінің пайда болуын туындатты. Ақпараттық
Барлық дамыған ДҚБЖ-сі транзакция түсінігін қолдайды. Егер ақпараттық жүйе
Транзакцияларға қатысты тағы да бір үлкен емес ескерту. ДҚБЖ
Бірінші рет қарағанда, транзакциялар түсінігі кез-келген уақытта тек қана
Корпоративтік ақпараттық жүйелерінде табиғи себептер бойынша деректердің жалпы қорын
Және соңғысында, тапсырмалардың тағы да бір сыныбы ақпараттық жүйенің
Бірінші рет қарағанда, аталған тапсырма онша маңызды емес болып
Транзакцияларды басқару
Транзакция – бұл ДҚ-ғы операциялардың тізбектілігі, оларды ДҚБЖ бір
Әрбір транзакция ДҚ-ның бүтінділік жағдайында басталып, осы жағдайды өзінің
Көп қолданушылық ДҚБЖ-де транзакцияларды басқарумен транзакцияларды сериялау мен транзакциялар
Транзакцияларды сериялаудың бірнеше базалық алгоритмдері бар. Орталықтандырылған ДҚБЖ-де ДҚ-ның
Журналға енгізу
ДҚБЖ-не қойылатын негізгі талаптардың бірі - деректерді сыртқы жадында
Кез келген жағдайда ДҚ-н қайта қалпына келтіру үшін кейбір
Журнал – бұл ДҚБЖ-ның пайдаланушыларына қол жеткізімді емес және
Барлық жағдайларда журналда "алдын–ала ескерту" стратегиясын ұстанады (Write Ahead
Қалпына келтірудің ең қарапайым жағдайы – транзакцияның ндивидуалды кері
Жұмсақ істен шығу кезінде ДҚ-ның негізгі бөлігінің сыртқы жадында
Осыған қол жеткізу үшін бастапқыда - аяқталмаған транзакциялардың кері
Қатты істен шығудан кейінгі ДҚ-н қайта қалпына келтіру үшін
Деректер қорын жобалау бойынша тапсырмаларды суреттеу
Ең бірінші мәселе – жобалау мәселесі болып табылады. Жетік
Жобалаудың бірінші кезеңі – корпорация талаптарын сараптау болуы тиіс.
Жобалаудың келесі кезеңі – ақпараттық жүйенің негізінде жататын деректер
Ары қарай, ақпараттық жүйенің негізінде реляциялық деректер қоры жататындығын
Сондықтан, жобалаудың келесі қадамында қолда бар тұжырымдамалық жобаның негізінде
Деректер қорының жалпы реляциялық жобасы өңделгенінен кейін жүйенің архитектурасын
Декомпозицияның анағұрлым қарапайым жағдайы – деректер қорының қалыптастып келе
5-сурет. Логикалық автономды бөлімдері бар бөлінген деректер қоры
6-сурет. Логикалық автономды емес бөлімдері бар бөлінген деректер қоры
Логикалық автономды емес бөлімдері бар бөлінген деректер қорының мәселесі
Жобалаудың келесі қадамы – бөлінген деректер қоры бөлімдерінің реляциялық
SQL-92 тілі деректер қорының жалпы жағдайына жатқызылатын және кестелердің
Триггер – бұл параметрлері жоқ нақтылы, сақталынатын процедура, оның
CUSTOMER (ID, SHORT_NAME, CUST_TYPE, DATEREGISTRY, RESIDENT, DIVISION_ID, SECTOR_ECONOMY,
DEPOSIT_TYPE (ID, DESCRIPTION, CLOSED);
Бүтінділіктің табиғи шектеулері келесідей түрде көрсетілуі мүмкін:
select * from account a,
where 1=1
and a.CUSTOMER_ID = c.id
and a.DIVISION_ID=d.id
select *
from deposit_agreement g, agreement_type t, deposit_type dt, account a
where 1=1
and g.AGREEMENT_TYPE_ID = t.id
and t.DEPOSIT_TYPE_ID = dt.id
and g.ACCOUNT_ID = a.id
Соңғысында, деректер қорында сақталынатын процедуралары сақталынуы мүмкін. SQL-92 стандартында
Кіріктірілген SQL-ға келетін болсақ, онда барлық іске асыруларда SQL
1-кесте. Кіріктірілген SQL-дің динамикалық және статикалық өңдеу жобаларының сипаттамасы
Тәсілдің түрі Прекомпиляциялануы Орындалуы
Динамикалық жоба На стороне клиента Компиляция мен сервердің тарапында
Статикалық жоба Клиенттің жағында, компиляция сервердің тарапында Сервердің жағында
Модульдер тілінде анықталатын SQL процедураларының идеясы болса, көптеген іске
7-сурет. Сақталынатын процедураны дайындау мен пайдалану
Біз әйтеуір, ақпараттық жүйенің деректер қорын логикалық жобалауды аяқтадық
Физикалық жобалау екі негізгі қадамнан тұрады, олардың біреуі, тәртіп
Екінші қадам сыртқы жад шеңберлерін анықтаудан тұрады, оларда деректер
Ақпараттық жүйенің деректер қорын физикалық жобалаумен бірге параллельді түрде
2 ЕСЕПТІ ШЕШУ АЛГОРИТМІН ҚҰРУ
2.1 Есептен алып тастау және есепке кіргізу операциялары
Біз ЦентрКредит Банкінің Депозиттік модулін қарастырамыз. Бұл модульде екі
Есептен алып тастау операциясын қарастырайық. Есептен алып тастау кезінде
Есепке кіргізу операциясы. Есепке кіргізу кезінде операцияның уақыты тексеріледі.
2.2 Пайыз қосу операциясы
Пайыз қосу барлық депозиттік шоттар бойынша жүзеге асырылады. Барлық
Пайыз_соммасы = күндер_саны*((қалдық_соммасы*%) / (365*100))
Егер пайызды қосудың басталуы уақытынан бастап және пайызды қосудың
3 АҚПАРАТТЫҚ ҚАМТАМАСЫЗДАНДЫРУ
Бұл бөлімде деректер қоры қалай құрылатындығын қарастырамыз, сонымен қатар
Біріншіден, деректер қоры не үшін керек екендігін анықтау керек.
8-сурет. Мәліметтер қоймасын қолданбай әрекеттену
Егер мәліметтер қоймасын қолданбайтын болсақ, онда біз бұрыс, келісілмеген
9-сурет. Мәліметтер Қоймасы негізінде әрекеттену
Енді мәлімет көздерінен алынған мәліметтер есеп берулердің құрылуына дейін
10-сурет. Шешудің жаңа архитектурасы
10-суреттен көріп тұрғандай, мәліметтер бірнеше мәлімет көздерінен алынады. Негізгі
ETL аббревиатурасынан — extraction, transformation, loading, яғни алу, өзгерту
Тәжірибелі кез келген ETL-қосымшаның мақсаты – деректерді оның қолданушыларына
Жалпы және бүтіндей алғанда, ETL қосымшалары ақпаратты деректердің бастапқы
Деректерді алу
ETL үрдісін инициирлеу үшін жазбаларды бастапқы деректер қорында оқу
ETL инструментарийінде жеке программаларымен салыстырғанда, олар қосымша орнатусыз қолданыла
Деректерді қайта қалыптастыру
Алу процедуралары деректерді жинауды аяқтағанынан кейін, қайта өзгеру процедуралары
Деректер киоскілері дегеніміз мамандандырылған қосымшалары болып табылады, олар түпкілікті
Агрегациялағаннан кейін деректер қысқаша жазбалардың аз санына қайта өзгереді,
Мәндерді аудару (value translation) — деректерді өзгертудің тағы да
Жолдарды дамыту (field derivation) — деректерді қайта өзгерту кезінде
Қайта қалыптастырудың төртінші процедурасы — тазалауды (cleaning) өте көптеген
Деректерді жүктеу
Деректер бағытталудың деректер қорында орналасуы үшін қайта өзгертілгенінен кейін,
ETL инструменталды құралдарының көпшілігі деректерді тұрақты, сондай-ақ, кезеңдік жүктемесін
Деректерді бір жүйеден екіншіге ауыстыру кезінде сәттілікке қол жеткізу
Мәліметтер ETL-процесстен өткеннен кейін Корпоративтік Мәліметтер Қоймасына түседі. Есеп
Негізгі мәлімет көздері бірнеше бөліктен тұрады: Тұтынушылар мен нормативті
Тұтынушылар мен нормативті – анықтамалық ақпараттардың ортақ мәліметтер қоймасына
12-сурет. Негізгі мәлімет көздері
4 ПРОГРАММАЛЫҚ ҚАМТАМАСЫЗДАНДЫРУ
4.1 Мәліметтер қорының құрылымы
Бұл бөлімде біз ЦентрКредит Банкінің Депозиттік бөлімінің мәліметтер қоры
13 суретте Депозиттік бөлімнің мәліметтер қоры құрылымы көрсетілген.
13-cуреттен көргендей, мәліметтер қоры 11 кестеден тұрады. Олар:
1. Account – баланстық шоттар.
2. Agreement_type – депозит түрлері.
3.Currency – валюта.
4.Customer – тұтынушылар.
5. D_account – контракт бойынша шоттар.
6. D_balance – шоттағы қалдықтар.
7. D_opertions – орындалатын операциялардың түрлері.
8. Deposit_agreement – депозиттің түріне, тұтынушыға, келісімшарттың басталу және
9. Deposit_type – депозит түрлері.
10. Division – банкке қарайтын бөлімшелер.
11. Transfer – төлемдер/аударымдар.
Бұл кестелердің құрылу программасы PL/SQL тілінде жазылды. Бірнеше кестенің
CREATE TABLE ACCOUNT
(
ID
ACCOUNT
DESCRIPTION VARCHAR2(200 BYTE),
BA
BA_DESCRIPTION VARCHAR2(200 BYTE),
DIVISION_ID INTEGER
)
Бұл «Баланстық шоттар (Account)» кестесінің құрылу программасы.
CREATE TABLE CUSTOMER
(
ID
SHORT_NAME VARCHAR2(60 BYTE),
CUST_TYPE VARCHAR2(10 BYTE),
DATEREGISTRY DATE,
RESIDENT INTEGER,
DIVISION_ID INTEGER,
SECTOR_ECONOMY VARCHAR2(10 BYTE),
STATUS
FILENUMBER VARCHAR2(30 BYTE)
)
Бұл «Тұтынушылар (Customer)» кестесінің құрылу программасы.
Мәліметтер қорындағы 11 кесте бір-бірімен өзара байланысқан. Әр кестенің
ALTER TABLE CUSTOMER ADD (
CONSTRAINT PK_K
13-сурет. Мәліметтер қорының құрылымы PRIMARY KEY
(ID)
Сол «кілттер» арқылы кестелер арасындағы байланыс орнатылады. Байланысты орнату
ALTER TABLE CUSTOMER ADD (
CONSTRAINT KLIENTY_DIVISION
FOREIGN KEY (DIVISION_ID)
REFERENCES DIVISION (ID));
Бұл мысалда «Тұтынушылар (Customer)» кестесі мен «Банкке қарайтын бөлімшелер
4.2 Қолданбалы интерфейстің жобалануы
Web-тің негізі болып Internet желісіне шығаруға арналған құжатты
Басқарудың қолданбалы элементтері – бұл құрастырушы өзі құра алатын
Біз «ЦентрКредит Банкінің» Депозиттік бөлімінің мәліметтер қоры программасының интерфейсін
Интерфейстің алғашқы бетінде біз алты батырманы көреміз. Олар келесілер:
14-cурет
Батырмалар(button). Форманы ұсыну (submit батырмасы) үшін қолданылатын, форманың мәліметтерін
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
Батырманы басқан кезде келесі бетке ауысады. Тұтынушылар, Келісім шарт
15-cурет
Радио-батырмалар(Radio). Бірнеше батырмалар жасап, олардың ішінен біреуін таңдауға мүмкіндік
HTP.p ('
'
);
Керекті жолды батырманы шерту арқылы таңдағаннан кейін керекті операция
Мәтіндік өрістер (Text). Олар кейде енгізу немесе өңдеу өрістері
htp.p('Наименование:');
Сондай – ақ жаңа жол енгізу үшін жанама менюлер
htp.p('Тип клиента:');
htp.p('ФЛ');
htp.p('ЮЛ');
htp.p('');
Суырылып шығатын меню ақпараттық ағынға енгізілген мәтіндік алап (жол)
16-cурет. Жанама менюлер
4.3 Программаның орындалуын сипаттау
Қолданбалы интерфейстің алғашқы бетінде алты батырма орналасқан. Ол батырмаларды
«Тұтынушы (Клиенты)» батырмасын басқан кезде келесі бет ашылады. Ол
17-cурет. Тұтынушы туралы барлық мәліметтер
«Депозиттік келісім шарттар» батырмасын басқан кезде ашылған келесі беттен
18-cурет. «Депозиттік келісім шарттар» батырмасы
19-cурет. Келісім шартты қосу
20-cурет. Жазбаны қосу
«Операциялар» батырмасы басылғаннан кейін ашылған бетте колданушы кестеден керекті
21- cурет. Операциялар
22 – cурет. Таңдалған тұтынушы туралы барлық мәліметтер
«Пайызды қосу» батырмасын басқан кезде келесі бетте қай уақытқа
23-cурет. «Пайызды есептеу»
«Операциялар» және «Пайызды қосу» батырмаларын басқаннан кейін болған өзгерістерді
(Отчет)» батырмасын басу керек. Ол батырманы басқан кезде
24-cурет. Деректерді сүзгіден өткізу
25-cурет. Қорытынды есеп
5 ЖОБАНЫҢ ЭКОНОМИКАЛЫҚ ТИІМДІЛІГІН БАҒАЛАУ
Мәліметтер қорының экономикалық тиімділігін бағалау үшін инвестицияланған капиталға кірген
Көптеген жобалардың санауға келмейтін аспекттерінің проблемасы белгілі. Кейбіреулер барлық
Тиімділік көрсеткіші ПЖ (программалық жабдықтау) қолданудағы барлық позитивті
ПЖ қолданудан Т есептік периоды бойынша алынған
ЭТ = РТ - ЗТ ,
мұндағы
РТ – ПЖ қолданудың Т периодындағы нәтижелердің бағамдық шамасы,
ЗТ - ПЖ өңдеу мен жабдықтауға кеткен шығындардың
РТ – нәтижелердің бағамдық шамасы келесі формуламен анықталады:
PT = Pt * (t,
мұндағы
Т – есептік период;
PT – t есептік периодының жылдық нәтижелерінің бағамдық
(t – дисконттау функциясы. Ол барлық шығындарды және
Дисконттау функциясы:
(t = 1/(1+p)t,
мұндағы
p – дисконттау коэффициенті (р=ЕН=0,2, ЕН – капиталдық салымдардың
Яғни,
PT = Pt * 1,2t.
Біздің жағдайда ПЖ кол еңбегін алмастырады, яғни, сондықтан пайдалы
ПЖ қолданудың жылдық нәтижесін бағалау ретінде ПЖ қолдану нәтижесінде
Ақпаратты қолдық өңдеуден автоматтандырылған өңдеуге ауыстыру экономиясы ақпаратты өңдеуге
З у= З Р- За,
мұндағы
З Р – ақпаратты қолдан өңдеуге кететін шығындар, теңге;
За - ақпаратты автоматтық өңдеуге кететін шығындар, теңге.
Ақпаратты қолдан өңдеуге кететін шығындардың формуласы, теңге:
ЗР = ОИ * Ц * ГД/НВ,
мұндағы
ОИ – қолмен өңделген ақпарат көлемі, Мбайт;
Ц - бір жұмыс сағатының бағасы,теңге/сағ;
ГД - ақпаратты қолдан өңдеудегі логикалық операцияларға кеткен қосымша
НВ - өңдеу нормасы, Мбайт/сағ.
Біздің жағдайда ОИ = 25 Мбайт, Ц
Яғни, ақпаратты қолдан өңдеуге кететін шығындар мынаған тең:
ЗР = 20*4,55*2,5/0,004 = 71063,75 теңге.
Ақпаратты автоматтық өңдеуге кететін шығындардың формуласы, теңге:
За = ta * ЦM + t0 * (ЦМ
мұндағы
ta – автоматтық өңдеудің уақыты, сағ.;
ЦМ - машинаның бір жұмыс сағатының бағасы,теңге;
t0 – оператордың жұмыс уақыты;
Ц0 – оператордың бір жұмыс сағатының бағасы, теңге/сағ.
Біздің жағдайда ta = 18 сағ, ЦМ
Яғни, ақпаратты автоматтық өңдеуге кететін шығындар мынаған тең:
За = 18*2+83,3*(2+4,26) = 557,46 теңге.
Сондықтан, ПЖ енгізуден түскен жылдық экономиясы
Эу = 71093,75 – 557,46 = 70536,29 теңге.
ПЖ қолданудың жылдық экономикалық тиімділігі келесі формуламен анықталады, теңге:
ЭГ = Эу – ЕН * ЗК,
мұндағы
ЗК – жалпы шығындар (олар алдын-ала есептелген, бізге тек
ЭГ = 705369,29 – 0,2 * 36780,48
Өңдеудің тиімділігі келесі формуламен бағаланады:
ЭР = ЭГ * 0,4/ ЗК,
ЭР = 63180,19 * 0,4/36780,48 0,68.
ЭР >0,20 болғандықтан, біздің өңдеу экономикалык орынды болып саналады.
Бұл ПЖ 5 жыл бойы қосымша енгізулерсіз қолданылады деген
PT= 70536,29*1,2t = 70536.29 + 58780.24 + 48983.53
Т=5 есептік периоды бойынша ПЖ қолданудың экономикалық тиімділігі
ЭТ = 281482.95 – 36780.48 = 244702.47 тенге.
Әлбетте, біздің автоматтандырылған жүйеміз абсолютті тиімді деп айтуға болады.
ҚОРЫТЫНДЫ
Қазіргі уақытта «мәліметтер қоры» деген сөз тіркесін бізді қоршаған
Менің дипломдық жұмысымның тақырыбы да осы мәліметтер қорымен байланысты.
мәліметтер қорындағы кестелер құрылды. Ол кестелер PL/SQL тілінде жазылды.
сол кестелер арасындағы байланыстар орнатылды.
сол кестелерге мәліметтер енгізілді.
қолданушыға мәліметтер қорындағы ақпараттарды қолдана алу мүмкіндігі ұйымдастырылды, яғни
интерфейсте колданушының жұмысын жеңілдететін көптеген мүмкіндіктер жасалды.
Сонымен қатар, жұмыстың басында қойылған есептің нәтижесіне қол жеткізілді.
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ
1. Steven Bobrowski. 7 Server Concepts Manual, 1992. –
2. Tom Portfolio. PL/SQL User’s Guide and Reference, Version
3. Glenn Maslen. Введение в ORACLE: SQL, SQL*Plus и
4. Скотт Урман. ORACLE 8: Программирование на языке PL/SQL.
5.С.Д.Кузнецов. Проектирование и разработка информационных систем. http://www.google.ru
ҚОСЫМША
Web-интерфейстің листингі:
CREATE OR REPLACE package SCOTT.pkg_diplom
as
procedure main;
procedure main_action (p_but1 in varchar2 default null);
procedure form1 (
id
short_name varchar2 default null,
cust_type varchar2 default
dateregistry varchar2 default null,
resident varchar2
division_id varchar2 default null,
sector_economy varchar2 default null,
status
filenumber varchar2 default null
);
procedure form2 (
id
period
mon_day
resident varchar2
closed
cust_type varchar2 default
p_currency varchar2
deposit_type_id varchar2 default null
);
procedure form3 (
customer_id varchar2 default null,
descr1
descr2
start_date varchar2 default null,
end_date varchar2
percent
p_account
balance
p_currency varchar2
);
procedure form4(
cust_type in varchar2,
p_account in varchar2,
p_currency in varchar2,
p_operation in varchar2) ;
end pkg_diplom;
/
CREATE OR REPLACE package body SCOTT.pkg_diplom
as
procedure main
is
begin
htp.p ('');
htp.p ('');
htp.p (' diplom_otchet ');
htp.p ('');
htp.p ('');
htp.p('');
htp.p(' Депозитный Модуль "Банка ЦентрКредит"');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
htp.p('');
end main;
----------------------
procedure main_action (p_but1 in varchar2 default null) is
begin
if p_but1='Клиенты' then
pkg_diplom.form1;
elsif p_but1='Типы договоров' then
pkg_diplom.form2;
elsif p_but1='Депозитные договоры' then
pkg_diplom.form3;
elsif p_but1='Отчет' then
otchet1_filtr;
elsif p_but1='Операции' then
pkg_operations.cust_select;
elsif p_but1='Начисление процентов' then
pkg_operations.interest_form;
elsif p_but1='Назад' then
pkg_diplom.main;
end if;
exception
when others then
htp.p(''||SQLErrm);
end;
--- Просмотр Клиентов ---
procedure form1(
id
short_name varchar2 default null,
cust_type varchar2 default
dateregistry varchar2 default null,
resident varchar2
division_id varchar2 default null,
sector_economy varchar2 default null,
status
filenumber varchar2 default null
)
is
cursor tab1 is
select id
,short_name
,decode(cust_type,1,'ФЛ',2,'ЮЛ') c_type
,dateregistry
,decode(resident,1,'Резидент',0,'Не резидент') res
,(select description from division where id=division_id) s_div
,sector_economy
,decode(status,1,'Рабочий',0,'Не рабочий') stat
,filenumber
from customer
order by id;
n_id customer.id%type;
sh_n customer.short_name%type;
c_t varchar2(5);
d_reg customer.dateregistry%type;
s_res VARCHAR2(30);
s_div varchar2(1000);
s_econ customer.sector_economy%type;
s_stat varchar2(30);
f_num customer.filenumber%type;
begin
htp.p ('');
htp.p ('');
htp.p (' Table1 ');
htp.p ('');
htp.p ('');
htp.p (' Клиенты ');
htp.p ('
');
htp.p ('');
htp.p ('');
HTP.p ('');
htp.p ('');
htp.p ('');
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p ('
htp.p('');
open tab1;
loop
fetch tab1 into n_id , sh_n , c_t, d_reg,
IF tab1%ROWCOUNT =0
THEN HTP.P('Данные отсутствуют');
END IF;
EXIT WHEN tab1%NOTFOUND;
HTP.p ('');
HTP.p ('
'
);
HTP.p ('
'||n_id||' '
);
HTP.p ( '