{"id":349,"date":"2018-07-26T04:59:14","date_gmt":"2018-07-26T04:59:14","guid":{"rendered":"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/?post_type=chapter&#038;p=349"},"modified":"2018-08-08T06:25:14","modified_gmt":"2018-08-08T06:25:14","slug":"personal-software-process-ii","status":"publish","type":"chapter","link":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/chapter\/personal-software-process-ii\/","title":{"rendered":"Personal Software Process II"},"content":{"raw":"<div>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\"><strong>PERSONAL SOFTWARE PROCESS<\/strong><\/p>\r\n&nbsp;\r\n<p style=\"text-align: justify\">Personal software process is a software development process by the developers to help themselves improve their performance and efficiency by following a personal disciplined framework that facilitates to plan, design, manage and measure their work.<\/p>\r\n&nbsp;\r\n<p style=\"text-align: justify\"><strong>LEARNING OBJECTIVES\u00a0<\/strong><\/p>\r\n&nbsp;\r\n<p style=\"text-align: justify\">\u2022 To consistently improve the performance, engineers must use well-defined and measured processes.<\/p>\r\n<p style=\"text-align: justify\">\u2022 To produce quality products, engineers must feel personally responsible for the quality.<\/p>\r\n<p style=\"text-align: justify\">\u2022 It costs less to find and fix defects earlier in a process than later.<\/p>\r\n<p style=\"text-align: justify\">\u2022 The right way is always the fastest and cheapest way to do a job.<\/p>\r\n&nbsp;\r\n<p style=\"text-align: justify\"><strong>MANAGEMENT SUPPORT\u00a0<\/strong><\/p>\r\n&nbsp;\r\n<p style=\"text-align: justify\">Self-directed teams are a bargain. Management will agree to manage your own work as long as they believe that you are doing a superior job. To convince them of this, you must maintain precise and accurate plans, measure and track your work and regularly show management that you are doing superior work. The PSP shows you how to do this.<\/p>\r\n&nbsp;\r\n<p style=\"text-align: justify\"><strong>PRINCIPLE OF PSP\u00a0<\/strong><\/p>\r\n\r\n<ul>\r\n \t<li style=\"text-align: justify\">Every engineer is different. To be most effective, engineers must plan their work, and they must base their plans on their own personal data.<\/li>\r\n \t<li style=\"text-align: justify\">To consistently improve their performance, engineers must use well-defined and measured processes.<\/li>\r\n \t<li style=\"text-align: justify\">To produce quality products, engineers must feel personally responsible for the quality.<\/li>\r\n \t<li style=\"text-align: justify\">It costs less to find and fix defects earlier in a process than later.<\/li>\r\n \t<li style=\"text-align: justify\">The right way is always the fastest and cheapest way to do a job.<\/li>\r\n<\/ul>\r\n<\/div>\r\n<div style=\"text-align: justify\">\r\n\r\n&nbsp;\r\n\r\n<strong>PSP Deliverables<\/strong>\r\n\r\n<strong>\u00a0<\/strong>\r\n<p style=\"text-align: justify\">A stable, mature PSP allows you to estimate and plan your work. It allows you to meet your commitments and resist unreasonable commitment pressures. It makes you understand your current performance and be better equipped to improve your capability. The PSP provides a proven basis for developing and using an industrial-strength personal process. It provides a discipline that shows you how to improve your personal process and the data to continually improve the productivity, quality, and predictability of your work.<\/p>\r\n&nbsp;\r\n\r\n<strong>Learning the PSP\u00a0<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">The PSP is introduced in six upward-compatible steps. You write one or more module-sized programs at each step. The data on your work is gathered and analyzed and the results are used to improve your personal performance.<\/p>\r\n&nbsp;\r\n\r\n<img class=\"aligncenter wp-image-355\" src=\"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP.png\" alt=\"\" width=\"598\" height=\"369\" \/>\r\n<p style=\"text-align: justify\"><strong>PSP0: <\/strong>You establish a measured performance baseline. <strong>PSP1: <\/strong>You make size, resource, and schedule plans. <strong>PSP2: <\/strong>You practice defect and yield management.<\/p>\r\n\r\n<\/div>\r\n&nbsp;\r\n<p style=\"text-align: justify\"><strong><span style=\"text-align: initial;font-size: 1em\">PHASES OF PSP\u00a0<\/span><\/strong><\/p>\r\n\r\n<div style=\"text-align: justify\">\r\n\r\n<img class=\"aligncenter wp-image-354\" src=\"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP.png\" alt=\"\" width=\"551\" height=\"337\" \/>\r\n\r\n<strong>Overall PSP Strategy<\/strong>\r\n\r\n&nbsp;\r\n\r\nThe overall PSP Strategy includes:\r\n<ul>\r\n \t<li>Gather data<\/li>\r\n \t<li>Estimate and plan<\/li>\r\n \t<li>Manage defects<\/li>\r\n \t<li>Manage yield<\/li>\r\n \t<li>Control cost of quality<\/li>\r\n<\/ul>\r\n&nbsp;\r\n\r\n<strong>PSP Design Methods\u00a0<\/strong>\r\n\r\n&nbsp;\r\n\r\nPSP does not prescribe a design method. Instead, it emphasized design completion and so it recommends making sure of the following:\r\n\r\n&nbsp;\r\n\r\n<strong>Example schema\u00a0<\/strong>\r\n\r\n&nbsp;\r\n\r\n\u25e6\u00a0\u00a0<strong>External static - <\/strong>Function interfaces: signatures, inheritance\r\n\r\n\u25e6\u00a0\u00a0<strong>External dynamic - <\/strong>Operational scenarios, call\/return\r\n\r\n\u25e6\u00a0\u00a0<strong>Internal static - <\/strong>Attributes, constraints\r\n\r\n\u25e6\u00a0\u00a0<strong>Internal dynamic - <\/strong>State machines, response time, interrupts\r\n\r\n<\/div>\r\n<div style=\"text-align: justify\">\r\n\r\n&nbsp;\r\n\r\n<strong>PSP Results<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">PSP achieves estimation improvement as reduced variance leads to better scheduling and staffing. It reduces compilation and test defects which is correlated with reduced customer- detected failures. It achieves mild productivity improvement.<\/p>\r\n&nbsp;\r\n\r\n<strong>PSP Benefits\u00a0<\/strong>\r\n<ul>\r\n \t<li>Increases personal commitment by investing each engineer with process responsibility.<\/li>\r\n \t<li>Assists engineers in making accurate plans.<\/li>\r\n \t<li>Provides steps engineers can take to improve personal and project quality.<\/li>\r\n \t<li>Sets benchmarks to measure personal process improvements.<\/li>\r\n \t<li>Demonstrates the impact of process changes on an engineer's performance.<\/li>\r\n<\/ul>\r\n&nbsp;\r\n\r\n<strong>TEAM SOFTWARE PROCESS\u00a0<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">Humphrey developed an intermediate between PSP and CMM which included teams of two to twenty members and multi-teams of up to 150 members. It provides a tradition of statistical process control that is iterative (four to five month cycles) and comprises of scripts and forms.<\/p>\r\n&nbsp;\r\n\r\n<strong>Team Description\u00a0<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">A team consists of at least two people and the members work towards a common goal. Each person has a specific assigned role and the completion of the mission requires some form of dependency among the group members.<\/p>\r\n&nbsp;\r\n\r\n<strong>Effective Teams\u00a0<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">An effective team comprises of skilled members. The team\u2019s goal is important and should be defined, visible, and realistic. The team\u2019s resources are adequate for the job. The members should be motivated and committed to meeting the team\u2019s goal. The members cooperate and support each other and are disciplined in their work.<\/p>\r\n&nbsp;\r\n\r\n<strong>Team Building\u00a0<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">The team members establish common goals and defined roles and develop an agreed-upon strategy. The team members define a common process for their work. All team members participate in producing the plan, and each member knows his or her personal role in that plan.<\/p>\r\n\r\n<\/div>\r\n&nbsp;\r\n<p style=\"text-align: justify\"><span style=\"text-align: initial;font-size: 1em\">The team negotiates the plan with management and the management reviews and accepts the negotiated plan. The team members do the job in the way that they have planned to do it. The team members communicate freely and often form a cohesive group of members who cooperate and are all committed to meeting the goal. The engineers know their status, get feedback on their work, and have leadership that sustains their motivation.<\/span><\/p>\r\n\r\n<div style=\"text-align: justify\">\r\n\r\n&nbsp;\r\n\r\n<strong>TSP Launch\u00a0<\/strong>\r\n\r\n&nbsp;\r\n\r\n<img class=\"aligncenter wp-image-353\" src=\"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch.png\" alt=\"\" width=\"595\" height=\"353\" \/>\r\n\r\n<strong>TSP Strategy<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">TSP Strategy aims at creating a conceptual design for the product. It decides what will be produced in each cycle. TSP makes initial size, effort estimates and establishes a configuration management plan<strong>.<\/strong><\/p>\r\n&nbsp;\r\n\r\n<strong>Selecting Roles\u00a0<\/strong>\r\n\r\n&nbsp;\r\n\r\nThe roles that are involved in TSP include;\r\n<ul>\r\n \t<li>Team Leader<\/li>\r\n \t<li>Development Manager<\/li>\r\n \t<li>Planning Manager<\/li>\r\n \t<li><span style=\"text-align: initial;font-size: 1em\">Quality\/Process Manager<\/span><\/li>\r\n \t<li>Support Manager<\/li>\r\n \t<li>Customer interface manager<\/li>\r\n \t<li>Design manager<\/li>\r\n \t<li>Test manager<\/li>\r\n \t<li>Safety manager<\/li>\r\n \t<li>Security manager<\/li>\r\n \t<li>Performance manager<\/li>\r\n<\/ul>\r\n<\/div>\r\n<div style=\"text-align: justify\">\r\n\r\n&nbsp;\r\n\r\n<strong>Team Leader Responsibilities\u00a0<\/strong>\r\n\r\n&nbsp;\r\n\r\nTeam leader responsibilities include the following;\r\n\r\n&nbsp;\r\n\r\n\u2022\u00a0 Motivating team members\r\n\r\n\u2022\u00a0 Handling customer issues\r\n\r\n\u2022\u00a0 Interaction with management\r\n\r\n\u2022\u00a0 Day-to-day direction of the work\r\n\r\n\u2022\u00a0 Protecting team resources\r\n\r\n\u2022\u00a0 Resolving team issues\r\n\r\n\u2022\u00a0 Conducting team meetings\r\n\r\n\u2022\u00a0 Reporting on the work status\r\n\r\n&nbsp;\r\n\r\n<strong>TSP Quality Guidelines\u00a0<\/strong>\r\n<ul>\r\n \t<li><strong>Percent (of modules) Defect Free (PDF) at entrance to<\/strong>\r\n<ul>\r\n \t<li>Compile &gt; 10%<\/li>\r\n \t<li>Unit Test &gt; 50%<\/li>\r\n \t<li>Integration Test &gt; 70%<\/li>\r\n \t<li>System Test &gt; 90%<\/li>\r\n<\/ul>\r\n<\/li>\r\n \t<li><strong style=\"text-align: initial;font-size: 1em\">Defects\/KLOC:\u00a0<\/strong>\r\n<ul>\r\n \t<li>Total defects injected 75 - 150; If not PSP trained, use 100 to 200.<\/li>\r\n \t<li>Compile &lt; 10<\/li>\r\n \t<li>Unit Test &lt; 5<\/li>\r\n \t<li>Integration Test &lt; 0.5<\/li>\r\n \t<li>System Test &lt; 0.2<\/li>\r\n<\/ul>\r\n<\/li>\r\n \t<li><strong style=\"text-align: initial;font-size: 1em\">Defect Ratios\u00a0<\/strong>\r\n<ul>\r\n \t<li>Detailed design review defects \/unit test defects &gt; 2.0<\/li>\r\n \t<li>Code review defects\/compile defects &gt; 2.0<\/li>\r\n<\/ul>\r\n<\/li>\r\n<\/ul>\r\n<\/div>\r\n<div style=\"text-align: justify\">\r\n\r\n&nbsp;\r\n\r\n<strong>Development Time Ratios\u00a0<\/strong>\r\n<ul>\r\n \t<li>Requirements inspection\/requirements time &gt; 0.25 Elicitation in requirements time<\/li>\r\n \t<li>High-level design inspection\/high-level design time &gt; 0.5 Design work only, not studies<\/li>\r\n \t<li>Detailed design\/coding time &gt; 1.00<\/li>\r\n \t<li>Detailed design review\/detailed design time &gt; 0.5<\/li>\r\n \t<li>Code review\/code time &gt; 0.5<\/li>\r\n<\/ul>\r\n&nbsp;\r\n\r\n<strong>Review and Inspection Rates\u00a0<\/strong>\r\n<ul>\r\n \t<li>Requirements pages\/hour &lt; 2 Single-spaced text pages.<\/li>\r\n \t<li>High-level design pages\/hour &lt; 5 Formatted design logic.<\/li>\r\n \t<li>Detailed design text lines\/hour &lt; 100 Pseudocode ~ equal to 3 LOC.<\/li>\r\n \t<li>Code LOC\/hour &lt; 200 Logical LOC.<\/li>\r\n<\/ul>\r\n&nbsp;\r\n\r\n<strong>Produce the Quality Plan\u00a0<\/strong>\r\n\r\n&nbsp;\r\n<p style=\"text-align: justify\">The quality plan estimates defect injection rates for each phase and estimates yield for each phase. It generate a trial quality plan which compares the quality plan with team goals. It examines and produces quality at each phase of the project. The time is modified and planned for defect removal if quality goals are not satisfied. Quality plan continues to generate trial plans until quality goals are satisfied.<\/p>\r\n&nbsp;\r\n\r\n<strong>Component Quality Profile\u00a0<\/strong>\r\n\r\n&nbsp;\r\n\r\nThe PSP\/TSP criteria for a quality process are that\r\n\r\n&nbsp;\r\n\r\n\u25e6 Detailed design (DLD) time &gt;= coding time.\r\n\r\n\u25e6 Detailed design review time &gt;= 50% of DLD time.\r\n\r\n\u25e6 Code review time &gt;= 50% of coding time.\r\n\r\n\u25e6 Compile defects &lt;= 10 per KLOC.\r\n\r\n<span style=\"text-align: initial;font-size: 1em\">\u25e6 Unit test defects &lt;= 5 per KLO<\/span>\r\n\r\n<span style=\"text-align: initial;font-size: 1em\">\u25e6 Many defect-free components do not meet these<\/span>\r\n\r\n<span style=\"text-align: initial;font-size: 1em\">\u25e6 All components that have met these criteria have been defect<\/span>\r\n\r\n<\/div>\r\n&nbsp;\r\n\r\n<strong>Web Links<\/strong>\r\n<ul>\r\n \t<li>www.sei.cmu.edu\/tsp\/<\/li>\r\n \t<li>resources.sei.cmu.edu\/library\/asset-view.cfm?assetid=5287<\/li>\r\n \t<li>cs.mty.itesm.mx\/profesores\/pverdines\/TCS\/p3\/PSP-TSP.pdf<\/li>\r\n<\/ul>\r\n&nbsp;\r\n\r\n<strong>Supporting &amp; Reference Materials<\/strong>\r\n<ul>\r\n \t<li>Roger S. Pressman, \u201cSoftware Engineering: A Practitioner\u2019s Approach\u201d, Fifth Edition, McGraw Hill, 2001.<\/li>\r\n \t<li>Pankaj Jalote, \u201cAn Integrated Approach to Software Engineering\u201d, Second Edition, Narosa Publications, 2005.<\/li>\r\n \t<li>Ian Sommerville, \u201cSoftware Engineering\u201d, Sixth Edition, Addison Wesley, 2000.<\/li>\r\n<\/ul>\r\n&nbsp;","rendered":"<div>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><strong>PERSONAL SOFTWARE PROCESS<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">Personal software process is a software development process by the developers to help themselves improve their performance and efficiency by following a personal disciplined framework that facilitates to plan, design, manage and measure their work.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><strong>LEARNING OBJECTIVES\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">\u2022 To consistently improve the performance, engineers must use well-defined and measured processes.<\/p>\n<p style=\"text-align: justify\">\u2022 To produce quality products, engineers must feel personally responsible for the quality.<\/p>\n<p style=\"text-align: justify\">\u2022 It costs less to find and fix defects earlier in a process than later.<\/p>\n<p style=\"text-align: justify\">\u2022 The right way is always the fastest and cheapest way to do a job.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><strong>MANAGEMENT SUPPORT\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">Self-directed teams are a bargain. Management will agree to manage your own work as long as they believe that you are doing a superior job. To convince them of this, you must maintain precise and accurate plans, measure and track your work and regularly show management that you are doing superior work. The PSP shows you how to do this.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><strong>PRINCIPLE OF PSP\u00a0<\/strong><\/p>\n<ul>\n<li style=\"text-align: justify\">Every engineer is different. To be most effective, engineers must plan their work, and they must base their plans on their own personal data.<\/li>\n<li style=\"text-align: justify\">To consistently improve their performance, engineers must use well-defined and measured processes.<\/li>\n<li style=\"text-align: justify\">To produce quality products, engineers must feel personally responsible for the quality.<\/li>\n<li style=\"text-align: justify\">It costs less to find and fix defects earlier in a process than later.<\/li>\n<li style=\"text-align: justify\">The right way is always the fastest and cheapest way to do a job.<\/li>\n<\/ul>\n<\/div>\n<div style=\"text-align: justify\">\n<p>&nbsp;<\/p>\n<p><strong>PSP Deliverables<\/strong><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p style=\"text-align: justify\">A stable, mature PSP allows you to estimate and plan your work. It allows you to meet your commitments and resist unreasonable commitment pressures. It makes you understand your current performance and be better equipped to improve your capability. The PSP provides a proven basis for developing and using an industrial-strength personal process. It provides a discipline that shows you how to improve your personal process and the data to continually improve the productivity, quality, and predictability of your work.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Learning the PSP\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">The PSP is introduced in six upward-compatible steps. You write one or more module-sized programs at each step. The data on your work is gathered and analyzed and the results are used to improve your personal performance.<\/p>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-355\" src=\"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP.png\" alt=\"\" width=\"598\" height=\"369\" srcset=\"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP.png 854w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP-300x185.png 300w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP-768x474.png 768w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP-65x40.png 65w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP-225x139.png 225w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/Learning-the-PSP-350x216.png 350w\" sizes=\"auto, (max-width: 598px) 100vw, 598px\" \/><\/p>\n<p style=\"text-align: justify\"><strong>PSP0: <\/strong>You establish a measured performance baseline. <strong>PSP1: <\/strong>You make size, resource, and schedule plans. <strong>PSP2: <\/strong>You practice defect and yield management.<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><strong><span style=\"text-align: initial;font-size: 1em\">PHASES OF PSP\u00a0<\/span><\/strong><\/p>\n<div style=\"text-align: justify\">\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-354\" src=\"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP.png\" alt=\"\" width=\"551\" height=\"337\" srcset=\"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP.png 1324w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP-300x184.png 300w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP-768x470.png 768w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP-1024x626.png 1024w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP-65x40.png 65w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP-225x138.png 225w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/PHASES-OF-PSP-350x214.png 350w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><\/p>\n<p><strong>Overall PSP Strategy<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>The overall PSP Strategy includes:<\/p>\n<ul>\n<li>Gather data<\/li>\n<li>Estimate and plan<\/li>\n<li>Manage defects<\/li>\n<li>Manage yield<\/li>\n<li>Control cost of quality<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>PSP Design Methods\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>PSP does not prescribe a design method. Instead, it emphasized design completion and so it recommends making sure of the following:<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Example schema\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>\u25e6\u00a0\u00a0<strong>External static &#8211; <\/strong>Function interfaces: signatures, inheritance<\/p>\n<p>\u25e6\u00a0\u00a0<strong>External dynamic &#8211; <\/strong>Operational scenarios, call\/return<\/p>\n<p>\u25e6\u00a0\u00a0<strong>Internal static &#8211; <\/strong>Attributes, constraints<\/p>\n<p>\u25e6\u00a0\u00a0<strong>Internal dynamic &#8211; <\/strong>State machines, response time, interrupts<\/p>\n<\/div>\n<div style=\"text-align: justify\">\n<p>&nbsp;<\/p>\n<p><strong>PSP Results<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">PSP achieves estimation improvement as reduced variance leads to better scheduling and staffing. It reduces compilation and test defects which is correlated with reduced customer- detected failures. It achieves mild productivity improvement.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>PSP Benefits\u00a0<\/strong><\/p>\n<ul>\n<li>Increases personal commitment by investing each engineer with process responsibility.<\/li>\n<li>Assists engineers in making accurate plans.<\/li>\n<li>Provides steps engineers can take to improve personal and project quality.<\/li>\n<li>Sets benchmarks to measure personal process improvements.<\/li>\n<li>Demonstrates the impact of process changes on an engineer&#8217;s performance.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>TEAM SOFTWARE PROCESS\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">Humphrey developed an intermediate between PSP and CMM which included teams of two to twenty members and multi-teams of up to 150 members. It provides a tradition of statistical process control that is iterative (four to five month cycles) and comprises of scripts and forms.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Team Description\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">A team consists of at least two people and the members work towards a common goal. Each person has a specific assigned role and the completion of the mission requires some form of dependency among the group members.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Effective Teams\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">An effective team comprises of skilled members. The team\u2019s goal is important and should be defined, visible, and realistic. The team\u2019s resources are adequate for the job. The members should be motivated and committed to meeting the team\u2019s goal. The members cooperate and support each other and are disciplined in their work.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Team Building\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">The team members establish common goals and defined roles and develop an agreed-upon strategy. The team members define a common process for their work. All team members participate in producing the plan, and each member knows his or her personal role in that plan.<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><span style=\"text-align: initial;font-size: 1em\">The team negotiates the plan with management and the management reviews and accepts the negotiated plan. The team members do the job in the way that they have planned to do it. The team members communicate freely and often form a cohesive group of members who cooperate and are all committed to meeting the goal. The engineers know their status, get feedback on their work, and have leadership that sustains their motivation.<\/span><\/p>\n<div style=\"text-align: justify\">\n<p>&nbsp;<\/p>\n<p><strong>TSP Launch\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-353\" src=\"http:\/\/csp8.epgpbooks.inflibnet.ac.in\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch.png\" alt=\"\" width=\"595\" height=\"353\" srcset=\"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch.png 700w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch-300x178.png 300w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch-65x39.png 65w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch-225x133.png 225w, https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-content\/uploads\/sites\/53\/2018\/07\/TSP-Launch-350x208.png 350w\" sizes=\"auto, (max-width: 595px) 100vw, 595px\" \/><\/p>\n<p><strong>TSP Strategy<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">TSP Strategy aims at creating a conceptual design for the product. It decides what will be produced in each cycle. TSP makes initial size, effort estimates and establishes a configuration management plan<strong>.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Selecting Roles\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>The roles that are involved in TSP include;<\/p>\n<ul>\n<li>Team Leader<\/li>\n<li>Development Manager<\/li>\n<li>Planning Manager<\/li>\n<li><span style=\"text-align: initial;font-size: 1em\">Quality\/Process Manager<\/span><\/li>\n<li>Support Manager<\/li>\n<li>Customer interface manager<\/li>\n<li>Design manager<\/li>\n<li>Test manager<\/li>\n<li>Safety manager<\/li>\n<li>Security manager<\/li>\n<li>Performance manager<\/li>\n<\/ul>\n<\/div>\n<div style=\"text-align: justify\">\n<p>&nbsp;<\/p>\n<p><strong>Team Leader Responsibilities\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>Team leader responsibilities include the following;<\/p>\n<p>&nbsp;<\/p>\n<p>\u2022\u00a0 Motivating team members<\/p>\n<p>\u2022\u00a0 Handling customer issues<\/p>\n<p>\u2022\u00a0 Interaction with management<\/p>\n<p>\u2022\u00a0 Day-to-day direction of the work<\/p>\n<p>\u2022\u00a0 Protecting team resources<\/p>\n<p>\u2022\u00a0 Resolving team issues<\/p>\n<p>\u2022\u00a0 Conducting team meetings<\/p>\n<p>\u2022\u00a0 Reporting on the work status<\/p>\n<p>&nbsp;<\/p>\n<p><strong>TSP Quality Guidelines\u00a0<\/strong><\/p>\n<ul>\n<li><strong>Percent (of modules) Defect Free (PDF) at entrance to<\/strong>\n<ul>\n<li>Compile &gt; 10%<\/li>\n<li>Unit Test &gt; 50%<\/li>\n<li>Integration Test &gt; 70%<\/li>\n<li>System Test &gt; 90%<\/li>\n<\/ul>\n<\/li>\n<li><strong style=\"text-align: initial;font-size: 1em\">Defects\/KLOC:\u00a0<\/strong>\n<ul>\n<li>Total defects injected 75 &#8211; 150; If not PSP trained, use 100 to 200.<\/li>\n<li>Compile &lt; 10<\/li>\n<li>Unit Test &lt; 5<\/li>\n<li>Integration Test &lt; 0.5<\/li>\n<li>System Test &lt; 0.2<\/li>\n<\/ul>\n<\/li>\n<li><strong style=\"text-align: initial;font-size: 1em\">Defect Ratios\u00a0<\/strong>\n<ul>\n<li>Detailed design review defects \/unit test defects &gt; 2.0<\/li>\n<li>Code review defects\/compile defects &gt; 2.0<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n<div style=\"text-align: justify\">\n<p>&nbsp;<\/p>\n<p><strong>Development Time Ratios\u00a0<\/strong><\/p>\n<ul>\n<li>Requirements inspection\/requirements time &gt; 0.25 Elicitation in requirements time<\/li>\n<li>High-level design inspection\/high-level design time &gt; 0.5 Design work only, not studies<\/li>\n<li>Detailed design\/coding time &gt; 1.00<\/li>\n<li>Detailed design review\/detailed design time &gt; 0.5<\/li>\n<li>Code review\/code time &gt; 0.5<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>Review and Inspection Rates\u00a0<\/strong><\/p>\n<ul>\n<li>Requirements pages\/hour &lt; 2 Single-spaced text pages.<\/li>\n<li>High-level design pages\/hour &lt; 5 Formatted design logic.<\/li>\n<li>Detailed design text lines\/hour &lt; 100 Pseudocode ~ equal to 3 LOC.<\/li>\n<li>Code LOC\/hour &lt; 200 Logical LOC.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>Produce the Quality Plan\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\">The quality plan estimates defect injection rates for each phase and estimates yield for each phase. It generate a trial quality plan which compares the quality plan with team goals. It examines and produces quality at each phase of the project. The time is modified and planned for defect removal if quality goals are not satisfied. Quality plan continues to generate trial plans until quality goals are satisfied.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Component Quality Profile\u00a0<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>The PSP\/TSP criteria for a quality process are that<\/p>\n<p>&nbsp;<\/p>\n<p>\u25e6 Detailed design (DLD) time &gt;= coding time.<\/p>\n<p>\u25e6 Detailed design review time &gt;= 50% of DLD time.<\/p>\n<p>\u25e6 Code review time &gt;= 50% of coding time.<\/p>\n<p>\u25e6 Compile defects &lt;= 10 per KLOC.<\/p>\n<p><span style=\"text-align: initial;font-size: 1em\">\u25e6 Unit test defects &lt;= 5 per KLO<\/span><\/p>\n<p><span style=\"text-align: initial;font-size: 1em\">\u25e6 Many defect-free components do not meet these<\/span><\/p>\n<p><span style=\"text-align: initial;font-size: 1em\">\u25e6 All components that have met these criteria have been defect<\/span><\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<p><strong>Web Links<\/strong><\/p>\n<ul>\n<li>www.sei.cmu.edu\/tsp\/<\/li>\n<li>resources.sei.cmu.edu\/library\/asset-view.cfm?assetid=5287<\/li>\n<li>cs.mty.itesm.mx\/profesores\/pverdines\/TCS\/p3\/PSP-TSP.pdf<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>Supporting &amp; Reference Materials<\/strong><\/p>\n<ul>\n<li>Roger S. Pressman, \u201cSoftware Engineering: A Practitioner\u2019s Approach\u201d, Fifth Edition, McGraw Hill, 2001.<\/li>\n<li>Pankaj Jalote, \u201cAn Integrated Approach to Software Engineering\u201d, Second Edition, Narosa Publications, 2005.<\/li>\n<li>Ian Sommerville, \u201cSoftware Engineering\u201d, Sixth Edition, Addison Wesley, 2000.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"author":4,"menu_order":36,"template":"","meta":{"pb_show_title":"on","pb_short_title":"","pb_subtitle":"","pb_authors":["dr-r-baskaran"],"pb_section_license":""},"chapter-type":[],"contributor":[58],"license":[],"class_list":["post-349","chapter","type-chapter","status-publish","hentry","contributor-dr-r-baskaran"],"part":3,"_links":{"self":[{"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/chapters\/349","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/wp\/v2\/users\/4"}],"version-history":[{"count":5,"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/chapters\/349\/revisions"}],"predecessor-version":[{"id":424,"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/chapters\/349\/revisions\/424"}],"part":[{"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/parts\/3"}],"metadata":[{"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/chapters\/349\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/wp\/v2\/media?parent=349"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/pressbooks\/v2\/chapter-type?post=349"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/wp\/v2\/contributor?post=349"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/ebooks.inflibnet.ac.in\/csp8\/wp-json\/wp\/v2\/license?post=349"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}