Yahoo India Web Search

Search results

  1. May 11, 2010 · This history column article provides a tour of the main software development life cycle (SDLC) models. (A lifecycle covers all the stages of software from its inception with requirements...

    • Nayan Ruparelia
    • UNIT OBJECTIVE
    • MOST EVERYTHING INVOLVES TEAMS
    • CIRCLE OF LIFE
    • PROJECT INFLUENCES
    • PROFESSIONALISM
    • PROCESS
    • SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)
    • KEY ELEMENTS IN ANY SDLC
    • WATERFALL MODEL (CIRCA 1968)
    • WATERFALL MODEL
    • WHAT THIS MEANS IN PRACTICE
    • ITERATIVE MODELS
    • AGILE MANIFESTO
    • AGILE IS A SET OF SDLC APPROACHES
    • AGILE
    • HOW SCRUM TYPICALLY OPERATES
    • TEST-FIRST DESIGN
    • FEASIBILITY
    • Challenges
    • Mitigations
    • The Main Line
    • Additional Considerations

    Understand the influences on a project Understand what a software process is Understand two common models WHAT EACH PARTY CONTROLS

    The effectiveness of the team relates directly to success Working with and within teams requires extra effort for Communication Ever play the operator game? Documentation Tooling Hand-offs (process exchanges or role turn-over) Remember, you cannot read other people’s minds

    Teams come, operate, evolve or disband People come, grow, and eventually move on Projects come, grow, enter stasis or evolve Your project has to accommodate these facts of project life

    Scale Affects the ability to know “everything” Complexity becomes a critical factor, if it wasn’t already Legacy Rarely is everything from scratch Being able to extend others’ work is essential

    Personal Ethics Confidentiality Respecting confidences of employers or clients regardless if there is a formal agreement Competence Accurately reflect what you can do and accept only work that is within your competence Intellectual Property Protecting the IP of employers and clients Misuse Do not use skills or resources inappropriately Effects Deve...

    • noun pro·cess a series of actions that produce something or that lead to a particular result http://www.merriam-webster.com/dictionary/process Typical “Good” Qualities Beware: it is easy to become over-zealous or lost in process

    Purpose Lead to good software Reduce risk Enable visibility and measurement Enable teaming Key attributes Outcomes/results of processes are key deliverables or products Roles are clear Pre and post conditions are understood and held true

    Feasibility Specification Architecture and Design Development Validation Evolution/Maintenance The devil is in the details of how the steps are organized and executed

    Sequential process phases One step completes before next one starts Feasibility Rational process Enables careful planning This is how construction is done. Good for some piece of the system cannot be easily changed (e.g. hardware) where explicit and exhaustive testing is required before launch Challenges Feasibility Analysis Requirement Specificati...

    Real projects rarely follow a sequential flow Hard to state all requirements explicitly No maintenance or evolution involved Customer must have patience Any blunder can be disastrous BOEHM’S FIRST LAW Errors are most frequent during requirements and design activities and are more expensive the later they are removed.

    Relative cost of an error depending on when it is discovered Requirements Design Code Unit Test System Test Field Project Phase

    System is created by successive versions. Go through each process step, then iterate Similar to how you are taught to write a paper Includes feedback between steps Lowers the cost of implementing requirement changes Allows some client/user feedback to be considered Smaller sized steps means delivery of something comes sooner Value is created earlie...

    Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. http://agilemanifesto.org/ This is a response to over-zealou...

    Glossary: RUP – Rational Unified Process https://en.wikipedia.org/wiki/Rational_Unified_Pro cess XP – Extreme Programming https://en.wikipedia.org/wiki/Extreme_programmin g DSDM - Dynamic systems development method https://en.wikipedia.org/wiki/Dynamic_systems_dev elopment_method FDD - Feature-driven development https://en.wikipedia.org/wiki/Featur...

    Emphasis producing small increments of software in a reasonably short time frame Entire process is run during a sprint Sprint results are deployed Antithesis of Waterfall Plans develop incrementally and evolve Client collaboration versus client negotiation Specification follows from working system, not the reverse Immediate feedback from deployment...

    A sprint is one iteration through the process The backlog contains all the work needing doing • Includes features and other tasks User stories describe the function from the consumer’s perspective  The User may be another software component/system. You estimate how much work/time each User Story will take The client provides her view of the priori...

    Puts test specification as the critical design activity Understands that deployment comes when the system passes testing Clearly defines what success means No more guesswork as to what “complete” means The act of defining tests requires one to understand how the solution works Defines (non)function acceptanceInforms designs objectives Defines objec...

    Determines if a project should be attempted Usually done once at the beginning by senior (trusted) team members Feasibility study is a proposal Does not require prototyping, but often includes it The decision maker is the audience This person may not be sufficiently technical In large organizations, this can be a walk-up multiple hierarchies Budget...

    Clients are unsure what they need at a useful level of detail Benefits are hard to quantify Impacts and recognizing unintended consequences is even harder to quantify Approach is often based on very rough guesses Organizational structures may need change Assumptions may be faulty

    Experience can guide process But the most experienced people may not be the most technically current Solicit support and build interest for the project Beware of irrational enthusiasm Leads to unreasonable expectations Senior executives rarely forget your promises

    Senior member(s) of the client’s organization decide whether to begin a major software project. Client: who is this project for? Scope: is it well defined? Where are there dependencies and on whom? Benefits: are the benefits real and quantifiable? Do I trust these numbers? Technical: Is the project possible? Is there at least one technical way t...

    Do I trust this team? Have we tried this before? Market maker? Fast follower? Is this really worth investing in? Are there IPR issues? License dependencies? Can this organization pull this off? Management capabilities Development capabilities Operational capabilities Sales capabilities

    • 1MB
    • 33
  2. Software Development Life Cycle (SDLC) Outcomes One can able to develop and conduct appropriate experimentation, analysis and data interpretation, and use engineering judgment to draw conclusions in choosing an apt software development model ∙ One can able to satisfy the customer expectations, reaches completion within time and cost

  3. A typical Software Development Life Cycle consists of the following stages − Stage 1: Planning and Requirement Analysis Requirement analysis is the most important and fundamental stage in SDLC.

    • 593KB
    • 23
  4. This document describes the Software Development LifeCycle (SDLC) for small to medium database application development efforts. This chapter presents an overview of the SDLC, alternate lifecycle models, and associated references.

  5. Software Development Life Cycle, SDLC for short, is a well-defined, structured sequence of stages in software engineering to develop the intended software product. SDLC Activities. SDLC provides a series of steps to be followed to design and develop a software product efficiently. SDLC framework includes the following steps: Communication.

  6. People also ask

  7. The Software Development Life Cycle. 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 (requirements) Design – Architecture of the system (high level design) Detailed Design – Design of component modules, data ...

  1. Ad

    related to: software development life cycle models pdf