บริษัท เจเนซิส อินโฟแคด จำกัด                     หยุดทำงานหนัก... มาทำแบบอัจฉริยะดีกว่า

  ค้นเจเนซิส

 

แผนที่ site นี้View in English

Home Pricing Method Quality System FAQ's Software Attributes
 
 

Quality System                                                 

การพัฒนาซอร์ฟแวร์ถูกเข้าใจผิดอยู่บ่อยๆว่าเป็นศิลปะอย่างหนึ่ง เพราะการที่สามารถเข้าใจถึงความต้องการของผู้ใช้ได้เป็นอย่างดี และการพยายามเร่งผลิตโปรแกรมขึ้นมาตามเวลาที่กำหนดไว้ ทำให้บางวิธีการที่สร้างขึ้นขาดความรอบคอบและถูกต้อง ถึงแม้ว่าผู้พัฒนาโปรแกรมส่วนใหญ่จะยังคงผลิตซอร์ฟแวร์ด้วยวิธีการที่ไม่เป็นมืออาชีพต่อไป แต่ที่บริษัท เจเนซิส อินโฟแคด เรามีกระบวณการในการผลิตซอร์ฟแวร์ที่เคร่งครัด ซึ่งวงจรของการพัฒนาซอร์ฟแวร์สามารถมองได้ว่าประกอบไปด้วยกระบวณการทางวิศวกรรม เช่น การวิเคราะห์ความต้องการของลูกค้า, การออกแบบ, การพัฒนาโปรแกรม, การทดสอบ, เสนอผลงาน และการฝึกอบรม ซึ่งในแต่ละกระบวณการก็จะมีการควบคุมคุณภาพ, เอกสาร, การจัดการโครงการและกำหนดระยะเวลาที่ต้องการในการทำงานแต่ละอย่างให้ชัดเจน เมื่อขั้นตอนในการผลิตซอร์ฟแวร์เหล่านี้เกิดขึ้นเหมือนๆกันทั้งในด้านการผลิตและวิศวกรรม ทำให้วิศวกรรมซอร์ฟแวร์ถูกนำมาใช้เพื่ออธิบายถึงประโยชน์ของทฤษฎีทางวิศวกรรมที่ใช้ในการพัฒนาซอร์ฟแวร์ หรือ Custom engineered software

เพื่อให้มั่นใจในคุณภาพของซอฟ์ทแวร์ทุกประเภทที่เราผลิตออกมานั้น ทางบริษัทมีการนำพื้นฐานของวิศวกรรมซอฟ์ทแวร์ (software engineering) มาใช้ในทุกกระบวนการพัฒนา ตั้งแต่การวิเคราะห์ความต้องการของลูกค้า, การออกแบบ software ที่เหมาะสม, การผลิตและตรวจสอบคุณภาพ, การติดตั้งโปรแกรม, และการอบรมการใช้งาน รวมไปถึงกระบวนการบริหารโครงการด้วย เราเน้นเรื่องการควบคุมคุณภาพเป็นหลัก โดยมีขั้นตอนในการทดสอบ และประเมินความถูกต้องของแต่ละโปรแกรม และงานอื่นๆ ที่ผลิตออกมา เช่น คู่มือการใช้งาน ลูกค้าของเราสามารถวางใจได้ว่าจะได้รับผลิตภัณท์ที่มีคุณภาพ, ออกแบบมาอย่างดี, ใช้งานง่าย, และส่งงานตรงเวลา

ในส่วนนี้จะแสดงถึงกระบวนการต่างๆในการทำงาน ที่ทางบริษัทฯใช้เพื่อให้ได้ซอฟต์แวร์ที่มีคุณภาพ

  1. Quotation and Proposal Process. ในกระบวนการนี้เราจะทำการศึกษาความต้องการของลูกค้า เพื่อเก็บรายละเอียดมาใช้จัดทำใบเสนอราคา ซึ่งประกอบไปด้วยส่วนต่างๆดังนี้

  • Requirements Specification – แสดงรายละเอียดของแบบฟอร์ม, รายงาน, และส่วนพิเศษอื่นๆที่ลูกค้าขอเพิ่ม

  • Rough Design – เป็นตัวอย่างหน้าจอของเมนูที่สำคัญๆ โดยปกติเราจะนำมาจากซอฟต์แวร์ของลูกค้ารายอื่นๆของเราที่มีความใกล้เคียงกัน

  • Project Completion Timetable – ตารางระยะเวลาในการพัฒนาซอฟต์แวร์จนกระทั่งเสร็จสิ้น

  • Price Quotation – รายการของฟังค์ชั่นต่างๆที่มี พร้อมราคา

  • Terms and Conditions – ส่วนของเงื่อนไขต่างๆของสัญญา รวมถึงการชำระเงิน

  1. Analysis and Design Process. เป็นกระบวนการแรกในการพัฒนาซอฟต์แวร์ โดยเราจะทำการศึกษาความต้องการเฉพาะของลูกค้าแต่ละราย ในขณะที่บริษัทฯผลิตซอฟต์แวร์ส่วนใหญ่อาจไม่ให้ความสำคัญกับกระบวนการของการวิเคราะห์นี้ แต่เราถือว่ากระบวนการนี้มีความสำคัญมาก มีการจัดทำเอกสารสรุปรายละเอียดต่างๆให้ลูกค้าอนุมัติ เพื่อให้มั่นใจว่าจะได้ซอฟต์แวร์ที่ตรงตามความต้องการ

  • Requirements Specification – contains the points covered in the contract usually and the features of the software to be delivered. Both functional and non-functional requirements are listed

  • Use Case description – this captures what steps are done by each department in order to get the work accomplished in plain language so that it is easy to understand.

  • Screen Design – shows the menu, each data entry screen design, report design. We believe this is the information our clients understand very clearly and we focus on this.

  • Process Diagram - shows the processes and, thus, forms to be done by each department.

  • E/R Diagram – with each screen design we show the tables involved and their relationships via the entity-relationship diagram.

  1. Software Development (programming)  Process. กระบวนการนี้ปกติจะใช้เวลามากที่สุดเพราะเป็นขั้นตอนของการพัฒนาซอฟต์แวร์ โดยเราจะแบ่งงานโปรเจคหนึ่งออกเป็นงานย่อยๆที่ประกอบด้วย 1 ฟอร์ม และ 1 รายงาน สำหรับมอบหมายให้โปรแกรมเมอร์ 1 คนไปพัฒนา ขั้นตอนที่เราใช้เพื่อให้ได้ซอฟต์แวร์ที่มีคุณภาพประกอบไปด้วย

  • Task Cover Sheet – this sheet is prepared by the project manager with a designated developer for each task and a tester for that task. This sheet includes the special points to test the software task which could be a special attachment if too long. It also includes the time log for the task, so that the total hours spent on that task can be logged.

  • Task Schedule. A project schedule is made up scheduling each task (a form or a report) in the project. We maintain a complete schedule of the project in a form as shown below to keep track of the deadlines

  • Daily Work Hours Registry Sheet – summarizes the daily work of each person. This information is used to update the project schedule as well, since it provides the project manager with a revised start and completion time (resource requirement) for each task

  • Standard Coding Guide Book – we have developed a standard coding for languages including Visual Basic, Delphi, and ASP. The first step we take when we must develop in a new programming language is to setup this standard coding guide. We make sure that each programmer closely follows this programming scheme so that we have a uniform source code that all our programmers can understand. This assures that in the future when changes may be needed for the software, we can let any of our programmers do it, since all can read each other’s code in standard form. Issues covered include variable naming convention, table field naming convention, required functions in each type of form, using template forms (simple form, 1 line item, multiple tabs/ line items),and required user interface. To our customers this ensures a uniform interface and software that has all the desired features every time

  • Standard Test Sheet – this is a test sheet containing the standard points to test for every form and report. It covers both the features visible to the customer and the programming information. For example, it covers examining that the table field names are appropriate, variable names are long, function names are correct. Thus, we also check that the programmer adheres to the Standard Coding Guide Book

  • Task Test Sheet – this test sheet is specifically for the current task. It may include a test case if the form is complex to ensure that the software programmer does the testing first. If the form is simple enough the tester does the testing without a specific test case.

  • Configuration Management (CM) Sheet.  Here all the software components (usually forms and reports) that have been tested are kept with versions.  All our modules must have pass the configuration management before delivery to the customer, which means a tester has approved it and it is ready for release.  New software as well as change requests must go through the CM procedure.

  • Development Status Report for Customer. We prepare a monthly status summary for the project to the customer. This is done after the software development work has begun until the software is completely delivered.

  1. Project Management Process. We have developed software for our own use to cover our project management needs. This project includes the project information entry, each task entry, project scheduling, project costs, invoicing, receipt, and payments. It provides us with information on the exact project cost so we can monitor our bottom line. This software is summarized in the next section.

  2. Software Implementation and Maintenance Process

  • Site Visit Form – this form is completed each time we visit the customer site. It requires the customer signature as well.

  • Work Request / Bug Report Form – we fill this form when we get a bug report or a change request. The exact format of the form is not necessary, since we often do this electronically. However, it is important that the form number be logged and tracked for progress.

  • Change Request Attachment Form – after receiving a change request, some analysis of the needed changes may be needed and a task description form is generated. Sometimes, the change request is summarized in the attachment form as well.

  • Customer Communication Form – all our communication with the customer is also logged and filed. Each memo and minutes of meetings are sent out after any important development.

  • User Training Manual – this includes a short manual describing a training session with sample training data set up just for the training and implementation phase of the software.

  • User Manual – this describes the entire software with the interface description, menu, each form, and answers to questions on "how do I".

  • Technical Manual – this describes the software for the programmer. We include a screen dump of each form along with the tables in that form and their relationship expressed as E-R Diagram. At the end of this is the data dictionary for the entire project’s database. We maintain this manual all along as the software may have changes during the implementation and maintenance phases. When this document has too many hand-written changes, for example, due to many added fields by the user, we print a new version.

  • Project Completion Document - This is the same as the Project Status Document shown above, but used to close the project.

  • Maintenance Contract – This is a contract detailing the start and end dates of the maintenance. It also shows the price and the servers covered in the maintenance agreement.

   
 

 


Copyright 2007 Genesys Infocad Co., Ltd.