Monday, September 17, 2012

Software Development Methodology

17.09.2012

Software Development Methodology.

Software Development Methodology also called as System Development Methodology. Software engineering is a framework that is used to structure, plan and control the process of developing an Information System.

As a simple example we’ll identify how to make a cup of tea used by methodology, you need to;
  1. Make the equipment ready.
  2. While boiling the water need to prepare the mix of the content.
  3. Then put the water in to the mixture and make the tea.


Things do in Software Development Methodology.

  1. There are certain steps you can do it as partially and individually.
  2. Follow steps in a sequence manner.
  3. Every software development project makes sure it develops well.
  4. Output makes a good quality.

Models and Life Cycles used in Software Development Methodology.

  • Spiral model.
  • Waterfall model.
  • V lifecycle.
  • Throwaway prototyping model.
  • Evolutionary prototyping model.
  • Incremental / Iterative development.
  • Reusable software model.
  • Automated software synthesis.


Methodologies used in Software Development.

  1. Structured System Analysis and Design Methodology (SSADM).
  2. Dynamic System Development Methodology (DSDM).
                - Used for rapid development.


Three Types of Failures in Software Development Methodology.


  1. Have you kept your project within the budget?
  2. Is that in proper scheduled?
  3. What degree have you met the requirements?
  • 80% of software development project failed because of those three reasons.
  • Check whether you used an appropriate methodology to your project.
  • Don’t stress up with a structured methodologies with structured techniques.
  • Simple software development methodology is a System Development Life Cycle (SDLC). It has a very structured flow in a sequential manner.
  • The every software must according to the SDLC methodology.
  • The extended version of SDLC is Structured System Analysis and Design Methodology (SSADM).


Structured System Analysis and Design Methodology (SSADM).

  1. The outcome might come up with the customers’ outcome.
  2. This doesn’t tell how to test, develop, deploy of the project.
  3. In feasibility study it’s a bit different. The technical things might be bit difficult.
  4. After that need to do an analysis. Identify what are the customers’ expectations.
  5. Then come to functional and non – functional requirements of the project.
                   Functional Requirements.
  • Requirements of your system that you must need to be implemented.
  • If you not do that, the problem might not solve.
                   ex: Security.

                   Non - Functional Requirements.
  • Add more quality to the system.
  • Additional details of the system.
                   ex: When user login to the system it displays the last three transaction of the user.

      6.   The way you define it depends on the project you make.
      7.   Identify the logic of the requirements.
      8.   How you are really going to use.
      9.   Design physical user interfaces (How hardware looks like).
                   ex: Design the hardware.


Techniques used in Structured System Analysis and Design Methodology (SSADM).

  1. Logical data modeling – This involves the process of identifying, modeling and documenting data.
  2. Data flow modeling – Uses ELHD
  3. Entity behavioral modeling.


Categories of Methodologies.

  • Data oriented design.
  • Function / Process oriented design.
  • OO methods.
  • User oriented design.
  • Hypertext methods.
  • Web methods.
  • Instructional design methods.
  • Hybrid methods.

RVP.

  1. Encryption.
  2. Elaboration.
  3. Construction.
  4. Transition.

  • Unified Modeling Languages allows you to analyze the projects, make by rational.
  • Above four phrases are enough to complete all software development methodology.

Disciplines of Software Development Methodology.

  1. Business rule modeling.
  2. Requirements.
  3. Analysis and design.
  4. Implementation.
  5. Test – Check whether the content is correct or verify it.
  6. Deployment.
  7. Configuration and change management.
  8. Project management.
  9. Environment.
  10. These all field has interaction to each other.


Prototypes in Software Development Methodology.


Agile Manifesto.

  • Not a methodology, certain statement.
  • Believes of peoples’ make.
  • Made by consortium (Group of people).
                 - Manifesto for Agile software development.

  • Individuals and Interactions over processes and tools.
  • Working software over contract negotiation.
  • Responding to change over following plan.


    Agile Methodologies.

    1. SCRUM
                     - Which originated in concept on Rugby.
        2.   DSDM
                     - It's a heavy methodology.
                     - Starts in a sequential manner (Sequence of iterations).

    Things to Consider When Selecting a Methodology.

    1. Scope
    2. Deliverables.
    3. Constraints - It depends on each unique project.
    4. User involvements - Level of user  involvement.
    5. Nature of the project - Most important factor of the project.

    Learning gain of the Lecture.

    Learning about software development methodologies.

    Personal Opinion.

    This is a very important lesson to my final year project.

    No comments:

    Post a Comment