Posts

Showing posts with the label Process Model

The Rational Unified Process Model

Image
Rational Unified Process: The Rational Unified Process (RUP) is an iterative software development process framework created by the Rational Software Corporation, a division of IBM since 2003. RUP is not a single concrete prescriptive process, but rather an adaptable process framework, intended to be tailored by the development organizations and software project teams that will select the elements of the process that are appropriate for their needs. RUP is a specific implementation of the Unified Process. •Inception The primary objective is to scope the system adequately as a basis for validating initial costing and budgets. In this phase the business case which includes business context, success factors (expected revenue, market recognition, etc.), and financial forecast is established. To complement the business case, a basic use case model, project plan, initial risk assessment and project description (the core project requirements, constraints and key features) are generated. After ...

Boehm’s Spiral Process Model

Image
Spiral model: The spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts. Also known as the spiral life-cycle model (or spiral development), it is a systems development method (SDM) used in information technology (IT). This model of development combines the features of the prototyping and the waterfall model. The spiral model is intended for large, expensive and complicated projects.   History: The spiral model was defined by Barry Boehm in his 1986 article "A Spiral Model of Software Development and Enhancement". This model was not the first model to discuss iterative development. As originally envisioned, the iterations were typically 6 months to 2 years long. Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far. Analysis and engineering efforts are applied at each phase of the project, wit...

Rapid Application Development (RAD)

Image
RAD, or rapid application development, is an object-oriented approach to systems development that includes a method of development as well as software tools •RAD is used when –The team includes programmers and analysts who are experienced with it. –Users are sophisticated and highly engaged with the goals of the company. •Negative Aspect - RAD is based on Object Oriented approach. - If commitment is lacking RAD will fail. - RAD is not appropriate when technical risks are high, e.g. this occurs when a new application makes heavy use of new technology. You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. Waterfall Process Model 9. Software Process Framework Activity

The Prototyping Process Model

Image
•Gather requirements •Quick design focusing on what will be visible to user – input & output formats •Process iterated until customer & developer satisfied – then throw away prototype and rebuild system to high quality. - Insufficient analysis. - Excessive development time of the prototype. - High expectations for productivity with insufficient effort. You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. Waterfall Process Model 9. Software Process Framework Activity

The Incremental Process Model

Image
•Main characteristics –Hybrid model that combines elements of the waterfall and evolutionary paradigms. –The specification, design, and implementation phases are broken in smaller increments. •Advantages –Provides better support for process iteration. –Reduces rework in the software construction process. –Allows early delivery of parts of the system. –Supports easier integration of sub-systems. –Lower risk of project failure. –Delivery priorities can be more easily set. •Disadvantages –Mapping requirements to increments may not be easy. –Common software facilities may be difficult to identify. –Some decisions on requirements may be delayed. •Applicability: –When it is possible to deliver the system “part-by-part” . You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. W...

Component Based Software Engineering

Image
•Main characteristics –Makes intensive use of existing reusable components. –The focus is on integrating the components rather than on creating them from the scratch. •Advantages –Reduces considerably the software to be developed “in-house”. –Allows faster delivery. –In principle, more reliable systems, due to using previously tested components. •Disadvantages –agreement in requirements are needed. –Less control over the system’s evolution •Applicability: –When there is a pool of existing components that could satisfy the requirements of the new product. –Emerging trend: integration of web services from a range of suppliers. You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. Waterfall Process Model 9. Software Process Framework Activity

The Evolutionary Process Development Model

Image
•Main characteristics –Feedback from the user is used throughout the entire process. –The software product is refined through many versions •Advantages –Deals constantly with changes. –Provides quickly an initial version of the system. –Involves all development teams •Disadvantages: –Quick fixes may be involved –“Invisible” process, not well-supported by documentation. –The system’s structure can be corrupted by continuous change. •Disadvantages [cont’d] –Special tools and techniques may be necessary –The client may have the impression the first version is very close to the final product and thus be less patient. •Applicability –When requirements are not well understood. –Good for small and medium-sized software systems. You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. Water...

The Waterfall Process Model

Image
•Main characteristics: –Also called classic software life cycle or sequential model –Process activities (phases/stages) are clearly separated •Advantages –Organized approach, provides robust separation of phases. –Reflects common engineering practice. •Disadvantages: – Doesn't cope well with changes required by the client. –Development teams might wait for each other. –A working version of the product is available only late. •Applicability: –When requirements are well known and few changes are likely to be needed. –Can be used also for parts of larger software systems. You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. Waterfall Process Model 9. Software Process Framework Activity

what is Software process descriptions

•When we describe and discuss processes, we usually talk about the activities in these processes such as specifying a data model, designing a user interface, etc. and the ordering of these activities. •Process descriptions may also include: –Products , which are the outcomes of a process activity; –Roles , which reflect the responsibilities of the people involved in the process; –Pre- and post-conditions , which are statements that are true before and after a process activity has been enacted or a product produced.

Software Process Models

•A structured set of activities required to develop a software system. •Many different software processes but all involve: –Specification – defining what the system should do; –Design and implementation – defining the organization of the system and implementing the system; –Validation – checking that it does what the customer wants; –Evolution – changing the system in response to changing customer needs.

Software Process Framework Activity

Image
You can also view: 1. Boehms Spiral Process Model 2. Rational Unified Process Model 3. Rapid Application Development-RAD 4. Prototyping Process Model 5. Incremental Process Model 6. Component Based Software Engineering 7. Evolutionary Process Development Model 8. Waterfall Process Model 9. Software Process Framework Activity
i am running my new blog at Knowledge Sharing (https://ksharing.info). please subscribe my new blog