From a045e55f3ba8032342f1f923278f8eb86f51cae4 Mon Sep 17 00:00:00 2001 From: chief Date: Sat, 17 Jul 2021 11:03:05 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=9F=A5=E9=97=AE=E5=8D=B7=E5=9C=A8do?= =?UTF-8?q?c=E7=9B=AE=E5=BD=95=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/Questionnaire.txt | 85 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 doc/Questionnaire.txt diff --git a/doc/Questionnaire.txt b/doc/Questionnaire.txt new file mode 100644 index 0000000..8a77e25 --- /dev/null +++ b/doc/Questionnaire.txt @@ -0,0 +1,85 @@ +Questionnaire + +Here lists all the questions of our questionnaire: + +1. Is there any design documentations in projects that you have worked? +\item[(A)] Yes.(81.82\%) +\item[(B)] No.(18.18\%) + +1.1. If design documentations do exist, then do their contain design model diagrams? +\item[(A)] Yes.(75\%) +\item[(B)] No.(19.44\%) +\item[(C)] Contain other diagrams.(2.78\%): Hierarchical architecture diagram, non-standard process diagram. + +1.1.1. If design models do exist, then what are their forms of presentation? +\item[(A)] UML class diagram.(46.43\%) +\item[(B)] UML sequence diagram.(53.57\%) +\item[(C)] UML component diagram.(28.57\%) +\item[(D)] Non-UML wireframe.(53.57\%) +\item[(E)] Other.(10.71\%): UML activity diagram. + +1.1.2. Do you think that the design diagrams are complete? +\item[(A)] Yes.(25\%) +\item[(B)] No.(75\%) + +1.1.3. What type of jobs do you use design model diagrams for? +\item[(A)] Understand the architecture of source code.(67.86\%) +\item[(B)] Help fix bugs.(10.71\%) +\item[(C)] Help evolve designs.(57.14\%) +\item[(D)] Other.(3.57\%) +\item[(E)] Never use design model diagrams.(0\%) + +1.1.4. If design model diagrams do exist, are there any tracings between the design model diagrams and the source codes? +\item[(A)] Yes.(35.71\%) +\item[(B)] No.(64.29\%) + +1.1.5. If design model diagrams do exist, are they consistent with the source code? +\item[(A)] Yes.(50\%) +\item[(B)] No.(50\%) + +1.1.6. How do you check the consistency between design model diagrams and source codes? +\item[(A)] Use automatic/semi-automatic tools.(14.29\%) +\item[(B)] Manually.(57.14\%) +\item[(C)] Never check.(46.43\%) +\item[(D)] Other.(3.57\%): Code review. + +2. When you begin to work in a legacy project, do you think design models can help you understand the source codes? +\item[(A)] No help.(9.09\%) +\item[(B)] Little help.(34.09\%) +\item[(C)] Help a lot.(54.55\%) +\item[(D)] Other.(2.27\%) + +2.1. If you wish to have design model diagrams to help you understand the source codes, then what level of the diagrams would be enough? +\item[(A)] High-level module division, such as software architecture diagram.(70\%) +\item[(B)] Function modules with hierarchies and the structures of child modules, such as component diagram, package diagram.(65\%) +\item[(C)] Detailed design model that could be traced to source code, such as class diagram.(50\%) +\item[(D)] Business process model.(52.5\%) +\item[(E)] System runtime logic diagram, such as sequence diagram or method call diagram.(50\%) +\item[(F)] Other.(2.5\%) + +2.2. If you wish to have design model diagrams, then do you wish that they are also traced to the source code? +\item[(A)] Yes.(85\%) +\item[(B)] No.(15\%) + +3. What is your work place? +\item[(A)] Enterprise.(63.64\%) +\item[(B)] Research institute.(9.09\%) +\item[(C)] School.(31.82\%) +\item[(D)] Government.(2.27\%) +\item[(E)] Other.(4.55\%) + +4. What is your job? +\item[(A)] Requirement analysis.(40.91\%) +\item[(B)] Architecture design.(45.45\%) +\item[(C)] Programming.(59.09\%) +\item[(D)] Test.(18.18\%) +\item[(E)] Maintenance.(6.82\%) +\item[(F)] Product manager.(11.36\%) +\item[(G)] Other.(6.82\%): Organization leader. + +5. Anything that you want to say about the tracings or consistency between design models and source codes. +\item[(1)] Usually the only the source codes change while the models don't. After some evolvements, the source codes cannot be traced to models. +\item[(2)] For developers, there are many tools for code structure analysis. Some small-scale projects can even trace the design to the source codes. The maintenance of the design model is a waste of time. Some business schools are suitable for studying these things, some software engineering knowledge is already contained by the MBA library. The design models should be used for sale, who are totally irrelevant with software. +\item[(3)] The consistency between source codes and design is not maintained. Once the architecture needs change, developers directly change source codes without changing models and documentations. +\item[(4)] The reverse engineering is weak at generating models for some source codes in libraries. +\item[(5)] Actually the industries just discuss on some issues, and then rapidly change source codes. The documentation are only changed when ``they have spare time''. \ No newline at end of file -- Gitee