Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM SURVEY ON SOFTWARE DEVELOPMENTPROCESSING MODELS Nancy Bindal1, Aanchal Mehta2 1 Assistant Professor, Department of CSE, Maharishi Markandeshwar University, Mullana, Ambala, Haryana, India 2 M.Tech Research Scholar, Department of CSE, MMU, Mullana, Ambala, Haryana, India ABSTRACT: Software development process is concerned with production of software. Software cycles a process used by a systems analyst to develop an information system, including software productivity, cost, and overall quality. Keywords: Software Engineering, Life cycles models I INTRODUCTION Software engineering is the process of creating new systems. Some methodologies use to develop systems. The concept generally refers to software product and information systems. In software engineering concept underpins many kinds of software development methodologies. These methodologies work on framework of system for planning and controlling software system. Software development process is concerned with production of software. Software cycle is a process used by a systems analyst to develop an information system, including software productivity, cost, and overall quality. Software cycles are representation of a software process. It presents some particular perspective. A software cycle is either prescriptive or descriptive. Software cycles should deal with system design, creation and maintenance .software cycles work on strategies to produce a software system A software life cycle models a standardized format for planning organizing, and running [1] II SOFTWARE LIFE CYCLE MODELS 1. System development life cycle 2. Waterfall model. ISSN – 2394-0573 3. 4. 5. 6. 7. 8. 9. Iterative model. V-shaped model. Spiral model. Incremental Method prototyping model The Big Bang Model. System development life cycle III SDLC: Any information system project fallows a logical series of development phases these are known as system development life cycle. SDLC is process creating and altering systems. Planning The goal of planning is to costs, personnel requirements and quality assurance of the software developed .one must know what the problem is before it can be solved. The analyst first task is to prepare state next problem then reviews it with the users for accuracy. All Rights Reserved © 2014 IJEETE Page 100 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM Analysis is a detail study of the various operation performed by a system & their relationships with inside & outside of the system during analysis data is collected on the available files ,decisions points transaction handled by present system .analysis gathers requirements for the system . This stage given detailed study of the needs of the organization. Design The term design describe of find system the process by which it is develop it refers to the technical specification that with be applied in implementing the candidate system it also include the construction of program & program testing. because of some unexpected input values into the system. Changes in the system could affect the software operations. Maintance is continued to bring the new system to standard. Advantage 1. SDLC cycle end of each stage allowing maximum management control. 2. Progress of this system is measurable. 3. SDLC documentation produces the system requirements can be traced back to stated business 4. SDLC requires sign-off requirements. Disadvantage 1. SDLC is Time consuming. Development 2. SDLC never uses never backward loop. Development is concerned with the production of software. The covers a wide range of methodologies and tools created for the purpose. The general approaches for organizing a project into activities. This phase supported management of software development. 3. Software that follows the SDLC program is it encourages stiff implementation instead of creativity. 4. They gave large difficulty responding to changes [3] INTEGRATION AND TESTING IV WATERFALL MODEL This phase is different unit are integrated .integration testing is performed after units testing. the verifying consistency and completeness of modules. Check the validating the performance of the system. Implementation it is concern with user trainer side preparation , file conversion when the candidate system is link to terminals or remote sides the telecommunication network & test of the network along with system are also included under implementation. The waterfall model the common and classic life cycle model which introduced by Winston Royce. In Software Engineering to ensure success of the project. In "The Waterfall" approach, the whole process of software development is divided into separate phases. In Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially. It referred as a linear –sequential life cycle model. The project is right path whether or not to continue then discard software. Following is a diagrammatic representation of different phases of waterfall model Maintenance System definitely undergo changed it when delivered to the customer. Change could happen ISSN – 2394-0573 All Rights Reserved © 2014 IJEETE Page 101 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM All the units developed entire system tested for any faults and failures. Validating their operation and specifications .software is distinguishing attribute of system indicating the degree of excellence. The product is verification in the customer environment and market. Maintenance The sequential phases in Waterfall model are: Requirement Software is always is large system work with requirements for all systems elements the software is essential when software interface with such elements are hardware people and resources .the system is re-engineered and spruced up. The requirement team studies the methodologies of the system. Design In defined the design includes use age of existing components. They represent “how “phase programming languages, application, architecture, algorithms, structures are established. Design describes to implement the requirements. Design phase could be expansive to solve later stage of the software system Implementation The code is generated, the program testing begins. This phase deals with issues of quality, performance, and debuggers. They use testing tools that are made own development operations implementation phase overlap testing phase act as a system whole. Verification ISSN – 2394-0573 There are some short issues are come client environment. To fix some issues patches are released. Also to en some better versions are released. Maintenance is done when changes into customer environment. Maintenance reaches with changing accommodate process. All these phases are cascaded to each other in which progress is seen as flowing steadily downwards (like a waterfall) through the phases. The next phase is started only after the define set of goals are achieved for previous phase and it is signed off, so the name "Waterfall Model". [4] Advantages     This model is simple and easy to use. This model work on series of stage. In this model phases are completed one at a time. Phases do not overlap. Waterfall model works well and understood smaller projects. Disadvantages In this waterfall approach High amounts of risk and uncertainty.  No working software is produced for complex problems.  The model is difficult to change once are prepared  Inflexible partitioning held in software during life cycle.[5] V ITERATIVE MODEL: Iterative model is any combination of both iterative design or iterative method .iterative process describe software process cycles of All Rights Reserved © 2014 IJEETE Page 102 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM activates of software .The key idea behind this cycles to solve problem through iterations .each iterative identify some problem and solve these issues. This method is developing a system through repeated cycles and in smaller part of a time. Iterative involves redesign and implementation to be simple, straightforward, and modular, supporting that stage or task added to project control list. current requirements are reviewed, and changes additions to requirements propose. Decision made whether software will be discarded. Testing Even point will be reached when the requirements are complete and the software can be delivered the testing is done to software is ready according to the requirements of the users. [6] Advantages 1. The model accurate reflects iterative nature of software’s on project with unclear requirements. 2. It is flexible as it incorporates advantage of waterfall and rapid prototyping methods, 3. Good project visibility in the project. 4. The model is a comprehensive and decreases risk in software. Requirement In this phase software are analyzed. The result given requirements phase produces a complete and final specification of requirements. The specification is process establishing what services are required for software. Design & Development In design solution for software is designed which meets requirements they extension of the existing. Describes features and operations in detail, including screen layouts, rules, process diagrams, pseudo code and Documentation. The development phase refers to developed software generation. The first pass is initial development cycle. Life of product stops existing software evolve next generation by sequence of inception, elaboration, construction and transition phase develop a software. Implementation The software is implemented for solving problems. A phase, is software is evaluated, ISSN – 2394-0573 Disadvantages 1. It needs technical expert to solve risk analysis . 2. The model is not understood by non –technical management. 3. In this model each phase is rigid with no overlaps. 4. This model is a complicated model that needs competent professional management. [7] VI V-SHAPED MODEL V- Model means Verification and Validation model. It called V-shaped represent like waterfall model, this cycle is a sequential path of execution of processes. Each phase must complete before next phase begins. Testing emphasize more than waterfall model. Testing procedure is developed in cycle prior any coding done .each phase preceding implementation. It modified U-shaped model. Diagram of V-model: All Rights Reserved © 2014 IJEETE Page 103 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM Coding This is the bottom of V-Shape model. Module design is converted into code by developers. Testing In this phase different unit are integrated than overall system is tested .testing is performed all units of components.[8] Advantage 1. It is very simple and easy to use. The various phases of the V-model are as follows: Requirements BRS and SRS begin cycle model like waterfall model. in this model before development is started, a system test planning is created. The test plan focuses on meeting the functionality specified in the requirements gathering. 2. Each phase deliverables. this model have specific 3. It works welled understood for small projects where requirements are easily handled. 4.high chances for success there than other models due to development of test plans during the cycle process. The high-level design (HLD) Disadvantage Phase focuses a software architecture and design. It provides overview of solution, platform, software and service. Any plan is created this phase as well order to test pieces of the software systems ability to work together. 1. This model is very rigid like other models. 2. Flexibility and adjusting scope is difficult and much more expansive. 3. Model not provide clear path for problems that are found on the testing phase The low-level design (LLD) Phase in which actual software components are designed. It defines the logic for each and every component of the software Class diagram with all methods and relation comes under LLD. Component tests are created in phase as well. 4. The prototypes of software are produced .because developed started in implementation phase.[9] Implementation: The spiral model is same to incremental model. This is a risk-driven process model generator for software’s. Based upon unique risk patterns of a given for software .In development process represented as spiral rather a sequence of activities Implementation phase where all coding takes place. Once coding is complete, the path of execution continues up right side of the V where the test plans developed now put to use. ISSN – 2394-0573 VII SPIRAL MODEL All Rights Reserved © 2014 IJEETE Page 104 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM with backtracking each loop. In which no fixed phases for as specification and design loops in the process .A software repeatedly passes through phases in iterations called spirals in this model. This model combines adding features of prototyping and waterfall model and is advantages for large, complex, and expensive software’s. next prototype thus, comprises development plan, integration plan, and test plan. Evaluation phase This phase allows customer to evaluate output of the software to date before the processing continues to the next spiral. This model is each phases are completed by a review conducted by users. This includes review of all intermediate software, which developed during the phases. Plan for next evaluation and resources required for this phases. [10]. Advantages     Planning Phase All objective are gathered during this phase .special requirements are identified this phase. Each phase of quadrant come with identifying the goals for that process, it determines alternatives, they are possible accomplishing those goals. Risk Analysis: The process is undertaken identify risk and alternate solutions. A prototype is produced at end of risk analysis phase. If any risk found during risk analysis then alternate solutions are implemented. Development process of the software depends on remaining risks. Quadrant develops the final software while considering risks can be occurring. Risk analysis considers time and effort to be devoted to each phase activity such as planning, quality assurance, verification, and testing. Engineering Phase Software is developed in this phase, along with testing point at the end of phase. Hence this phase development and testing is done. A processing phase plans next step and planning for ISSN – 2394-0573 They produced high amount of risk analysis hence, avoidance of Risk enhanced. They Good for large and-critical software’s. Additional requirements are also added at later date. Strong approval and documentation control in this model.. Disadvantages     They Can costly evaluation model to use. Risk analysis require highly specific expertise to solve major problems Spiral model doesn’t specified for small software . software success is highly dependent on risk analysis phase.[11] VIII INCREMENTAL MODEL This model applies linear sequences staggered progress applied. In incremental model whole process is divided into various builds. Multiple development phases take place here, making the cycle a“multi-level” cycle. Cycles are divided up into smaller, more easily managed modules. Each module go through different phases such as requirements, design, implementation and testing phases. Software should break into separate sub phases. Each sub phases are released of the module add function to previous release. The All Rights Reserved © 2014 IJEETE Page 105 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM process continues till complete software is achieved. The software as finished when it satisfies all its requirements . This allows partial utilization of software and avoids a long time This model helps ease traumatic effect introducing a completely new product all at nce[12]. assess impact and risk new features link and create and improve development of model. Implementation Incremental methodology is generally test and debug in implementation phase. relatively smaller changes are made during each increment. This allows targeted and rigorous testing of each element within the overall software. Using the Incremental methodology even after first increment expectation product is ready .This means all phases must be tested and passed. This phase can link Test Cases to Requirements to establish coverage; however, can also use simple approach of testing and all Test Cases directly passed. Testing Requirements and analysis Incremental model usually a short list of requirements that need to be defined and then quickly converted into processing model provides a Requirement Management module that allows create and track requirements. Whether Releases software increments .can easily organized your requirements in the way that give works best for environment. And analysis the software modules. After each increment, regression testing be conducted. During this testing, faulty elements of software can be quickly identified few changes are see single increment. In testing against specific Test Cases , Test Case folders Test Suites can be used . for specific new features .Test cases are executed against different Platforms or Configurations. Test cases can be copied quickly from one cycle to the next for testing process. Advantages   Design  Due to requirement set and design cycle quickly build cases from the requirements so that increment component can easily delivered on time to the client when software design is prepared. allows make easily design That provides functional coverage for design module that you can quickly review As progress and new increments are created design phase is time to  ISSN – 2394-0573 This model Generates working software quickly during software life cycle. This model is more flexible ,less costly to change scope and requirements. It is easier to test and debug during a smaller changing process. This model easy to manage risk , they risky piece identified quickly. Disadvantage  This model Needs good planning , structure and design. Needs a clear and All Rights Reserved © 2014 IJEETE Page 106 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM   complete processing of the whole system before broken down and built incrementally. In this model iteration processing is very rigid and they doesn’t overlap. This model arise problem in architecture .in processing all requirements not gathered up.[13] IX PROTOTYPE MODEL The prototype model is developing a small prototype and followed by mini –waterfall process ,First to gather requirements .then ,first prototype is reviewed in subsequent loops .the team performs further requirements , design , implementations and review .The prototyping approach used requirement gathering in the analysis phase to capture the exact requirement of proposed system. After the requirements are frozen, the remaining phases of the development process needs to executed a complete development of software system. Prototyping is the process of quickly putting together a working software order to test various aspects of design, ideas or features and gathered user feedback. The prototyping serves to clarify models, which gives an idea of the user. A quick design helps in developing the model. Build prototype Information collect from design is modified to form first prototype, which represents the working model of the required software. Engineer product the requirements are completely, they accepts final prototype. The final system is evaluated thoroughly maintenance and for preventing large-scale failures and minimizing downtime. Refining prototype the user evaluates prototype and not satisfied, the current prototype is refined to requirements. a new prototype is developed with information provided by the user. The new prototype is evaluated same as previous prototype. This process continues until all the requirements specified by the user . user is satisfied with the new prototype, a final product is developed on the basis of final prototype. Customer evaluation the proposed system is presented by user for evaluation prototype to checks strengths and weaknesses such as something is to added or removed. Comments and suggestions are collected from the evolution and provide by the user. Requirements Advantages A model begins with requirements and requirements of system are defined and accurate in details. The user is interviewee give order to know the requirements of the software. Quick design requirements are done , a quick design for the software is created. It is not a write design and includes only the important operation of system, ISSN – 2394-0573     This model is very useful and give good result for gathering requirements. This. model Helps in reducing risks link with software. Errors are detected faster. Provides a model the process, enabling assessment and increasing user's confidence. Disadvantages All Rights Reserved © 2014 IJEETE Page 107 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM 1. Leads implementing and repairing way of building software. Advantage  This is a simple and good learning model. 2. this methodology may increase complexity of the software may expand beyond plans.  Little and no planning required this model 3.Incomplete application may cause not used full software was designed 4.this model is very time consuming and expensive [14]   Easy to manage and easy to create in some time. Very few resources required and not heavy work load Disadvantage X BIG BANG MODEL Big bang model focus all possible resources in software .This model is ideal for small projects with one or two developers working together. also useful for academic projects. The Big- Bang Model like a cosmological model. it named after namely one which we put huge amounts of matter are put together, the outcome is either perfect software or not. The beauty of model is simple There is made with little planning, scheduling, or formal development process. All the effort of this model is spent developing and writing code. This model approach by small projects, since the developer does requirement analysis, writes code and develops software. Also developers need to understand requirements and develop the software , there is no formal testing phase this model, if testing occurs before release final product. The lack of a formal testing phase is cause for massive failure ratio this Model[15]     Very High risk and uncertainty. Can move to very expensive if requirements are misunderstood Not a good model complex and object-oriented projects. Poor model are more required for long and ongoing projects.[16] CONCLUSION IN processing life cycle models Decide development Process They Work on model Strategies . In this paper various life cycles studied like SDLC, Waterfall model., Iterative model, V-shaped model, Spiral model, Incremental Method, prototyping model ,The Big Bang Model. We overview Different models methodologies and defined advantages and disadvantages. REFERENCES 1. Retrieved 17 July 2014 Selecting A Development Approach 2. FOLDOC.Retrieved 2013-06-14. "Systems Development Life Cycle from". 3. Software Development Life Cycle (SDLC), Power Point, – Powered by Google Docs 4. Benington, Herbert D. (1 October 1983). "Production of Large Computer Programs".IEEE Annals of the History of ISSN – 2394-0573 All Rights Reserved © 2014 IJEETE Page 108 International Journal of Exploring Emerging Trends in Engineering (IJEETE) Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM Computing (IEEE Educational Activities Department) 5 (4): 350– 361. doi:10.1109/MAHC.1983.10102. Retrieved 2011-03-21. 5. Office of Naval Research, Dept. of the Navy, OCLC 10794738 United States. Navy Mathematical Computing Advisory Panel. (29 June 1956),Symposium on advanced programming methods for digital computers, [Washington, D.C.]: 6. Dr. Alistair Cockburn (May 2008). "Using Both Incremental and Iterative Development". STSC CrossTalk (USAF Software Technology Support Center) 21 (5): 27–30. ISSN 21601593. Retrieved 2011-07-20 7. Craig Larman, Victor R. Basili (June 2003). "Iterative and Incremental Development: A Brief History". IEEE Computer. doi:10.1109/MC.2003.1204375. IS SN 0018-9162. Retrieved 2009-01-10. 8. Clarus Concept of Operations. Publication No. FHWA-JPO-05-072, Federal Highway Administration (FHWA), 2005 9. Kevin Forsberg and Harold Mooz, “The Relationship of System Engineering to the Project Cycle,” in Proceedings of the First Annual Symposium of National Council on System Engineering, October 1991: 57–65. 10. "A Spiral Model of Software Development and Enhancement", ACM SIGSOFT Software Engineering Notes, ACM, 11(4):14-24, August 1986 11. Pressman, Roger (2010). Software Engineering: A Practitioner's Approach. Boston: McGraw Hill. pp. 41– 42. ISBN 9780073375977. 12. Smith MF Software Prototyping: Adoption, Practice and Management. McGraw-Hill, London (1991). ISSN – 2394-0573 13. Dewar, Robert B. K.; Fisher Jr., Gerald A.; Schonberg, Edmond; Froelich, Robert; Bryant, Stephen; Goss, Clinton F.; Burke, Michael (November 1980). "The NYU Ada Translator and Interpreter" 14. ACM SIGPLAN Notices - Proceedings of the ACM-SIGPLAN Symposium on the Ada Programming Language 15 (11): ACM SIGPLAN Notices 15. Jseph Silk (2009). Horizons of Cosmology. Templeton Press. p. 208. Jseph Silk (2009) 16. Simon Singh (2005). Big Bang: The Origin of the Universe. Harper Perennial. p. 560. Simon Singh (2005). Big Bang AUTHOR’S BIBLIOGRAPHY Nancy Bindal received his B.Tech. degree in Information Technology Engineering from JIET , Jind, Haryana in 2011 and M.Tech in CSE from R.N.C.E.T, Madlauda, Panipat, Haryana in 2014 , Currently working as Assistant Professor in MMEC , Mullana , Haryana. Aanchal mehta had done B.TECH(CSE) From Shri sukhmani Institute of Engineering and Technology Derabassi and Pursuing M.TECH(CSE)From Maharishi Markandeshwar University Mullana in India . All Rights Reserved © 2014 IJEETE Page 109