88744065: Software Development Process

3(3-0-6)

Join Classroom

คำอธิบายรายวิชา:
ความรู้เบื้องต้นเกี่ยวกับวิศวกรรมซอฟต์แวร์, กระบวนการพัฒนาซอฟต์แวร์, การบริหารโครงการซอฟต์แวร์, กระบวนการวิศวกรรมความต้องการ, แบบจำลองระบบ, การออกแบบ, การสร้างซอฟต์แวร์, การทดสอบ, การตรวจสอบความถูกต้อง, ตัวชี้วัดซอฟต์แวร์, การประกันคุณภาพซอฟต์แวร์, การจัดการและควบคุมการเปลี่ยนแปลงในการพัฒนางานด้านซอฟต์แวร์, การบำรุงรักษาซอฟต์แวร์

Software engineering overview; software development processes, software project management; software requirements and specification, software design, software testing and validation, software metrics, software quality assurance; software configuration management; software maintenance
วัตถุประสงค์รายวิชา:
  1. เพื่อให้นิสิตมีความรู้ความเข้าใจเกี่ยวกับกระบวนการพัฒนาซอฟต์แวร์
  2. เพื่อให้นิสิตสามารถนำความรู้เกี่ยวกับกระบวนการพัฒนาซอฟต์แวร์ไปประยุกต์ใช้ในการพัฒนาซอฟต์แวร์ได้
ตารางการเรียน (16 สัปดาห์):
สัปดาห์ หัวข้อเรียน บรรยาย กิจกรรม
1 บทนำวิศวกรรมซอฟต์แวร์และ SDLC Models
  • ประวัติและพัฒนาการ
  • Waterfall vs Agile vs DevOps
  • เลือก SDLC ที่เหมาะสม
บรรยาย + กิจกรรมเปรียบเทียบ
2 Agile Methodology, Scrum Framework และ Kanban
  • Agile Manifesto และหลักการ
  • Scrum: Roles, Events, Artifacts
  • Kanban: WIP Limits & Flow
บรรยาย
Activity#1 Scrum Simulation
Activity#2 Kanban
3 Team Communication & Risk Management
  • Team Roles & Communication Plans
  • Risk Identification & Mitigation
  • Stakeholder Management
บรรยาย + Workshop สร้าง Project Charter
Activity#1 Project Charter | read example
Activity#2 Risk Assessment | read example
4 กระบวนการวิศวกรรมความต้องการและ User Stories
  • User Stories Format & Criteria
  • Requirements Gathering
  • Backlog Prioritization
บรรยาย + เขียน User Stories
ตย.User Story
D1 Due
5 แบบจำลองระบบและ Requirements Analysis
  • Use Case & Activity Diagrams
  • ER Diagrams
  • SRS Document
บรรยาย + Workshop สร้าง Diagrams
ตัวอย่าง SRS Document
D1 Checklist
6 การออกแบบซอฟต์แวร์ (Design Patterns, Architecture)
  • Architectural Patterns
  • Design Patterns (GOF)
  • SOLID Principles
บรรยาย + Design Pattern Analysis
D2 Due
5 Architectures ฉบับย่อ
- Layer Architecture
- Micro services Architecture
- Event-Driven Architecture
- MVC Architecture
- Clean Architecture
ตย.Blog Application
SOLID Principles

ติดตั้ง Markdwown viewer สำหรับดูไฟล์ .md:
Markdown Preview
ติดตั้ง Charset Extension ใน VSCode สำหรับภาษาไทย:
Charset Extension
7 มาตรฐานการเขียนโค้ด, การวางแผน Sprint และการเริ่มต้นพัฒนา
  • Sprint Planning & Velocity
  • Coding Standards & Review
  • Technical Debt Management
บรรยาย + Live Code Review
1.6 Coding Standards Document
Activity 1, Activity 2

D2 Final [แนวทางการทำ D2]
ตัวอย่าง TODO App
8 สอบกลางภาค (ทฤษฎี)
9 Automated Testing Frameworks และ Test Automation
  • Unit Testing Framework
  • Test-Driven Development
  • Integration & Test Data
บรรยาย + เขียน Unit Tests
example project.7z
example project step-by-step
Unit Testing with Jest
Integration Testing with Jest
Jest vs Playwright
Jest Manual
Jest by Example
Jest Learning by Example
Playwright Manual
Playwright by Example
Playwright Learning by Example
D3 Start
10 Continuous Integration/Continuous Deployment (CI/CD) Pipeline
  • Git Workflows & PR
  • Build Automation Pipeline
  • Deployment Strategies
บรรยาย:
Git Workflow, Pull Request & Code Review
Build Automation Pipeline
Deployment Strategy

CI/CD Pipeline Demo, demo.zip

Automate Test Demo
D3 Final รายละเอียด D3
วิธีส่ง D1, D2, D3
11 Quality Metrics, QA และ Code Review
  • Process Metrics & Code Coverage
  • QA vs QC & Quality Standards
  • Static Analysis Tools & Peer Review
บรรยาย + Quality Report Workshop
Activity 3
12 Security in Development และ Risk Management
  • OWASP Top 10 & Secure Coding
  • Security Testing & Assessment
  • Risk Review & Mitigation Update
บรรยาย + Security Assessment

D4, ตัวอย่าง
เทมเพลต, Step-by-Step
13 Performance Testing และ Deployment Planning
  • Performance & Load Testing
  • Deployment Strategies
  • Monitoring & Maintenance Plan
บรรยาย + Performance Analysis
D5 Progress
14 Configuration Management, Version Control และ Retrospective
  • Release Management & Change Control
  • Git Workflows & Branching Strategy
  • Lessons Learned & Retrospective
บรรยาย + Release Planning
D5 Final
15 นำเสนอโครงงาน / Project Presentation
16 สอบปลายภาค - เนื้อหาสัปดาห์ 9-14
แผนการทำโครงงาน (Project-Based Learning):

นิสิตจะทำโครงงานตลอด 16 สัปดาห์ โดยประยุกต์ใช้เนื้อหาที่เรียนในแต่ละสัปดาห์ มี 5 Deliverables สำคัญ:

📄 รายละเอียดเต็ม: ดูไฟล์ project-plan

การประเมินผล:
เกณฑ์:

📚 ตำรา / หนังสือ (Textbooks):
  1. "Software Engineering: A Practitioner's Approach" - Roger S. Pressman (9th Edition, 2014)
    Comprehensive coverage of SDLC, Agile, and best practices
  2. "The Mythical Man-Month: Essays on Software Engineering" - Frederick P. Brooks Jr. (Anniversary Edition, 1995)
    Classic insights on project management and team dynamics
  3. "User Stories Applied: For Agile Software Development" - Mike Cohn (2004)
    Best practices for writing effective user stories and requirements
  4. "Scrum: The Art of Doing Twice the Work in Half the Time" - Jeff Sutherland & JJ Sutherland (2014)
    Practical guide to implementing Scrum in teams
  5. "Kanban: Successful Evolutionary Change for Your Technology Business" - David J. Anderson (2010)
    Understanding Kanban flow and WIP limits
  6. "Clean Code: A Handbook of Agile Software Craftsmanship" - Robert C. Martin (2008)
    Code quality, standards, and best practices
  7. "Continuous Integration: Improving Software Quality and Reducing Risk" - Paul M. Duvall et al. (2007)
    CI/CD pipeline setup and best practices
  8. "The Web Application Hacker's Handbook" - Stuttard & Pinto (2nd Edition, 2011)
    Security testing and vulnerability assessment
🌐 เว็บไซต์ / ออนไลน์ทรัพยากร (Online Resources):
🎥 วิดีโอ / ช่องยูทูป (YouTube Channels & Videos):
🛠️ Tools & Platforms (เครื่องมือที่แนะนำ):
📋 Standards & Guidelines (มาตรฐาน):
📞 Contact & Support:

Instructor:อ. วิทวัส พันธุมจินดา
Email: wittawas@buu.ac.th
Office Hours: Thursdays 10:00 AM - 12:00 AM OR by appointment


Last Updated: November 2025
Academic Year: 2567
Semester: 2

Free Tools