What Are Requirements? (2/2) จะเป็นคำตอบว่าผู้ใช้ต้องการ product แบบนั้น จริงๆ (No Assumptions, No Guesses) ให้เขียนความต้องการนั้นด้วยคำที่คุณเข้าใจและ สอบทานกลับกับ user อีกครั้งว่าตรงตามที่ ต้องการหรือไม่ 1 week for cycle 1, Half a week for cycle 2 - 3
Why we need Requirements? Top 2 factors in the failure of system development contracts to meet schedule or budget [SEI] –Inadequate requirements specification –Changes in requirements Top 3 causes of quality and delivery problems [Standish Group] –Lack of user input –Incomplete requirements –Changing requirements From ENFOCUS Solution 1/2
Why we need Requirements? Requirement development process is more important Through requirements development, your team gains a common understanding and agreement on what to build. เพื่อที่สามารถพัฒนา product ได้ถูก เสียเวลาทำ ดีกว่าพัฒนาผิดทาง 2/2
The SRS Focus the SRS on what the product is to do and avoid specifying how it will be designed and built. For TSPi, you will concentrate on the functional and operational requirements. –Functional requirements –External interface requirements –Design constraints –Attributes –Other requirements
Requirements Changes Users generally cannot know precisely what they need until they try to use the finished product. Thus the requirements almost always change, and they keep on changing until they are frozen in a product. Learn & Help the users define their needs in term of useful product function Agree on SRS that represents your common best understanding of what they needs.
Requirements Changes No free requirements change !!! (cost time and money) The SRS helps you to manage changes. After the customers have read the SRS and agreed with its contents, you can argue that any changes will cost time and/or money. SRS
Requirement Engineering Process From Aj.Amphol Kongkeaw
Requirements Elicitation From Aj.Amphol Kongkeaw
Requirements Elicitation Techniques One - on - one interview Group interview Facilitated session Joint application development (JAD) Questionnaire Prototype Use case Following people around Request for proposals (RFPs) Brainstorming
The principal steps of Requirements Elicitation Assess system feasibility Understand organization issues Identify system stakeholder Record requirement sources Assess business issues Define domain constraints Record requirement rationale Prototype poorly understood requirements Define usage scenarios Define operation processes
The Software Requirements Specification for TSPi Functional requirements Operational requirement To document the team’s agreement on the functions (inputs, output, calculations, use cases) and external interfaces (user, hardware, software, communications) requirements.
The Software Requirements Specification for TSPi Requirements Traceability Balance Workload
TSPi Requirements Scripts Entry Criteria Need Statement Review Need Statement Clarification Requirements Task Allocation Requirements Documentation System Test Plan Requirements and System Test Plan Inspection (INS) Requirements Update User SRS Review Requirement Baseline (CCR) Exit Criteria
Entry Criteria Development strategy Development plan
Need Statement Review The development manager leads the team in reviewing the product need statement and ensures that all questions are clarified among the team members or noted for discussion with the customer. (function & used)
Need Statement Clarification The development manager reviews the list of questions and the team’s clarification notes with the customer.
Requirements Task Allocation The development manager leads the team through outlining the SRS document and the work to produce it ； The team leader allocates the tasks among the team members and obtains commitments for when they will complete these tasks.
Requirements Documentation Each team member –Produces and reviews his or her portions of SRS document; –Provides these to the development manager. The development manager produces the SRS draft.
System Test Plan The development manager leads the team in producing and reviewing the system test plan. (The system testing is aimed at ensuring that the system does what you and the users agree it is supposed to do.)
Requirements and System Test Plan Inspection The quality/process manager leads the team through –Inspecting the SRS draft and system test plan –Identifying questions and problems –Defining who will resolve each question and problem and when –Documenting the inspection in form INS.INS
Requirements Update The development manager obtains the updated SRS and system test plan sections and -Combines them into a final SRS and system test plan ； -Verifies traceability to the need statement or other sources.
User SRS Review Have the end users read the SRS and agree that it describes what they want.
Requirements Baseline The support manager baselines an official SRS copy, which the team can now change only by using the change control procedure (form CCR).CCR
Exit Criteria The completed, inspected and updated SRS and system test plan under configuration control ； All personal time, defect and size data entered in the TSPi forms and support system (LOGT, LOGD, SUMS, TASK, SCHEDULE, SUMP, SUMQ) ； The completed inspection form (INS) from the requirements inspection ； Updated project notebook.
Requirement Phase Output SRS ที่สมบูรณ์ ผ่านการตรวจสอบ และ system test plan ภายใต้ configuration control ข้อมูลทั้งหมดที่เกี่ยวกับ personal time, defect และ size data ใน TSPi forms แบบฟอร์มรายงานผลการตรวจสอบที่สมบูรณ์จาก requirement inspection สำเนาของทุกๆ forms, SRS และ system test plan ใน project notebook