SDLC:System Development Life Cycle

SDLC:System Development Life Cycle  5 Models.

  1. Water Fall Model
  2. Agile Model (Popular)
  3. V-Shaped Model
  4. Prototype Model (Customer Loved, IT harder)
  5. Spiral Model

 

Water Fall Model 

Image result for waterfall model

Pros:

IT Project Manager Love!!
Short Project!!

Requirement Just one time. Don’t change

Go straight

Cons:

Customer hated because they can’t change they requirement

Lost a final scenario if customer is unclear

1-way method, it go straight , no backward.

PROS
CONS

Everyone gets up to speed quickly
Timescales are kept
No financial surprises
Testing is made easy
The outcome is crystal clear
Deal with issues in the design
What you plan is what you get

Needs can be difficult to define
Potential lack of flexibility – ลูกค้าไม่ชอบ เก็บ requirement มาแล้ว จบ Phase กลับไปแก้ไขไม่ได้
Longer delivery time – SA เก็บ requirement ลูกค้ามา ครบ รับปากลูกค้า จนต้องทำท่ายาก จนทีม Dev ทำไม่ได้ หรือทำนานมาก

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

 

Agile Model (Popular) – เป็น Model ยอดนิยมในช่วง 3 ปีนี้ 2016 – 2019
Constraint

1. ต้องมี Coaching หรือ SCRUM เพราะว่า คนที่จะทำแบบนี้ ต้องมองภาพออกว่า สุดท้ายแล้วจะจบแบบไหน จะต้องเป็นคน ตบทั้ง function, coding,  Time ของทีมให้เข้ากรอบ ของภาพสุดท้ายให้ได้ และต้อง suggestion ลูกค้า convince ลูกค้าให้ได้ ว่าจะจบแบบไหน เพราะต้องรักษาสมดุลของ Project ของ all concerns
2. Coaching ที่ดี ควรจะ มอง BA(Business Analysis) & SA (System Analysis) ออกทั้งคู่ เป็นคนที่ ถ้ามาจาก SA ต้องเรียนรู้ Business Pattern & Cost management แต่ถ้ามาจาก BA ต้องเรียนรู้ Dev Phase & Technical Constraint (Both Coding & Database).  (อาจจะไม่จำเป็นต้อง Coding ได้)
3. Loop ของ Agile จะเป็นแบบ Circle ต้องกำหนด ความชัดเจนของการ Spin แต่ละรอบ เช่น ทุก 2-3 อาทิตย์ต่อครั้ง และ Coaching ต้องมองภาพสุดท้ายออกว่า ทั้ง Project มีกี่ Function และสามารถ แตก Function ออกมาเป็นจำนวน Modules ที่แน่นอนสำหรับ Project นั้นๆได้

Image result for Agile Model model

Pros:

ถ้า Coaching สามารถระบุ ความต้องการของลูกค้าได้ชัดเจน สามารถกำหนด spin จาก All Function & All Modules ได้ชัดเจน ใน 1 Agile ไม่ควรจะ spin เกิด 10 ครั้งแต่ละครั้งจำนวน Modules จะลดลงเรื่อยๆ ลู่เข้าหา ความต้องทางของทั้งทีม ทั้งลูกค้าและ dev  และทุกครั้งที่เกิด BrainStorm ที่ทำให้ลูกค้าและ dev รู้สึกว่า งานใหญ่เสร็จและทุกคนได้แบบทุกคนต้องการ ใน win win situation

 

Cons:

Project อาจจะไม่จบ ถ้า Coaching ไม่เก่งและมองภาพสุดท้ายไม่ได้ออก ถึงจะกำหนดจำนวน spin แต่เวลาในการทำ project จะยืดออกไปนาน มาก ลูกค้าอาจจะหงุดหงิดเรา Coching ไม่เข้าใจ Requirement จริงๆของลูกค้า

และทีม Dev (Implementor, Programmer, DBA) อาจจะอยากกระโดดถีบ Coaching ที่ทำให้ทำงานแบบ เปลี่ยนไปเรื่อยๆ และดูเหมือนว่าไม่มีจุดจบของ Project

PROS

CONS

Responding to Change
Accepting Uncertainty
Faster Review Cycles
Greater Flexibility in Releasing Features
Less Up-Front Work


Lack of Understanding
Flexibility Can Lead to Bad Behaviors
Culture Fit
Lack of Predictability
Integrating Diverse Skill Sets Into Teams
Challenges at Scale – Agile กับทีม ขนาด <20 คนยัง โอเค แต่ถ้าเป็น Big Scale ที่โดยเฉพาะ > 20 คน และเป็น outsource ที่อยู่กันคนละประเทศหรือ Time Zone จะลำบากมาก ดังนั้น การใช้ Agile อาจจะไม่เหมาสมกับ การพัฒนา software ขนาดใหญ่ และแบ่ง Module ออกจากกันไปพัฒนาต่างสถานที่ และเวลา

 

การพัฒนา Software / Application ด้วยทีมขนาดใหญ่ที่ไม่มี framework การใช้ Waterfall อาจจะเหมาะสมกว่า ถ้าจ้าง outsource จากหลากหลาย แล้วแบ่ง modules ให้ทำ  และไปเปิด GitHub project ไว้ เพื่อสร้าง Project  ที่สมบูรณ์และเปิด ให้ developer ทำการ upload coding ขึ้นระบบ GitHub [www.github.com]

แต่ถ้า software/application นั้นมี best practice หรือ framework อยู่   การใช้งาน Water Fall อาจจะช่วยให้ ระยะเวลาการพัฒนา software/application นั้นเสร็จเร็วขึ้น  แต่ BA&SA ต้องแม่นจริงๆ..

 

V-Shaped Model

หนัก PLANNING  ทุกงานจะเริ่มต้นพร้อมๆกัน มาเจอกันที่ Coding  ทุก tasks จะลู่เข้ามาเจอกันที่ Coding เร็วกว่าทุก Model

ถ้าเป็น application/software เล็กที่เราแน่ใจ แน่ๆ ว่าแต่ละขั้นตอนเป็นยังไง เราก็ทำแบบ v-shaped เลย หรือ ถ้ามันมี framework หรือ best practise ให้ follow ตาม

Image result for v-shaped Model model

 

Pros and Cons of V-shaped model:

There are many pros and cons of V-Shaped model. In the following list we are trying to cover all pros and cons of V-Model, follow us;

reference: yuvayana.org

image

Application of V-Shaped model:

V-Shaped Model application is almost similar with waterfall model, as both the models are of linear sequential type. The requirements have to be very clear and prepare complete documentation of the system before the project starts, because it is usually expensive to go back and make changes. This model is used in the medical development field, as it is strictly disciplined domain. Following are the suitable scenarios to use V-Model:

  • Technology used in v-model is not dynamic and is well understood by the project team.
  • Requirements are well defined, clearly documented and fixed.
  • Product definition is stable.
  • There are no ambiguous or undefined requirements.
  • The project is short.

 

Prototype Model (Customer Loved, IT harder)

ต้องทำ UI หรือ Prototype ไปให้ลูกค้าเลือกอย่างน้อยๆ 3 แบบ (เหนื่อย แถมลูกค้าอาจจะไม่เลือกด้วย )

Image result for prototype Model model

Reference: https://er.yuvayana.org/sdlc-prototype-model-design-advantages-disadvantages-and-applications/
General steps of prototype model

 

image

 

Spiral Model

ทำไป แก้ไป ทำไปเรื่อยๆ พอกพูนไปเรื่อยๆ ขอบเขตกว้างออกไปเรื่อยๆ

SDLC spiral model  phases

 

image

Facebook Comments

Leave a Reply

Scroll to top