Basic academic skills (1) (2) (4) Specialized knowledge and literacy (3) Ability to continually improve own strengths Problem setting (4) Hypothesis



Similar documents
Division of Mathematical Sciences

Computer Science Course Descriptions Page 1

GET 114 Computer Programming Course Outline. Contact: Office Hours: TBD (or by appointment)

CS4507 Advanced Software Engineering

Gogebic Community College Course Syllabus Spring, 2015 Online Course COURSE: Introduction to Entrepreneurship Bus 215

Course Descriptions. preparation.

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor

HARDWARE AND SOFTWARE COMPONENTS Students will demonstrate an understanding of the relationship between hardware and software in program execution.

Digital Industries Trailblazer Apprenticeship. Software Developer - Occupational Brief

Design of Expanded Assessment Management System for Open-Source Moodle LMS Module

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

THE UNIVERSITY OF HONG KONG FACULTY OF BUSINESS AND ECONOMICS

INFS 2603 BUSINESS SYSTEMS ANALYSIS

Sistemi ICT per il Business Networking

Management Information Systems 260 Web Programming Fall 2006 (CRN: 42459)

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

INFS5873 Business Analytics. Course Outline Semester 2, 2014

Assessment for Master s Degree Program Fall Spring 2011 Computer Science Dept. Texas A&M University - Commerce

Course Descriptions. CS 101 Intro to Computer Science

Course Bachelor of Information Technology majoring in Network Security or Data Infrastructure Engineering

Course Syllabus. Project Management Certificate

SYLLABUS CIS 3660: OBJECT-ORIENTED SYSTEM ANALYSIS AND DESIGN SPRING 2010

King Saud University

Teaching Requirements through Interdisciplinary Projects

Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci

Software Specification and Architecture 2IW80

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

How To Develop A Telelogic Harmony/Esw Project

Object-oriented design methodologies

Required Textbook and Materials Title Small Business Management in the 21st Century David T. Cadden, Sandra L. Lueder eisbn

FINC 6532-ADVANCED FINANCIAL MANAGEMENT Expanded Course Outline Spring 2007, Monday & Wednesday, 5:30-6:45 p.m.

Course Syllabus. COSC 1437 Programming Fundamentals II. Revision Date: August 21, 2013

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11

COWLEY COLLEGE & Area Vocational Technical School

Putting It All Together

CTI Higher Certificate in Information Systems (Engineering)

Introduction to Information Systems. 2 hrs lecture 2 hrs lab

Effective Fall 2016 New Course Proposal CMN 3020, Public Relations Research, Evaluation, and Measurement. 2. Course prefix and number: CMN 3020

Benefits of Test Automation for Agile Testing

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)

Engineering. Software. Eric J. Braude. Michael E. Bernstein. Modern Approaches UNIVERSITATSBIBLIOTHEK HANNOVER ' TECHNISCHE INFORM ATIONSBIBLIOTHEK

SCHOOL OF MANAGEMENT

1.3 What is Project Management? 1.4 Relationship Among Project Management,

CS135 Computer Science I Spring 2015

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices

50 Computer Science MI-SG-FLD050-02

SCHOOL OF ENGINEERING Baccalaureate Study in Engineering Goals and Assessment of Student Learning Outcomes

RARITAN VALLEY COMMUNITY COLLEGE COURSE OUTLINE. CISY 103 Computer Concepts and Programming

Chap 1. Introduction to Software Architecture

How To Teach C++ Data Structure Programming

RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE. CISY 105 Foundations of Computer Science

Information and Technology Literacy Framework. PreK-12

Design Document Version 0.0

Advanced Software Engineering COSC Department of Computing Sciences Fall 2015

02-201: Programming for Scientists

Syllabus CIS 3630: Management Information Systems Spring 2009

Computer Science 401 Introduction to Computers Spring 2012 Syllabus

Business Statistics. Successful completion of Introductory and/or Intermediate Algebra courses is recommended before taking Business Statistics.

Semester/Year: Spring, 2016

THE BCS PROFESSIONAL EXAMINATIONS Certificate in IT. October Examiners Report. Information Systems

Business Modeling with UML

MIS 460 Project Management

Looking to. pass the exam. training is. America. (unauthorized. courseware) 5 Days. of Training. happy. first day. training) have a highh

LAGUARDIA COMMUNITY COLLEGE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS, ENGINEERING, AND COMPUTER SCIENCE

MARKET RESEARCH COURSE SYLLABUS

University of Split Department of Professional Studies BUSINESS ETHICS COURSE SYLLABUS

Describe the process of parallelization as it relates to problem solving.

CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards

HIT 210. Basic CPT Procedural Coding. Syllabus

Project Management Training Services

MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE

COURSE OUTLINE. Prerequisites: Course Description:

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal

Candidates will demonstrate ethical attitudes and behaviors.

Assessment Processes. Department of Electrical and Computer Engineering. Fall 2014

BUSSTAT 207 Introduction to Business Statistics Fall 2015

Module 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur

Course Outline. Fall Session 2015 A03

CSE 3231 (Approved): Software Engineering Techniques

Module 1. Introduction to Software Engineering. Version 2 CSE IIT, Kharagpur

Texas Essential Knowledge and Skills Correlation to Video Game Design Foundations 2011 N Video Game Design

2667A - Introduction to Programming

Office: LSK 5045 Begin subject: [ISOM3360]...

CCA CYBER SECURITY TRACK

ITNW 2305 Network Administration COURSE SYLLABUS

Information Systems and Technology in Healthcare

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS INTRODUCTION TO STATISTICS MATH 2050

DSCI 3710 Syllabus: Spring 2015

Project Lifecycle Management (PLM)

Computer Integrated Manufacturing Course Outline

Transcription:

1. Course Title(Course Code) Software Engineering(2236) 2. Instructor Mamoru ITO 3. Term Spring 1 4. Outline and Objectives Software plays an increasingly important role in the evolution of ICT systems. However, it is actually hard to develop software on time, on budget, and on target. It is widely believed that many software development projects fail or are challenged. This course will provide comprehensive and interdisciplinary learning opportunities for those who wish to tackle the challenges of software projects. This course will cover both software engineering and project management issues. 5. Goals (Attainment Targets) (1) To have the basic understanding of software life cycle and process models (2) To be able to utilize basic techniques in software development (3) To understand how to develop practical software in the right way (4) To deepen an understanding of the environment that surrounds software projects 6. Correspondence relationship between Educational goals and Course goals High -level ICT skill Human skill (Tankyu skill) Educational goals Course goals Basic academic skills (1) (2) (4) Specialized knowledge and literacy (3) Ability to continually improve own strengths Problem setting (4) Hypothesis (4) Ability to discover and planning resolve the problem in Hypothesis society testing Practice Fundamental Competencies for Working Persons Ability to step forward Ability to think through Ability to work in a team Professional ethics (4) (2) (3) 30

7. Requirements None 8. Textbooks This course does not use a textbook. Students can obtain lecture materials on Moodle. 9. Reference Books None 10. Evaluation Goals term-end exam Evaluation method & point quiz essay presentation deliverable other (1) (2) (3) (4) Total 30 25 25 10 10 31

Course Schedule (Notice) This schedule is a tentative plan, there might be changes, additions, revisions etc. at the time of delivering the course. Lesson 1: Basic Principles (Lecture, 90 min) The Software runs on a computer. The basic knowledge on computers expands an understanding of software development. We will learn how a computer works in this lesson. 1. Introduction 2. Computer organization 3. Machine language and assembly language 4. Flow of a program 5. Interrupt handling Lesson 2 : Data Structures and Algorithms (Lecture, 90 min) The data structures and algorithms should be considered for us to design a computer program. This lesson will provide students with the introduction of data structures and algorithms. 1. Major data structures array, list, stack, queue, and tree 2. Major algorithms - sorting algorithms and search algorithms 3. Computational complexity Lesson 3: Software and Software Engineering (Lecture, 90 min) The software grows increasingly important along with the popularization of computers. We will discuss the reality surrounding software development after the understanding of the features of the software and learn the necessity of software engineering. 1. Features of software 2. Importance of software 3. Environment surrounding software development 4. Role of software engineering Lesson 4: Software Development Processes (Lecture, 90 min) A Process can be defined as a set of interrelated or interacting activities, which transforms inputs into outputs. Good process is required to produce good outputs. We will learn the overview of software life cycle process models and the meaning of process improvement. 1. Definition of software process 2. Life cycle models 3. Present situation and issues on software process 4. Meaning of software improvement 32

Lesson 5: Project Management Processes (Lecture, 90 min) Generally, software is developed by a project team. The project team should be managed adequately. This lesson will clarify a project, project management, project lifecycle, and project organizations. 1. Definition of project and project management 2. Project life cycle 3. Relationship with organizations and stakeholders 4. Trend in project management standards Lesson 6: Requirements Analysis (Lecture, 90 min) The role of a software engineer is to realize the requirements of customers and users by use of software. But their requirements are sometimes ambiguous and lack consistency. We should acquire their requirements exhaustively and analyze them systematically. We will marshal the concepts of requirements and flow of requirement analysis. 1. Difference between need want and demand 2. Functional requirements and non-functional requirements 3. Flow of requirements analysis 4. Requirements modeling Lesson 7: Software Design Techniques (Lecture, 90 min) The optimum design technique should be selected based on the target and objectives of software development. This lesson introduces major software design techniques such as structured design and object-oriented design. 1. Introduction of major software design techniques 2. Structured design 3. Object-oriented design Lesson 8: Software Testing (Lecture, 90 min) Software testing is becoming important because defects in software have the significant impact on the society. We will learn the positioning of software testing, kinds of software testing, and testing techniques in this lesson. 1. Necessity and limitation of software testing 2. Flow of software development and testing phases 3. White box test and black box test 4. The major testing techniques Lesson 9: Software Quality (Lecture, 90 min) One of the objectives of software engineering is to develop high-quality software. Management on software quality is more important than that of hardware quality because software is invisible. We will understand the whole picture of software quality and necessary activities to achieve the required quality in 33

this lesson. 1. Difference between quality and grade 2. Software quality model 3. Quantitative quality management 4. Software design review Lesson 10: Unified Modeling Language (UML) (Lecture, 90 min) UML is becoming commonly used with object-oriented technology. UML stands for Unified Modeling Language, which is a useful tool for analysis and design of complex software systems. We will learn how to describe major diagrams. 1. Overview 2. Modeling types and standard diagrams 3. Structural Modeling Diagrams 4. Behavioral Modeling Diagrams Lesson 11: Object-Oriented Methodology (Lecture, 90 min) The object-oriented methodology is becoming popular in association with increasing in size and complication of software. This methodology is used not only for programming but also for requirements analysis and software design. This lesson will focus on object-oriented analysis and design by the use of UML modeling. 1. A brief history of object-oriented methodology 2. Object-oriented analysis 3. Modeling and UML diagrams 4. Object-oriented design Lesson 12: Exercises in Analysis and Design (Excises, 90 min) Software analysis and design include various activities from requirements analysis to implementation, which holds an extremely important position in software developments. In the following three lessons, exercises in the analysis and design of software systems are conducted through group work. After the exercises, each group of the students makes a presentation on the results of group work. 1. Exercises in dynamic and functional modeling 2. Exercises in requirements analysis 3. Exercises in software design 4. Presentation Lesson 13: Exercises in Analysis and Design (Excises, 90 min) We will continue the exercises in this lesson. 1. Exercises in dynamic and functional modeling 2. Exercises in requirements analysis 34

3. Exercises in software design 4. Presentation Lesson 14: Exercises in Analysis and Design (Excises, 90 min) We will continue the exercises in this lesson. 1. Exercises in dynamic and functional modeling 2. Exercises in requirements analysis 3. Exercises in software design 4. Presentation Lesson 15: Summary and the Latest Topics (Lecture, 90 min) Software engineering is advancing as well as information and communication technologies. We will learn the latest trend in software engineering. Issues in engineering ethics also will be covered in this lesson. 1. The latest topics of software development 2. The latest topics of project management 3. Engineering ethics in software Lesson 16: Term-end Examination (Examination, 90 min) The term-end examination will be conducted to evaluate an achievement degree of each student. 35