Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Бағдарламалық жасақтаманы визуализациялау немесе бағдарламалық жасақтаманы визуализациялау - бағдарламалық жасақтама жүйелерінің және оларға байланысты ақпараттарды визуализациялау, яғни оның бастапқы кодының архитектурасы немесе олардың орындалу уақытындағы мінез-құлқының өлшемдері, сондай-ақ олардың құрылымы, орындалуы, мінез-құлқы және эволюциясы туралы статикалық, интерактивті немесе анимацияланған 2D немесе 3D визуалды бейнелеу арқылы олардың даму процесі.
Software visualization or software visualisation refers to the visualization of information of and related to software systems—either the architecture of its source code or metrics of their runtime behavior—and their development process by means of static, interactive or animated 2 D or 3 D visual representations of their structure, execution, behavior, and evolution.
Мақсаттар
Бағдарламалық жасақтаманы визуализациялаудың мақсаттары бағдарламалық жасақтама жүйелерін (яғни оның құрылымын) және алгоритмдерді (мысалы, сұрыптау алгоритмдерінің мінез-құлқын жандандыру арқылы) түсінуді, сондай-ақ бағдарламалық жасақтама жүйелерін және олардың аномалияларын талдау мен зерттеуді (мысалы, жоғары жұптастығы бар сыныптарды көрсету арқылы) және олардың дамуы мен эволюциясын қолдау болып табылады. Бағдарламалық жасақтаманы визуализациялаудың ең мықты мүмкіндіктерінің бірі - бағдарламалық жасақтама жүйелерінің өзара байланысы жоқ ақпаратты біріктіру және байланыстыру, мысалы, кодтың өзгерістерін бағдарламалық жасақтаманың орындалу іздеріне жобалау арқылы. Бағдарламалық визуализация бағдарламалық жүйедегі ақпаратты зерттеу және талдау үшін құрал және әдіс ретінде пайдаланылуы мүмкін, мысалы, визуалды деректер өндіру процесіне ұқсас аномалияларды табу үшін. Мысалы, бағдарламалық жасақтаманы визуализациялау кодтың сапасы немесе команданың қызметі сияқты іс-шараларды бақылау үшін қолданылады. Визуализация бағдарламалық қамтамасыз ету сапасын қамтамасыз ету әдісі емес. Бағдарламалық жасақтаманы визуализациялау бағдарламалық жасақтамалық жүйелердің ішкі компоненттерін ашуға және игеруге мүмкіндік беруде бағдарламалық жасақтамалық интеллектке қатысады.
The objectives of software visualization are to support the understanding of software systems (i. e., its structure) and algorithms (e. g., by animating the behavior of sorting algorithms) as well as the analysis and exploration of software systems and their anomalies (e. g., by showing classes with high coupling) and their development and evolution. One of the strengths of software visualization is to combine and relate information of software systems that are not inherently linked, for example by projecting code changes onto software execution traces. Software visualization can be used as tool and technique to explore and analyze software system information, e. g., to discover anomalies similar to the process of visual data mining. For example, software visualization is used to monitoring activities such as for code quality or team activity. Visualization is not inherently a method for software quality assurance. Software visualization participates to Software Intelligence in allowing to discover and take advantage of mastering inner components of software systems.
Түрлері
Бағдарламалық жасақтаманы визуализациялау құралдары бағдарламалық жасақтаманы әзірлеу және техникалық қызмет көрсету кезінде бастапқы кодты және сапа ақауларын визуализациялау үшін пайдаланылуы мүмкін. Ресурстық кодты визуалды бейнелеуге карталаудың әртүрлі тәсілдері бар, мысалы бағдарламалық карталар арқылы Олардың мақсаты, мысалы, объектке бағдарланған бағдарламалық жүйелер мен қызметтердегі сапа ақауларын автоматты түрде анықтау мен визуализациялауды қамтиды. Әдетте олар сыныптың және оның әдістерінің бағдарламалық жүйедегі басқа сыныптармен тікелей байланысын бейнелейді және сапаның ықтимал ақауларын белгілейді. Бағдарламалық жүйе арқылы визуалды навигацияны қолдау - бұл қосымша артықшылық. Бағдарламалық жасақтаманы визуализациялау үшін аздаған арнайы графиктік сызу бағдарламалық жасақтамасы қолданылады. Кері инженерия және бағдарламалық қамтамасыз ету саласында белсенді зерттеушілердің 2003 жылғы шағын масштабтағы зерттеуінде графиктік кескіндемелерді GraphViz және GraphEd сияқты жалпы мақсаттағы графиктік кескіндемелерді, UML құралдарын Rational Rose және Borland Together сияқты және компилятор графиктерін визуализациялау (VCG) және Rigi сияқты мамандандырылған құралдарды қоса алғанда, көптеген түрлі визуализациялық құралдар қолданылғанын анықтады. Кері инженерия көзі арқылы визуализатор ретінде әрекет ететін UML құралдарының ауқымы аз емес; 2007 жылғы кітапта жоғарыда аталған екі құралдан басқа ESS Model, BlueJ және Fujaba-да бұл мүмкіндік бар екендігі және Fujaba-ның дизайн үлгілерін де анықтай алатыны айтылған.
Tools for software visualization might be used to visualize source code and quality defects during software development and maintenance activities. There are different approaches to map source code to a visual representation such as by software maps Their objective includes, for example, the automatic discovery and visualization of quality defects in object oriented software systems and services. Commonly, they visualize the direct relationship of a class and its methods with other classes in the software system and mark potential quality defects. A further benefit is the support for visual navigation through the software system. More or less specialized graph drawing software is used for software visualization. A small scale 2003 survey of researchers active in the reverse engineering and software maintenance fields found that a wide variety of visualization tools were used, including general purpose graph drawing packages like GraphViz and GraphEd, UML tools like Rational Rose and Borland Together, and more specialized tools like Visualization of Compiler Graphs (VCG) and Rigi. The range of UML tools that can act as a visualizer by reverse engineering source is by no means short; a 2007 book noted that besides the two aforementioned tools, ESS Model, BlueJ, and Fujaba also have this capability, and that Fujaba can also identify design patterns.