|Grade, Semester||Year 3 2nd semest [Department of Information and Electronic Engineering, Faculty of Science and Engineering]|
|Elective, Credits||Elective 2credit|
Software Engineering is defined as the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software(*). In the course of "Software Technologies for Information Systems Development", we learned overall outline of information system development. In "System Design", we learned design techniques for information systems. And also, in "Project Management", we learned methods to manage systematically for executing a project of information system development. We can say as this course is to treat the knowledge of learned contents of these courses with engineering approach. In this course, we learn the basis of engineering approach technique to software development.
(*)ISO/IEC/IEEE Systems and Software Engineering Vocabulary.
Students acquire skills related to the diplomatic policy, DP4C.
The learners will be able to understand the technique of engineering approach for requirement definition, design, implementation, and testing on software development, and work on these tasks practically using tools and so on.
The students will be evaluated at the following rate: reports (including self check tests on LMS) are 50% and a term-end examination is 50%. Learners who received evaluation over the total 60% will pass this course. If you add original ideas to reports or makes the its content enrich more, additional scores will be given.
The process of information system development relates to the contents of each course which you learned in this department. Especially, learners are required to review the contents of following courses : Programming, Foundations of Information Technology, Information Theory, Programming Language Theory, Data Structure and Algorithms, Database Systems, Software Technologies for Information Systems Development, Information System Design, and Project Management.
This course is a required course, and relates to the mid term 5–2 of learning attainment targets for the JABEE program.
|1||Overview of Software Engineering, SWEBOK|
|2||Requirements, Test Plans|
|3||Design Techniques 1 (Methodologies) |
|4||Design Techniques 2 (Modularization) |
|5||Design Techniques 3 (Logging Design and Implementation) |
|6||Coding Techniques 1 (Coding Styles, Refactoring)|
|7||Coding Techniques 2 (Design Patterns, Antipatterns)|
|8||Practice for Refactoring|
|9||Test Techniques 1 (Unit Test)|
|10||Exercise for Software Testing 1 (Methods to improve coverage)|
|11||Test Techniques 2 (Functional Test, System Test)|
|12||Test Techniques 3 (Test Automation)|
|13||Exercise for Software Testing 2 (Test automation using WebDriver)|
|14||Deployment, System Operation, DevOps|
|15||Term End Examination, Summary|