YouTube2Text

Lecture 06: Life Cycle Models - II — Transcript

by NPTEL IIT Kharagpur · 3,065 words · 480 segments · language en · Watch on YouTube

Full transcript

  1. 0:01[Music]
  2. 0:18welcome to this lecture in the last
  3. 0:22lecture we had discussed about the life
  4. 0:26cycle model and especially the classical
  5. 0:28waterfall model and as part of the life
  6. 0:33cycle model we had looked at the various
  7. 0:36activities that are undertaken during
  8. 0:38the development process and we had spent
  9. 0:45some time on the feasibility study which
  10. 0:50is an important activity undertaken by
  11. 0:52the project manager with the help of a
  12. 0:55case study we had identified what are
  13. 0:58the activities that are taken up by the
  14. 1:01project manager during feasibility study
  15. 1:03and at the end of the feasibility study
  16. 1:05the business case is written this is one
  17. 1:10of the initiating processes writing the
  18. 1:13business case and we had seen that how
  19. 1:17an effective business case can be
  20. 1:19written now let's proceed further in
  21. 1:24this lecture based on the discussions
  22. 1:29that we heard the last lecture we will
  23. 1:32discuss about the iterative waterfall
  24. 1:34model we'll look at the v-model
  25. 1:37evolutionary model and prototyping model
  26. 1:39that's the plan for this lecture the
  27. 1:44classical waterfall model is an
  28. 1:48idealistic model the main problem is
  29. 1:52that it assumes no defect is introduced
  30. 1:58during any phase each phase is completed
  31. 2:02and the next phase starts and so on
  32. 2:04until the project completes but in
  33. 2:07effect
  34. 2:10there are a lot of defects that are
  35. 2:12introduced in almost every phase of the
  36. 2:15lifecycle and that's the reason why it
  37. 2:23may be necessary to go back to a
  38. 2:26previous phase once a defect is
  39. 2:28identified for example the defect may be
  40. 2:32identified in the design phase that a
  41. 2:37requirement specification functionality
  42. 2:41was missing and then need to take up the
  43. 2:46requirements activity through our the
  44. 2:50requirement specification document and
  45. 2:53then again come back to the design phase
  46. 2:58that is the reason why we need the
  47. 3:01feedback path once the defect occurs in
  48. 3:09a phase there is a mistake by a
  49. 3:14developer it often remains unnoticed
  50. 3:16until a later phase and then once it is
  51. 3:24noticed in a letter phase it is then
  52. 3:29removed but the question here is that
  53. 3:34the latter the phase the more expensive
  54. 3:39is to correct this defect why is that
  55. 3:46the answer is not very far to sake
  56. 3:50because if defect occurs and it is
  57. 3:53removed immediately
  58. 3:55then that's the best thing the cost will
  59. 3:58be minimal but let's say the defect is
  60. 4:01removed after one phase that is the next
  61. 4:04phase then only
  62. 4:09two phases are affected only two phase
  63. 4:13documents need to be changed but if
  64. 4:16let's say defect is occurs in the
  65. 4:20requirement specification page and it is
  66. 4:23discovered during testing then not only
  67. 4:28the requirement specification document
  68. 4:30has to change the design needs to be
  69. 4:33changed the code needs to be changed and
  70. 4:36these are lot of activities and lot of
  71. 4:39documents need to change and that's the
  72. 4:41reason why the letter the fades in which
  73. 4:45the defect gets detected the more
  74. 4:48expensive is the removal of the defect
  75. 4:51this is a very important concept and it
  76. 4:54is known as the phase containment of
  77. 4:56errors so that sort is written here that
  78. 5:04once the defect is detected redo the
  79. 5:09work in the previous phases and
  80. 5:11therefore if there are lot of
  81. 5:13intermediate phases it has crossed many
  82. 5:17phases before the defect is detected
  83. 5:20then lot of rework is needed in the
  84. 5:28iterative waterfall model is very
  85. 5:30similar to the classical waterfall model
  86. 5:33so you can see the waterfall here but
  87. 5:38also there are feedback paths this
  88. 5:43feedback paths make the model realistic
  89. 5:47unlike the classical model where one
  90. 5:50phase completes and then the next phase
  91. 5:53completes and so on here we assume that
  92. 5:57there can be a defect which get noticed
  93. 6:01during the testing phase and we need to
  94. 6:04go back to the design phase or maybe the
  95. 6:06requirement analysis phase and then fix
  96. 6:11that defect and not only that fix the
  97. 6:14work in the later phases as well
  98. 6:20as we are saying that it's the important
  99. 6:23concept for the errors when they're the
  100. 6:27mistakes are made by the developers they
  101. 6:31must be fixed in the same page that is
  102. 6:36the ideal that the defects are detected
  103. 6:39and fixed in the same page that will
  104. 6:42incur the lowest cost the more delay
  105. 6:47occurs in detecting the defect the more
  106. 6:50expensive it will be if a design defect
  107. 6:54is detected in the design phase itself
  108. 6:58then it just need to change the design
  109. 7:00document but if it is detected during
  110. 7:03the testing phase not only the design
  111. 7:05document needs to be changed but the
  112. 7:07cordon is to be reworked and that will
  113. 7:10be much more expensive so this is called
  114. 7:12as the phase containment of errors it's
  115. 7:14an important principle that once a
  116. 7:18mistake occurs mistake or error occurs
  117. 7:22this must be contained to the same page
  118. 7:25it's called as a phase containment of
  119. 7:28errors the principle of detecting errors
  120. 7:33as close to its point of introduction is
  121. 7:36called as the phase containment of
  122. 7:38errors it's a very important principle
  123. 7:40and very intuitive also so this is the
  124. 7:49iterative waterfall model the phases are
  125. 7:52identical to the classical model
  126. 7:54excepting that the feedback paths are
  127. 7:57available the main strengths of the
  128. 8:02waterfall model is it is very intuitive
  129. 8:03easy to understand all the developers
  130. 8:06can very easily understand and use the
  131. 8:10model the milestones are clear
  132. 8:14understood by the team and the project
  133. 8:17manager can easily monitor the progress
  134. 8:21it provides the required stability
  135. 8:25management the project manager can have
  136. 8:29a strong control
  137. 8:31put scheduled milestones and monitor but
  138. 8:38then it has lot of deficiencies one of
  139. 8:42the major problem with the waterfall
  140. 8:44model is that it is not very suitable to
  141. 8:51handle changes to the functionalities
  142. 8:56but in almost every software project the
  143. 9:01requirements change there are many
  144. 9:05reasons why the requirement may change
  145. 9:07for example the customer may not be may
  146. 9:14not have thought that some
  147. 9:15functionalities will be required because
  148. 9:19he did not understand or did not think
  149. 9:23you cannot grasp what are all required
  150. 9:26at the beginning of the project but as
  151. 9:28he looks at functionalities then he can
  152. 9:32make out that certain functions will be
  153. 9:36required the other is that as the
  154. 9:39development takes place the business
  155. 9:43itself might undergo some change and
  156. 9:46therefore changes will be required so
  157. 9:50there are many reasons why changes will
  158. 9:57be required during the development of
  159. 9:59the software but in the waterfall model
  160. 10:03the requirements are fixed upfront and
  161. 10:06then the design coding and testing are
  162. 10:11undertaken and there is no way provided
  163. 10:14by the waterfall model to make any
  164. 10:18changes this is possibly the biggest
  165. 10:23shot coming of the waterfall model the
  166. 10:26other shortcomings are that here lot of
  167. 10:30documents are produced phases are
  168. 10:33completed the requirements is complete
  169. 10:36design is complete documents are
  170. 10:38produced code is complete but during
  171. 10:41testing found that most of
  172. 10:44the requirements are not met so the
  173. 10:47project manager gets a false impression
  174. 10:49of the progress that the progress is the
  175. 10:53project is proceeding nicely according
  176. 10:55to the plan but during the testing phase
  177. 10:59finds out that very little has been done
  178. 11:05the main reason for that is that the
  179. 11:08integration is a big bang at the end
  180. 11:11till then everything was fine but at
  181. 11:14during integration it has found that
  182. 11:16most of the functionalities are not
  183. 11:19working another problem with this model
  184. 11:22is that once the customer gives the
  185. 11:26requirement they have no chance to see
  186. 11:28the system till the end when it is
  187. 11:33delivered to them it would have been
  188. 11:36really good if the customers were
  189. 11:39involved they could see that what are
  190. 11:42the functionalities aids they're being
  191. 11:44developed they could have suggested
  192. 11:46modifications and so on these are the
  193. 11:49major difficulties with the waterfall
  194. 11:53model the biggest one is that it doesn't
  195. 11:57have the flexibility to handle the
  196. 11:59requirement change false impression of
  197. 12:04progress because phases are getting
  198. 12:07complete but integration is on Big Bang
  199. 12:11at the end where it is noticed that the
  200. 12:17progress is realest most of the
  201. 12:19functionalities are not working and the
  202. 12:23customer involvement is very minimal the
  203. 12:26customer cannot give suggestions but
  204. 12:31then the waterfall model was popular and
  205. 12:36it is also successfully used in some
  206. 12:41types of projects the projects for which
  207. 12:44waterfall model is suitable is that the
  208. 12:47requirements are very well understood
  209. 12:49and known to the customer they have used
  210. 12:54similar software they know what all is
  211. 12:56required
  212. 12:57it's not that something they're thinking
  213. 13:00of a new type of software it's a regular
  214. 13:04software requirements are well known and
  215. 13:07stable technology is understood
  216. 13:11development team have experience with
  217. 13:13similar projects so as you can see here
  218. 13:18that the project is rather routine
  219. 13:23project where the development team have
  220. 13:28done similar work they are just trying
  221. 13:35to develop one more of that you can say
  222. 13:42that the challenges here are less
  223. 13:44because the requirements are known what
  224. 13:50the software will finally look like what
  225. 13:52functionalities is very well known the
  226. 13:56technology is understood development
  227. 13:58team had experience in similar projects
  228. 14:01and for such simple projects Waterfall
  229. 14:06model can be used and this happens to be
  230. 14:09the most efficient way to complete these
  231. 14:11projects but what about the classical
  232. 14:16waterfall model the eyetality waterfall
  233. 14:19model has its use we saw that for simple
  234. 14:22projects they can be used but what about
  235. 14:26the classical waterfall model because
  236. 14:29here this was the idealistic model where
  237. 14:31it was assumed that there is no defect
  238. 14:36in any fades all fails proceed
  239. 14:40idealistically but the use of this is
  240. 14:45that the final documentation should
  241. 14:50appear like the software is developed in
  242. 14:52a using a classical waterfall model
  243. 14:54there are no backtracking no mistakes
  244. 14:57nothing and if the document is written
  245. 15:01that way then it facilitates
  246. 15:04comprehension of the documents
  247. 15:08just to give an analogy you may be
  248. 15:11trying to do a mathematical theorem
  249. 15:15proving or maybe trying to solve a
  250. 15:18problem mathematical problem and you
  251. 15:21might many times do rework mistakes go
  252. 15:25back to the previous failed previous
  253. 15:29step and so on but if your final
  254. 15:36document for this problem has all these
  255. 15:41things that where you did mistake where
  256. 15:44you went back corrected and so on then
  257. 15:47it becomes extremely complicated for
  258. 15:49somebody trying to understand the best
  259. 15:52for somebody to understand is that you
  260. 15:55give him the correct steps as if you had
  261. 16:03not committed any mistakes and so on and
  262. 16:07that is what is basically the classical
  263. 16:10waterfall model that all phases proceed
  264. 16:13without any mistakes now let us look at
  265. 16:17the v-model this is a variant of the
  266. 16:21waterfall model only small changes are
  267. 16:26there small derivative of the waterfall
  268. 16:31model essentially all the activities are
  269. 16:33there the waterfall model now let us
  270. 16:37look at the v-model the V model
  271. 16:41emphasizes on the verification and
  272. 16:45validation activities throughout the
  273. 16:47lifecycle we had seen that in the
  274. 16:51waterfall model the testing activity was
  275. 16:55only at the end initially there is
  276. 17:00requirements specification then there is
  277. 17:05design coding but the testing activities
  278. 17:09are only at the end and that's the
  279. 17:13reason why the testing activities take
  280. 17:14long time and the other problem is that
  281. 17:19what do the testers do
  282. 17:22till the testing phase starts what do
  283. 17:25they do the v-model gives answer to that
  284. 17:32it emphasizes verification and
  285. 17:35validation and normally this model is
  286. 17:40used well the software is supposed to be
  287. 17:43more reliable for example those software
  288. 17:48being used in critical applications the
  289. 17:51B model is used here in every phase of
  290. 17:57development there are some test
  291. 17:59activities for example running the test
  292. 18:02cases and later they may get executed
  293. 18:10but every phase there are some test
  294. 18:13activities that occur so this is the
  295. 18:17diagrammatic representation of the V
  296. 18:19model looks like AV here the model
  297. 18:22representation and that's the reason why
  298. 18:25it is called as a V model during the
  299. 18:31requirement specification the system
  300. 18:33test cases are developed which are
  301. 18:36executed during system testing during
  302. 18:39high-level design the integration test
  303. 18:41cases are developed during the detailed
  304. 18:44design the unit test cases are developed
  305. 18:47which are used during the unit testing
  306. 18:50after the coding is complete as you can
  307. 18:54see here that there is a emphasis on
  308. 18:57verification and validation activities
  309. 18:59and every phase there are some test
  310. 19:04activities unlike the waterfall model
  311. 19:06where the test activities occurred only
  312. 19:09when only in the integration and system
  313. 19:11testing
  314. 19:16here this slide it just says what are
  315. 19:21the system the test activities occur
  316. 19:23during the requirement analysis and
  317. 19:25specification system test case design
  318. 19:28activities occur high level design the
  319. 19:31integration test design activities occur
  320. 19:33and during the detailed design the unit
  321. 19:36tests design activities occur from the
  322. 19:40strength of this model is that it
  323. 19:43emphasizes verification and validation
  324. 19:47it's very similar to the waterfall model
  325. 19:50excepting that every phase has some
  326. 19:52verification and validation activities
  327. 20:00but then it has many weaknesses
  328. 20:03just like the waterfall model here it
  329. 20:08does not support overlapping of the
  330. 20:10phases that is one phase has to complete
  331. 20:14then the next phase starts what if some
  332. 20:16of the developers few of the developers
  333. 20:18complete first should they wait for the
  334. 20:22other developers to complete just idle
  335. 20:25or they can get started with the next
  336. 20:28phase this model does not allow that the
  337. 20:32wait for all phase the fails to complete
  338. 20:36and only then they can start the next
  339. 20:39phase
  340. 20:44does not easily accommodate letter
  341. 20:46change requirements does not provide
  342. 20:51support for effective risk handling so
  343. 20:54these are some of the problems of the
  344. 20:56v-model but then it is the natural
  345. 21:00choice for systems requiring high
  346. 21:02reliability and it is used when all
  347. 21:08requirements are known upfront and the
  348. 21:11technology is known now let's look at
  349. 21:15the prototyping model which is also a
  350. 21:18small variation of the basic waterfall
  351. 21:22model if we look at the diagrammatic
  352. 21:27representation of the prototyping model
  353. 21:30the initial phase here is prototype
  354. 21:32construction and after that the design
  355. 21:35coding etcetera are carried out here
  356. 21:43just like the waterfall model the
  357. 21:45activities are organized but then before
  358. 21:49starting the actual development a
  359. 21:51working prototype must be built what is
  360. 21:55a prototype a prototype is a toy
  361. 21:59implementation of the system which has
  362. 22:05limited functionalities slow reliability
  363. 22:10and so on but the question is that why
  364. 22:14do we need to develop a prototype before
  365. 22:18we start to develop the system what are
  366. 22:20the advantages of developing the
  367. 22:22prototype
  368. 22:28the first thing is that once you develop
  369. 22:32the prototype we can know what are all
  370. 22:36the requirements that should be there if
  371. 22:39there are any requirements which are
  372. 22:41missing if the customer can look at the
  373. 22:45prototype then you can find out what are
  374. 22:48the missing requirements there is a
  375. 22:55improved communication with the customer
  376. 22:59there is a user involvement because
  377. 23:02unlike the classical or the iterative
  378. 23:06waterfall model where the after the
  379. 23:08requirements are given the only thing
  380. 23:11that the customer sees the delivered
  381. 23:13software here in contrast in this model
  382. 23:17the prototype is constructed and given
  383. 23:20to the customer for his comments and
  384. 23:25also since a prototype exists it reduces
  385. 23:29the documentation reduces the
  386. 23:33maintenance costs and also if there are
  387. 23:39technical risks that the development
  388. 23:42team anticipates then they can through
  389. 23:47the prototype construction they can
  390. 23:49address those risks
  391. 23:55the reason for developing the prototype
  392. 23:58is to illustrate to the customer what is
  393. 24:01the software is going to look like what
  394. 24:05will be the input data formats messages
  395. 24:07reports interactive dialogues the
  396. 24:11technical issues associated with the
  397. 24:12product development the developers can
  398. 24:19experiment and find out what is the best
  399. 24:23way to handle technical issues sometimes
  400. 24:31the major decisions depends on issues
  401. 24:34like the response time of the hardware
  402. 24:36controller and here by developing the
  403. 24:41prototype the designers can have their
  404. 24:49solution based on the hardware the
  405. 24:53response time of the hardware controller
  406. 24:56at the up front rather than proceeding
  407. 25:01throughout all the development
  408. 25:03activities and finding out that the
  409. 25:05hardware controller response time is
  410. 25:07slow and they need to change everything
  411. 25:10so developing a prototype helps in
  412. 25:17getting the customer feedback and also
  413. 25:22many technical issues are clarified and
  414. 25:25the development can proceed correctly
  415. 25:35also when a prototype is developed the
  416. 25:41once it is used for the illustrating to
  417. 25:44the customer it is thrown away and the
  418. 25:47actual system is developed but then the
  419. 25:50experience that the development
  420. 25:52development team gets in developing the
  421. 25:54prototype that goes a long way in
  422. 25:58developing a good software here in the
  423. 26:04prototyping model first the approximate
  424. 26:07requirements are obtained a quick design
  425. 26:11is construct is made and then the
  426. 26:16prototype is constructed using various
  427. 26:19shortcuts the shortcuts can be like
  428. 26:23inefficient inaccurate or dummy
  429. 26:26functions a table lookup rather than
  430. 26:30writing the code for the actual
  431. 26:32computation we can implement that in the
  432. 26:37this diagram that initially a quick
  433. 26:40design is done based on the requirements
  434. 26:43that have been gathered prototype is
  435. 26:45built submitted to the customer for
  436. 26:49evaluation based on customer feedback we
  437. 26:52find the requirements again have a quick
  438. 26:55design change the prototype and so on
  439. 27:00until the customer is satisfied with the
  440. 27:03prototype then a waterfall model is used
  441. 27:06for developing the software
  442. 27:11so the it's a small variation of the
  443. 27:18waterfall model only the initial
  444. 27:20prototype construction that is added
  445. 27:22here and because of the prototype is
  446. 27:29kind of a requirement specification
  447. 27:32animated requirements specification
  448. 27:37requirement specification document may
  449. 27:40not be required but one thing that we
  450. 27:44must be clear here is in the prototyping
  451. 27:47model once the prototype has been used
  452. 27:50to demonstrate to the customer and
  453. 27:53address the technical issues the
  454. 27:55prototype is thrown away and then the
  455. 28:00development starts but does the
  456. 28:05prototype construction add to the cost
  457. 28:09and the development becomes more costly
  458. 28:11no not really because for systems with
  459. 28:16unclear user requirements with
  460. 28:19unresolved
  461. 28:19technical issues the prototyping is
  462. 28:22actually a cost effective way of
  463. 28:24developing the software because without
  464. 28:27a prototype we might have to change the
  465. 28:31software many times and that would make
  466. 28:33it much more expensive that would incur
  467. 28:38massive redesigned costs and even though
  468. 28:42there is a small upfront cost of
  469. 28:44developing the prototype but that will
  470. 28:47be more effective cost effective then
  471. 28:52not using the prototype and finally
  472. 28:58finding out that the customer has lot of
  473. 29:01dissatisfaction and suggests many
  474. 29:04changes and also the technical issues
  475. 29:08are unresolved as a result many changes
  476. 29:11occur with this discussion we'll just
  477. 29:17stop here
  478. 29:19and continue discussing a few more
  479. 29:22lifecycle models in the next lecture
  480. 29:26thank you

About this transcript

This page contains the full transcript of Lecture 06: Life Cycle Models - II by NPTEL IIT Kharagpur, generated from the public captions YouTube serves with the video. The transcript has 3,065 words across 480 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.