소프트웨어 시각화
Software visualization소프트웨어 visualization[1][2]나 소프트웨어 조직이 정보를 시각화로 그리고 systems—either 그들의 런타임의 그것의 소스 코드 또는 지표의 구조 그들의 개발 과정 그들의 structure,[4]지금 설치를 클릭의, 상호 작용 혹은 만화 정적 2D또는 3-D[3]시각적 표현 방법의 방법으로 behavior—and 소프트웨어와 관련된 말한다.cution,[5]beha그리고 진화.[6]
소프트웨어 시스템 정보
소프트웨어 시각화는 소프트웨어 시스템에 대해 사용 가능한 다양한 정보를 사용합니다.주요 정보 카테고리는 다음과 같습니다.
- 구현 아티팩트(소스 코드,
- 측정 또는 리버스 엔지니어링의 소프트웨어 메트릭 데이터,
- 실행 동작을 기록하는 트레이스,
- 소프트웨어 테스트 데이터(예: 테스트 범위)
- 변경을 추적하는 소프트웨어 저장소 데이터.
목적
소프트웨어 시각화의 목적은 소프트웨어 시스템(즉 구조)과 알고리즘(예: 정렬 알고리즘의 동작을 애니메이션화함)의 이해뿐만 아니라 소프트웨어 시스템 및 그 이상 징후(예: 높은 결합성을 가진 클래스 표시)의 분석과 탐색 및 개발 및 진화를 지원하는 것이다.소프트웨어 시각화의 장점 중 하나는 코드 변경을 소프트웨어 실행 [7]트레이스에 투영함으로써 본질적으로 연결되지 않은 소프트웨어 시스템의 정보를 결합하고 관련짓는 것입니다.
소프트웨어 시각화는 소프트웨어 시스템 정보(예: 비주얼 데이터 마이닝 [8]프로세스와 유사한 이상 징후 발견)를 탐색 및 분석하기 위한 도구 및 기술로 사용할 수 있습니다.예를 들어 소프트웨어 시각화는 코드 품질이나 팀 활동 [9]등의 모니터링 활동에 사용됩니다.시각화는 본질적으로 소프트웨어 품질을 [citation needed]보증하는 방법은 아닙니다.소프트웨어 시각화는 소프트웨어 인텔리전스에 참여하여 소프트웨어 시스템의 내부 컴포넌트를 검출하고 이를 활용할 수 있도록 합니다.
종류들
소프트웨어 시각화 도구를 사용하여 소프트웨어 개발 및 유지보수 활동 중 소스 코드 및 품질 결함을 시각화할 수 있습니다.소스 코드를 시각적인[10] 표현에 매핑하는 방법에는 여러 가지가 있습니다.예를 들어 객체 지향 소프트웨어 시스템 및 서비스의 품질 결함을 자동으로 검출하고 시각화하는 방법이 있습니다.일반적으로 이들은 소프트웨어 시스템의 다른 클래스와의 직접적 관계와 방법을 시각화하고 잠재적인 품질 결함을 표시합니다.또 다른 이점은 소프트웨어 시스템을 통한 시각적 내비게이션 지원입니다.
소프트웨어 시각화를 위해 다소 특수한 그래프 그리기 소프트웨어를 사용한다.2003년 리버스 엔지니어링 및 소프트웨어 유지보수 분야에서 활동하는 연구자를 대상으로 한 소규모 조사에서는 GraphViz 및 GraphEd와 같은 범용 그래프 그리기 패키지, Rational Rose 및 Borland Together와 같은 UML 도구, Visualization of Compil과 같은 보다 전문적인 도구 등 다양한 시각화 도구가 사용되었습니다.er 그래프(VCG) 및 Rigi.[11]: 99–100 리버스 엔지니어링 소스에 의한 비주얼라이저로서 기능할 수 있는 UML 툴의 범위는 결코 부족하지 않다.2007년의 책에서는, 전술한 2개의 툴 외에 ESS-Model, BlueJ, 및 Fujaba도 이러한 기능을 가지고 있어 Fujaba도 [12]설계 패턴을 식별할 수 있다고 기술하고 있다.
「 」를 참조해 주세요.
- 프로그램
- 관련 개념
레퍼런스
- ^ Bohnet, Johannes; Döllner, Jürgen (2006). "Analyzing Feature Implementation by Visual Exploration of Architecturally-Embedded Call-Graphs". 4th International Workshop on Dynamic Analysis. ACM Press. pp. 41–48. doi:10.1145/1138912.1138922. ISBN 1595934006. S2CID 17556465.
- ^ Diehl 2002, Diehl 2007, Knight 2002
- ^ (Marcus, Feng & Maletic 2003; Wettel & Lanza 2007)
- ^ 스테이플스 & 바이맨 1999
- ^ Trümper, J.; Döllner, J.; Telea, A. (2013). "Multiscale Visual Comparison of Execution Traces". Proceedings of the International Conference on Program Comprehension (PDF). IEEE Computer Society. pp. 53–62. doi:10.1109/ICPC.2013.6613833. ISBN 978-1-4673-3092-3. S2CID 206839054.
- ^ (Kuhn & Greevy 2006, Stasko 등 1998)
- ^ Bohnet, J.; Voigt, S.; Döllner, J. (2009). "Projecting code changes onto execution traces to support localization of recently introduced bugs". Proceedings of the 2009 ACM symposium on Applied Computing. pp. 438–442. doi:10.1145/1529282.1529378. ISBN 9781605581668. S2CID 8349297.
- ^ (Keim 2002; Soukup & Davidson 2002; Burch, Diehl & Weigergerber 2005)
- ^ Bohnet, J.; Döllner, J. (2011). "Monitoring Code Quality and Development Activity by Software Maps". Proceedings of the IEEE ACM ICSE Workshop on Managing Technical Debt. Association for Computing Machinery. pp. 9–16. doi:10.1145/1985362.1985365. ISBN 9781450305860. S2CID 17258620.
- ^ Limberger, D.; Wasty, B.; Trümper, J.; Döllner, J. (2013). "Interactive software maps for web-based source code analysis". Proceedings of the 18th International Conference on 3D Web Technology. pp. 91–98. doi:10.1145/2466533.2466550. ISBN 9781450321334. S2CID 3040005.
- ^ Koschke, Rainer (2003). "Software visualization in software maintenance, reverse engineering, and re-engineering: a research survey". Journal of Software Maintenance and Evolution: Research and Practice. 15 (2): 87–109. doi:10.1002/smr.270.
- ^ Diehl 2007, 페이지 63
추가 정보
- Roels, R.; Meştereagă, P.; Signer, B. (2016). "An Interactive Source Code Visualisation Plug-in for the MindXpres Presentation Platform". Communications in Computer and Information Science (CCIS). Springer. doi:10.1007/978-3-319-29585-5_10. ISBN 978-3-319-29584-8.
- Burch, M.; Diehl, S.; Weißgerber, P. (2005). "Visual data mining in software archives". Proceedings of the 2005 ACM symposium on Software visualization (SoftVis '05). pp. 37–46. doi:10.1145/1056018.1056024. ISBN 1595930736. S2CID 1577375.
- Diehl, S. (2002). Software Visualization. International Seminar Dagstuhl Castle, Germany, May 20–25, 2001 Revised Papers. Lecture Notes in Computer Science. Vol. 2269. Springer. doi:10.1007/3-540-45875-1. ISBN 978-3-540-43323-1. S2CID 21007575.
- Diehl, S. (2007). Software Visualization — Visualizing the Structure, Behaviour, and Evolution of Software. Springer. ISBN 978-3-540-46504-1.
- Eades, P.; Zhang, K. (1996). Software Visualisation. Series on Software Engineering and Knowledge Engineering. Vol. 7. World Scientific. ISBN 981-02-2826-0.
- Gîrba, T.; Kuhn, A.; Seeberger, M.; Ducasse, S. (2005). "How Developers Drive Software Evolution" (PDF). Proceedings of International Workshop on Principles of Software Evolution (IWPSE 2005). IEEE Computer Society Press. pp. 113–122. doi:10.1109/IWPSE.2005.21. ISBN 0-7695-2349-8. S2CID 9260583.
- Keim, D.A. (January–March 2002). "Information visualization and visual data mining". IEEE Transactions on Visualization and Computer Graphics. 8 (1): 1–8. doi:10.1109/2945.981847.
- Knight, C. (2002). "System and Software Visualization". In Chang Shi-kuo (ed.). Emerging Technologies. Handbook Of Software Engineering And Knowledge Engineering. Vol. 2. World Scientific. pp. 131–148. ISBN 978-981-4491-78-5.
- Kuhn, A.; Greevy, O. (2006). "Exploiting the Analogy Between Traces and Signal Processing" (PDF). Proceedings IEEE International Conference on Software Maintenance (ICSM 2006). IEEE Computer Society Press. pp. 394–5. doi:10.1109/ASE.2004.1342773. ISBN 0-7695-2131-2.
- Lanza, M. (2004). "CodeCrawler — polymetric views in action". Proceedings. 19th International Conference on Automated Software Engineering, Linz, Austria, 20 24 Sept. 2004. pp. 394–5. doi:10.1109/ASE.2004.1342773. ISBN 0-7695-2131-2.
- Lopez, F.L.; Robles, G.; Gonzalez, B.J.M. (2004). "Applying social network analysis to the information in CVS repositories". International Workshop on Mining Software Repositories (MSR 2004)" W17S Workshop 26th International Conference on Software Engineering, Edinburgh, Scotland, UK, 25 May 2004. IET. pp. 101–5. doi:10.1049/ic:20040485. ISBN 0-86341-432-X.
- Marcus, A.; Feng, L.; Maletic, J.I. (2003). "3D representations for software visualization". Proceedings of the 2003 ACM symposium on Software visualization. pp. 27–ff. doi:10.1145/774833.774837. ISBN 1581136420. S2CID 10263993.
- Soukup, Tom; Davidson, Ian (2002). Visual Data Mining: Techniques and Tools for Data Visualization and Mining. Wiley. ISBN 978-0-471-27138-3.
- Staples, M.L.; Bieman, J.M. (1999). "3-D Visualization of Software Structure". Advances in Computers. 49: 96–143. doi:10.1016/S0065-2458(08)60284-3. ISBN 9780120121496.
- Stasko, John; Brown, Marc H.; Domingue, John B.; Price, Blaine A. (1998). Software Visualization: Programming as a Multimedia Experience. MIT Press. ISBN 978-0-262-19395-5.
- Van Rysselberghe, F.; Demeyer, S. (2004). "Studying Software Evolution Information By Visualizing the Change History". Proceedings. 20th International Conference On Software Maintenance. IEEE Computer Society Press. pp. 328–337. doi:10.1109/ICSM.2004.1357818. ISBN 0-7695-2213-0. S2CID 16571788.
- Wettel, R.; Lanza, M. (2007). "Visualizing Software Systems as Cities". Proceedings of VISSOFT 2007 (4th IEEE International Workshop on Visualizing Software For Understanding and Analysis). IEEE Computer Society Press. pp. 92–99. doi:10.1109/VISSOF.2007.4290706. ISBN 978-1-4244-0599-2. S2CID 9974947.
- Zhang, K. (2003). Software Visualization — From Theory to Practice. Kluwer. ISBN 1-4020-7448-4.
