Tuesday, June 4, 2019
Linear Sequential Model
elongated Sequential ModelIntroductionSoftw ar process (Jean, Badara David 1999) defines the way in which packet cultivation is organized, managed, measured, back up and improved. Although they may show different levels of sophistication in mastering their processes, all organizations involved in softw atomic human action 18- get aroundment follow a process of some kind, implicit or explicit, reproducible, instrumented, adaptable or separatewise. Software increment Organization in general has come to realize that the key to successful delivery (on duration, on budget, with the expected grapheme) lies in the effective attention of their software package process.Generic fleshPressman (2001) mentions that software engineering basis be categorized into three mannikins, regardless of application area, labor movement size or intricateity.The description phase focuses on what. That is during definition, the software engineer attempts to identify what information or data is to processed, what function and performance are required, what constitution behavior can be expected, what interfaces are to be established, what throw constraints exist and what validation criteria are required to define a successful and working governance.The development phase focuses on how. That is, during development a software engineer attempts to define how data are to be structured, how function is to be implemented within a software architecture, how procedural details are to be implemented, how interfaces are to be characterized, how the design pass on be translated into a classming delivery, and how testing will be performed. The methods applied during the development phase will different, but three specific technical foul tasks should always occur software design, code contemporaries, and software testing.The support phase focuses on compound associated with error correction, adaptations required as the softwares environment evolves, and changes due to enhance ments brought about by changing customer requirements. The support phase reapplies the steps of the definition and development phases but does so in the context of existing software. Four types of change are encountered during the support phaseCorrection Even with the best quality assurance activities, it is likely that the customer will uncover defects or bugs in the software. Corrective maintenance changes the software to correct defects.Adaptation Over time, the original environment (e.g., CPU, operating system, business rules, external product characteristics) for which the software was essential is likely to change. Adaptive maintenance results in modification to the software to accommodate changes to its external environment. enhancement As software is use, the customer/user will recognize additional functions that will provide benefit. Perfective maintenance extends the software beyond its original practicable requirements.Pr veritable(a)tion Computer software deteriorates due to change, and because of this, preventive maintenance, often called software reengineering, and must be conducted to enable the software to serve the needs of its end users. In essence, preventive maintenance makes changes to computer programs so that they can be more easily corrected, adapted, and enhanced.Linear Sequential Model / Waterfall ModelLinear sequent set or be known as waterfall model is one of the approaches in Software teaching Process Models that software engineer used to be and design which are used during the development process of software. Parekh (n.d.) cl primordial stated that all these phases are cascaded to each other so that second phase is started as and when defined set of goals are achieved for first phase and it is signed off.Phases of Linear Sequential Model (Startvbdotnet Contributor, n.d.)Feasibility The feasibility study is used to destine if the communicate should get the go ahead. If the project is to proceed, the feasibility study will wee a project plan and budget estimates for the future stages of development.Requirement abridgment and physique Analysis gathers the requirements for the system. This stage includes a detailed study of the business needs of the organization. Options for changing the business process may be considered. Design focuses on high level design like, what programs are needed and how are they going to interact, low-level design, interface design and data design. During these phases, the softwares overall structure is defined. Analysis and Design are very crucial in the whole development cycle. Any mistakes in the design phase could be very expensive to solve in the later stage of the software development. Much care is taken during this phase. The logical system of the product is developed in this phase.Implementation In this phase the designs are translated into code. Computer programs are written using a conventional programming language or an application generator. Programming tools like Compilers, Interpreters and Debuggers are used to bring back the code. Different high level programming languages like C, C++, Pascal and Java are used for coding. With respect to the type of application, the right programming language is chosen.Testing In this phase the system is tested. Normally programs are written as a series of individual modules, these subjects to separate and detailed test. The system is wherefore tested as a whole. The separate modules are brought together and tested as a complete system. The system is tested to ensure that interfaces between modules work, the system works on the intended platform and with the expected volume of data and that the system does what the user requires.Maintenance It is can non be avoided fact that a system will need maintenance. Software will definitely undergo change once it is delivered to the customer. There are many reasons for the change. Change could come about because of some unexpected enter values into the s ystem. In addition, the changes in the system could directly affect the software operations. The software should be developed to keep or save detail of changes that could happen during the post implementation period.Project Output in a Waterfall ModelAs Freetutes.com Contributors (n.d.) has seen, the output of a project employing the waterfall model is not just the final program along with documentation to use it. There are a number of intermediate outputs, which must be produced in distinguish to produce a successful product.The set of documents that should be produced in each project areRequirement documentProject planSystem design documentDetailed design documentTest plan and test reportFinal codeSoftware manuals (user manual, installation manual etc.)In arrangement to certify an output product of a phase earlier the next phase begins, reviews are often held. Reviews are necessary especially for the requirements and design phases, since other certification agent are frequentl y not available. Reviews are formal meeting to uncover deficiencies in a product. The review reports are the outcome of these reviews.establish on the information given by The Software Tester Contributor (n.d.), below are the advantages and disadvantages for Linear Sequential Model.Advantages of Linear Sequential ModelEmphasizes requirements before design.Single system design phase emphasizes planning and design of the system architecture and technology before coding begins.Milestone reviews encourage blotto scrutiny of phase exit and entry criteria.Sequential progression through phases readily maps to configuration control points and the establishment of baselines.Model structure is readily understood and transmitted to all stakeholders.Disadvantages of Linear Sequential ModelTesting does not receive focus until after the system has been specified, designed and coded.Many different units and sub-systems could be developed within the one project and the Waterfall Model implies tha t these are all specified and designed in one clump which does not reflect the realnessCustomer involvement is not throughout so issues with requirements are not always realized until later in the lifecycle.Linear progression through the phases can result in issue identification being pushed downstream resulting in many cycles of rework causing delays.The customer does not get to see the software until the very end.Project managers cannot always get a true picture of project health and progress, especially in the earlier phases.speedy Application Development (RAD)Pressman (2001) describes rapid application development (RAD) as an incremental software development process model that emphasizes an extremely short development cycle. The RAD model is a high-speed adaptation of the unidimensional sequential model in which rapid development is achieved by using component-based construction. If requirements are well understood and project scope is constrained, the RAD process enables a de velopment team to create a fully functional system within very short time periods. Normally it takes about 60 to 90 days.RAD Models PhasesStages of Rapid Application Model (RAD) Pressman (2001)Business modeling The information flow among business functions is copy in a way that answers the following questions What information drives the business process? What information is generated? Who generates it? Where does the information go? Who processes it?Data modeling The information flow defined as part of the business modeling phase is refined into a set of data objects that are needed to support the business. The characteristics or can be called as attributes. Each object is identified and the relationships between these are objects defined.Process modeling The data objects defined in the data modeling phase are transformed to achieve the information flow necessary to implement a business function. Processing descriptions are created for adding, modifying, deleting, or retrieving a d ata object.Application generation Rather than creating software using conventional third generation programming languages, the RAD process works to reuse existing program components when possible or create reusable components when necessary. In all cases, automated tools are used to facilitate construction of the software.Testing and turnover Since the RAD process emphasizes reuse, many of the program components have already been tested. This reduces overall testing time. However, new components must be tested and all interfaces must be fully exercised.Advantages of Rapid Application Development (RAD) My Project Management Expert Contributor (n.d.)The time required to develop the software is drastically reduced due to a reduced requirement epitome business requirements documentation and software requirement specification and planning stage.All the software prototypes produced can be kept in a repository for future use. The reusability of the components also fastens the phase of the process of software development.It is much easier for a project manager to be accurate in estimating project costs which of course means that project cost controls are easier to implement and manage as well.It is a big cost saver in terms of project budget as well as project time and cost due to reusability of the prototypes.If a component is being picked for the repository, it is already tested and hence need not be tested again. This helps in saving time required for testing.The project management requirements are collected in a dynamic manner. Every time on that point is a prototype ready, requirements are studied and matched. If there are any additional requirements, these are then included in the next prototype built.Disadvantages of Rapid Application Development (RAD) My Project Management Expert Contributor (n.d.)This method may not be useful for large, unique or highly complex projectsThis method cannot be a success if the team is not sufficiently motivated and nor is unab le to work cohesively together.Success depends on the extremely high technical skills of the developers.There are times when the team ignores necessary quality parameters much(prenominal) as consistency, reliability and standardization. Hence this can make project quality management hard to implement during the project management life cycleComparison between Linear Sequential Model and Rapid Application Model infra are the comparison for linear sequential model and rapid application model that are clearly stated by e2x limited Contributor (2005)Linear Sequential Model DevelopmentLinear Sequential Model development demands that all the requirements are identified and detailed at the start of the project. The system architecture is then defined, and detailed design of the system carried out before programming starts. The system is commonly delivered in modules that, once finished are then structured and tested. The big problem with linear sequential model development is that it ass umes all the requirements, the architecture and the design can be identified, fixed and signed off up front. If this is done correctly, development and delivery of the system should be little more than the correct translation of the design into code. Experience has shown that it is incredibly difficult to produce requirements of such detail and completeness that the system delivered is exactly what the customer wanted. We have also seen that the transition from design to programming, from programming to integration, and from integration to testing can be fraught with problems usually caused by misunderstandings, incorrect assumptions and discrepancies not identified during the requirements, architecture and design phases. Linear sequential model development can, and does work, but doing it right is typically very expensive. However, even when waterfall is practiced well, it is not very good at dealing with change. Every change in the requirements requires a change request, often sub mitted to a change control board. Linear Sequential Model works best when change is restricted.RAD (Rapid Application Development)In a RAD project, the customer is involved early on in working with technologists to quickly produce prototypes that embody the requirements. This gives the customer and users a chance to play with the technology early on to firm up their requirements and identify any gaps or incorrect assumptions.RAD projects then typically head in one of two directions. Some will become linear sequential model development projects, with the prototypes being formalized as requirements. Others will seek to develop the prototypes into proper implementations. The later approach often leads to a number of poorly engineered and poorly integrated solutions as fleshing out a prototype is not the same as developing a proper solution from the foothold up. As with linear sequential model development, RAD can and does work. However, successful RAD projects tend to be those where t he final solution is actually relatively close to the prototype in terms of implementation. Front-office solutions for exotic financial markets built around spreadsheets, and one-off, limited scope, database-and-forms applications are good examples.ConclusionAs a conclusion, if I am a project manager for a specific software project, I would choose rapid application development (RAD) as one of my method to develop software. By using RAD, I can roughly know what end-user want with their software, I can get clear view what the software can do, how the software behave and what type of performance that I can predict out. On top of that, RAD also enabled the team to work quicker and we can produce high quality software that can meet end-users need.