Pages


I made this widget at MyFlashFetish.com.

Showing posts with label Part 13. Show all posts
Showing posts with label Part 13. Show all posts

Thursday, April 14, 2011

Software Development Life Cyle (SDLC)

Small to Medium Database Application

Hi Everybody!
This entry describes the Software Development Life Cycle (SDLC) for small to medium database application development efforts.This entry presents an overview of the SDLC, alternate lifecycle models, and associated references.

The SDLC WATERFALL
  • Small to medium database software project are generally broken down into six stages.
The relationship of each stage to the others can be roughly describe as a waterfall, where the outputs from a specific stage serve as the initial inputs for the following stage.

During each stage, additional information is gathered or developed, combined with the inputs, and used to produce the stage deliverables. It is important to note that the additional information is restricted in scope, "New ideas" that  would take the project in directions not anticipated by the initial set of high-level requirements are not incorporated into the project. Rather, ideas for new capabilities or features that are out-of-scope are preserved for later consideration.

After the project is completed, the Primary Development Representative (PDR) and Primary End-User Representative (PER) in concert with other customer and development team personnel develop a list of recommendations for enhancement of the current software.

As conclusion, the structure imposed by this SDLC is specifically designed to maximize the probability of a successful software development effort. To accomplish this, the SDLC relies on four primary concepts:
  • Scope Restriction
  • Progressive Enhancement
  • Pre-defined Structure
  • Incremental Planning
These four concepts combine to mitigate the most common risks associated with software development efforts. 

Source Retrieved On,



Tuesday, April 5, 2011

Difference Between RAD and Tarditional Waterfall

Definition of RAD

RAD (rapid application development) is a concept that products can be developed faster and of higher quality through:

  • Gathering requirements using workshops or focus groups
  • Prototyping and early, reiterative user testing of designs
  • The re-use of software components
  • A rigidly paced schedule that defers design improvements to the next product version
  • Less formality in reviews and other team communication
RAD usually embraces object-oriented programming methodology, which inherently fosters software re-use. The most popular object-oriented programming languages, C++ and Java, are offered in visual programming packages often described as providing rapid application development.

RAD is best used when you are developing something which is basically being built upon the foundations of an existing prototype. The reason being that a key part of this methodology is the re-use of prototypes which reduces both the process of software development and the testing time required.

Advantages of RAD Software Development

  1. The time required to develop the software is drastically reduced due to a reduced requirement analysis business requirement documenetation and software requirement specification) and planning stage.
  2. All the software prototypes produced can be kept in a repository for future use. The reusability of the components also enhances the speediness of the process of software development.
  3. 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.
  4. It is a big cost saver in terms of project budget as well as project time and cost due to reusability of the prototypes.
  5. 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.
  6. The project management requirements are collected in a dynamic manner. Every time there is a prototype ready, requirements are studied and matched. If there are any additional requirements, these are then included in the next prototype built.
  7. There is a strong and continuous participation of the project sponsor who keeps giving feedback in the whole process. Hence the end user satisfaction level is higher when the end result is produced.
  8. It promotes better documentation through written test cases.

Disadvantages of RAD Software Development

  1. This method may not be useful for large, unique or highly complex projects
  2. This method cannot be a success if the team is not sufficiently motivated and nor is unable to work cohesively together.
  3. Success depends on the extremely high technical skills of the developers.
  4. There are times when the team ignores necessary quality parameters such as consistency, reliability and standardization. Hence this can make project quality management hard to implement during the project management life cycle.

Definition of Waterfall (Traditional)
  1. The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to the systems development life cycle, the waterfall model describes a development method that is linear and sequential.
  2. Waterfall development has distinct goals for each phase of development.
  3. The advantage of waterfall development is that it allows for departmentalization and managerial control.
  4. One great advantage of the waterfall model is that documentation is produced at every stage of the waterfall model development. This makes the understanding of the product designing procedure simpler.
  5. The disadvantage of waterfall development is that it does not allow for much reflection or revision. Once an application is in the testing stage, it is very difficult to go back and change something that was not well-thought out in the concept stage.
  6. Small changes or errors that arise in the completed software may cause a lot of problem.
  7. The greatest disadvantage of the waterfall model is that until the final stage of the development cycle is complete, a working model of the software does not lie in the hands of the client. Thus, he is hardly in a position to mention if what has been designed is exactly what he had asked for.
For adding your information, please click this link..:)

Waterfall or RAD? The application may dictate your choice

See You Next Time!!


References:
Waterfall or RAD?
What is RAD
What is Waterfall
Pengertian RAD dan Prototype

Saturday, April 2, 2011

Rapid Application Development Process





  • FIRSTLY,


  • The rapid application development (RAD) component enables you to configure a server project so that you can repeatedly deploy a server configuration (containing your message flows and message sets) to the runtime with a single toolbar button click. The RAD component uses the broker archive generation component, which creates the compiled message flow (.cmf) and compiled message set (dictionary) files, and stores them in a broker archive (bar). It then publishes (deploys) these resources to the target execution groups. Unlike with normal deployment, the bar file created using RAD is not retained for future use.



  • The RAD component is a quick way for people who are developing message flow applications to repeatedly test their message flows, ESQL transformation programs, and mapping transformation programs, in a safe environment, before they are used on a production system.


  • The following figure shows how RAD relates to the normal deployment cycle:

  • There are two ways to run RAD:
    1. Run on Server
    2. Debug on Server
    • When you select Run on Server, a check is made to see if a default server is defined for the project. If it is, the project is published (deployed) to the default server. If not, the Server Selection wizard is opened before continuing and, when complete, a Publish action is performed for the server instance and its configuration.
    • Debug on Server is similar to Run on Server, except that, after the action successfully completes, the Flow Debug perspective is opened for you to begin debugging your flow.
    • SECONDLY,
    • RAD allows the technology team to define the scope of the project, identify the iterations and begin working immediately in lieu of the older methodologies where the entire systems is designed on paper and then developed. As each iteration is finalized, based on priority, the complete system begins to take shape.   Tasks that normally could not be completed until the end of the project can most likely be completed during any stage of the product.  
    • RAD begins with the End Goal in mind.  "Organize and perform activities according to their priority" (Stephen Covey). All iterations are working toward the same goal.  The graph below demonstrates a RAD cycle:
    • THIRD,  It is a methodology for compressing the feasibility analysis, planning, design, build, and test phases into a series of short, iterative development cycles. Refer to book by James Martin: Rapid Application Development, Macmillan for details.

    Rapid Application Development

    ADVANTAGES OF USING RAD

    • Conventional software development methods take, on an average almost 20% more time than the RAD procedure. Using RAD can enable quicker visualization of the end-design and hence allow rapid software testing and rectifying steps. The customer is able to have a faster look at the design to add valuable inputs, in order to make the design more user-friendly.
    • The current competitive scenario demands frequently upgraded softwares in order to effectively satisfy customers' requirements. RAD enables a faster and updated version to reach the end user, by systematically eliminating redundant steps or using the prototype methods.
    • Cost overruns and meeting the time constraints are another advantage, though not a big consideration in high-end uses.
    • RAD makes the development process to be a more credible one by facilitating a scope for the customer to actively provide inputs in the development process. This may also prove a feasible study from the point of view of a developer.
    • It protects the current project from the variations in the market.

    For the conclusion, Rapid Application Development is an efficient methodology which can assist faster software development, and at the same time ensure maximum quality of the project.








    Source Retrieved From,
    http://www.brinex.com/solutions-bas-process-rad.html

    http://www.buzzle.com/articles/advantages-of-rapid-application-development.html