Comparison study between Traditional and Object- Oriented Approaches to Develop all projects in Software Engineering
|
|
|
- Rudolf Fletcher
- 10 years ago
- Views:
Transcription
1 Comparison study between Traditional and Object- Oriented Approaches to Develop all projects in Software Engineering Nabil Mohammed Ali Munassar PhD Scholar in Computer Science & Engineering Jawaharlal Nehru Technological University Hyderabad Kuktapally, Hyderabad , Andhra Pradesh, India Dr. A. Govardhan Professor of Computer Science - Engineering & School of Information Technology Jawaharlal Nehru Technological University Hyderabad Kuktapally, Hyderabad , Andhra Pradesh, India Abstract Here in this paper we explore comparative study to analyze the performance differences between Traditional software development models and Object-Oriented approach. Traditional approaches like waterfall, spiral lack flexibility to deal with object oriented models. The approach of using object oriented techniques for designing a system is referred to as object oriented design. Object oriented development approaches are best suited to projects that will imply systems using emerging object technologies to construct, manage, and assemble those objects into useful computer applications. Object oriented design is the continuation of object- oriented analysis, continuing to center the development focus on object modeling techniques. Keywords-Software Engineering, Traditional Approach, Object- Oriented Approach, Analysis, Design, Deployment. I. INTRODUCTION All software, especially large pieces of software produced by many people, should be produced using some kind of methodology. Even small pieces of software developed by one person can be improved by keeping a methodology in mind. A methodology is a systematic way of doing things. It is a repeatable process that we can follow from the earliest stages of software development through to the maintenance of an installed system. As well as the process, a methodology should specify what we re expected to produce as we follow the process. A methodology will also include recommendation or techniques for resource management, planning, scheduling and other management tasks. Good, widely available methodologies are essential for a mature software industry. A good methodology addresses the following issues: Planning, Scheduling, Resourcing, Workflows, Activities, Roles, Artifacts, Education. There are a number of phases common to every development, regardless of methodology, starting with requirements capture and ending with maintenance. During the last few decades a number of software development models have been proposed and discussed within the Software Engineering community. With the traditional approach, you re expected to move forward gracefully from one phase to the other. With the modern approach, on the other hand, you re allowed to perform each phase more than once and in any order. [1, 10]. The rest of the paper organized as fallow Section II explored the procedural and object oriented software development models. Section III revealed the research methodology to conduct comparative study, in section IV the analysis of the comparative study carried out. Section V contains conclusion that fallowed by references. II. SOFTWARE DEVELOPMENT MODELS A. Structural or Procedural software development models In structural software development models such as water fall, initially the project team analyses, then determining and prioritizing business requirements and needs. Next, in the design phase business requirements are translated into IT solutions, and a decision taken about which underlying technology i.e. COBOL, Java or Visual Basic, etc. etc. is to be used. Once processes are defined and online layouts built, code implementation takes place. The next stage of data conversion evolves into a fully tested solution for implementation and testing for evaluation by the end-user. The last and final stage involves evaluation and maintenance, with the latter ensuring everything runs smoothly. The systems development life cycle (SDLC) can be defined as a process of understanding how an information system can support business needs or requirements of an organization, modeling the business processes, designing the systems components, and building the system. A systems development project thus goes through a sequence of four fundamental phases: planning, analysis, design, and implementation. Each of these phases also consists of a series of steps or activities that rely on some techniques to produce required deliverables. Even though all projects cycle through some common phases or activities, but how they are approached by the systems development group can be different the project team might move through the phases and steps logically, consecutively, ly, or iteratively [5]. B. Object Oriented software development models The object-oriented (OO) approach follows an iterative and approach to systems development. The systems development life cycle is 3022
2 viewed as consisting of several increments or phases: inception, elaboration, construction, and transition [5]. In each increment or phase, the developers move through the activities of gathering requirements, analyzing the requirements, designing the system, implementing the design, and testing the system. See Figure 2. Thus the phases of the traditional systems development approach do not match with those of the OO life cycle; but in each increment, all phases of the traditional life cycle (requirements, analysis, design, implementation, testing) are visited iteratively until the developers are satisfied. However, there are times when one activity predominates over the other four causing the systems development effort to move from the inception to elaboration, then elaboration to construction, and from construction to transition. The object-oriented approach uses a set of diagramming techniques known as the Unified Modeling Language or UML [1]. It focuses on the three architectural views of a system: functional, static, and dynamic. The functional view describes the external behavior of the system from the perspective of the user. Use cases and use-case diagrams are used to depict the functional view. The static view is described in terms of attributes, methods, classes, relationships, and messages. Classresponsibility-collaboration (CRC) cards, class diagrams, and object diagrams are used to portray the static view. The dynamic view is represented by sequence diagrams, collaboration diagrams, and state charts. All diagrams are refined iteratively until the requirements of the information system are fully understood. Finally, the information system is developed through a combination of traditional relational database and object-oriented programming rather than true object-oriented methodology for both programming and database. III. RESEARCH METHODOLOGY FALLOWED FOR PERFORMANCE ANALYSIS OF THE TRADITIONAL OBJECT ORIENTED SOFTWARE DEVELOPMENT PROCESS MODELS Software development is a highly complex field with countless variables impacting the system. All software systems are imperfect because they cannot be built with mathematical or physical certainty. Bridge building relies on physical and mathematical laws. Software development, however, has no laws or clear certainties on which to build. As a result, software is almost always flawed or sub-optimized. The author s study will provide the opinion of software developers on various aspects of developing a software development model such as: development time, Project complexity, Implementation challenges, Extensive and accurate documentation, Return on investment for minimal initial capital expense etc. Almost no software system is so simple that the development can be entirely scripted from beginning to end. The inherent uncertainty and complexity in all software projects requires an adaptive development plan to cope with uncertainty and a high number of unknown variables. 1 Overview The basic objective of this section is concerned about: To study and analysis of different software development models which are being used by the software developers in software organizations. As there are a lot many models, which are being used like Code and fix model, model, V- process model, model, Spiral model and RAD model etc. To decide which model is more appropriate and suitable with respect to different software metrics, development time, complexity, implementation challenges, return-oninvestment with minimal initial capital expenses, development cost etc. In order to find out the above mentioned software metrics research methodology was designed which is explained in the next section. A software development process is a structure imposed on the development of a software product. There are several models for such processes, each describing approaches to a variety of tasks or activities that take place during the process. The most important aspect of a software development is its development, as it undergoes a number of development stages (software development life cycle) to reach to its final shape. The development steps, which need to be followed for developing software, project are- Project Planning, feasibility study, Requirement analysis, design etc. However the most important aspect of software development is the system design. There are several different approaches to software development, much like the various views of political parties toward governing a country. Some take a more structured, engineering-based approach to developing business solutions, whereas others may take a more approach, where software evolves as it is developed piece-by-piece. Most methodologies share some combination of the following stages of software development: market research, analyzing the problem, implementation of the software, testing the software, deployment, maintenance and bug fixing [1]. 2 Methodologies In order to collect data from different organizations the author used two methods primary as well as secondary. The primary method will be collected through the close-end structured questionnaire. The secondary method will be collected by studying the documents from various organizations, established procedures, guidelines etc The First method selected to reach to goal will be questionnaires to measures the impact of lifecycles on the factors that influence the outcomes of software project. Questionnaire was designed on various aspects like software metrics, development time, complexity, implementation challenges, return-on-investment with minimal initial capital expenses, development cost etc. As a complement of the comparative study analysis, interviews of project managers working in different companies were conducted to understand what type of methodologies are in use and what the most relevant aspects were found in developing software models. 3 Scalability of the information collection approach Volunteers spent major part of their time in developing software (60%), and the next major part of time is spent as Technical Advisors in organizations. 3023
3 Most of volunteers have more than ten years working experience, whereas while only small number of volunteers have experience below six months. Most of the volunteer are from the commercial sector i.e. (65%) whereas volunteers in public sector, academic and research sector others are 20%, 10% and 5%. Most volunteers spent major part of their time in developing software; this suggests that the data collected through questioners can be accepted with confidence. 4 Findings Table 1, shows the models and features opted to compare different models, which may influence the selection of lifecycle models. Each of the models has different response to these features as discussed in fallowing sections. Prototype Spiral Iterative Object Oriented TABLE (1.A) MODELS OPTED FOR COMPARATIVE STUDY TABLE (1.B) FEATURES OPTED FOR COMPARISON Requirement Specifications Understanding Requirements Cost Guarantee of Success Resource Control Cost Control Simplicity Risk Involvement Expertise Required Changes Incorporated Risk Analysis User Involvement Overlapping Phases Flexibility 5 Survey Questioner to verify the performance of models listed in table 1a. a) Code and Fix Identifying characteristics: Very limited or no specifications, Software developed in an ad-hoc manner b), also known as: Classical model or variant such as 'V-model' Identifying characteristics: Detailed documents produced during each 'phase', clearly defined phases are executed in turn with little or no overlap between phases, there is a single software release use this model, how long do they take to complete? c) Iterative, also known as 'Spiral' Identifying characteristics: Same set of ordered 'phases' (an 'iteration') repeated multiple times, each iteration, addresses a set of identified risks, System released at the end of last iteration use this model, how long do they take to complete? A week or less d) Incremental, also known as 'Modular Development' or 'Staged Delivery' Identifying characteristics: Software delivered in a set number of pre-planned releases, each release builds on the previous release, typically by adding a number of enhanced features e), also known as 'Evolutionary ' or 'throw away ' Identifying characteristics: 'Mock up' produced for evaluation purposes, 'Mock up' likely to be used to, determine requirements or to validate a specific design, 'Mock up' typically developed quickly f) Transformational also known as 'Operational Specification' (for example 'Z') or '4th Generation Technique' Identifying characteristics: Code is automatically created from a formal specification with no intermediate detailed design steps 6 Questionnaire to evaluate impact of software development process models on SDLC The scenarios below are designed to understand why particular models are chosen in specific situations. 3024
4 Each scenario has been designed to test how a specific single attribute influences lifecycle choice. (we acknowledge that real world projects are invariably a tradeoff between many different attributes). The scenarios are applicable to any type of software task or project - ranging from say a simple bug fix through to a very large project. The examples have been chosen to be understandable rather than representative and should not be taken literally! 1. Q. A solution will take a considerable time to develop. For example, a multi-million lines-of-code solution or one that takes multi-person years to complete. 2. Q. A solution that is particularly complex, difficult or challenging to implement, for example, using a very complex or novel algorithm to solve a 'difficult' problem. 3. Q Where the solution has to be verified correct or exhibit a very low number of errors. For example, development of a solution in which human life would be in danger if the system should fail unexpectedly. 4. Q. A task in which the solution requirements are expected to change on a regular basis. For example, developing a solution for an 'emerging market' were the solution requirements are not initially known and may change as the market matures. 5. Q. A task for which the client requires extensive and accurate documentation. Typically, developing a solution for a client with a strict quality management system (such as ISO 9001) 6. Q. A task for which the only staff available are those with development experience - no other managerial or support staff are available. (The experience level of available developers is spread equally from novice to experienced professional). For example, this may be an internal development projects only 7. Q. A task for which many multi-skilled personnel are available, but all staff are considered novices in their area of expertise. 8. Q. The client requires an unusually fast return-oninvestment for minimal initial capital expense. For example, a start-up company with limited capital investment. 7 Metrics used to evaluate Software development process models Shortfall is a measure of how far the operational system, at any time t, is from meeting the actual requirements at time t. This is the attribute most people are referring to when they ask 'does this system meet my needs?' Lateness is a measure of the time that elapses between the appearance of a new requirement and its satisfaction. Of course, recognizing that new requirements are not necessarily implemented in the order in which they appear, lateness actually measures the time delay associated with achievement of a level of functionality. Adaptability is the rate at which the software solution can adapt to new requirements, as measured as the slope of the solution curve. The longevity is the time a system solution is adaptable to change and remains viable, i.e. the time from system creation through the time it is replaced. Inappropriateness is the shared area between user needs and the solution curves. Thus captures the behavior of shortfall over time. The ultimately 'appropriate' model would exhibit a zero area meaning that new requirements are satisfied instantly. IV. COMPARATIVE STUDY AND RESULTS DISCUSSION A. Summary of Lifecycle impact on Selected Cost Drivers TABLE 2: Comparison report 1. Product Size Documentation overhead suggests more suitable for larger projects. Unknown although likely to be similar to. Can degenerate into Code and Fix under some circumstances. Less suitable for larger projects. May produce less code overall (compared to ), but design may be less coherent and harder to integrate. There is no formal communication between teams which suggests it will not scale well in large projects. 2. Software Problem Complexity Complexity is tackled in an orderly and structured manner through separate well defined activities. Unknown although likely to be similar to. Increased emphasis on extensible architecture. Approach allows prototype solutions can be evaluated and the specification altered. Increased chance of incoherent designs (compared to ) and undocumented 'compromises' being made. Difficult to assess, although there is a lack design and limited testing. 3. Required Quality Highly structured approach, while phase documentation verification reduces chances of downstream errors (where errors are much more costly to correct). Similar to, although can be hard to ly add new functionality without de-stabilizing existing functionality. Undocumented compromises may affect quality however release QA activities should detect this. Problems discovered late due to lack of specification, design and limited testing leading to higher costs and chances of regression fault. 3025
5 Incremental Incremental 4. Requirements Volatility Process discourages upstream changes since they become exponentially more expensive (due to rework) as project progresses. Process can start without complete requirements (not ideal), but requirements should remain relatively static within a stage (to avoid potential for ad-hoc changes). Can be used to resolve ambiguous or unknown requirements or specifications. Improves quality and accuracy of specification reducing cost of downstream changes. Requirements can be changed as required since there are none! Ultimately, may not match needs as there is no specification 5. Amount of documentation Detailed documentation is primary method for knowledge transfer between phases. All documentation subject to validation and verification activities. Unspecified - depends on project, although likely to be similar to. Likely to produce less documentation (although documentation process can be added if required). No documentation required - left entirely up to developer. 6. Experience of Personnel Can be used with weak or inexperienced staff since ordered structure helps to minimize wasted effort. Similar to, but requires skilled multi-disciplined staff to manage stage release inter-dependencies. Objective and scope setting with prototype design, implementation and evolution through feedback suggest experienced personnel are required. Anyone can use it - no management experience required. 100% of effort focused on coding (and fixing). 7. Availability of Personnel for Project Project can be planned initially allowing multi-skilled / experienced staff to be used only as required - documentation level helps knowledge transfer and training. Experienced management and developers required to schedule and resolve dependencies between increments. May require skilled management to determine prototype objectives or scope. Developer must be able to interpret and respond to customer feedback appropriately. Only developer experience required - no management experience. 8. Project Duration No usable software until the very end of the project - although documentation may have some tangible value. Incremental delivery, allowing staged payment and providing faster return on investment. Users see progress in form of prototype very early. However, customer may object to paying for a redevelopment once they see a 'working' prototype. No means of assessing progress, identifying risk, or measuring quality. Software may be delivered or not. 9. Lifecycle Usage based on Task Duration Process Model less than a week Over a week to Month Over a month to 3 months Over 3 months to Year Over an Year 48% 17% 21% 7% 7% 6% 6% 9% 46% 33% Incremental 0% 11% 14% 50% 25% 0% 14% 34% 33% 19% B. Comparison report and discussion on features impact: Feature Requirement Specifications Understanding Requirements Model Beginning Well Understood Prototype Model Spiral Model Iterative Model Frequently Changed Not Well understood Object Oriented Model (Combination of and iterative) Beginning Beginning Frequently Changed Well Understood Not Well understood Well understood Cost Low High Intermediate Low Peak Guarantee of Success Low Good High High Peak Resource Control Yes No Yes Yes No Cost Control Yes No Yes No Sure Simplicity Simple Simple Intermediate Intermediate Complex Risk Involvement High High Low Intermediate Dependent of requirement changes Expertise Required High Medium High High Obvious in all phases Changes Incorporated Difficult Easy Easy Easy depends on resource experts availability 3026
6 Risk Analysis User Involvement Only at beginning Only at beginning No Risk Analysis Yes No Modular approach High High Intermediate Dependent of requirement changes Overlapping Phases No Yes Yes No Dependant of requirement changes Flexibility Rigid Highly Flexible Flexible Less Flexible Peak 1. Requirement Specification Requirement specifications are needed just at the beginning of the Wa11erfall model, Spiral model and Iterative model, however for Prototype model and Object oriented model process the requirement specifications are frequently changed during the development process [2]. 2. Understanding Requirements model, spiral model and Object oriented model needs well understanding of the requirements, while prototype model and Iterative model do not need good understanding of the requirements [3]. 3. Cost Data was obtained for a cost driver value of very high quality (expressed as very low number of errors or errors threatens human life ). The data shows that and Iterative models are used for projects, which have low cost requirements for software development, where as for projects with intermediate cost Spiral model is suitable, while the model is suitable for projects with more cost than waterfall model and Spiral model. While the Object oriented process model leads to very high cost [4]. 4. Guarantee of Success As per the research work if we use waterfall model for software projects the guarantee of success is very low, but on the other hand if we use Prototype model the guarantee of success is good, but again spiral model and Iterative model have intermediate guarantee of success between good and high. However out of all the five models under taken for this study, the model have very high guarantee of success. 5. Resources Control From the research work, it is concluded that prototype model and model do not have their control over resources, but on the contrary waterfall model, spiral model and iterative models have control over resources. 6. Cost Control Data was obtained for a cost driver value of range of development experience. The model and Iterative model are only models, which don t have their cost control features, which make them inappropriate. The data values for the, spiral and models are also supported by this study, because they have cost control feature, which make them best compared to others, as cost control factor is important for all software projects. C. Comparison of percentage of failures occurred in different phases of the development models We can observe in Graph 1 that traditional software development model such as waterfall model is not feasible on large projects with frequent requirement specification changes Graph1: The comparison report: Failures of waterfall and Object Oriented Models on large project with frequent changes requirement specification Graph 2: deviations / cost effecting development stages of structural model (spiral) and object oriented model on small size project with no changes in requirement specification during development process. In graph 2: we can observe that the traditional models called spiral and object oriented model committing equal efficiency in majority of the development phases as in the farm of integration cost, deployment cost and maintenance cost the Object oriented model is too high when compared to spiral model. Hence we can argue that the traditional software development models such as waterfall, spiral, models are feasible to develop small size projects with stable requirement specifications. 3027
7 V. CONCLUSION After completing this paper, it is concluded that as with any technology or tool invented by human beings, all SE methodologies have limitations [9], The software engineering development has two ways to develop the projects that: structural or procedural approach and object-oriented approach, the structural or procedural models are feasible in terms of integration, deployment and maintenance but limited to small projects with stable requirement specification. These structural or procedural approaches lead software developers to focus on Decomposition of larger algorithms into smaller ones. The object-oriented approach to software development has a decided advantage over the traditional approach in dealing with complexity, which is common preference of large projects with frequent changes in requirement specification and the fact that most contemporary languages and tools are object-oriented. In future it is recommended to conduct research to design cross models of the existing that includes the features of traditional approach and object-oriented approach and finding updates for some traditional approaches to improve their robustness and intensifying the object-oriented approach to support the development of small scale projects under object oriented model. REFERENCES [1] Mike O Docherty, "Object-Oriented Analysis and Design Understanding System Development with UML 2.0", John Wiley & Sons Ltd, England, [2] Molokken-Ostvold et.al, A comparison of software project overruns - flexible versus sequential development models, Volume 31, Issue 9, Page(s): , IEEE CNF, Sept [3] Boehm, B. W. A spiral model of software development and enhancement, ISSN: , Volume: 21, Issue: 5, on page(s): 61-72, May [4] Abrahamsson P. et.al, Agile Software Development Methods: Review and Analysis, ESPOO, VTT Publications 478, VTT Technical Research Centre of Finland. fi/pdf/publications/2002/p478.pdf, [5] Dennis, A., Wixom, B. H. and Tegarden, D., Systems Analysis and Design: An Object-Oriented Approach, John Wiley & sons, New York, [6] Roger S. Pressman, Software Engineering a practitioner s approach, McGraw-Hill, 5th edition, [7] M M Lehman, Process Models, Process Programs, Programming Support, ACM, 1987 [8] Tim Korson and John D. McGregor, Understanding Object-Oriented: A Unifying Paradigm, ACM, Vol. 33, No. 9, 1990 [9] Li Jiang and Armin Eberlein, Towards A Framework for Understanding the Relationships between Classical Software Engineering and Agile Methodologies, ACM, 2008 [10] Luciano Rodrigues Guimarães and Dr. Plínio Roberto Souza Vilela, Comparing Software Development Models Using CDM, ACM, 2005 Nabil Mohammed Ali Munassar Dr.A.Govardhan AUTHORS Was born in Jeddah, Saudi Arabia in He studied Computer Science at University of Science and Technology, Yemen from 1997 to In 2001 he received the Bachelor degree. He studied Master of Information Technology at Arab Academic, Yemen, from 2004 to Now he Ph.D. Scholar in CSE at Jawaharlal Nehru Technological University (JNTU), Hyderabad, A. P., India. He is working as Associate Professor in Computer Science & Engineering College in University Of Science and Technology, Yemen. His areas of interest include Software Engineering, System Analysis and Design, Databases and Object Oriented Technologies. Received Ph.D. degree in Computer Science and Engineering from Jawaharlal Nehru Technological University in 2003, M.Tech. from Jawaharlal Nehru University in 1994 and B.E. from Osmania University in He was working as a Principal of Jawaharlal Nehru Technological University, Jagitial. He has published around 110 papers in various national and international Journals/conferences. His research of interest includes Databases, Data Warehousing & Mining, Information Retrieval, Computer Networks, Image Processing, Software Engineering, Search Engines and Object Oriented Technologies 3028
Comparison between Traditional Approach and Object-Oriented Approach in Software Engineering Development
Comparison between Traditional Approach and Object-Oriented Approach in Software Engineering Development Nabil Mohammed Ali Munassar 1 PhD Student 3 rd year of Computer Science & Engineering Jawaharlal
A Comparison Between Five Models Of Software Engineering
94 A Comparison Between Five Models Of Software Engineering Nabil Mohammed Ali Munassar 1 and A. Govardhan 2 1 Ph.D Student of Computer Science & Engineering Jawahrlal Nehru Technological University Kuktapally,
A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.
Processing Models Of SDLC Mrs. Nalkar Sanjivani Baban Asst. Professor, IT/CS Dept, JVM s Mehta College,Sector 19, Airoli, Navi Mumbai-400708 [email protected] Abstract This paper presents an
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, [email protected] ABSTRACT In recent years, there has been a surge of
A COMPARISON BETWEEN DIFFERENT TYPES OF SOFTWARE DEVELOPMENT LIFE CYCLE MODELS IN SOFTWARE ENGINEERING
A COMPARISON BETWEEN DIFFERENT TYPES OF SOFTWARE DEVELOPMENT LIFE CYCLE MODELS IN SOFTWARE ENGINEERING Mr. Ashish Kumar Gupta Assistant Professor, Dept. of C.S.E., I.T.S. Engineering College, Greater Noida,
INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal
INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal Research Article ISSN 2277 9140 ABSTRACT Analysis and tabular comparison
How To Model Software Development Life Cycle Models
Various Software Development Life Cycle Models Sahil Jindal, Puneet Gulati, Praveen Rohilla Dronacharya College of Engineering, India Abstract:An SDLC model is a conceptual framework describing different
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality
What is a life cycle model?
What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each
A Comparative Study of Different Software Development Life Cycle Models in Different Scenarios
ISSN: 2321-7782 (Online) Volume 1, Issue 5, October 2013 International Journal of Advance Research in Computer Science and Management Studies Research Paper Available online at: www.ijarcsms.com A Comparative
TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.
CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping
A Survey of Software Development Process Models in Software Engineering
, pp. 55-70 http://dx.doi.org/10.14257/ijseia.2015.9.11.05 A Survey of Software Development Process Models in Software Engineering Iqbal H. Sarker 1, Faisal Faruque 1, Ujjal Hossen 2 and Atikur Rahman
A Comparison between Five Models of Software Engineering
International Journal of Research in Information Technology (IJRIT) www.ijrit.com ISSN 2001-5569 A Comparison between Five Models of Software Engineering Surbhi Gupta, Vikrant Dewan CSE, Dronacharya College
Elite: A New Component-Based Software Development Model
Elite: A New Component-Based Software Development Model Lata Nautiyal Umesh Kumar Tiwari Sushil Chandra Dimri Shivani Bahuguna Assistant Professor- Assistant Professor- Professor- Assistant Professor-
Software Development Life Cycle & Process Models
Volume 1, Issue 1 ISSN: 2320-5288 International Journal of Engineering Technology & Management Research Journal homepage: www.ijetmr.org Software Development Life Cycle & Process Models Paritosh Deore
Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology
Process Methodology for Wegmans Deli Kiosk Version 1.0 Prepared by DELI-cious Developers Rochester Institute of Technology September 15, 2013 1 Table of Contents 1. Process... 3 1.1 Choice... 3 1.2 Description...
ASSESSMENT OF SOFTWARE PROCESS MODELS
ASSESSMENT OF SOFTWARE PROCESS MODELS Akhilesh Research Scholar, Department of Computer Science, Manav Bharti University, Solan (H.P.) ABSTRACT The field of software engineering is related to the development
(Refer Slide Time: 01:52)
Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This
Umbrella: A New Component-Based Software Development Model
2009 International Conference on Computer Engineering and Applications IPCSIT vol.2 (2011) (2011) IACSIT Press, Singapore Umbrella: A New Component-Based Software Development Model Anurag Dixit and P.C.
COMPARISON OF VARIOUS SDLC MODELS
COMPARISON OF VARIOUS SDLC MODELS SADAF ATEEQ M.TECH in dept of CSE from INTEGRAL UNIVERSITY MR. MOHAMMAD SHUAIB Department of CSE from INTEGRAL UNIVERSITY ABSTRACT There are various SDLC (Software Development
To introduce software process models To describe three generic process models and when they may be used
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
Evolving a Ultra-Flow Software Development Life Cycle Model
RESEARCH ARTICLE International Journal of Computer Techniques - Volume 2 Issue 4, July - Aug Year Evolving a Ultra-Flow Software Development Life Cycle Model Divya G.R.*, Kavitha S.** *(Computer Science,
6. Software Lifecycle Models. A software lifecycle model is a standardised format for planning organising, and running a new development project.
6. Software Lifecycle Models A software lifecycle model is a standardised format for planning organising, and running a new development project. Hundreds of different kinds of models are known and used.
International Journal of Advanced Research in Computer Science and Software Engineering
ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: A Comparative Analysis of Different types of Models in Software
The most suitable system methodology for the proposed system is drawn out.
3.0 Methodology 3.1 Introduction In this chapter, five software development life cycle models are compared and discussed briefly. The most suitable system methodology for the proposed system is drawn out.
Principles of Software Engineering: Software Methodologies. COSI 120b, Spring 2005
Principles of Software Engineering: Software Methodologies COSI 120b, Spring 2005 Overview What are methodologies? The methodologies Traditional Incremental Evolutionary Other Conclusions Way Forward What
Classical Software Life Cycle Models
Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process
Software Development Life Cycle
4 Software Development Life Cycle M MAJOR A J O R T TOPICSO P I C S Objectives... 52 Pre-Test Questions... 52 Introduction... 53 Software Development Life Cycle Model... 53 Waterfall Life Cycle Model...
ABHINAV NATIONAL MONTHLY REFEREED JOURNAL OF RESEARCH IN SCIENCE & TECHNOLOGY www.abhinavjournal.com
SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC) ANALYTICAL COMPARISON AND SURVEY ON TRADITIONAL AND AGILE METHODOLOGY Sujit Kumar Dora 1 and Pushkar Dubey 2 1 Programmer, Computer Science & Engineering, Padmashree
Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci
Software Engineering Software Development Process Models Lecturer: Giuseppe Santucci Summary Modeling the Software Process Generic Software Process Models Waterfall model Process Iteration Incremental
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
Explore 10 Different Types of Software Development Process Models
Explore 10 Different Types of Software Development Process Models S.Thulasee Krishna 1,Dr. S.Sreekanth 2,K.Perumal 1, K.Rajesh Kumar Reddy 1 1 Dept of CSE Kuppam Engineering College, Kuppam, 2 Dept of
A Process Model for Software Architecture
272 A Process Model for Software A. Rama Mohan Reddy Associate Professor Dr. P Govindarajulu Professor Dr. M M Naidu Professor Department of Computer Science and Engineering Sri Venkateswara University
Lecture Objectives. Software Life Cycle. Software Engineering Layers. Software Process. Common Process Framework. Umbrella Activities
Software Life Cycle Lecture Objectives What happens in the life of software To look at the life cycle of a software To understand the software process and its related elements To relate to the different
Software Project Models
INTERNATIONAL JOURNAL OF TECHNOLOGY ENHANCEMENTS AND EMERGING ENGINEERING RESEARCH, VOL 1, ISSUE 4 135 Software Project Models Abhimanyu Chopra, Abhinav Prashar, Chandresh Saini [email protected],
IT3205: Fundamentals of Software Engineering (Compulsory)
INTRODUCTION : Fundamentals of Software Engineering (Compulsory) This course is designed to provide the students with the basic competencies required to identify requirements, document the system design
Software Development Life Cycle Models- Comparison, Consequences
Software Development Life Cycle Models- Comparison, Consequences Abstract- Software Development Life Cycle is a well defined and systematic approach, practiced for the development of a reliable high quality
International Journal of Advance Research in Computer Science and Management Studies
Volume 2, Issue 12, December 2014 ISSN: 2321 7782 (Online) International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online
Chapter 4 Software Lifecycle and Performance Analysis
Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and
Agile Projects 7. Agile Project Management 21
Contents Contents 1 2 3 Agile Projects 7 Introduction 8 About the Book 9 The Problems 10 The Agile Manifesto 12 Agile Approach 14 The Benefits 16 Project Components 18 Summary 20 Agile Project Management
The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)
The Software Process Xiaojun Qi 1 The Unified Process Until recently, three of the most successful object-oriented methodologies were Booch smethod Jacobson s Objectory Rumbaugh s OMT (Object Modeling
Software Engineering. What is a system?
What is a system? Software Engineering Software Processes A purposeful collection of inter-related components working together to achieve some common objective. A system may include software, mechanical,
Test Cases Design for Software Database Provisioning Development
Test Cases Design for Software Database Provisioning Development Sunguk Lee Research Institute of Industrial Science and Technology Pohang, Gyeongbuk, South Korea [email protected] Abstract This paper
Custom Software Development Approach
Custom Software Development Approach Our approach to custom software development combines benefits from several standard development process models. We tend to have a well-defined, predictable and highly
Life Cycle Models. V. Paúl Pauca. CSC 331-631 Fall 2013. Department of Computer Science Wake Forest University. Object Oriented Software Engineering
Life Cycle Models V. Paúl Pauca Department of Computer Science Wake Forest University CSC 331-631 Fall 2013 Software Life Cycle The overall framework in which software is conceived, developed, and maintained.
Basic Unified Process: A Process for Small and Agile Projects
Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.
Software Quality and Assurance in Waterfall model and XP - A Comparative Study
Software Quality and Assurance in Waterfall model and XP - A Comparative Study Dr. Sana a Jawdat Khalaf [email protected] Dr. Mohamed Noor Al-Jedaiah [email protected] Abstract: -Dealing with
AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT
AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT Shivangi Shandilya, Surekha Sangwan, Ritu Yadav Dept. of Computer Science Engineering Dronacharya College Of Engineering, Gurgaon Abstract- Looking at the software
CS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development
Keywords Software Engineering, Software cost, Universal models. Agile model, feature of software projects.
Volume 4, Issue 6, June 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Comparative Analysis
Rapid Development & Software Project Survival Guide Steve McConnell Dave Root (Developed with Mel Rosso-Llopart)
Lifecycle Planning Rapid Development & Software Project Survival Guide Steve McConnell Dave Root (Developed with Mel Rosso-Llopart) Version 1.4 David Root, 2005, all rights reserved 1 Topics Who am I to
SOFTWARE PROCESS MODELS
SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation
Selecting a Software Development Methodology based on. Organizational Characteristics. Adrienne Farrell
ATHABASCA UNIVERSITY Selecting a Software Development Methodology based on Organizational Characteristics BY Adrienne Farrell An essay submitted in partial fulfillment Of the requirements for the degree
Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University
Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or
How To Understand Software Engineering
PESIT Bangalore South Campus Department of MCA SOFTWARE ENGINEERING 1. GENERAL INFORMATION Academic Year: JULY-NOV 2015 Semester(s):III Title Code Duration (hrs) SOFTWARE ENGINEERING 13MCA33 Lectures 52Hrs
A Review of an MVC Framework based Software Development
, pp. 213-220 http://dx.doi.org/10.14257/ijseia.2014.8.10.19 A Review of an MVC Framework based Software Development Ronnie D. Caytiles and Sunguk Lee * Department of Multimedia Engineering, Hannam University
Agile Processes and Methodologies: A Conceptual Study
Agile Processes and Methodologies: A Conceptual Study Sheetal Sharma Amity School of Engineering & Technology Amity University Noida [email protected] Darothi Sarkar Amity School of Engineering &
LECTURE 1. SYSTEMS DEVELOPMENT
LECTURE 1. SYSTEMS DEVELOPMENT 1.1 INFORMATION SYSTEMS System A system is an interrelated set of business procedures used within one business unit working together for a purpose A system has nine characteristics
Karunya University Dept. of Information Technology
PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main
The traditional project management uses conventional methods in software project management process.
Volume 5, Issue 1, January 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Analysis of
How To Understand The Limitations Of An Agile Software Development
A Cynical View on Agile Software Development from the Perspective of a new Small-Scale Software Industry Apoorva Mishra Computer Science & Engineering C.S.I.T, Durg, India Deepty Dubey Computer Science
Improving Software Development Economics Part II: Reducing Software Product Complexity and Improving Software Processes
Improving Software Development Economics Part II: Reducing Software Product Complexity and Improving Software Processes by Walker Royce Vice President and General Manager Strategic Services Rational Software
Software Life Cycle. Management of what to do in what order
Software Life Cycle Management of what to do in what order Software Life Cycle (Definition) The sequence of activities that take place during software development. Examples: code development quality assurance
COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS
COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS *1 Mrs. Kalaivani S., * 2 Mrs. Kavitha S., *1 M.Phil Research Scholar, Department of Computer Science Auxilium College (Autonomous), Vellore, TamilNadu,
Objectives. The software process. Basic software process Models. Waterfall model. Software Processes
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
And the Models Are 16-03-2015. System/Software Development Life Cycle. Why Life Cycle Approach for Software?
System/Software Development Life Cycle Anurag Srivastava Associate Professor ABV-IIITM, Gwalior Why Life Cycle Approach for Software? Life cycle is a sequence of events or patterns that are displayed in
General Problem Solving Model. Software Development Methodology. Chapter 2A
General Problem Solving Model Software Development Methodology These focus on understanding what the problem is about Chapter 2A Concerned with understanding more about the nature of the problem and possible
Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction
International Journal of Soft Computing and Engineering (IJSCE) ISSN: 2231-2307, Volume-3, Issue-1, March 2013 Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction Naresh
10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design
Session # 3 Contents Systems Analysis and Design 2 1 Tiers of Software Development 10/4/2013 Information system development project Realistic behavior 3 Information system development project System Development
Chakra Vs Spiral Model - A Practical Approach
Chakra - A new era in Software Lifecycle modeling technique R.P.Muthu Assistant Professor, Department of Computer Science Indian Institute of Technology, Bombay. Abstract: Every old thing has to be modified
CHAPTERS A NEW KNOT MODEL FOR COMPONENT BASED SOFTWARE DEVELOPMENT
CHAPTERS A NEW KNOT MODEL FOR COMPONENT BASED SOFTWARE DEVELOPMENT CONTENTS 5.1 Introduction 5.2 Component based software life cycle process model 5.2.1 Rapid Application Development Model 5.2.2 The Y
A Comparision Between Traditional and Component Based Software Development Process Models
J. Comp. & Math. Sci. Vol.3 (3), 308-319 (2012) A Comparision Between Traditional and Component Based Software Development Process Models MANJU KAUSHIK 1 and M. S. DULAWAT 2 1 Research Scholars, Mohanlal
Small Group Software Development: A Case Study
Small Group Software Development: A Case Study Rob Jansen University of South Carolina University of Minnesota, Morris [phone number] [email protected] ABSTRACT The development process that a group
Journal of. Risk Analysis of the Waterfall Model for Educational Software Development. Abstract
Journal of of Industrial Technology Ubon Ratchathani Rajabhat University Risk Analysis of the Waterfall Model for Educational Software Development Prawit Simmatun 1, Songsak Songsanit 2, Kanok Samavardhana
Advanced Software Engineering. Software Development Processes
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Advanced Software Engineering Software Development Processes Prof. Agostino Poggi Software Development
Software Process and Models
Agenda Software Process Models Plan-driven Process Models Software Process and Models A software process model simplified, abstracted description of a software development process. A model is good for
Software Life Cycle Processes
Software Life Cycle Processes Objective: Establish a work plan to coordinate effectively a set of tasks. Improves software quality. Allows us to manage projects more easily. Status of projects is more
SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki
SE464/CS446/ECE452 Software Life-Cycle and Process Models Instructor: Krzysztof Czarnecki 1 Some of these slides are based on: Lecture slides by Ian Summerville accompanying his classic textbook software
An Assessment between Software Development Life Cycle Models of Software Engineering
International Journal of Electronics and Computer Science Engineering 700 Available Online at www.ijecse.org ISSN- 2277-1956 An Assessment between Software Development Life Cycle Models of Software Engineering
Unit 1 Learning Objectives
Fundamentals: Software Engineering Dr. Rami Bahsoon School of Computer Science The University Of Birmingham [email protected] www.cs.bham.ac.uk/~rzb Office 112 Y9- Computer Science Unit 1. Introduction
Software Engineering. Objectives. Designing, building and maintaining large software systems
Software Engineering Objectives Designing, building and maintaining large software systems To define software engineering and explain its importance To discuss the concepts of software products and software
Standardized software development model for SME software houses in Pakistan
Standardized software development model for SME software houses in Pakistan Abstract There are many software development models that exist for software development like Extreme Programming, Waterfall,
How To Understand And Understand The Software Development Process In Korea
Universiti Teknologi MARA Designing a Proposed Model of Software Development Practices Nor Hasikin Bt Husian Thesis submitted infiilfillmentof the requirements for Bachelor of Science (Hons) Information
CHAPTER. Software Process Models
CHAPTER Software Process Models 4 Chapter Objectives Introduce the generic concept of software engineering process models. Discuss the three traditional process models. Waterfall Incremental Spiral Discuss
Singhania University, Jhunjhunu, Rajasthan, India. 2 Department of Information Technology King Abdul Aziz University, Jeddah, Saudi Arabia
www.ijcsi.org 441 A Comprehensive Study of Commonly Practiced Heavy and Light Weight Software Methodologies 1 Asif Irshad Khan, 2 Rizwan Jameel Qurashi and 3 Usman Ali Khan 1 Department of Computer Science
Requirements Analysis (RA): An Analytical Approach for Selecting a Software Process Models ABSTRACT
Evolving Ideas Computing, Communication and Networking Publish by Global Vision Publishing House Edited by Jeetendra Pande Nihar Ranjan Pande Deep Chandra Joshi Requirements Analysis (RA): An Analytical
Benefits of Test Automation for Agile Testing
Benefits of Test Automation for Agile Testing Manu GV 1, Namratha M 2, Pradeep 3 1 Technical Lead-Testing Calsoft Labs, Bangalore, India 2 Assistant Professor, BMSCE, Bangalore, India 3 Software Engineer,
Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology
Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room
Chapter 3 Technology adapted
Chapter 3 Technology adapted 3.1 Introduction In developing a web enabled solution for laboratory data and document management, there are several options available for system analysis and designing, documentation
CSE 435 Software Engineering. Sept 16, 2015
CSE 435 Software Engineering Sept 16, 2015 2.1 The Meaning of Process A process: a series of steps involving activities, constraints, and resources that produce an intended output of some kind A process
System development lifecycle waterfall model
Slide 6.1 System development lifecycle waterfall model Figure 6.1 The waterfall model of system development lifecycle Slide 6.2 The b model Figure 6.2 The b model Source: N D Birrell and M A Ould, A Practical
Analysis of Object Oriented Software by Using Software Modularization Matrix
Analysis of Object Oriented Software by Using Software Modularization Matrix Anup 1, Mahesh Kumar 2 1 M.Tech Student, 2 Assistant Professor, Department of Computer Science and Application, RPS College,
Title: Topic 3 Software process models (Topic03 Slide 1).
Title: Topic 3 Software process models (Topic03 Slide 1). Topic 3: Lecture Notes (instructions for the lecturer) Author of the topic: Klaus Bothe (Berlin) English version: Katerina Zdravkova, Vangel Ajanovski
Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution
Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Not this life cycle SE, Software Lifecycle, Hans van Vliet, 2008 2 Introduction software development
