Advanced Software Engineering

KAMIDE, Norihiro
  Elective  2 credits
【 Informatics Science〈Correspondence Course〉(Master's Degree Program)・full year】
19-3-1722-3816

1.
Outline
 The contents of the lectures are summarized as follows: (1) software process models (waterfall model and agile model), (2) phasese of software process model (requirement analysis, software design, programming, software test and software maintenance), (3) software development methods (structured analysis/design technique and object-oriented methodology), and (4) software verification/specification methods (formal method, model checking, etc.).
2.
Objectives
 The aim of this course is to understand the following items: (1) software process models, (2) software development methods, and (3) logic-based software verification/specification methods such as model checking.
3.
Grading Policy
 Students are evaluated by a term examination, some midterm examinations, and some quizzes.
4.
Textbook and Reference
[1] Michael Huth and Mark Ryan, Logic in Computer Science: Modelling and Reasoning about Systems, Cambridge University Press, 2012.
[2] Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) , IEEE Computer Society, http://www.computer.org/web/swebok
5.
Requirements (Assignments)
 Students should read the slides of the lecture. The video contents of the lecture should be viewed.
 The following site should be bookmarked:
Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) , IEEE Computer Society, http://www.computer.org/web/swebok
6.
Note
 LMS is used in this course.

7.
Schedule
1. Introduction
2. Software process models
3. Requirement analysis
4. Software design
5. Programming
6. Software test
7. Software maintenance
8. Structured analysis/design technique
9. Object-oriented methodology (1): Concepts
10. Object-oriented methodology (2): Examples
11. Modeling technique (1): Concepts
12. Modeling technique (2): Examples
13. Formal methods and verification technique (1): Concepts
14. Formal methods and verification technique (2): Model checking
15. Software evaluation
1.
Outline
 The contents of the lectures are summarized as follows: (1) software process models (waterfall model and agile model), (2) phasese of software process model (requirement analysis, software design, programming, software test and software maintenance), (3) software development methods (structured analysis/design technique and object-oriented methodology), and (4) software verification/specification methods (formal method, model checking, etc.).
2.
Objectives
 The aim of this course is to understand the following items: (1) software process models, (2) software development methods, and (3) logic-based software verification/specification methods such as model checking.
3.
Grading Policy
 Students are evaluated by a term examination, some midterm examinations, and some quizzes.
4.
Textbook and Reference
[1] Michael Huth and Mark Ryan, Logic in Computer Science: Modelling and Reasoning about Systems, Cambridge University Press, 2012.
[2] Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) , IEEE Computer Society, http://www.computer.org/web/swebok
5.
Requirements (Assignments)
 Students should read the slides of the lecture. The video contents of the lecture should be viewed.
 The following site should be bookmarked:
Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) , IEEE Computer Society, http://www.computer.org/web/swebok
6.
Note
 LMS is used in this course.

7.
Schedule
1. Introduction
2. Software process models
3. Requirement analysis
4. Software design
5. Programming
6. Software test
7. Software maintenance
8. Structured analysis/design technique
9. Object-oriented methodology (1): Concepts
10. Object-oriented methodology (2): Examples
11. Modeling technique (1): Concepts
12. Modeling technique (2): Examples
13. Formal methods and verification technique (1): Concepts
14. Formal methods and verification technique (2): Model checking
15. Software evaluation