CS507 ASSIGNMENT NO 3 SOLUTION

Q. 1: How can you describe the factors which will ensure the successfulimplementation of SDLC? Explain at least three.A systems development lifecycle (SDLC) has three primary objectives: ensure that highquality systems are delivered, provide strong management controls over the projects, andmaximize the productivity of the systems staff.In order to meet these objectives the SDLC has many specific requirements it must meet,including: being able to support projects and systems of various scopes and types,supporting all of the technical activities, supporting all of the management activities,being highly usable, and providing guidance on how to install it.The technical activities include: system definition (analysis, design, coding), testing,system installation (e.g., training, data conversion), production support (e.g., problemmanagement), defining releases, evaluating alternatives, reconciling information acrossphases and to a global view, and defining the project's technical strategy.The management activities include: setting priorities, defining objectives, projecttracking and status reporting, change control, risk assessment, step wise commitment,cost/benefit analysis, user interaction, managing vendors, post implementation reviews,and quality assurance reviews.In order to meet all of the SDLC's objectives and requirements there are certain designapproaches that are required: the SDLC must be an example of a system created using thetechniques it espouses; it must use a layered approach to analysis, design, installationsupport and production support; it must keep distinct the "what" from the "how" inregards to doing the tasks and creating the outputs; and it must organize its information ina hierarchical manner so that users with varying degrees of familiarity can find what theyDefining or selecting an SDLC should be undertaken as a project with full time resourceswho have the appropriate level of expertise. It is an extremely high leverage effort. Italso represents a major cultural change for the staff. It must be planned and executed inas professional a manner as possible.Q. 2: List down the pros and cons of Incremental Model? Also mention when to use Working functionality is produced earlier – computation of value to cost ratio Reduces risks of change in user requirements Provides clients flexibility in decision making. Risk management is incremental More flexible - less costly to change scope and requirements. Easier to test and debug during a smaller iteration. Easier to manage risk because risky pieces are identified and handled during its Incremental model includes use of the software by user to for changes. It is flexible and easy to manage more manageable process and better software making Better risk management because you can confirm the outcome by the customer afterevery version that what ever u are making is according to plan or not and fix it in next Testing is easy in system cycle Larger picture cannot be seen until the entire system is built Difficult to break down the total system at early stage of product development to Each phase of an iteration is rigid and do not overlap each other. Each phase of an iteration is rigid and do not overlap each Problems may arise pertaining to system architecture becausenot all requirements are gathered up front for the entire software life cycleUse the Incremental ModelIf is too risky to develop the whole system at once then incremental Model developmentIncremental model is an evolution of waterfall model. The product is designed,implemented, integrated and tested as a series of incremental builds. It is a popular modelsoftware evolution used many commercial software companies and system vendor