Кіріспе

Интернет жылдамдығын дамыту - бұл жылдам өнімді дамытуға бағытталған күнделікті құрастырулармен біріктірілген спиральді модель / шарлауық моделін қолданатын жедел бағдарламалық қамтамасыз етуді дамыту әдісі. Ол 90-жылдардың соңында әзірленді, өйткені бағдарламалық жасақтама дамуы тез өзгеріп жатты. Компаниялар жобаға белгіленген мерзімде дұрыс талаптарға сай өнімдер жеткізуде қиындықтарға тап болды және сондықтан бағдарламалық қамтамасыз етуді дамытудың неғұрлым жеңіл әдістеріне ауысты. Интернет жылдамдығының әдісі қалай дамығаны туралы қосымша мәліметтерді Абрахамсонның еңбегіндегі эволюциялық картадан көруге болады.

Интернет жылдамдығын дамытудың негізгі идеялары

Бағдарламалық жасақтамаларды жасаудағы ең үлкен проблемалардың бірі - талаптардың тез өзгеруі. Интернет жылдамдығын дамыту әдісі осы жағдайға бейімделу үшін жасалды. Бұл идея бағдарламалық жасақтама инженерлік модельдеріндегі екі негізгі стандартты, атап айтқанда спиральді модель мен шарлауық моделін жаңа модельге біріктіру және осы жаңа модельге жаңа бағдарламалық жасақтама инженерлік әдісін негіздеу. Су тасқыны моделінің басты кемшілігі - талаптардың өзгеруі кезінде өте қатаң және өте икемді емес, ал спиральді модельдің кемшілігі - ол өте құрылымсыз. Интернет жылдамдығын дамытудың идеясы - бұл модельдерді біріктіру осы кемшіліктерге ие емес әдісті қамтамасыз етеді және талаптарды тез өзгерте алатын жағдайларда пайдалану үшін жақсы әдіс болып табылады, бірақ жобаны құрылымдық түрде орындау керек.

Әдістің мақсаты

Интернет жылдамдығын дамыту әдісінің мақсаты бағдарламалық жасақтаманы әзірлеушілерге жобаны құрылымдалған түрде орындауға мүмкіндік беру, бірақ клиенттің қажеттіліктеріне бейімделуге мүмкіндік беру. Ол бағдарламалық өнімдерді қысқа мерзімде, қарқынды әзірлеу арқылы жеткізуді көздейді. Бұл әдіс толық іске асырылған жүйені жеткізуге мүмкіндік береді, сонымен қатар жобаның жетістіктерін анықтаудың жолдарын көрсетеді. Бұл әдістің негізгі нұсқаларының бірі Microsoft-пен құрылған және Microsoft Solutions Framework деп аталады.

Интернет жылдамдығын дамыту әдісінің тұжырымдамалары

Интернет жылдамдығын дамыту үшін маңызды тұжырымдама - бұл көзқарас пен ауқымды құру (жобаларды басқару). Бұл дегеніміз, жобаның басында жүйе қандай болуды мақсат еткенін, оның аясына не кіретінін және не кірмейтінін түсіндіретін жалпы жүйелік анықтама жасалады. Бұл негізгі қадамдардың бірі, өйткені ол әзірлеушілерге кез-келген талаптарды тоқтатпай, жүйе қандай болатыны туралы нұсқаулар береді. Мақсатты мақсатпен жүзеге асыруды көзқарасты баяндамамен құжаттауға болады. Бұл әдістегі тағы бір маңызды тұжырымдама - ауқымды басқару. Жобаның барлық кезеңінде ауқымды басқару қажет, сонда ол кідіріспен жүреді. Ауқымы ерте анықталады және ауқымына енгізілетін өзгерістер (мысалы, жобаның ауқымынан тыс болып саналатын қосымша мүмкіндіктерді қосу) бағаланып, қабылданды немесе қабылданбады. Аумақты өзгерту мүмкін, бірақ бұл әрқашан сипаттамалар, ресурстар мен уақыт арасындағы сауда-саттыққа әсер етеді. Интернет жылдамдығын дамыту әдісі дәстүрлі әдістерден ерекшеленеді, сондықтан Agile әдісі қағидаттарын қолданады. Ол талаптарға бейімделуге бағытталған және осылайша жедел бағдарламалық жасақтаманы әзірлеудің негізгі қағидаттарына негізделген. Интернет жылдамдығын дамыту сонымен қатар өнім жасалған бір тұрақты архитектураны пайдалануға бағытталған және даму жылдамдығын арттыру үшін құралдарға қатты сүйенеді. Интернет жылдамдығын дамытудың тағы бір негізгі тұжырымдамасы - бұл шағын командаларды пайдалануға да назар аударады. Бұл жобалардың барлығы кішігірім іс-шараларға бөлініп, бір мезгілде жүзеге асырылуы мүмкін деген ойда. Кішігірім топтар көбінесе өз міндеттеріне көбірек көңіл бөледі, ал жауапкершілікті анықтау және жобаның ілгерілеуін бақылау оңайырақ болады. Интернет жылдамдығын дамытудың осы бөлімінде қарастырылған соңғы тұжырымдама - қатар даму тұжырымдамасы. Бұл тұжырымдама негізінен барлық бағдарламалық жасақтама әзірлеу мүмкіндігінше жиі қатар жасалатынын білдіреді. Бұл өте тез дамуға мүмкіндік береді және кіші командаларға өздерінің ерекшеліктеріне мүмкіндігінше көбірек назар аударуға мүмкіндік береді, бұл сапаға жақсы әсер етеді. Кіші командалардың соңғы жүйені құруда бірлесіп жұмыс істеуін қамтамасыз ету үшін олардың дамуын жиі үйлестіру қажет. Бұл күнделікті құрастыруларды қолдану арқылы жүзеге асырылады, яғни барлық әзірлеушілер өздерінің кодтарын күннің соңында тексереді, содан кейін құрастыру жасалады, содан кейін оны бағалау және прогрессті бақылау үшін сынау мүмкін. Құрастыруда функция аяқталғаннан кейін оны сынап, жетілдіруге болады, бұл кейде синхрондау және тұрақтандыру процесі деп аталады. Дамытылған мүмкіндіктер құрастырумен синхрондалады және сыналады. Осы сынақтардан кейін кез келген қателер түзетіледі және функция жақсы жұмыс істеуі үшін жетілдірілуі мүмкін (бұл тұрақтандыру бөлігі). Интернет жылдамдығын дамыту жедел принциптерге негізделген және ол экстремалды бағдарламалау, рационалды біріктірілген процесс, DSDM және ерекшеліктерге негізделген дамумен көптеген ұқсастықтарға ие. Интернет жылдамдығын дамыту бұл әдістерден өзгеше, өйткені ол сонымен қатар тәуекелдерді басқарудың кеңінен жоспарлауын қамтиды және жобаның өте маңызды мақсаты ретінде сапаға ие. Интернет жылдамдығын дамытудың даму кезеңі ашық бастапқы кодты бағдарламалық қамтамасыз етуді дамыту моделімен кейбір ұқсастықтарды көрсетеді, өйткені әлемдегі көптеген әзірлеушілер Интернет арқылы байланыс пен код пен құжаттаманы сақтау үшін қоймаларды пайдалану арқылы даму процесінің бөлігі бола алады.

Интернет жылдамдығын дамыту үшін қолданылатын құралдар

Сурет салу құралдары (мысалы: Microsoft Visio, Rational Rose, Dia) Диаграммалар жасау үшін. Сөздерді өңдеу құралдары (мысалы: Microsoft Word, OpenOffice. Бұл - көзқарасты немесе ауқымды жазу сияқты мәтіндік құжаттарды жасау үшін. Электрондық кестелер (мысалы: Microsoft Excel, OpenOffice. Қауіп-қатерлер тізімдерін және шығындарды есептеу үшін. Жобалық құралдар (мысалы: Microsoft Project, OpenProj, Gnome Planner, Calligra Plan) Жобалық іс-шараларды жоспарлау үшін. Деректер қорын және деректер қорын басқару құралдары (мысалы: MS SQL Server, MySQL, Oracle, PostgreSQL) Білім базаларын жасау үшін. Автоматтандырылған тестілеу құралдары (мысалы: тестілеу скрипттері) Күнделікті құрастырудан кейін тестілеуді орындау үшін.