More Related Content Similar to โครงงาน_29 (20) โครงงาน_291. รหัสโครงการ 11P32C466
ซอฟต์แวร์ uGuide ไกด์ส่วนตัวฉบับพกพา
uGuide Software (Guide : Personal and Mobile Version)
Mobile Application
รายงานฉบับสมบูรณ์
เสนอต่อ
ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ
สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ
กระทรวงวิทยาศาสตร์และเทคโนโลยี
ได้รับทุนอุดหนุนโครงการวิจัย พัฒนาและวิศวกรรม
โครงการแข่งขันพัฒนาโปรแกรมคอมพิวเตอร์แห่งประเทศไทย ครั้งที่ 11
ประจำปีงบประมาณ 2551
โดย
นายวทัญญู บุญครอบ
นายทศพล ล่องทอง
นางสาวดารินทร์ ยามาลี
ผศ.ดร.ศุภชัย วรพจน์พิศุทธ์ิ
ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์
มหาวิทยาลัยธรรมศาสตร์
2. i
กิตติกรรมประกาศ
การดำเนินโครงงาน “ซอฟต์แวร์ uGuide ไกด์ส่วนตัวฉบับพกพา” รหัสโครงการ
11P32C466 จะไม่สำเร็จไปได้ด้วยดีหากขาดการสนับสนุนและกำลังใจจากหลายๆฝ่าย อาทิ
การได้รับทุนอุดหนุนได้รับทุนอุดหนุนโครงการการแข่งขันพัฒนาโปรแกรมคอมพิวเตอร์
แห่งประเทศไทย ครั้งที่ 11 จากศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ สำนักงาน
พัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ และสำนักงานส่งเสริมอุตสาหกรรมซอฟต์แวร์แห่งชาติ
ผศ.ดร.ศุภชัย วรพจน์พิศุทธ์ิ อาจารย์ที่ปรึกษาโครงงาน สำหรับคำปรึกษา คำแนะนำและ
แนวทางการแก้ไขเมื่อเกิดปัญหาในการพัฒนาโครงงาน รวมทั้งสนับสนุนเครื่องมือและอุปกรณ์
ต่างๆ ที่จำเป็นต้องใช้ในระหว่างการพัฒนาโครงงาน
พี่ๆ ปี 4 ในชั้นเรียนวิชา CN323(Software Engineering) ที่ได้กรุณาให้คำแนะนำอันมี
คุณค่าและให้ความรู้เพิ่มเติมเกี่ยวกับโครงงาน
เพื่อนๆ ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยธรรมศาสตร์ ที่
คอยให้คำปรึกษา ช่วยเหลือและกำลังใจในทุกด้านๆ
ผู้พัฒนาใคร่ขอขอบพระคุณทุกๆท่านเป็นอย่างสูง ณ ที่นี้ ที่ได้ช่วยให้การดำเนินโครงงาน
ในครั้งนี้สำเร็จลุล่วงไปได้ด้วยดี
คณะผู้จัดทำ
3. ii
บทคัดย่อ
ปัจจุบัน ห้างสรรพสินค้าเป็นสถานที่ซึ่งประชาชนส่วนใหญ่นิยมไปจับจ่ายซื้อของ พักผ่อน
หรือนัดพบกัน ซึ่งห้างสรรพสินค้าสมัยใหม่นั้นจะมีขนาดใหญ่ ทำให้ลูกค้ามักสับสนเกี่ยวกับที่ตั้ง
ของร้านค้าต่างๆ นอกจากนี้เมื่อทางร้านค้าต้องการการประชาสัมพันธ์ก็มีข้อจำกัดในแง่ของสื่อที่
ใช้ประชาสัมพันธ์ เนื่องจากปริมาณของลูกค้า พื้นที่ และค่าใช้จ่าย โดยเฉพาะสื่อสิ่งพิมพ์ประเภท
ใบปลิวที่จะสิ้นเปลืองมาก ดังนั้นเราจึงนำเสนอแนวทางของการประยุกต์โทรศัพท์มือถือให้เป็น
สื่อในการประชาสัมพันธ์ร้านค้าในห้างสรรพสินค้า ทำให้ลูกค้ารับรู้ที่ตั้งของร้านค้า ได้รับข่าวสาร
ของการส่งเสริมการขาย และค้นหาร้านค้าที่สนใจได้ โครงงานนี้เป็นการพัฒนาซอฟต์แวร์โมไบล์
ที่ชื่อว่า “uGuide” ซึ่งประกอบด้วย 3 ฟังก์ชัน ได้แก่ ฟังก์ชัน Promotion สำหรับดึงข้อมูลของ
รายการส่งเสริมการขายภายในห้างสรรพสินค้าในรูปของข้อความสั้นๆ ฟังก์ชัน Browse สำหรับให้
ลูกค้าค้นหาร้านค้าที่สนใจจากใน 12 หมวด และฟังก์ชัน QRCapture ทำหน้าที่แสดงข้อมูลของ
ร้านค้าด้วยการอ่านบาร์โค้ด 2 มิติที่ติดอยู่ในสื่อสิ่งพิมพ์เช่น นิตยสาร หรือป้ายต่างๆ แนวทางหลัก
ที่เรายึดในการพัฒนาซอฟต์แวร์คือ วิธีใช้งานที่ง่ายด้วยขั้นตอนที่ผู้ใช้ทั่วไปคุ้นเคย เช่น กดอ่าน
ข้อความ กดเลือกจากชื่อ หรือกดเพื่อถ่ายภาพ โดยไม่จำเป็นต้องพิมพ์ข้อความหรือเชี่ยวชาญในการ
ค้นข้อมูลจากอินเตอร์เน็ต ทั้งนี้ซอฟต์แวร์นี้จะทำให้สามารถเป็นพื้นฐานที่สำคัญในการสร้างธุรกิจ
สื่อประชาสัมพันธ์รูปแบบใหม่บนโทรศัพท์มือถือ ซึ่งสามารถตอบสนองความต้องการได้ดีกว่าการ
ส่งข้อความ SMS ทั่วไป
4. iii
Abstract
At present, shopping malls become a common place where people go for shopping,
entertaining, and also meeting with friends. Due to their popularity, recent shopping malls are
very big with a lot of shops in various categories; hence make their customers become confusing
about shop locations. In addition, the media for shop promotion also becomes inefficient
concerning the number of customers, area size, and also cost. Therefore we have proposed a
concept of using mobile phones as a personal media by providing shop information, sale
promotion, and lists of shops. The “uGuide” software consists of three main features including
the Promotion feature for querying a list of sale promotion in text, the Browse feature for
browsing 12 categorized lists of shops, and the QRCapture feature for displaying shop
information based on photo of 2D barcode taken from publishing media such as magazines. The
main approach of our software development is to make simple and intuitive user interface for
mobile phone users without any key input or computer familiarity. An advantage of our software
is the provision of new media based on mobile phone technologies which surpasses existing
media such as SMS promotion.
5. iv
บทนำ
1.แนวคิด
โครงงานนี้เป็นโครงงานที่นำโทรศัพท์มือถือมาใช้ในการทำการโฆษณา โดยมีแนวคิดคือ
ทำการย้าย Google Adsense มาไว้บนโทรศัพท์มือถือ และนำไปใช้กับห้างสรรพสินค้า ซึ่งจะส่งผล
ให้การโฆษณานี้สามารถเข้าถึงผู้บริโภคได้ดีขึ้น ซึ่งมีโครงสร้างการทำงาน ดังนี้
โดยตัวโปรแกรมจะต้องติดตั้งไว้ภายในตัวเครื่องของโทรศัพท์ และในส่วนของข้อมูลนั้น
จะดาวน์โหลดจาก Server โดยข้อมูลจะอยู่ในรูปของ XML ที่มีขนาดเล็กทำให้ผู้ใช้ไม่รู้สึกว่าช้าใน
การใช้งาน
2.ความเป็นมา
ปัจจุบันเป็นยุคที่การทำธุรกิจต้องแข่งขันกันในด้านของการเผยแพร่ข้อมูลให้เข้าถึงกลุ่ม
ผู้บริโภคเป้าหมาย ซึ่งเนื้อหาของข้อมูลอาจเกี่ยวกับภาพลักษณ์ขององค์กร ลักษณะของสินค้าและ
บริการ สถานที่ซึ่งจะสามารถซื้อหาสินค้าหรือบริการ และข้อเสนอส่งเสริมการขาย ข้อมูลเหล่านี้
จะถูกกระจายไปยังกลุ่มผู้บริโภคได้หลายวิธี ดังนี้
1) ปากต่อปาก หลายองค์กรพยายามให้การบริการที่ดีเพื่อให้เกิดการประชาสัมพันธ์แบบ
ปากต่อปากของลูกค้า แต่ในวิธีนี้ถ้ามีลูกค้าที่ไม่ประทับใจในสินค้าและบริการก็จะทำ
ให้เกิดการประชาสัมพันธ์ในทางลบเกิดขึ้นด้วย
2) แผ่นพับและใบปลิว ถือเป็นวิธีที่ยอดนิยมมากที่สุด อันจะเห็นได้จากมีการใช้วิธีนี้ใน
การประชาสัมพันธ์กันอย่างแพร่หลาย ซึ่งมีเหตุมาจากเป็นวิธีที่ง่าย สะดวกในการ
6. v
แจกจ่ายและพกพา แต่ก็มีข้อเสียอยู่หลายประการ ได้แก่ ไม่สามารถรับรองผลลัพธ์ได้
ว่าลูกค้าจะสนใจในแผ่นพับที่ได้รับไปหรือไม่ เป็นการโฆษณาที่ตายตัวจากการที่ไม่
สามารถแก้ไขข้อมูลในแผ่นพับได้ ต้องลงทุนสูงหากมีการตีพิมพ์จำนวนมาก
นอกจากนี้ยังเป็นการทำลายธรรมชาติโดยเปล่าประโยชน์เพราะแผ่นพับส่วนใหญ่มัก
ถูกทิ้งเป็นขยะ
3) การติดตั้งป้ายโฆษณา ซึ่งอาจทำแบบถาวรด้วยวัสดุคงทน เช่น อะครีลิกหรือโลหะ
หรืออาจเป็นการพิมพ์โปสเตอร์ขนาดใหญ่และใช้เฟรมในการยึด ข้อจำกัดของป้าย
โฆษณานี้คือ มีค่าใช้จ่ายในการติดตั้งสูง ไม่สามารถเคลื่อนย้ายได้ในกรณีใช้วัสดุคงทน
รวมทั้งให้ข้อมูลข่าวสารได้จำกัดในระดับเดียวกับแผ่นพับเพราะต้องพิมพ์ข้อความ
หรือรูปต่างๆให้มีขนาดใหญ่สามารถเห็นได้จากระยะไกล
4) การใช้ป้ายโฆษณาแบบดิจิตอล (Digital Signage) มีการใช้กันอย่างแพร่หลายในช่วง
ที่ผ่านมาเนื่องจากข้อดีหลายอย่าง เช่น สามารถใช้ภาพเคลื่อนไหวได้ ดึงดูดความ
สนใจของบุคคลที่ผ่านไปมาได้ดี ฯลฯ แต่ก็มีข้อจำกัดอยู่คือ ป้ายโฆษณาเหล่านี้จะ
เป็นป้ายแบบตายตัว คือ กลุ่มลูกค้าจะไม่สามารถโต้ตอบกับป้ายนั้นได้เมื่อเกิดข้อสงสัย
ในสิ่งที่โฆษณา จึงทำให้ลูกค้าบางส่วนอาจละเลยที่จะสนใจสื่อโฆษณาประเภทนี้
นอกจากนี้ยังเป็นวิธีที่มีต้นทุนสูงและสิ้นเปลืองพลังงานโดยไม่จำเป็น โดยเฉพาะใน
บางช่วงเวลาที่มีลูกค้าจำนวนน้อย แต่ก็ไม่สามารถปิดป้ายโฆษณาได้
5) การประชาสัมพันธ์ผ่านทางอินเตอร์เน็ต ซึ่งก็เป็นแนวทางที่ได้รับความนิยมอย่างมาก
เพราะมีต้นทุนค่าใช้จ่ายที่ไม่สูงมากนัก มีรูปแบบที่สามารถเลือกได้หลากหลาย เช่น
การสร้างเว็บไซต์ การส่ง e-mail ประชาสัมพันธ์ รวมทั้งการโฆษณาผ่านระบบค้นหา
ข้อมูล เช่น google รวมทั้งสามารถเชื่อมโยงกับระบบสนับสนุนอื่นๆ เช่น การจองหรือ
สั่งซื้อบริการผ่านอินเตอร์เน็ตได้ อย่างไรก็ตาม จุดอ่อนสำคัญของการประยุกต์ใช้
อินเตอร์เน็ตเป็นสื่อโฆษณาคือ มีกลุ่มเป้าหมายที่เจาะจงเป็นอย่างมาก ต้องใช้ทักษะใน
การใช้งาน รวมทั้งมีพื้นที่การให้บริการที่จำกัดอย่างมาก เช่น จากที่บ้าน/ที่ทำงานซึ่ง
ติดตั้งอินเตอร์เน็ต หรือจากร้านค้าที่ให้บริการเสริมเป็นอินเตอร์เน็ต ในขณะที่การ
เข้าถึงเครือข่ายอินเตอร์เน็ตในขณะเดินทางยังมีข้อจำกัดจากความไม่พร้อมของ
เทคโนโลยีที่รองรับในปัจจุบัน
จากตัวอย่างของแนวทางการโฆษณาที่กล่าวมานี้จะเห็นได้ว่ายังไม่มีแนวทางใดที่สอดคล้องกับการ
ดำเนินชีวิตของคนในยุคปัจจุบันได้ครบถ้วน ได้แก่ ต้นทุนไม่สูงมาก ปรับเปลี่ยนเนื้อหาได้ สามารถ
ตอบโต้กับลูกค้าได้ พกพาไปได้ในทุกๆที่ ค้นหาข้อมูลที่ต้องการโดยไม่จำเป็นต้องมีทักษะทางด้าน
คอมพิวเตอร์ และเมื่อไม่ต้องการใช้แล้วจะไม่กลายเป็นขยะที่ทางผู้จัดทำต้องรับผิดชอบ
7. vi
แนวทางของการโฆษณาโดยตรงของร้านค้าทั่วไป ร้านค้าในห้างสรรพสินค้า หรือบูทที่อยู่
ในบริเวณจัดงาน มักนิยมการแจกแผ่นพับให้กับบุคคลต่างๆที่เดินทางมาในบริเวณนั้น ซึ่งก็เป็น
แนวทางที่มีค่าใช้จ่ายค่อนข้างสูงในกรณีที่มีการตีพิมพ์จำนวนมากหรือตีพิมพ์ด้วยวัสดุและสีสันที่
น่าสนใจ ในขณะที่อาจเกิดความล้มเหลวได้ง่ายหากแผ่นพับมีเนื้อหาไม่เป็นที่สนใจ ดังนั้นวงการ
โฆษณาในช่วงที่ผ่านมาจึงได้ประยุกต์คอมพิวเตอร์เป็นป้ายโฆษณาแบบดิจิตอล (digital signage)
ซึ่งเป็นแนวทางที่ลงทุนสูงในระยะเริ่มต้น หรือเป็นจุดให้ข้อมูลแบบ kiosk ด้วยการใช้เทคโนโลยีจอ
สัมผัสดังเช่นที่ติดตั้งในห้างสรรพสินค้าชั้นนำ เช่น ห้างพารากอน เป็นต้น อย่างไรก็ตาม การแจก
แผ่นพับหรือการใช้ป้ายโฆษณาแบบดิจิตอลต่างก็มีข้อจำกัดอย่างมากสำหรับบริเวณที่มีร้านค้าอยู่
จำนวนมาก โดยเฉพาะในห้างสรรพสินค้าและบริเวณสถานที่จัดงานต่างๆ เนื่องจากมีปริมาณของ
ข้อมูลที่ต้องสื่อกับกลุ่มลูกค้ามากเกินไป ในขณะที่กลุ่มลูกค้าเองก็ไม่สามารถเลือกเฉพาะข้อมูลที่
ต้องการได้
โทรศัพท์มือถือเป็นเครื่องมือสื่อสารที่ได้รับการยอมรับจากคนในวงกว้างที่สุด เมื่อคำนึง
ฐานผู้ใช้ที่มีอายุและพื้นฐานชีวิตที่แตกต่างกัน โดยความนิยมนั้นอาจกล่าวได้ว่าประชากร 1 คนใน
หลายประเทศ (รวมทั้งประเทศไทย) อย่างน้อยจะมีโทรศัพท์มือถือ 1 เครื่อง หรืออีกนัยหนึ่ง
เทคโนโลยีการสื่อสารนั้นได้กลายเป็นอีกปัจจัยหนึ่งในการดำรงชีวิต ทั้งนี้เมื่อพิจารณาถึง
ความสามารถในการประมวลผลที่มีอยู่ในโทรศัพท์มือถือ เช่น การเก็บรวบรวมข้อมูลต่างๆในการ
สื่อสารและการประมวลผลโค้ด Java โทรศัพท์มือถือจึงเปรียบเสมือนคอมพิวเตอร์ขนาดเล็กที่
ติดตามเราไปตลอด 24 ชั่วโมง เราจึงได้เห็นโทรศัพท์มือถือถูกประยุกต์ให้สามารถใช้งานในด้าน
อื่นๆได้หลากหลายขึ้นอยู่กับซอฟต์แวร์ เช่น เครื่องเล่นเกม อุปกรณ์ช่วยในการเรียน หรืออุปกรณ์
ช่วยในการนำทาง ฯลฯ ดังนั้นเราจึงได้เกิดแนวคิดในการที่จะนำเอาโทรศัพท์มือถือมาใช้ให้เกิด
ประโยชน์ในการเข้าถึงแหล่งข้อมูลข่าวสารโดยไม่จำเป็นต้องเป็นผู้ที่มีความรู้ทางด้านคอมพิวเตอร์
หรืออินเตอร์เน็ต
การประยุกต์เทคโนโลยีของโทรศัพท์มือถือมาใช้เป็นสื่อโฆษณาเองก็ได้เริ่มมีขึ้นแล้วในรูป
ของระบบการส่ง SMS มาแจ้งข้อเสนอต่างๆ รวมทั้งการส่ง SMS แบบกลุ่มไปสู่กลุ่มเป้าหมายที่อยู่
ภายในบริเวณที่กำหนด เช่น เมื่อเราเข้าสู่บริเวณศูนย์ประชุมแห่งชาติ สิริกิต์ ก็จะมี SMS มาบอกถึง
ข้อเสนอของบูทต่างๆในงานที่จัด ณ ขณะนั้น อย่างไรก็ตาม ระบบ SMS มีข้อจำกัดในแง่ของ
เนื้อหาที่สามารถแสดงได้ และไม่เหมาะสมกับการรวบรวมเนื้อหาในการโฆษณาของร้านค้าจำนวน
มาก ดังนั้น เราจึงนำเสนอแนวทางใหม่ในการสร้างช่องทางโฆษณา/การตลาดบนโทรศัพท์มือถือ
ในรูปแบบของ Mobile application กล่าวคือ เสนอซอฟต์แวร์ให้ติดตั้งฟรีบนโทรศัพท์มือถือของ
กลุ่มลูกค้าเป้าหมาย ซอฟต์แวร์นี้จะทำหน้าที่เป็นช่องทางการได้รับข้อเสนอพิเศษและค้นหาข้อมูล
ข่าวสารของร้านค้าที่สนใจ ทั้งนี้ชื่อ/ประเภทของร้านค้าในห้างสรรพสินค้าแต่ละแห่งจะได้รับการ
8. vii
ปรับเปลี่ยนเมื่อเข้าสู่ห้างสรรพสินค้านั้น ในขณะที่ข้อมูลอื่นๆของร้านค้าจะอยู่บนระบบเซิร์ฟเวอร์
บนอินเตอร์เน็ต ซึ่งจะถูกร้องขอก็ต่อเมื่อลูกค้าสั่งการเท่านั้น
แนวทางที่นำเสนอนี้จะทำให้เกิดช่องทางโฆษณา/การตลาดแบบใหม่ขึ้นมาได้ โดยมีข้อดี
หลายอย่าง เช่น ถูกพกพาไปกับกลุ่มเป้าหมาย ตอบสนองต่อความต้องการของลูกค้าได้ มีเนื้อหาที่
หลากหลายและปรับเปลี่ยนได้ รวมทั้งสามารถรองรับการขยายตัวไปสู่ธุรกิจอื่นๆได้ ทั้งนี้สิ่งที่เป็น
ประเด็นสำคัญในการออกแบบซอฟต์แวร์นี้ คือ วิธีการใช้งานต้องง่ายและมีรูปแบบที่คล้ายคลึงกับ
การใช้งานโทรศัพท์มือถือทั่วไป ซึ่งเป็นที่ยอมรับจากบุคคลในทุกระดับ ดังนั้น เราจึงมุ่งเป้าหมาย
ในการออกแบบและพัฒนาซอฟต์แวร์ที่ผู้ใช้ไม่จำเป็นต้องพิมพ์ตัวอักษรเลย โดยอาศัยกล้องและปุ่ม
ทิศทางเป็นอินพุตเท่านั้น
9. สารบัญ
กิตติกรรมประกาศ .............................................................................................................................. i
บทคัดย่อ ........................................................................................................................................... ii
Abstract ........................................................................................................................................... iii
บทนำ ............................................................................................................................................... iv
บทที่ 1 วัตถุประสงค์ ......................................................................................................................... 1
บทที่ 2 รายละเอียดของการพัฒนา..................................................................................................... 1
2.1 ทฤษฎีหลักการที่ใช้ ................................................................................................................. 1
2.2 เครื่องมือที่ใช้ในการพัฒนา ..................................................................................................... 2
2.3 Software Specification ........................................................................................................... 3
2.4 โครงสร้างของ Software ......................................................................................................... 4
2.5 ขอบเขตและข้อจำกัดของ Software ...................................................................................... 14
2.6 อุปกรณ์ที่ใช้กับซอฟต์แวร์ .................................................................................................... 14
2.7 กลุ่มผู้ใช้ ................................................................................................................................ 14
บทที่ 3 ผลการทดสอบโปรแกรม .................................................................................................... 15
3.1 ทดสอบการเข้าโปรแกรม ..................................................................................................... 15
3.2 ทดสอบการเข้าฟังก์ชัน QRCapture ...................................................................................... 16
3.3 ทดสอบการเข้าฟังก์ชัน Browse ............................................................................................ 17
3.4 ทดสอบการเข้าเว็บไซด์......................................................................................................... 18
บรรณานุกรม ................................................................................................................................... 19
ภาคผนวก ก ..................................................................................................................................... 20
การติดตั้ง Software ..................................................................................................................... 20
ภาคผนวก ข ..................................................................................................................................... 21
การใช้งาน Software.................................................................................................................... 21
10. 1
บทที่ 1 วัตถุประสงค์
1. เพื่อสร้างช่องทางโฆษณาและการตลาดแบบใหม่ ซึ่งอาศัยความนิยมของโทรศัพท์มือถือทำให้
เข้าถึงกลุ่มเป้าหมายขนาดใหญ่
2. เพื่อสร้างแนวทางการทำธุรกิจของสื่อโฆษณาแบบใหม่ โดยเป็นแพลตฟอร์มที่สามารถรองรับ
การร้องขอจากหลายประเภทธุรกิจได้ เช่น ธุรกิจนำเที่ยว ห้างสรรพสินค้า ธุรกิจจัดงานแสดง
สินค้า หรืออื่นๆ
3. ลดค่าใช้จ่ายในด้านการพัฒนาสื่อโฆษณาอย่างมีนัย
4. สร้างจุดขายใหม่ที่ส่งเสริมการเติบโตเทคโนโลยีสื่อสารข้อมูลสมัยใหม่ของโทรศัพท์มือถือ
เช่น ระบบ 3G
5. ส่งเสริมการอนุรักษ์สิ่งแวดล้อม ทั้งในด้านการลดปัญหาขยะในส่วนของแผ่นพับ และพลังงาน
ไฟฟ้าในส่วนของป้ายโฆษณา
6. พัฒนาองค์ความรู้ทางด้าน Mobile application บนแพลตฟอร์ม Google Android ซึ่งได้รับการ
คาดหมายว่าจะได้รับความนิยมในอนาคตอันใกล้นี้
บทที่ 2 รายละเอียดของการพัฒนา
2.1 ทฤษฎีหลักการที่ใช้
แนวคิดหลักของซอฟต์แวร์คือ การมีวิธีใช้งานที่ง่ายและใกล้เคียงกับรูปแบบการใช้งานของ
โทรศัพท์มือถือที่ใช้กันบ่อยที่สุด โดยจะไม่ให้ผู้ใช้ต้องป้อนอินพุทด้วยการพิมพ์ข้อความหรือเลือก
จากเมนูที่ซับซ้อน ดังนั้นการออกแบบส่วนติดต่อผู้ใช้จึงจำกัดไว้เฉพาะปุ่มกดทิศทาง และปุ่มกด
เลือกหรือยกเลิกเท่านั้น เนื้อหาที่แสดงก็ต้องคัดสรรแล้วว่าเหมาะสมกับหน้าจอของโทรศัพท์มือถือ
รวมทั้งมีเวลาในการตอบสนองต่อการกดปุ่มของผู้ใช้อย่างทันใจ การออกแบบจึงใช้แนวทางของ
ไคลเอนต์-เซิรฟ์เวอร์ร่วมกับเทคนิค 2 ส่วนคือ การดาวน์โหลดข้อมูลเฉพาะส่วนในรูปของ XML
และการอ่านข้อมูลจากภาพบาร์โค้ด 2 มิติ
โดยทั่วไปนั้น Xml เป็นภาษาที่ใช้เน้น (มาร์กอัป) ส่วนที่เป็นข้อมูล โดยสามารถกำหนดชื่อ
แท็ก (Element) และชื่อแอตทิบิวต์ ได้ตามความต้องการของผู้สร้างเอกสาร xml ซึ่งในโครงงานนี้
ได้นำ Xml มาใช้ในการเก็บรายชื่อร้านค้า, ประเภทร้านค้า และ URL ไว้ภายในตัวของโปรแกรม
เพื่อทำให้ผู้ใช้ไม่ต้องทำการดาวน์โหลดข้อมูลทั้งหมด เพราะถ้าให้ผู้ใช้ต้องดาวน์โหลดข้อมูล
ทั้งหมดจะทำให้ใช้เวลาในการดาวน์โหลดมากเกินไปส่งผลให้โปรแกรมไม่น่าใช้งาน
11. 2
บาร์โค้ด 2 มิติ เป็นบาร์โค้ดที่สามารถบันทึกข้อมูลได้ทั้งแนวตั้งและแนวนอน โดยมี
ลักษณะสำคัญ คือ ขนาดเล็ก, สามารถอ่านได้รวดเร็ว และบรรจุข้อมูลได้มาก ซึ่งในโครงงานนี้
จะนำเอาบาร์โค้ด 2 มิติมาใช้ในการเก็บ URL ของข้อมูลร้านค้า เพื่อช่วยให้ผู้ใช้ไม่ต้องทำการป้อน
อินพุทโดยการพิมพ์
นอกจากนี้ยังมีหลักการอื่นๆ อีก ดังนี้
2.1.1 ภาษา Java
ภาษาจาวา (Java Language) คือ ภาษาคอมพิวเตอร์ที่ถูกพัฒนาขึ้นโดยบริษัท ซันไมโครซิส
เต็มส์ เป็นภาษาสำหรับเขียนโปรแกรมที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุ (OOP : Object-
Oriented Programming) โปรแกรมที่เขียนขึ้นถูกสร้างภายในคลาส ดังนั้นคลาสคือที่เก็บเมทอด
(Method) หรือพฤติกรรม (Behavior) ซึ่งมีสถานะ (State) และรูปพรรณ (Identity) ประจำ
พฤติกรรม (Behavior) โดยข้อดีของจาวา คือ สามารถทำการรันบนเครื่องทุกๆรุ่น
2.1.2 Android
Android คือแพลตฟอร์มใหม่สำหรับโทรศัพท์มือถือและอุปกรณ์พกพา ซึ่งประกอบด้วย
ระบบปฏิบัติการ ไลบรารี เฟรมเวิร์ค และซอฟต์แวร์อื่นๆ ที่จำเป็นในการพัฒนา มันเทียบเท่ากับ
Windows Mobile, Palm OS, Symbian, และ Maemo ของโนเกีย โดยจะจับตลาดมือถือรุ่นใหม่ที่มี
ความสามารถสูงๆ
ภาษาที่ใช้พัฒนาเป็นจาวา แต่เอามาเฉพาะภาษา (Java programming language) ไม่ได้ใช้
แพลตฟอร์มของซันเลย โดย Android มีรันไทม์ของตัวเองชื่อว่า Dalvik ซึ่งแทนที่เราจะคอมไพล์
เป็นไบต์โค้ด ก็ใช้ฟอร์แมต Dalvik Executable (.dex) แทน การสร้าง GUI ใช้เป็นไฟล์ XML
(สไตล์เดียวกับ XAML หรือ XUL)
2.2 เครื่องมือที่ใช้ในการพัฒนา
- Android SDK
- eclipse
- Droid Draw
- ZXing (Zebra Crossing)
- คอมพิวเตอร์ (Computer)/โน้ตบุ๊ค(Notebook)
12. 3
2.3 Software Specification
2.3.1 Input Specification
โปรแกรม uGuide นี้จะมีการรับอินพุทด้วยกัน 3 ทาง ดังนี้
1) รับ SMS Promotion ครบชุดจาก Server ผ่านทาง GPRSโดยจะได้รับเมื่อทำ
การเปิดโปรแกรมครั้งแรก
2) รับภาพ 2D Barcode เพื่อนำไปแปลงเป็น URL แล้วเปิดเป็นเว็บเพจแสดง
ข้อมูล
3) รับคำสั่งจาก User ว่าจะให้โปรแกรมทำงานอย่างไร หรือไปทำในฟังก์ชันใด
2.3.2 Output Specification
โปรแกรม uGuide จะมีเอาท์พุทด้วยกัน 3 ทาง ดังนี้
1) แสดง SMS Promotion ในหน้าจอหลัก
2) แสดงเว็บเพจเพื่อแสดงข้อมูลของร้านค้า หรือแผนที่ของร้านค้า
3) แสดงเป็นข้อความเพื่อใช้ในการบอกว่า URL ที่ได้คืออะไร
2.3.3 Functional Specification
1. ส่วนอุปกรณ์การรับรู้
เป็นโมดูลที่ใช้ในการตวรจสอบว่า User กำลังสั่งให้โปรแกรมทำงานอะไร โดยใช้ใน
รูปแบบของระบบสัมผัส และการกดปุ่มของโทรศัพท์มือถือ
2. ส่วนของการรับอินพุทภาพ (Camera Module)
เป็นโมดูลที่ใช้ในการรับ 2D Barcode โดยจะรับเข้ามาเพื่อทำการแปลงเป็น URL ได้ก็
ต่อเมื่อ User ทำการกดปุ่ม Capture บนโทรศัพท์มือถือ
3. ส่วนของการสื่อสาร (Communication Module)
เป็นโมดูลที่ใช้ในการรับ SMS Promotion ครบชุดจาก Server โดยเป็นโมดูลที่ทำการ
เชื่อมต่อกับ Server ทาง GPRS
4. ส่วนของการประมวลผล (Processing Module)
เป็นโมดูลที่ควบคุมการทำงานของโปรแกรมโดยรวม
- ควบคุมการรับ SMS Promotion
- ควบคุมการรับ 2D Barcode มาแปลงเป็น URL
- ควบคุมการเปิดเว็บเพจจาก URL
5. ส่วนของการแสดงผล (Display Module)
เป็นโมดูลที่ใช้ในการแสดงผลต่างๆผ่านทางหน้าจอของโทรศัพท์มือถือ เช่น เว็บเพจ,
หน้าหลักของโปรแกรม, รูปถ่ายที่ได้, ข้อความ ฯลฯ
13. 4
2.4 โครงสร้างของ Software
โปรแกรมจะมีฟังก์ชันการทำงาน ดังนี้
1. สามารถรับ SMS Promotion ได้
2. สามารถทำการค้นหาร้านค้าจาก 2D Barcode ได้
3. สามารถทำการค้นหาร้านจากการแบ่งประเภทร้านค้าได้
ซึ่งทั้ง 3 ฟังก์ชันจะมีการทำงานต่างๆภายในตัวมันเอง เช่น การเปลี่ยน SMS, การเปลี่ยน
หน้าของรายการร้านค้า ฯลฯ และในส่วนของ Output ของทุกๆฟังก์ชันจะสังเกตเห็นได้ว่าเป็น
แบบเดียวกันทั้งหมด คือ เว็บเพจแสดงข้อมูลของร้านค้า ดังนั้นการทำงานของโปรแกรมในขั้น
สุดท้ายในของแต่ละฟังก์ชันจะไปรวมที่จุดเดียวกัน ซึ่งสามารถแสดงในรูปแบบของ Use Case
Diagram ได้ดังนี้
ส่วนขั้นตอนการทำงาน, การส่งข้อมูล และการตัดสินใจ ดังที่จะแสดงในรูปแบบของ
UML ดังต่อไปนี้
1) ส่วนของ User Interface ที่เป็นหน้าหลักของโปรแกรม
การออกแบบ Class
การสร้างรูปแบบของหน้าจอหลักจะสร้างในคลาสของ uGuide ส่วนฟังก์ชันต่างๆ ที่ต้อง
นำมาช่วยในการสร้าง User Interface ก็จะทำการ Dependency คลาสนั้นๆ มา เพราะว่าเราทำการ
เรียกใช้ class นั้นเท่านั้นจึงใช้ Dependency คลาสนั้นมาได้เลยโดยไม่ต้องเขียนในส่วนเดียวกัน
โดยมีความสัมพันธ์กันระหว่าง Class ดังนี้
14. 5
Class Diagram ของหน้าจอหลักของโปรแกรม
การส่งข้อมูลและเชื่อมต่อ
การส่งเชื่อมต่อและส่งข้อมูลให้กับส่วนอื่นๆ นั้นจะแบ่งออกเป็น 3 ส่วนตามฟังก์ชันของ
โปรแกรม คือ SMS Promotion, Browser และ QR Capture ตามลำดับ ดังนี้
Sequence Diagram ของ User Interface ในการเรียกฟังก์ชัน Browse
Sequence Diagram ของ User Interface ในการเรียกฟังก์ชัน SMS Promotion
Sequence Diagram ของ User Interface ในการเรียกฟังก์ชัน QR Capture
15. 6
สถานะของ Hardware
สถานะของเครื่องโทรศัพท์ที่ใช้ โปรแกรม uGuide เมื่อเปิดใช้งานอยู่บนหน้าของ User
Interface จะมีสถานะ ดังนี้
State Machine Diagram ของหน้าจอหลักของโปรแกรม
ขั้นตอนการทำงาน
ขั้นตอนการทำงานของหน้า User Interface จะมีรูปแบบของการทำงาน และการตัดสินใจ
เมื่อ User สั่งงาน ดังต่อไปนี้
Activity Diagram ของหน้าจอหลักของโปรแกรม
2) ส่วนของฟังก์ชัน SMS Promotion
การออกแบบ Class
Class Diagram ในส่วนของPromotionMessanger ประกอบไปด้วย 5 คลาสหลักๆ คือ
MsgPro, Message, MainMsgPro, MsgDB, MsgHandler ซึ่งแต่ละคลาสมีรายละเอียดดังนี้
16. 7
1. คลาสMsgProg เป็นหน้าInterfaceหลัก ซึ่งมีmethod 3 method เพื่อให้เลือกเปลี่ยน
messageอันใหม่ หรือย้อนกลับไปดูmessageอันเก่า หรือเลือกไอคอนเพื่อแสดงlistของmessage
ทั้งหมด
2. คลาสMainMsgPro เป็นคลาสหลักที่ใช้แสดงlistของmessageทั้งหมดซี่งมีการเรียกใช้
คลาสต่างๆ คือ java.net, javax.xml.parser, android.app.ListActivity
3. คลาสMessage จะเป็นคลาสที่มีattributeสี่ตัว คือ title มีชนิดข้อมูลเป็นString เพื่อเก็บหัว
เรื่องของmessage , link มีชนิดข้อมูลเป็นURL เพื่อเก็บlinkเว็บของแต่ละmessage, description มี
ชนิดข้อมูลเป็นString เพื่อเก็บรายละเอียดของmessageนั้นๆ , del มีชนิดข้อมูลเป็น Integer เพื่อเป็น
filedที่เก็บค่าคงที่เพื่อให้ง่ายต่อการจัดการเมื่อต้องการลบmessage
4. คลาสMsgDB เป็นคลาสของดาต้าเบสทั้งหมด ที่มีmethodในการจัดการดาต้าเบส insert,
delete, get ซึ่งมีการเรียกใช้คลาสandroid.database
. คลาสMsgHandler เป็นคลาสที่ใช้ในการparsingXMLซึ่งมีการเรียกใช้libของ org.xml.sax
Class Diagram ของ SMS Promotion
การส่งข้อมูลและเชื่อมต่อ
เริ่มต้นที่คลาส MsgPro โดยจะเริ่มจากการไปติดต่อกับเว็บเซอร์เวอร์เพื่อเรียกไฟล์XMLที่
เก็บmessageออกมาและนำไปparser โดยใช้ SAXParser จนครบทั้งหมดและนำมาเก็บไว้ที่ดาต้าเบส
หน้า main จะร้องขอtitleและdescription และสามารถเปลี่ยน message ได้
17. 8
หน้า mainจะมี iconให้ linkไปยังclass main MsgPro เพื่อทำการติดต่อกับดาต้าเบสและ
queryแต่ละrecord และส่งค่าจากดาต้าเบสที่ได้มาแสดงผลในรูปของArraylist และเมื่อเลือกที่list
ใดๆก็จะทำการเรียก browser
สถานะของ Hardware
สถานะแรก เมื่อเข้าสู่หน้าหลัก มีปุ่มให้กดเพื่อแสดงโปรโมชั่นทั้งหมด และมีtabสามารถ
เปลี่ยนmessageซึ่งสามารถเปลี่ยนใหม่หรือย้อนกลับไปดูmessageเดิมได้
สถานะที่สอง แสดงลิสของโปรโมชั่นทั้งหมดที่มีอยู่ และรายละเอียดของแต่ละโปรโมชั่น
ซึ่งสามารถเลือกโปรโมชั่นได้
สถานะที่สาม แสดงหน้าเว็บเพจร้านค้าตามโปรโมชั่นที่กดเลือก
18. 9
ขั้นตอนการทำงาน
เมื่อเข้าสูหน้าหลัก จะมีสองทางเลือก
ทางเลือกแรก แสดง tabซึ่งมีสองปุ่มเพื่อให้กดเลือกเปลี่ยนmessage
ปุ่มแรก เพื่อแสดงmessageถัดไป
ปุ่มที่สอง เพื่อแสดงmessageก่อนหน้า
ทางเลือกที่สอง แสดงไอคอนของ PromotionMessanger
เมื่อกดicon แสดงข้อมูลโปรโมชั่นทั้งหมดและรายละเอียดต่างๆซึ่งสามารถเลือกโปรโมชั่น
ได้
เมื่อเลือกpromotion แสดงเว็บเพจร้านค้าตามโปรโมชั่นที่เลือก
3) ส่วนของฟังก์ชัน QRCapture
การออกแบบ Class
ในส่วนของคลาส QRCodeSearch จำเป็นต้องสร้าง Attribute และ Operation ไว้ภายในโดย
สร้างจากคลาส CameraDevice เพื่อใช้ในการเปิดการทำงานของกล้อง ส่วนคลาสที่เหลือก็จะเป็น
การ Dependency มาใช้เพราะว่าเป็นการไปเรียกเพื่อให้ในส่วนนั้นทำงานต่อเท่านั้น ส่วนในกรณี
ของคลาส Timer และ KeyEvent จะเป็นคลาสที่ช่วยในการเปลี่ยนแปลงการทำงานของโปรแกรม
ซึ่งจะต้องทำการ Implement มาใช้ เพราะว่าจะไปเรียก Operation ในคลาสนั้นมาช่วยทำงาน
19. 10
Class Diagram ของ QRCodeSearch
การส่งข้อมูลและเชื่อมต่อ
หลังจากเราเรียกใช้ฟังก์ชัน QRCapture แล้วโปรแกรมจะทำการเชื่อมต่อกับส่วนอื่นๆ และ
ทำการส่งคำสั่งออกไปเพื่อเรียกเปิดการทำงานของกล้อง หรือเรียกใช้ ZXing เพื่อทำการแปลง QR
Code ดังนี้
สถานะของ Hardware
สถานะของเครื่องโทรศัพท์ที่ใช้ เมื่อเราเรียกใช้ฟังก์ชัน QR Capture แล้วจะมีสถานะที่
เป็นไปได้ ดังนี้
20. 11
ขั้นตอนการทำงาน
ขั้นตอนการทำงานของฟังก์ชัน QR Capture จะมีรูปแบบของการทำงาน และการตัดสินใจ
เมื่อ User สั่งงาน ดังต่อไปนี้
4) ส่วนของฟังก์ชัน Browse
การออกแบบ Class
ในส่วนของ Browse เป็นส่วนของการค้นหาจากการแยกประเภทร้านค้า ดังนั้น ในคลาส
ของ Shop จะต้องถูกสืบทอดไปเป็นคลาสที่แบ่งประเภทร้านค้าต่างๆด้วย เช่น Food, Cloth,
Book etc. เพื่อใช้เป็น Keyword ในการค้นหาตามประเภทร้าน และในส่วนของการเปลี่ยนหน้า
โดยการกดปุ่มเลื่อนซ้าย/ขวา นั้นจะทำโดยการเรียกใช้บาง Operation ในคลาสของ KeyEvent
ดังนั้นจึงต้องทำการ Implement มาใช้
21. 12
Class Diagram ของส่วน StoreBrowse
การส่งข้อมูลและเชื่อมต่อ
หลังจากเราเรียกใช้ฟังก์ชัน Browse แล้วโปรแกรมจะทำการเชื่อมต่อกับส่วนอื่นๆ และทำ
การส่งคำสั่งออกไปเพื่อเปิดเมนูหมวดหมู่ และชื่อของร้านค้า ดังนี้
22. 13
สถานะของ Hardware
สถานะของเครื่องโทรศัพท์ที่ใช้ เมื่อเราเรียกใช้ฟังก์ชัน Browse แล้วจะมีสถานะที่เป็นไป
ได้ ดังนี้
ขั้นตอนการทำงาน
ขั้นตอนการทำงานของฟังก์ชัน Browse จะมีรูปแบบของการทำงาน และการตัดสินใจเมื่อ
User สั่งงาน ดังต่อไปนี้
23. 14
2.5 ขอบเขตและข้อจำกัดของ Software
โปรแกรม uGuide จะมีขอบเขตของการทำงานได้ ดังนี้
1. โปรแกรมที่พัฒนาขึ้นมาเป็นโปรแกรมต้นแบบ โดยประกอบด้วยองค์ประกอบหลายๆส่วน
อาทิ ส่วนการประมวลผล ส่วนการสื่อสาร ส่วนการแสดงผล ฯลฯ
2. ในส่วนของฮาร์ดแวร์นั้นไม่มี gPhone ให้ใช้จริง ดังนั้นโปรแกรมจะทำการรันบน Android
Emulator ซึ่งอุปกรณ์บางส่วนไม่มีจริง คือ
- กล้อง ใน Emulator จะไม่มีจริง ดังนั้นจึงทำการเขียนโปรแกรมให้แสดงภาพ 2D
Barcode แบบสลับไปเรื่อยเมื่อเวลาผ่านไป 3 วินาที และเมื่อทำการกดปุ่ม Capture ก็
3. โปรแกรมจะสามารถรันได้จริงบนโทรศัพท์มือถือ gPhone เท่านั้น
4. ข้อมูลทั้งหมดจะอยู่บน Server ทั้งหมด โดยเมื่อต้องการข้อมูลถึงจะมีการโหลดข้อมูล
5. ข้อมูลของร้านค้าบางหมวดจะไม่ตรงกับหมวดหมู่ เนื่องจากบางร้านค้าไม่เว็บไซด์ให้แสดงจึง
ใส่ชื่อร้านในหมวดอื่นขึ้นมาแทน
2.6 อุปกรณ์ที่ใช้กับซอฟต์แวร์
- โทรศัพท์มือถือ Android Platform
- PC หรือ Notebook โดยรันผ่าน Android Emulator
2.7 กลุ่มผู้ใช้
กลุ่มคนที่เข้าไปใช้บริการในห้างสรรพสินค้า เพราะเป็นซอฟต์แวร์ที่ควรติดตั้งไว้ใน
ห้างสรรพสินค้าชั้นนำเพื่อเป็นการแสดงถึงความทันสมัย และเพื่อเพิ่มความสะดวกสบายให้กับ
ลูกค้าของห้างสรรพสินค้านั้นๆ
24. 15
บทที่ 3 ผลการทดสอบโปรแกรม
การทดสอบจะแบ่งออกเป็น 4 ส่วน ดังนี้ ทดสอบการเข้าโปรแกรม, ทดสอบการจัด ของ
หมวดหมู่ร้านค้า, ทดสอบการถ่ายภาพ QR Code และทดสอบการเปิดหน้าเว็บเพจ
3.1 ทดสอบการเข้าโปรแกรม
เมื่อเลือกเปิดโปรแกรม uGuide โดยการคลิกที่ Icon แล้วโปรแกรมจะเปิดขึ้นโดยมีหน้าตา
ดังนี้
25. 16
3.2 ทดสอบการเข้าฟังก์ชัน QRCapture
เมื่อเลือกเปิดกดปุ่ม Capture แล้วโปรแกรมจะเปิดขึ้นโดยมีหน้าตา ดังนี้
ปุ่ม Capture เพื่อเปิดเว็บไซด์
26. 17
3.3 ทดสอบการเข้าฟังก์ชัน Browse
เมื่อเลือกเปิดกดปุ่ม Browse แล้วโปรแกรมจะเปิดขึ้นโดยมีหน้าตา ดังนี้
และเมื่อเข้าสู่หมวดหมู่ร้านค้าแล้วโปรแกรมจะมีหน้าตา ดังนี้
27. 18
3.4 ทดสอบการเข้าเว็บไซด์
เมื่อทำการ Capture ภาพ, เลือกร้านค้าจากหมวดหมู่ และเลือก SMS Promotion แล้วโปรแกรม
จะเปิดเว็บไซด์ขึ้นมา ดังภาพ
28. 19
บรรณานุกรม
[1] Chris Haseman, Android Essential, 2008.
[2] Nicolas Gramlich, andbook – Android Programming, 2008.
[3] “การพัฒนา Android”. http://www.anddev.org/
[4] “การลง Android บน Eclipse”. http://jinn1123.exteen.com/20071216/android-eclip-plugin-
3
[5] “ความหมายของจาวา”. http://www.thaiall.com/class/indexo.html
[6] “ความหมายของ Android”. http://www.blognone.com/node/6306
29. 20
ภาคผนวก ก
การติดตั้ง Software
1. Copy โฟลเดอร์ android-sdk-windows-1.0_r1 ไปไว้ใน Directory ที่ต้องการ
2. Copy uGuide.apk ไปไว้ใน Folder ของ …android-sdk-windows-1.0_r1tools
3. เปิด Emulator ที่ชื่อว่า emulator.exe ซึ่งอยู่ใน android-sdk-windows-1.0_r1tools
4. ทำการรัน CommandLine ของ Window โดยการ Start>run จากนั้นพิมพ์ cmd แล้วคลิก OK
5. เปลี่ยน Directory ของ CommandLine ให้เป็น Directory ที่ลงโฟลเดอร์ android-sdk-windows-
1.0_r1 ไว้ โดยการพิมพ์ “cd …android-sdk-windows-1.0_r1tools”
6. พิมพ์ adb install uGuide.apk ใน
7. หน้าต่าง CommandLine จะขึ้นว่า Success แล้วสามารถเปิด Emulator แล้วเปิดใช้
โปรแกรม uGuide ได้เลย
30. 21
ภาคผนวก ข
การใช้งาน Software
1. การเปิดโปรแกรม
- เปิด Emulator ที่ชื่อว่า emulator.exe ซึ่งอยู่ใน android-sdk-windows-1.0_r1tools
- กดปุ่ม
- คลิก Icon “uGuide”
2. การถ่ายภาพ QR Code
- กดปุ่ม Capture เพื่อเปิด
- กดปุ่ม D_PAD_CENTER เพื่อถอดรหัสภาพแล้วเปิดเว็บไซด์
31. 22
3. การใช้ฟังก์ชัน Browse
- กดปุ่ม Browse เพื่อเปิดโปรแกรม
- เลือกร้านค้าจากหมวดหมู่
- เลือกร้านค้าที่ต้องการ