Conformity Degree Analysis on Software Engineering Program and Professional Norms

Автор: Zhang Gang, Wang Xiaolin

Журнал: International Journal of Education and Management Engineering(IJEME) @ijeme

Статья в выпуске: 2 vol.3, 2013 года.

Бесплатный доступ

This paper analyzes the software engineering undergraduate programs of 31 software schools in the 36 national model schools of software engineering and does conformity degree analysis on the professional norms released by the teaching guidance committee of computer science and technology of higher school under the Ministry of Education. The result shows that the conformity degree of the software engineering programs of the national model school of software engineering is higher in knowledge structure, but the difference is relatively great in courses.

Software engineering, program, professional norms, conformity degree analysis

Короткий адрес: https://sciup.org/15013821

IDR: 15013821

Текст научной статьи Conformity Degree Analysis on Software Engineering Program and Professional Norms

  • 1.    INTRODUCTION

    The professional norms released by the teaching guidance committee of computer science and technology of higher school under the Ministry of Education (TGC) in 2006 introduces the knowledge area, knowledge point and reference teaching system in computer science, computer engineering, information technology, software engineering, and more[1,2,3]. A comprehensive statistical analysis and a conformity degree analysis of the software engineering undergraduate programs of the 31 schools of software engineering (due to some reasons of data collection, programs of 5 schools are lack) in the 36 national model schools of software engineering (NMSSE) were done to have a more comprehensive understanding on the differences of undergraduate programs and the professional norms of software engineering between the 36 NMSSE. The analysis result is severed as a resource for developing or improving programs and changing the curriculum in software engineering at the undergraduate level. Also it can provide the references for revising the professional norms.

Four curriculum patterns about the programs are proposed in the professional norms for the software engineering as follow:

  • 1)    A + C + D;

  • 2)    A + C + E;

* Corresponding author.

  • 3)    B + C + D;

  • 4)    B + C + E;

  • 2.    Conformity Degree Analysis

Where A is the computer science prior courses, B is the software engineering prior courses, C is general basis professional courses, D is the core software engineering package I, and E is core software engineering package II.

The undergraduate program of software engineering of NMSSE is analyzed in the aspects of the computer science prior course, the software engineering prior course, general basis professional courses, the core software engineering package I, the core software engineering package II and so on. The software engineering prior courses will not be analyzed because of the study representing that almost the software engineering curriculum of NMSSE is the computer science prior courses.

  • A.    Analysis of Computer Science Prior Courses

The courses in this section refer to Programming Fundamentals (CS101), Object-Oriented Paradigm (CS102) and Introduction to Software Engineering (SE201).

  • a)    Programming Fundamentals and Object-Oriented Paradigm: The Programming Fundamentals and Object-Oriented Paradigm are changed greatly in the programs of each school of software engineering and covered by C/C++ programming, Java programming, and Object-Oriented programming basically. The study shows that 30 schools offer the C/C++ programming, 18 schools offer Java programming, and 21 schools offer Object-Oriented programming.

  • b)    Introduction to Software Engineering: 28 schools offer the course which has the different names such as: Software Engineering, Introduction to Software Engineering, Fundamentals of Software Engineering, Practical Software Engineering, Modern software Engineering and so on in the study.

  • B.    Analysis of General Basis Courses and Professional Courses

  • 1)    The Mathematics Fundamentals Courses

The mathematics fundamentals courses are mainly the discrete mathematics which contains Discrete Structures I (CS105) and Discrete Structures II (CS106).

  • a) Discrete Structures I and Discrete Structures II: Almost every school offers the discrete mathematics which carries 6 credits at the most, at least 3 credits and mostly 4 credits.

  • 2)    the Technical Fundamentals courses

The technical fundamentals courses are consist of 4 courses which are Data Structures and Algorithms (CS103), Computer Architecture (CS220), Operating Systems and Networking (CS226), and Databases (CS270).

  • a)    Data Structures and Algorithms: Data structures course is offered by almost all the schools. Some schools offer the algorithm course separately, some schools offer the course which combines the data structures with algorithm and some few schools don’t offer the algorithm course (at least it is not indicated clearly in the names of the courses). Data Structures and Algorithms carries 8 credits at the most, 3 credits at least, and mostly 6 or 7 credits.

  • b)    Computer Architecture: Almost all the schools offer the Computer Organization. Some schools offer the course which combines the Computer Architecture with Computer Organization and some ones offer the Computer Architecture separately. There are two schools which offer the Computer Architecture only but do not offer the Computer Organization. Two other schools offer the Principle and Interface Technique of MicroComputer instead of the Computer Architecture and Computer Organization. Actually there is not much difference among the Computer Organization, the Computer Organization and Architecture, and the Computer Architecture no matter what the name is.

  • c)    Operating Systems and Networking: All the schools offer the Operating System which carries 4 credits at the most and 3 credits at least. Also all the schools offer the Computer Network which carries 4.5 credits at the most and 2.5 credits at least. However there is no school offering the course which combines the Operating System and the Compute Network and the name like “Operating System and Computer Network” is not represented in the programs of all the schools.

  • d)    Databases: all the schools offer the Database whose name is different such as: Database Principles, Database Principles and Applications, Database System, Database Design, Database Technology and so on. It carries 4.5 credits at the most and 2.5 at least.

  • 3)    Analysis of General Professional Courses

The general professional courses refer to two courses which are the Software Engineering Approach to Human Computer Interaction (SE212) and the Software Engineering Capstone Project (SE400).

  • a)    Software Engineering Approach to Human Computer Interaction: There are only two schools which offer the Software Engineering Approach to Human Computer Interaction (the name is Interactive Software Development in one school) and 17 schools offering the User Interface Design or the Human-Computer Interaction Technology. It should be noted that although the User Interface Design or the Human-Computer Interaction Technology is similar to the Software Engineering Approach to Human Computer Interaction in the content, there still exists much difference between them.

  • b)    Software Engineering Capstone Project: All the schools offer the Software Engineering Capstone Project.

  • 4)    Non-technical Compulsory Courses

The non-technical compulsory courses contain the Engineering Economics (NT272), the Group Dynamics and Communication (NT181) and the Professional Software Engineering Practice (NT291).

  • a)    Engineering Economics: There are six schools have the relevant courses in economics. Two of them offer the Economics for Software Engineering, one offers the Software Economics, one has the IT Economics, one has the Basic Economics (option) and the last one has the Modern Economics (option). Most schools put this part in the economic management optional courses which doesn’t reflect in the program. But it also reflects the situation that engineering economics is not regarded highly in most of schools.

  • b)    Group Dynamics and Communication: There are 11 schools offering the relevant courses. Eight of them offer the Group Communication and Cooperation whose name may be the Group Communication and Cooperation, the Teamwork Art or the Communication Skills and so on. Three of them offer the Software Document Writing.

  • c)    Professional Software Engineering Practice: There are six schools offering the relevant courses but the name is different such as Computer Ethics, Intellectual Property Right and Professional Ethics, Computer society and Professional Ethics and so on. All the courses cover the content of the Professional Software Engineering Practice basically. Using the name likes Intellectual Property Right and Professional Ethics is perhaps easily to understand what content is covered in the course. Maybe the content about law, patent, society, professional ethics and so on is arranged as the content of lecture in more schools and then not showed in the curriculum. But it should be paid attention.

  • C.    Analysis of the Core Software Engineering Package I

It refers to the Software Code Development Technology (SE211), the Software Design and Architecture (SE311), the Software Quality Assurance and Testing (SE321), the Software Requirements Analysis (SE322) and the Software Project Management (SE323).

  • a)    Software Code Development Technology: No school offers the course. But there are two schools offering the Formal Methods for Software Development, four schools offering the Introduction to Formal Language and Automata, 12 schools offering the Software Component Technology, 23 schools offering the Principle of Compiling, and 9 schools offering the Distributed Computing Technology. The contents of all the courses are similar to the Software Code Development Technology but don’t cover all the contents completely.

  • b)    Software Design and Architecture: There are 18 schools offering the System Analysis and Design, 20 ones offering the Software Architecture, one offering the Software Detailed Design, and one offering the Software Design Pattern.

  • c)    Software Quality Assurance and Testing: There are 25 schools offering the relevant courses such as the Software Testing, the Software Testing and Testing Technology, the Theory and Method for Software Testing, the Software Testing and Evaluation, the Software Quality Assurance and Testing, the Software Quality System and so on. Also there are 19 schools offering the Software Process Improvement (CMMI).

  • d)    Software Requirements Analysis: In the study 11 schools offer the Software Requirements Analysis, whose name perhaps is Software Requirements Analysis, Software Requirement Engineering, Introduction of Software Requirement Engineering, Software Requirement, Requirement Engineering, Software Requirements Analysis and Design, or Software Requirements Analysis and Modeling. Also 14 schools offer the Unified Modeling Language (UML).

  • e)    Software Project Management: There are 23 schools which offer the Software Project Management such as the Software Project Management, the Software Project Organization and Management, the Software Process and Project Management, the Project Management, and the Software Project Management and Case Study.

The situation of schools offering the courses list in the Package I is shown in table 1. The courses whose names are only exactly similar to each other are statistical and other situations are not statistical.

Schools Offering Package I

Course Name

School Number

Software    Code   Development

Technology

0

Software Design and Architecture

18

Software Quality Assurance and Testing

25

Software Requirements Analysis

11

Software Project Management

23

  • D.    Analysis of the Core Software Engineering Package II

The Core Software Engineering Package II is consists of Design and Architecture of Large Software Systems (SE213), Software Testing (SE221), Low-Level Design of Software (SE312), Formal Methods in Software Engineering (SE313), and Software Process and Management (SE324).

  • a)    Design and Architecture of Large Software Systems: Related with the course are the Software Requirement Analysis, the System Analysis and Design, the Software Architecture, Software Component Technology and so on. But no one course is similar to this course in all the schools of software engineering. There are 11 schools offering the Software Requirement Analysis, 18 schools offering the System Analysis and Design, 20 schools offering the Software Architecture, and 12 schools offering Software Component Technology.

  • b)  Software Testing: 25 schools offer the relevant Software Testing course in the study.

  • c)  Low-Level Design of Software: There is only one school offering the course.

  • d)    Formal Methods in Software Engineering: Two schools offer the course. Also there is one school offering the Software Modeling and Analysis, one offering the Software Reconstruction Technology, one offering the B Method, and one offering the Z Language.

  • e)    Software Process and Management: There is only one school offering the Software Process and Management, 22 schools offering the Software Project Management, 19 schools offering the Software Process Improvement (CMMI), and 11 schools offering the Software Requirement Analysis.

  • 3.    Conclusion

The situation of schools offering the courses list in the Package II is shown in table 1. The courses whose names are only exactly similar to each other are statistical and other situations are not statistical.

table i.    Schools Offering Package II

Course Name

School Number

Design and Architecture  of Large

Software Systems

0

Software Testing

25

Low-Level Design of Software

1

Formal    Methods    in    Software

Engineering

2

Software Process and Management

1

After analyzing the program of NMSSE, it shows that the conformity degree is higher in knowledge structure and professional norms, but the difference is relatively great between curriculum and professional norms. Most schools still adopt the course-setting idea of the school of the computer science. So the pattern about the software engineering prior courses is not presented. The great difference of the core software engineering package between the schools indicates that the knowledge of core software engineering package is still inconsistent.

Acknowledgment

The authors would like to thank the many people who have contributed to the support and help, including the teaching guidance committee of computer science and technology of higher school under the Ministry of Education and the office of the national model school of software engineering under the Ministry of Education.

Список литературы Conformity Degree Analysis on Software Engineering Program and Professional Norms

  • The teaching guidance committee of computer science and technology of higher school under the Ministry of Education, Development strategy report and professional norms of computer science and technology of higher school(trial)[M]. Beijing: Higher Education Press, 2006.(in Chinese).
  • http://www.acm.org/education/curric_vols/CC2005-Maech06Final.pdf, IEEE/ACM Computing Curricula 2005, 2005.
  • http://sites.computer.org/ccse/SE2004Volume.pdf, IEEE/ACM Software Engineering 2004, 2004.
Статья научная