18 September 2009

--- Facebook ---


ก่อนอื่นเผอิญช่วงนี้งานยุ่งมากเลยหายไปนานนิดนึงนะคะ
facebook หลายคนก็อาจรู้จัก หลายคนก็ไม่รู้จัก งั้นเรามาดูกันดีกว่าว่ามันคืออะไร
----------------------------------------------------------------------------------------------------
Facebook

Eng:
a global social networking website that is operated and privately owned by Facebook, Inc. Users can add friends and send them messages, and update their personal profiles to notify friends about themselves.

ไทย:
สังคมออนไลน์ที่ให้ผู้ใช้สามารถ เพิ่มเพื่อน ส่งข้อความ อัพเดท ข้อมูลต่างๆ โดย Facebook, Inc.
----------------------------------------------------------------------------------------------------
ขอบอกไว้เลยว่าผู้เขียนนี่ขั้นติดใจใน facebook อย่างแรงและไม่มีทีถ้าว่าจะเลิกเล่น

สำหรับคนที่อยากสมัครก็ ไปที่เว็บ http://www.facebook.com/ นี้ ได้เลย
คนที่ไม่ชอบอ่านภาษาอังกฤษก็คลิกข้างล่างเลยจะมีภาษาไทยให้เลือก
ลงทะเบียนไป และก็เข้าสู่ระบบ

เข้าไปตอนแรกอาจงงๆ
สิ่งที่น่าจะทำตอนแรกเลยคือการเพิ่มเพื่อน สามารถเอาข้อมูลจาก hotmail หรือเว็บบางเว็บได้
แต่สำหรับคนที่มีเพื่อนน้อยๆ ลองเข้ามาขอเป็นเพื่อนกับผู้เขียนก่อนก็ได้ที่

http://www.facebook.com/home.php#/gnohznutlll?ref=name
--------------------------------------------------------------------------------------------------
Game & Quiz & Appication
---------------------------------------------------------------------------------------------------
ถ้าว่างๆเพื่อนไม่เล่น ก็ลองหาเกม ซึ่งมีค่อนข้างเยอะ แต่ถ้าไม่รู้วิธีหาก็ลำบากหน่อย
ส่วนใหญ่ผู้เขียนก็อาศัยเพื่อน เพื่อนเล่นอันไหนเราก็คลิกเล่นด้วย เพราะเมื่อเพื่อนเล่นแล้วมันจะอยู่หน้าแรกของเรา
แต่ถ้าเราเล่นมันก็จะอยู่ที่ชื่อของเรา gd,

วิธีที่ออกจะมั่วๆหน่อยแต่ก็พอใช่ได้คือ การพิมพ์อักษรสักตัว ไปที่search และก็กด หลังจากนั้นก็เลือกทางซ้ายเป็น แอพพลิเคชั่น มันก็จะโชว์มาเพียบเลย ก็ลองเลือกไป แต่ส่วนมากจะต้องกดตกลงในการใช้ครั้งแรก ว่าให้ใช้รูป และข้อมูลได้ ก็กดไป ก็พยายามดูแอปที่น่าสนใจ หรือ ดูดีหน่อย

ถ้ามีแอปที่ชอบก็สามารถ bookmark ได้โดยการกดเข้าไปที่แอปนั้น และก็ดูตรงซ้ายๆล่างของหน้า จะมีให้เพิ่ม

ถ้าเพื่อนยังน้อยอยู่ก็มีอีกวิธีนึงคือการเล่น quiz ซึ่งบางทีก็สร้างความบันเทิงได้พอควร บางอันก็ออกแนวบ้าบอบ้าง ก็ต้องดูดีๆ

--------------------------------------------------------------------------------------------------
Friend
--------------------------------------------------------------------------------------------------
ถ้าเพื่อนเริ่มเยอะ ก็ลองเข้าไปแบ่งกลุ่มเพื่อนให้เราจัดการระบบได้ง่ายขึ้น เช่นเราอยากอ่านกิจกรรมที่เพื่อนกลุ่มนี้ทำ เราก็เลือกเฉพาะกลุ่มนี้ เฟสบุ๊ก จะมีระบบจัดการให้เราเอง

---------------------------------------------------------------------------------------------------
Chat
----------------------------------------------------------------------------------------------------
ถ้าอยากคุยกับเพื่อนแบบสดๆก็คุยได้ คล้ายๆ msn โดยคลิกขวาล่าง ตรงสนทนา ดูเพื่อน เลือกเพื่อนและก็คุยเลย

---------------------------------------------------------------------------------------------------
Picture
---------------------------------------------------------------------------------------------------
อยากใส่รูปก็ เข้าไปที่ชื่อตัวเอง คลิกtab รูปภาพ และสร้างอัลบั้มรูปภาพ ก็หลังจากนั้นก็ทำตามขั้นตอนไป

---------------------------------------------------------------------------------------------------
Group
---------------------------------------------------------------------------------------------------
กลุ่มก็หาด้วยวิธีพิพม์ group ไปที่ search ก็ได้ และก็เลือก group

---------------------------------------------------------------------------------------------------
บันทึก
--------------------------------------------------------------------------------------------------
ก็คลิกชื่อตัวเอง เลือก tab บันทึกเหมือนกัน

--------------------------------------------------------------------------------------------------

และอื่นๆอีกมากมาย

---------------------------------------------------------------------------------------------------
อ้างอิง
http://en.wikipedia.org/wiki/Facebook
และประสบการณ์ตรง

02 September 2009

--- Extreme programming ---

มันคืออะไรกันนี้ แค่อ่านเฉยๆอาจนึกว่าเป็นแบบ การเขียนโปรแกรมแบบเต็มพิกัด หรือ?
----------------------------------------------------------------------------------------------------
Extreme programming

Eng:
a software engineering methodology which is intended to improve software quality and responsiveness to changing customer requirements.

ไทย:
เป็นระเบียบวิธีการพัฒนาซอฟต์แวร์แบบ หนึ่งซึ่งเน้นความคล่องตัวและเรียบง่ายของกระบวนการพัฒนา โดยจะระบุเป็นแนวปฏิบัติประจำวันซึ่งมีที่มาจากการให้คุณค่าบางอย่างที่ เกี่ยวข้องกับนักพัฒนา เพื่อเพิ่มคุณภาพของซอฟแวร์ และ การเปลี่ยนแปลงความต้องการของลูกค้า

----------------------------------------------------------------------------------------------------
ใน Extreme programming ขั้นตอนในการพัฒนาจะถูกแบ่งออกเป็นส่วนย่อยๆ และทำวนเวียนไปเรื่อยๆ จนเสร็จขั้นตอนทั้งหมด แต่ละส่วนย่อยจะมีขนาดประมาณ 1-3 อาทิตย์ ซึ่งสั้นกว่าในการพัฒนาซอฟต์แวร์แบบอื่น ๆ มาก

ถ้าต้องการอ่านเพิ่มเติม
ไปเปิดเจอ blog นึงเขียนไว้ค่อนข้างดีแล้วเลยเอามาบอกกล่าวกัน
http://www.narisa.com/blog/bomber/index.php?showentry=424

google ก็ใช้หลักการแบบนี้เช่นกันนะคะ
---------------------------------------------------------------------------------------------------
http://th.wikipedia.org/wiki/Extreme_programming
http://en.wikipedia.org/wiki/Extreme_Programming

24 August 2009

--- Desktop Computer---



วันนี้ก็มาเรื่องใกล้ตัวกันบ้างสำหรับ desktop computer
----------------------------------------------------------------------------------------------------
Desktop computer

Eng:
a personal computer (PC) in a form intended for regular use at a single location.

ไทย:
คอมพิวเตอร์ส่วนตัวที่เอาไว้ใช้งานทั่วไปในพื้นที่ใดพื้นที่หนึ่ง

----------------------------------------------------------------------------------------------------
หลายคนก็คงอยากได้ภาพเอาไว้แต่งหน้าจอวันนี้ก็เลยลองๆไปหาๆดูและก็นำเว็บที่น่าสนใจมาฝากนะคะ


1. http://www.background-desktop.com/
เว็บนี้มีรูปประมาณ 7 หน้า แต่ละรูปก็สวยใช้ได้เลยคะ


2.http://www.travelblog.org/Wallpaper/
ภาพจะเป็นภาพเกี่ยวกับการท่องเที่ยวและก็ธรรมชาตินะคะ สวยคะ


3.http://www.3dfreedesktopwallpaper.com/
สำหรับคนอยากได้แนว 3D หรือความแปลกใหม่


4.http://www.pokedstudio.com/computerwallpaper.html
เว็บนี้สีดูน่ารักๆดีนะคะ ออกไปทางแนวคล้ายเสื้อวัยรุ่นๆสมัยนี้อะคะ สวยดี


5.http://www.comicsart.com/
ก็แนวๆดีนะคะ มีหลายแบบให้เลือกไว้ว่าจะออกแนว รูปเซล บอล ปิรามิด หรือ ธรรมชาติก็มีคะ ภาพสวยดีคะ แต่อาจไม่มากนัก


วันนี้พอแค่นี้ก่อนดีกว่าคะ ใครมีเว็บเกี่ยวกับ wallpaper ก็บอกๆกันได้นะคะ
-----อ้างอิง---------------------------------------------------------------------------------------
http://en.wikipedia.org/wiki/Desktop_computer

19 August 2009

--- Cookie ---



คุกกี้ คนที่ไม่ค่อยได้เล่นคอมคงจะนึกถึงอาหารชนิดหนึ่ง แต่ ในที่นี้ไม่ได้หมายถึงอย่างนั้นนะคะ

----------------------------------------------------------------------------------------------------
Cookie

Eng:
a small piece of text stored on a user's computer by a web browser. A cookie consists of one or more name-value pairs containing bits of information such as user preferences, shopping cart contents, the identifier for a server-based session, or other data used by websites.

ไทย:
ไฟล์ที่ทาง website ต่าง ๆ สร้างขึ้นมาในเครื่อง Computer ของผู้เรียกชมเว็บไซต์นั้น ๆ โดยคุกกี้จะมีวัตถุประสงค์ในการเก็บข้อมูล ตรวจสอบ จากผู้ที่เรียกใช้งานเว็บไซต์นั้น โดยไฟล์คุกกี้จะมีลักษณะเป็นไฟล์อักษรในการเก็บข้อมูลต่าง ๆ

----------------------------------------------------------------------------------------------------
ข้อดี
1. ใช้จัดเก็บข้อมูลของผู้แวะเข้ามาเยี่ยมชม และจัดเก็บข้อมูลของสมาชิกแต่ละคน
2. ใช้ประเมินจำนวนผู้เข้าชมเว็บ
3. ใช้ตรวจสอบความถี่ในการใช้งาน หรือรูปแบบการเข้าชม
เพื่อจุดประสงค์ต่างๆกันไป
----------------------------------------------------------------------------------------------------
วิธีลบ
คุกกี้ทำให้ เสียเนื้อที่บน hard disk เล็กน้อย เพื่อใครอยากลบทิ้งก็ใช้โปรแกรม Disk Cleanup ได้เลย

---อ้างอิง--------------------------------------------------------------------------------------
http://en.wikipedia.org/wiki/HTTP_cookie
http://www.dwdev.dwthai.com/devarticles/asp/use_cook.htm
http://www.bcoms.net/tipcomputer/detail.asp?id=884
http://club.csxv.co.cc/content/view/21/43/

18 August 2009

--- BNF--- ( Backus–Naur Form )

----------------------------------------------------------------------------------------------------
Backus–Naur Form or BNF

Eng:
a metasyntax used to express context-free grammars: that is, a formal way to describe formal languages.

ไทย:
วิธีการพื้นฐานที่ใช้อธิบายโครงสร้างของภาษาโปรแกรม หรือ มาตราฐานในการะบุรูปแบบ
----------------------------------------------------------------------------------------------------

--- ตัวอย่าง 1 ----------------------------------------------------------------------------------
< number > ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
--- ความหมาย ---------------------------------------------------------------------------------
คือ ตัวเลขจะเป็น 0 หรือ 1 หรือ 2..... หรือ 9
--- ความหมายของสัญลักษณ์ --------------------------------------------------------------
< > อะไรก็ตามที่อยู่ในนี้ก็คือยังมีตัวที่ต่อไปได้อีกหรือยังไม่สิ้นสุด (nonterminal) ถ้าไม่อยู่ในนี้คือสิ้นสุด (terminal)
::= คือ ให้คำจำกัดความว่า (is defined as)
| คือ หรือ (or)
----------------------------------------------------------------------------------------------------

--- ตัวอย่าง 2 ----------------------------------------------------------------------------------
< if statement="" > ::= if ( < condition > ) < statement > [ else < statement > ]
--- ความหมาย ---------------------------------------------------------------------------------
คือ if statement จะมี if หรือ มี if แล้ว else ก็ได้
--- ความหมายของสัญลักษณ์ -------------------------------------------------------------
[ ] จะใส่ก็ได้ไม่ใส่ก็ได้แล้วแต่จะเลือก
---------------------------------------------------------------------------------------------------

--- ตัวอย่าง 3 ----------------------------------------------------------------------------------
< parameter list > ::= ( ) | ( { < parameter > , } < parameter > )
--- ความหมาย ---------------------------------------------------------------------------------
คือ ลิสต์ของพารามิเตอร์จะไม่มี หรือมี1ตัว หรือมากกว่าก็นั้นได้
--- ความหมายของสัญลักษณ์ -------------------------------------------------------------
{ } การทำซ้ำตั้งแต่ 0 ไปเรื่อยๆ
---------------------------------------------------------------------------------------------------

จะเห็นได้ว่าไม่ยากจนเกินไป

---อ้างอิง-------------------------------------------------------------------------------------
http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form
http://www.cis.upenn.edu/~matuszek/cit594-2004/Lectures/15-bnf.ppt

17 August 2009

เปลี่ยนแนว ---ศัพท์คอมพิวเตอร์อาทิตย์ละคำ---

ก็เบื่อๆไม่รู้จะเขียนอะไรนะคะ ก็เปลี่ยนเป็นคำศัพท์คอมพิวเตอร์อาทิตย์ละคำหรือมากกว่าละกันนะคะ
--------------------------------------------------------------------------------------------------------------
Abstract data types (ADT)

Eng: A set of data values and associated operations that are precisely specified independent of any particular implementation.

ไทย: กลุ่มค่าของข้อมูล และ การดำเนินการที่เกี่ยวข้องกันที่เป็นอิสระจากการวิธีการต่างๆในการทำให้เกิดผล
-------------------------------------------------------------------------------------------------------------
คุณลักษณะที่สำคัญของ ADT คือ ไม่มีการจำกัดชนิดของข้อมูลที่จะใส่ทำให้โครงสร้างข้อมูลมีความยืดหยุ่นสูงจึงไม่มีข้อจำกัดในการออกแบบและจัดการกับข้อมูลที่เก็บใน ADT เพียงแต่ต้องดำเนินการตาม operations เฉพาะของ ADT นั้นๆ
-------------------------------------------------------------------------------------------------------------
ADT สำคัญๆ คือ


1.Push, pop ใช้ในการดำเนินการกับ stack คิดง่ายๆเหมือนการวางจานลงบนโต๊ะถ้า push คือวางจานลงไป pop คือเอาจานออกดังนั้นจานที่วางไปแรกสุดก็เลยจะถูกเอาออกมาเป็นจานสุดท้าย First In Last Out (FILO) คงไม่งงนะคะ










2.Enqueue, dequeue ใช้ในการดำเนินการกับ queue คิดง่ายๆเวลาไปต่อแถวซื้อข้าวหรืออะไรก็ได้ enqueue คือการไปต่อแถว ส่วน dequeue คือการซื้อของเสร็จแล้วก็ออกจากแถวไป First In First Out (FIFO) ไม่ยากๆ
--------------------------------------------------------------------------------------------------------
อ้างอิง
---------------------------------------------------------------------------------------------------------
http://www.itl.nist.gov/div897/sqg/dads/HTML/abstractDataType.html
http://pioneer.chula.ac.th/~sperapho/files/class/263/ch2_5.pdf

10 August 2009

หลังจากหายไปพอควร

ขั้นที่4 กับ 5 ไม่มีไรมากคะ
4. Implementation เป็นการสร้าง ทดสอบ ลง ฝึกผู้ใช้งาน
5. Support การสนับสนุน เช่นบริการหลังการขาย

------------------------------------------------------------------------------------------------------------
วันก่อน7/08/2009 ก็ได้ไป Thomson Reuters มาแถวๆ น่าจะสีลม จำชื่อตึกไม่ได้มันจีนๆ

ก็ไปกับทางคณะ ไปฟังบรรยาย เกี่ยวกับ ความเป็นมาของบริษัท สวัสดิการพนักงาน และเรื่องพิเศษอีกเรื่อง

ซึ่งก็คือเรื่อง Software configuration management (SCM) ได้ความรู้มากมายเลยทีเดียว

--------------------------------------------------------------------------------------------------------------

ไหนๆก็ต้องส่ง อาจารย์และเลยเอามาให้ดูกัน เป็นภาษาอังกฤษก่อนละกัน แต่อันนี้อ.ยังไม่ได้เช็คนะคะ
เป็นการสรุปใจความที่ฟังได้

What is SCM?
SCM is use to manage complexity and change in software for minimize problem.

Why SCM is importance?
If we do not have SCM, many person work in a software and they can change it every time problems will occur when one person already change something in the software but another one change another part and update instant of it.

History of SCM
In 1950, military of USA develop CM to integrate a part of weapon to use in war.

Role of SCM implement
1. Require configuration manager/ SCM person for creating change, baseline, and releases
2. Require configuration control board/ Change control board

Task for configuration manager

1. Identify CI
2. Define baseline and change management process
3. Set up configuration management system
4. Define responsibility

Parts of SCM
Configuration Item (CI)
CI is objects that need to control such as program, document, compiler, test tools, system configuration, and user manuals release notes.

Version, Baseline, Change management
Version is an initial release. Release is a formal distribution of an approved version. Baseline is a basis for comparison. Change Management is for handing of change request to baseline and for general change process.

SCM system and tools
Library and repository, programmer directory, master, and software are in SCM.

SCM Plan (SCMP)
Identify CI, define responsibility, policies and change control tools, SCM directories, and CM database

SCM Audit
Check for change. Audit has formal technical reviews and software configuration audit do by SQA.

SCM Report
Report represents status of CI; what happened? , who did it? , when did it happen? , and what else will be affected?

SCM in CMMI v1.2 and RSTL
CMMI maturity level is Level1 Initial, Level2 managed, Level3 Defined, Level4 Quantitatively Managed, and Level5 optimizing.

-----------อ้างอิง---------------------------------------------------------------------------------------
พี่ที่ Thomson Reuters คะ จำชื่อไม่ได้คะโทษที

27 July 2009

--- Design ---

ก็หายไปนาน เผอิญช่วงนี้เตรียมตัวสอบอยู่นะคะ เลยไม่ค่อยมีเวลา
วันนี้สอบเสร็จแล้วก็มาต่อกันเลยดีกว่านะคะ
_____________________________________________________________________

ขั้นที่ 3 ก็จะเป็นขั้น design
เมื่อพูดถึง design หลายคนอาจจินตนาการไปว่าเป็นการออกแบบที่ไปในทางศิลปะ

ซึ่งจะว่าไปก็ไม่เชิงนะคะ จะเน้นไปทางด้านการวาดไดอะแกรมมากกว่าคะ

ในที่นี้ design จะหมายถึง กระบวณการ อธิบาย จัดการ และก็ การวางโครงสร้างของระบบ เน้นไปในการเตรียมการสร้างระบบ คล้ายๆการสร้างพิมพ์เขียวของบ้านนะคะ

ข้อมูลที่จะเข้าสู่การออกแบบ คือ ข้อมูลจากขั้น analysis คะ ซึ่งก็มีทั้งโมเดล และก็เอกสาร

______________________________________________________________________
ขั้นตอนในการออกแบบ
--------------------------------------------------------------------------------------------------
1.ออกแบบและทำการรวมเน็ตเวริ์กที่มีเข้าด้วยกัน
---เหมือนกับว่าเรามีเน็ตเวริื์กเก่าอยู่เราจะต้องทำการรวมอันใหม่เข้าไป
--------------------------------------------------------------------------------------------------
2.ออกแบบโครงสร้างของโปรแกรมและซอฟแวร์
--------------------------------------------------------------------------------------------------
3.ออกแบบ User Interfaces
---เป็นการคิดว่าผู้ใช้งานอย่างไรกับระบบ เช่นมีหน้าต่างข้อความ การใช้เมาส์คลิก เสียง ภาพ
--------------------------------------------------------------------------------------------------
4.ออกแบบ System Interfaces
---ระบบภายในองค์กร
---interface กับระบบนอกองค์กร
--------------------------------------------------------------------------------------------------
5.ออกแบบและทำการรวมฐานข้อมูลที่มีเข้าด้วยกัน
--------------------------------------------------------------------------------------------------
6.สร้างแบบจำลองสำหรับการออกแบบรายละเอียด
--------------------------------------------------------------------------------------------------
7.ออกแบบและทำการรวมระบบควบคุมที่มีเข้าด้วยกัน
---ก็การควบคุมมีอยู่ทุกๆกิจกรรมของการออกแบบเราก็ต้องจัดการให้ดี
--------------------------------------------------------------------------------------------------
__อ้างอิง_______________________________________________________________
Systems Analysis and Design in a Changing World, Fifth Edition

03 July 2009

--- Analysis ---


ต่อมาคือขั้น Analysis หรือ การวิเคราะห์
ขั้นนี้เราต้องบอกให้ไ้ด้ว่าปัญหาที่เราต้องการแก้ไขคืออะไร
สิ่งที่ได้ออกมาจากขั้นนี้จะเป็นเอกสารที่เกี่ยวกับความต้องการของระบบ ซึ่งภาษาต้องเป็นทางการ ถูกต้อง และเข้าใจได้ดี และ เอกสารนี้จะประกอบด้วยส่วนหลักๆ คือ Things (สิ่งที่ต้องทำ), actions(วิธีการทำ), and states(สภาพ หรือ สถานะ)
_____________________________________________________________________
ขั้นตอนมีดังนี้

1. Gather information (การรวมรวมข้อมูล)
ถามตัวเองว่าเรามีข้อมูลที่ต้องการทั้งหมดแล้วหรือยัง และอะไรที่ระบบต้องทำได้

2. Define system requirements (แจกแจงความต้องการของระบบ)
ตอบให้ได้ว่าอะไรที่เราต้องการให้ระบบทำได้ ลงไปในรายละเอียด ให้ละเอียดที่สุดเท่าที่จะทำได้ ซึ่งมี Functional และ nonfunctional
--- Functional คือ กิจกรรม และกระบวณการทำงานของระบบ
--- Nonfunctional จะไม่เกี่ยวกับกิจกรรมที่ระบบต้องทำ แต่จะไปในแนว ประสิทธิภาพ การใช้งาน ฮาร์ดแวร์ ซอฟแวร์ที่ต้องใช้ ความน่าเชื่อถือของระบบ และ ความปลอดภัยของระบบ

3. Prioritize requirements (จัดลำดับความสำคัญของความต้องการของระบบ)
ขั้นนี้เราต้องเรียงลำดับสิ่งที่สำคัญที่ระบบต้องทำได้ก่อน ไล่ไป เรื่อยๆ

4. Prototype for feasibility and discovery (สร้างต้นแบบเพื่อดูความเป็นไปได้ และ ค้นคว้า)
พิสูจน์ให้ได้ว่าเทคโนโลยีที่เราจะใช้ทำได้ในสิ่งที่เราอยากให้ทำ และต้องทำต้นแบบมาเพื่อให้ผู้ใช้ระบบของเรา เข้าใจในสิ่งที่ระบบจะทำได้ด้วย

5. Generate and evaluate alternatives (สร้างและพัฒนาทางเลือก)
หาว่าทางไหนดีที่สุดต่อการทำระบบ

6. Review recommendations with management (พิจารณาคำแนะนำกับคนจัดการหรือควบคุม)
เราควรจะเริ่มออกแบบ และ ทำระบบที่เราต้องการแล้วหรือยัง

______อ้างอิง__________________________________________________________
http://infolab.stanford.edu/~burback/watersluice/node4.html
Systems Analysis and Design in a Changing World, Fifth Edition

24 June 2009

--- Project planning ---


หลักๆของโมเดลทั่วไปจะมีอยู่ 5 ขั้นตอน แต่อาจถูกแตกย่อยไปเป็นมากขั้นตอนกว่านี้ก็ได้ แต่โดยรวมแล้วทำสิ่งเดียวกัน

มาเริ่มเจาะเข้าไปทีละขั้นตอนดีกว่า

__________________________________________________________________
Project planning คือ ขั้นการวางแผน ซึ่งเป็นขั้นที่สำคัญต่อการประสบความสำเร็จของงาน ทำให้เรามองเห็นภาพของงานที่จะเกิดขึ้น, ขั้นตอนการทำงาน, เวลาที่ส่งผลกระทบต่องาน, และจุดที่ควรระวัง

ทำไมเราถึงต้องวางแผน
เราวางแผนเพื่อประหยัดเวลา เงินทอง ทรัพยากร และลดปัญหาที่จะตามมา

การวางแผนโครงการที่ดี่จะทำำให้การบริหารโครงการเป็นไปอย่า่างมีประสิทธิภาพ สามารถติดตาม ควบคุมความก้าวหน้า้ ดักปัญหา ประเด็นคงค้า้างต่างๆได้อย่างถูกต้องแม่นยำำ
----------------------------------------------------------------------------------------------
ขั้นแรก รู้จุดมุ่งหมายของงาน (goals)
+++ เริ่มที่เราต้องรู้ผู้ที่ได้รับประโยชน์จากงานก่อน แล้วหาว่าความต้องการของคนเหล่านั้นคืออะไร วิธีที่ดีคือการสัมภาษณ์ แต่คนถามก็ต้องเตรียมความพร้อมว่าจะถามอะไรอยู่เหมือนกัน เพื่อให้ได้สิ่งที่ตรงความต้องการมากที่สุด พอได้ข้อมูลมาแล้ว เราก็ต้องลำดับความสำคัญของความต้องการ ว่าสิ่งใดสำคัญหรือควรทำก่อน

วิธีเช็คว่าเราเขียนจุดมุ่งหมายสำเร็จผลหรือไม่ ให้ตรวจสอบดังนี้
1. ให้คำจำกัดความที่ดี เข้าใจได้ง่ายโดยบุคคลทั่วไปที่มีความรู้พื้นฐานเกี่ยวกับงาน
2. รู้เวลาว่าจุดมุ่งหมายของเราจะประสบผล หรืออีกไกลแค่ไหนจึงจะสำเร็จ
3. ได้รับการยอมรับจากผู้ที่เราสอบถาม
4. ทำได้จริงตามทรัพยากร ความรู้ และเวลาที่มี
5. ต้องมีเวลามากพอที่จะทำให้สำเร็จได้ แต่ก็ต้องไม่มากเกินไปจนส่งผลต่องานเรา
------------------------------------------------------------------------------------------------
ขั้นสอง การนำส่งงาน (deliverables)
+++ ใช้จุดมุ่งหมายจากขั้นที่ 1 สร้างรายการสิ่งของหรือสิ่งที่ต้องส่งเพื่อให้บรรลุจุดมุ่งหมาย โดยกำหนดว่าเมื่อไหร อย่างไรด้วย จากการประมาณเอา โดยต้องพอดีๆ
-----------------------------------------------------------------------------------------------
ขั้นสาม การทำตารางการทำงาน (Schedule)
+++ สร้างรายการงานที่ต้องทำจากรายการที่ต้องส่งในขั้นที่ 2 โดยตารางการทำงานควรประกอบด้วย สิ่งที่ต้องการส่ง deliverables, งาน tasks, ระยะเวลา durations และ คนรับผิดชอบ who.

ปัญหาที่เกิดจากการสร้างตารางการทำงานไม่ดี
--- งานอาจล่าช้า
--- ค่าใช่จ่ายที่เพิ่มขึ้น
--- งานได้ออกมาไม่ดีเท่าที่ควร
----------------------------------------------------------------------------------------------
ขั้นสุดท้าย แผนสนับสนุน
+++ แผนการจัดการทรัพยากรมนุษย์ คือ การใส่บทบาทหน้าที่ของแต่ละบุคคลลงไปในงาน ระยะเวลาในการทำงาน ช่วงเวลา
+++ แผนความสัมพันธ์ คือ การทำรายการว่าใครต้องการใช้ข้อมูลเกี่ยวกับงานบ้างและวิธีที่จะได้รับข้อมูล อธิบายการปฎิบัติงาน, milestones, และแผนงานต่อไปในอนาคต
+++ แผนการจัดการความเสี่ยง เป็นสิ่งที่สำคัญที่เราจะคิดไว้ก่อนว่าสิ่งใดที่อาจจะเกิดที่จะส่งผลกับงานเรา เพื่อเตรียมการรับมือ ก่อนเกิดเหตุจริงๆ ซึ่งก็มีทั้งความเสี่ยงจากภายนอก เช่น กฎระเบีียบ / ข้อบังคับ, ลูกค้า และ ภัยธรรมชาติ หรือ ความเสี่ยงจากภายใน เช่น นโยบาย, บุคลากร, และ ฐานะการเงิน
__________________________________________________________________
______อ้างอิง_______________________________________________________

http://www.projectsmart.co.uk/project-planning-step-by-step.html
http://ora.chandra.ac.th/~patsara/pdffiles/PM005.pdf

16 June 2009

แบบจำลองน้ำตก (Waterfall model)

ก็ต่อจากคราวที่แล้วเพื่อให้เข้าใจวิธีเล่นเกมมากขึ้น หลายคนได้ยินคำนี้ครั้งแรกก็อาจนึกว่าเป็นน้ำตกตามธรรมชาติหรอ



อันที่จริงไม่ใช่นะคะ แต่มีส่วนคล้ายๆกันอยู่ เมื่อสังเกตุน้ำตกโดยทั่วไปแล้ว น้ำจะไหลจากบนลงล่าง ไม่มีการไหลย้อนกลับไป และนี่เป็นที่มาของแบบจำลองน้ำตก คือ การทำงานจะเป็นขั้นๆ ทำให้เสร็จไปทีละขั้น
ไม่มีการย้อนกลับมาทำขั้นก่อนๆอีก แต่ในชีวิตจริงหายากคะ เพราะ ความต้องการของคน มักเปลี่ยนแปลงได้ตลอด____________________________________________________________________

โดยทั่วไป Waterfall model จะมีการทำงานอยู่ 5 ขั้นตอน
1. Project planning ___ การศึกษาความเป็นไปได้, การวางแผนตารางงาน,
2. Analysis _________ การวิเคราะห์ความต้องการ และ กระบวณการทำงาน
3. Design __________ การออกแบบวิธีการแก้ปํญหา โดยอาศัยการวิเคาระห์ความต้องการในขั้น2
4. Implementation ___ การสร้าง, ทดสอบ, ฝึกผู้ใช้, และ การลงระบบใหม่
5. Support _________ การทำให้ระบบยังดำเนินต่อไปได้ และการพัฒนาอื่นๆ

____________________________________________________________________

คลิกที่รูปเพื่อขยายใหญ่

อันนี้ก็เป็นรูปในเกม พร้อมความหมายจะเห็นได้ว่าคล้ายๆกัน

ดังนั้นเมื่อเรารู้ว่าขั้นไหนควรเริ่มก่อน ก็น่าจะเล่นเกมได้ และมีประโยชน์ด้วย

____________________________________________________________________

12 June 2009

Software Engineering Process Game

ก็เปิดไปเปิดมาลองค้นเล่นๆว่าจะมีเกมเกี่ยวกับ SE ไหม สรุปว่าเจอแหะ
ก็ไปเจอวีดีโอนี้เข้า
ในเว็บ http://www.youtube.com/watch?v=kkkl3LucxTY


________________________________________________________________________________________________

ค้นหาต่อไปเลยพบกับเว็บเผยแพร่เกมนี้โดยตรง
http://vital.cs.ohiou.edu/vitalwiki/index.php/Software_Engineering_Process_Game
________________________________________________________________________________________________
เกมนี้คือ Software Engineering Process Game
เป็นเกมแนว Role-Playing Game (RPG) หรือ เกมแสดงบทบาทแทนตัวละครที่สมมุติขึ้น วัตถุประสงค์ที่สร้างขึ้นก็เพื่อช่วยสอนนักเรียนเกี่ยวกับกระบวนการของ SE (แต่ในปัจจุบันนี้ยังได้แค่ waterfall model (เอาไว้พูดถึงในครั้งหน้าเกี่ยวกับโมเดล)) โดยการจำลองการพัฒนา software project ขนาดกลาง
________________________________________________________________________________________________

วิธีเล่นเกมคร่าวๆก็ประมาณว่า
1. ในเกมจะมีอยู่ 6 ห้อง ผู้เล่นต้องเข้าไปทำงานในแต่ละห้องนั้น ผู้เล่นมากสุดจึงได้ที่ 6 คน ดังนั้นผู้เล้นจึงสามารถสร้างทีมมาเพื่อเล่นเกมนี้ได้
2. ผู้เล่นเข้าร่วมได้โดยการนั่งที่เก้าอี้ แล้วหน้าจอก็จะขึ้นข้อมูลมาให้
3. หน้าจอคอมพิวเตอร์จะมี Timer ให้กดเพื่อเริ่มเล่น เวลาจะลดลงเรื่อยๆ แสดงเวลาที่เหลือในการทำงานของผู้เล่น เมื่อเป็น 0 เกมจบ
4. ไอคอน "artifact" มี 4 อัน จะเปลี่ยนเป็นสีขาวเมื่อคลิก ข้างล่างจะเป็น "task" ก็ให้เลือกอีก ก็จะเป็นสีขาว ถ้าต้องการยกเลิกให้คลิกซ้ำ จะกลายเป็นสีเทา
5. "rest state" เอาไว้สลับ พัก กับ ทำงาน ถ้ามีรูปคนนั่งบนเก้าอี้คือทำงานอยู่ และมีพลังงานด้วย ถ้าทำงานพลังงานก็จะลด สีแดงก็จะมากขึ้น ถ้าพักพลังงานก็จะเพิ่ม สีเขียวก็จะเพิ่ม
6. ถ้าในทีมเริ่มทำ "task" ในส่วน "creating " "artifact process" ก็จะมีสีเขียวเพิ่มขึ้นให้รู้ว่าใกล้เสร็จ หรือดำเนินการถึงไหน
ถ้าเริ่มส่วน "Integrating code" "Integrating process" ก็ะเพิ่มขึ้น ถ้าคนไหนกด "Review","Inspecting", หรือ "Testing" ก่อน ก็จะมีค่า artifact error เพิ่มขึ้น
7. ถ้ากด "Timer" อีกทีจะมีคำถามขึ้นมาว่า จะจบเกม หรือ จะเริ่มใหม่
8. เหนือจอคอมพิวเตอร์จะมีการโชว์ว่าผู้เล่นแต่ละคนทำอะไรไปถึงไหนแล้วด้วย

ไอคอนทุกตัวมีความหมายหมดเลยนะคะ โปรดศึกษาวิธีเล่นก่อนเล่นจะได้ประโยชน์มากๆเลย

สามารถดูวิธีเล่นเพิ่มเติมได้ที่ (ภาษาอังกฤษ พร้อม รูปประกอบ)
http://vital.cs.ohiou.edu/vitalwiki/index.php/Software_Engineering_Process_Game_User_Guide
_________________________________________________________________________________________________

ส่วนใครต้องการที่จะเล่นก็ที่นี้เลย
ก็ต้องสมัครสมาชิก คล้ายๆเล่นเกมออนไลน์นะคะ
http://slurl.com/secondlife/OHIO%20Outreach/180/160/32
_________________________________________________________________________________________________

เพิ่มเติมเว็บที่น่าสนใจ เกี่ยวกับเกมอื่นๆสามมิติจากการวิจัย
http://vital.cs.ohiou.edu/
_________________________________________________________________________________________________

ครั้งหน้าเพื่อให้เข้าใจเกมนี้ยิ่งขึ้นจะกล่าวถึง กระบวณการทำงานงานแบบ waterfall model ว่าคืออะไร มีกี่เพส และแต่ละเพส ต้องทำอะไรบ้าง น่าสนใจละสิ โปรดติดตามตอนต่อไป ในไม่ช้า
____________________________________________________________________________________End__________

09 June 2009

เริ่ม Software Engineering (SE) E มอง วิศวกรรมซอฟต์แวร์

วิศวกรรมซอฟต์แวร์ (Software Engineering) คือ อะไร
_____________________________________________________
---------------------------------------------------------------------------
ก่อนอื่นเรามาเข้าใจคำว่า ซอฟต์แวร์ (Software) กันก่อน
ซอฟต์แวร์ หรือ ชุดคำสั่ง เป็นโปรแกรมคอมพิวเตอร์ที่ทำให้คอมพิวเตอร์ทำงานได้
มี 2 ประเภท
---------------------------------------------------------------------------
1. ซอฟต์แวร์ระบบ (System Software)
เป็นซอฟต์แวร์ที่เอาไว้ดำเนินการพื้นฐานต่างๆของระบบคอมพิวเตอร์
---------------------------------------------------------------------------
2. ซอฟต์แวร์ประยุกต์ (Application Software)
เป็นซอฟต์แวร์ที่เอาไว้ใช้งานทั่วไป หรือ ใช้งานเฉพาะ ที่ไม่เกี่ยวกับระบบ
---------------------------------------------------------------------------
วิศวกรรม (Engineering)
หนังสือ Encyclopaedia Americana ได้ให้คำจำกัดความไว้ว่า “Engineering” เป็นอาชีพที่เกี่ยวข้องโดยชัดเจนกับวิทยาศาสตร์ของการวางแผนการออกแบบการสร้าง และการใช้งานอย่างถูกหลักเศรษฐศาสตร์ของสิ่งก่อสร้างหรือเครื่องจักร
---------------------------------------------------------------------------
____________________________________________________
ดังนั้น วิศวกรรมซอฟต์แวร์ จึงหมายถึง
การวางแผนการออกแบบการสร้างโปรแกรมคอมพิวเตอร์ และการใช้งานอย่างถูกหลักเศรษฐศาสตร์ ซึ่งก็ต้องคำนึงถึงทรัพยากร เครื่องมือที่จะใช้ และ คุณภาพงานให้ได้ตามเวลาและงบประมาณด้วย
____________________________________________________

แหล่งอ้างอิง
http://www.school.net.th/library/snet1/software/software/index.html
http://www.rmuti.ac.th/faculty/production/ie/html/abouIE_c.htm
Sommerville, Ian,"Software Engineering", 8th Ed., Addison Wesley, New York, 2007.

___________________________________________End______

03 June 2009

ก็คงต้องแนะนำตัวกันก่อน

ก็สวัสดีทุกท่านนะคะ
------------------------------------------------------------------------------------------------
ข้าพเจ้า นามว่า
นัท (NUT) ซึ่งในภาษาอังกฤษก็แปลได้หลายความหมาย
-1 คือ
ถั่ว (ข้าพเจ้าชอบทาน แต่แม่ข้าพเจ้าแพ้ บางครั้งก็ทาน)
-2 คือ
คนบ้า (ซึ่งบางครั้งเพื่อนๆก็หาว่าข้าพเจ้าบ้า 555)
ซึ่งพ่อกับแม่ ลืมไปแล้วว่าทำไมจึงตั้งเช่นนี้
------------------------------------------------------------------------------------------------
ข้้าพเจ้าเกิดใน
วันศุกร์ (ดังนั้นจึงชอบสีฟ้า อีกสีคือเขียว จะเห็นว่าเป็นสีที่เย็น) เลข>20
ข้าพเจ้าเป็นคนใจเย็น แต่ถ้าหิวขึ้นมาก็หน้ามืดนะ แพ้ความหิว

เดือนเกิดก็ ตอนปลายๆ สัญลักษณ์ คือ
ปู บางทีก็ สิงโต
ซึ่ง ข้าพเจ้าคิดว่าก็เกี่ยวกับการเดิน กับนิสัยอยู่บ้าง เช่นกัน

ปีเกิด ก็ ปี
งูเล็ก

หลายคนคงพอจะเดาได้ว่าข้าพเจ้าเกิด ในวันที่เท่าไหร เดือนอะไร และปีอะไร
ตอนนี้(ปี 2552)ข้าพเจ้าก็อยู่
ปี 3

ใครตอบได้บ้างเนี่ย ไม่มีรางวัลแต่เล่นกันขำๆ ใช้หลัก
ตรรกะนิดหน่อย
------------------------------------------------------------------------------------------------
สถานศึกษา

-เริ่มที่ประถมละกัน
++ ภาษานุสรณ์บางแค ป.1-3
++ ขจรโรจน์วิทยา ป.4-6

-พอมัธยม
++ สามเสนวิทยาลัย ม.1-6

-ปริญญาตรี (กำลังศึกษา)
++ มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี (KMUTT)
คณะเทคโนโลยีสารสนเทศ (SIT)
สาขาวิทยาการคอมพิวเตอร์ (ภาษาอังกฤษ)
Computer Science (English Program) or CS
------------------------------------------------------------------------------------------------
ประสบการณ์ต่างๆ

-ตอนมัธยม ก็เป็นเหรัญญิกห้อง สักพัก เลื่อนเป็นหัวหน้าห้อง (งงไหมหละ)
-ป.ตรี
+ก็มีเป็นพี่เลี้ยง
ค่าย 2B-KMUTT รุ่น 2-6 แต่รุ่น 6 ได้เป็นประธานค่าย (อิอิ)
+เป็นผู้บรรยายเรื่อง "ทักษะนักวิจัย" ใน
ค่ายพี่เลี้ยง2B-KMUTT
+เคยช่วยงานโพสข่าวให้
ฝ่ายประชาสัมพันธ์ของมหาวิทยาลัย(ได้ตังค์เยอะอยู่)
+ใน
คณะก็เคยเป็นหลีดฮา(แบบครั้งนึงในชีวิต ไม่ขอทำอีก 55)
+
ทำงานทุนคณะก็ได้ออกแบบของ(เลยได้ทักษะ photoshop มา)
และไอเดีย Brain Board ร่วมกับพี่ที่ทำงานด้วย ( เป็นบอร์ดที่เอาไว้เพิ่มความรู้ให้กับนักศึกษาภายในคณะ )
+ทำ
ค่ายจูเีนียร์โปรแกรมเมอร์ JPC (ก็ช่วยทั่วไป และก็คุมหอพักให้)
+เป็นสตาฟ
HERO(สอนFlash Programming) ซึ่งตอนนี้ก็เป็นประธานจัดอบรมรุ่นต่อไป
+ใน
รุ่นก็เป็นฝ่ายเอกสารต้องเก็บเงินเองด้วย เห ไม่ยอมเก็บ (เลยใช้ Excel เก่งขึ้น ทำบัญชี)
+เมื่อไม่นานมานี้ก็ไปเป็น(คล้ายๆ
หนูทดลอง)เรียน micro controller กับพี่ที่ FIBO@KMUTT

ทำไมถึงต้องเล่าก็เพื่อบางคนจะได้ขอความช่วยเหลือในสิ่งที่เรารู้ได้ไม่มากก็น้อย
ทั้งการทำงานในตำแหน่งต่างๆ ค่าย และอื่นๆ ทั้งหมดนี้ไม่่ค่อยจะเรียงตามกาลเวลาเท่าไหร
------------------------------------------------------------------------------------------------
Program ที่เป็น หรือเคยผ่านหูผ่านตา
- JAVA(ใช้อยู่ภาษาเดียวเพราะเรียนอยู่), Pascal, C, Visual Basic(บางภาษาไม่ได้ใช้นานก็ลืมๆบ้าง), Dreamweawer, Photoshop, Microsoft Office(ก็ได้เกือบหมดรวมทั้ง Access), ตัดต่อวีดีโอก็ได้(ลืมชื่อโปรแกรมอะ),โปรแกรมทั่วไป, OS ก็นิดหน่อย เคยลองลง Lispus Linux, arduino,Etc จำชื่อโปรแกรมไม่ได้

เพื่อนๆ หรือบุคคลท่านไหนต้องการสอบถามก็ลองถามมาดูได้ จะพยายามตอบให้นะคะ
------------------------------------------------------------------------------------------------
และ
จุดเริ่มต้นในการทำบล็อคของข้าพเจ้า
เมื่อ อาจารย์ท่านหนึ่งใน
CS แนะนำให้ทำเพื่อ
-ใช้ในการถ่ายทอดความรู้ที่ข้าพเจ้าได้รับจากการเรียน แก่ผู้อื่น
-และก็คงมีประโยชน์อีกมาก จากการที่ข้าพเจ้าได้เริ่มต้นทำบางสิ่งทั้งแก่ข้าพเจ้าเอง แก่คณะ และแ่ก่สังคม
บางครั้งก็อาจนอกเรื่องไปบ้างคงไม่ว่ากัน
------------------------------------------------------------------------------------------------
บล็อกนี้จะพยายามเน้นไปทางด้านเนื้อหา Software Engineering (SE) นะคะ
-------------------------------------------------------------------------------End-------------