01219245-58
(เปลี่ยนทางจาก 01219245)
		
		
		
		
		ไปยังการนำทาง
		ไปยังการค้นหา
		This is a course homepage for 01219245/01219246 Individual Software Process and Individual Software Process Lab for 2nd semester, academic year 2558.
เนื้อหา
Announcements
Lectures
- Week 1 (Jan 22):
- Introduction. (slides)
 - Modern software development:
- Business Model Canvas Explained is a nice clip that tells you what business thinks when developing a new product.
 - Agile Product Ownership in a Nutshell (by Henrik Kniberg) gives an overall view on how software development is a collaboration between developers and stakeholders (users) and how important communication is.
 
 - Coding convention. (slides)
 - Practice on task breakdown. (slides)
 
 
- Week 3 (Feb 19):
 
- Week 4 (Mar 4):
- Project planning (slides)
 - Clean code: functions (slides)
 - Unit testing in JavaScript (cont.)
- Template for TDD practice: 219245-practice.zip
 
 
 
- Week 5 (Mar 11):
- Project-related practices: remote repository setup, 1st iteration task breakdown, time tracking, game mechanic test cases.
 
 
- Week 6 (Mar 18):
- Test design techniques (slides)
 - Practice: KU Student status
 
 
- Week 8 (Apr 8):
- Software estimations
- Agile estimating from Mountain Goat Software
 - Agile Estimation: Key Principles and Practices for Successful Agile Projects from Construx.
 
 - Code smells cheat sheet from Industrial Logic.
 
 - Software estimations
 
- Week 9 (Apr 22):
- Planning for the 3rd iteration (slides)
 - Practice TDD for objects with states (slide)
- Template: 219245-practice2.zip
 
 
 
Labs
Preparations
Various practical skills (we will discuss these topic in class as well.)
- Command-line shell: In the modern era of computing, we usually enjoy using nice GUI program to work with our files and folder.  However, command-line interface still wins in many aspects.  It can be much faster and more accurate.  In many cases, e.g., in  server maintenance and in many DevOps's activities, command-line interface is the only choice.  Here are a few how-to:
- Windows:
 - Linux:
- by tutoraLinux
 - in Thai Intro Unix CLI
 
 - Mac OS:
 
 - Master your Editor/IDE:
 
Git
JavaScript
- Getting Started with JavaScript
- After you finish each tutorial, you should try to work on its quiz to make sure that you grasp core concepts of each tutorial.
 - Tutorial 1: Number guessing game
- Self quiz after finishing the tutorial: self-quiz-tut1.pdf
 
 - Tutorial 2: Event-driven programming
- Self quiz: self-quiz-tut2.pdf
 
 - Tutorial 3: 21 Game
 - Tutorial 4: Hangman
 
 
Cococs2d-JS
We will use Cocos2d-JS as a game development framework.
- Getting started
 - Tutorial 100 - sprites
 - Tutorial 101: Sprites 2 - Flappy Dot
 - Tutorial 103: PacMan
 - Guide 200: Platform game without physics engine
 
- Empty template: cocos-emptyproject.zip
 
Video clips
- Git
 - JavaScript: basic