











Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
this is research proposal this is research proposalthis is research proposalthis is research proposalthis is research proposalthis is research proposal
Typology: Assignments
1 / 19
This page cannot be seen from the preview
Don't miss anything!












Selangor- Malaysia 2017/
framework for managing development projects. This will help organizations and development teams to
- 5.4. TIME FRAMEWORK......................................................................................................................... With the emergence and widespread of software systems in the latest years, it has turned into required to introduce software development process targeting different attributes and paradigms. Software development has started to become growing sector lately and produced a significant range of computer software improvement methodology to make the most of while in the modern- day applications. Methodology in computer software engineering is actually a framework that is employed in structuring, setting up, and controlling the procedure of developing information procedure. Also, Software development methodology is the procedure of scheduling, employing and handling software development procedure [1]. Looking again the growth with the software applications development industry, it may be said that the center of twentieth century have been the growth of software development founded in accordance with Manawadu [2] in advance of in 1956, experts acknowledged difficulties with a lot more significant software package improvement, and after that proposed a waterfall methodology to solve problems with program and enhance the quality of made developments [3]. Additionally, waterfall methodology focuses created properly high-quality program and strong documentation and principal points of waterfall tactic may be the built-in verification and validation of your success because of the users so as to full a certain phase of developments. In 1988 Barry Boehm developed spiral design for development and enhancements of application and it was initially design talked over iterative growth notion brings together ideas of waterfall model and iterative developments. In more, spiral design is often a blended of incremental progress design and sequential linear development of waterfall design having a incredibly powerful focus on risk assessment. It allows for iterative releases in the goods or incremental modification through each and every looping around the spiral [4]. Also, agile methodologies absolutely are a new set of methodologies that announce to resolve the constraints of standard SDMS. In addition, group of software program practitioners published agile Manifesto by identified the basic principle of agile systems advancement in 2001[2]. However, growing number and of software advancement methodologies has made complicated of selecting ideal methodology and that brought on failures of billions of bucks and also human
During the literature view, first we are going to look at some of the key software development methodologies including traditional approaches such as: waterfall model, spiral, rapid application development, Rational Unified Process, and agile approaches. In here the research will present some advantages and disadvantages of each methodology and it would be useful for researchers to identify the most common methodologies for software development and understand the characteristics of each method that would be useful software developers for choosing suitable software development methodology in specific context and second we also illustrate the current Issues of software development section stage. 4.1. WATERFALL MODEL The usage of software development life cycle (SDLC) established in the middle of 20th century according to [2] and before 1956, software was created by Code & Fixed technology which contains two parts: part one, Create down some code, part two, Maintenance the issues caused this code. Conversely, in 1956, industry experts acknowledged difficulties with extra massive computer software development, and afterwards proposed a waterfall methodology to stay away from the tricky nature of your code and repair methods [4].The main point of waterfall approach is the integrated verification and validation of the results by the client in order to complete a certain phase of developments [2]. Moreover, waterfall methodology focuses created well quality software and strong documentation. In addition it is a sequential model and Waterfall model is straightforward to execute and also the quantity of resources required for it are minimal Among the list of impacts with the waterfall methodology is usually that each the issue and the option is often absolutely described ahead of time [7]. This software development workforce has a tendency to focus on clear and concise necessities ahead of going on to development, hence dealing with undesirable rework. In speaking about the negative facet of your waterfall methodology, the researchers focused negatively over the waterfall methodology on comprehensive documentation [2] also testing activities starts after system completion without any involvement of clients or customers and it is necessary of users to involve the development of the system. Moreover, adaptability is one of the weaknesses of waterfall model. Furthermore, there is no any a guideline or a criterion which helps developers and organization using waterfall model in their products.
The spiral development model was produced by Barry Boehm in his 1988 article A Spiral Model of Software Development and Enhancement. It was first model talked about iterative improvement idea and spiral model consolidates the concept iterative with the methodological aspects, ruled by the waterfall model. The spiral model is a blended of incremental improvement approach and consecutive direct advancement of waterfall demonstrate with an extremely serious concentrate on risk analysis. It considers iterative arrivals of the items or incremental change through each circling around the spiral [8].The spiral model is a like the dynamic model (incremental), with more emphasis on risk analysis. The spiral model comprises of four stages: arranging, chance investigation or risk analysis, building and assessment. The task administration goes through these phases in the emphasis forms (called spirals in this model). The fundamental spirals, beginning from the arranging stage, prerequisites are gathered, and the risks are evaluated. Every single consequent spiral expands on the pattern [8]. Figure 2, Shows the different phases of spiral model that is widely used for industrial real word complex software. This is the most advantageous and practical model of all the SDLC models. The whole model is an iterative spiral steps that is continuously repeated over and over time to generate the actual software components with each spiral. Thus help in reducing the complexity of the software being developed [9]. Figure 2: Spiral model [9] Finally simulations and designs are carried out to validate the necessities attained [10].One complexity is figuring out where the characterized prerequisites, constraints and choices
advancement and provide increased top quality benefits than waterfall product. Furthermore, the aim of RAD will be to get greatest benefit of effective progress application [2]. even though there may be no popular definition of RAD exists, nonetheless it can describe into two strategies: as methodology describes selected stages in program improvement as Spiral and iterative versions of software advancement methodologies and as course of tools which lets the velocity of objects developments, reusable code for consumer server programs, graphical user interfaces, and the simple properties of RAD resources contain arranging, facts, process modeling, code era, tests and debugging [14]. RAD methodology consists of three phases and 4 phases of cycles. The four phases of cycle are: specifications organizing, user style and design, construction and cutover, although 3 phase’s cycles re: specifications arranging, user design, and built-in as a result of iterative exercise. In other hand, RAD lacks ample illustration to handle the event of cooperative systems right now and it truly is considered velocity and good quality of the computer software development [15]. 4.5. Rational Unified Process (RUP) The rational process is a standardized process of software engineering. It gives a disciplined approach to the assignment of tasks and responsibilities within a development organization. Its objective is to guarantee the production of high-quality software that meets the needs of end- users within a predictable and budgeted schedule [16].Moreover, rational unified process (RUP) is an approach which focused process productivity, team productivity by providing each team member access of knowledge base with guidelines. Also RUP is a creating and maintaining model. RUP is two dimensional approaches (Phases and workflows) and RUP is software engineering process which broken software development life cycle into phases, each phase producing new generation of product and one development phase divides into four consecutive phases [2] and there are: Inception phase, Elaboration phase, Construction phase and Transition phase. Each phase ends with milestone and certain decision must be done and the central goals must achieve. An advantage of RUP is the clarity of management points [17]. In additional lack of detailed support of software engineering is the key challenge of RUP for its negative feedback over the years. 4.6. AGILE DEVELOPMENT METHODOLOGY Agile methodologies are a new set of methodologies that announce to solve the constraints of traditional SDMS .Moreover; group of software practitioners published agile Manifesto by
determined the principle of agile systems development. In additional, in other hand these principles highlight the magnitude of individuals and their communications, clients, collaboration, quickly and continuous releases of software and the ability to reply the unstable requirements of the customers and examples of agile methodologies which arranged with agile Manifesto include: extreme programming (XP), Scrum, Lean Development, Crystal methods and Adaptive Software Development (ASD) [2]. The difference between agile methodologies and traditional SDMs methodologies are summarizing into two perspectives. First perspective is familiarity, traditionally: customers do not know exactly their requirements but programmers or developers do, while agile methodologies both customers and developers do not have complete information about system requirements at the beginning. Second perspective is involvement; traditionally: requirements of the system are defined at front, furthermore, Agile: the involvements of the customers are very short and thus programmers have to create in additional components (modules or functionalities) to meet the future needs of customers [14]. And most agile developments methodologies focus on five core values:
Wildemann classifies nine SDMs by proposing 12 criteria with 5 distinct values every single [15]. Unfortunately, it is not described how values happen to be determined. Development projects are classified by 33 criteria. Picking a SDM is according to a comparison of your methodologies’ applicability Finally, Heinemann and Engels [16] describe a system for project-specific choice of a SDM viewed as methodologies involve the Waterfall Model, the Rational Unified Course of action, and Scrum. The technique is depending on a relatively tiny quantity of criteria. Nonetheless, the authors report empirical evaluation and underline its practicability. The history of categorization methods emphasizes the significance of the software development methodology and signalize that there is no unified approach has been found in previous research based on that our aim of this proposal is to overcome and come up with general framework which is suitable choosing adequate software development methodology in software development methodologies.
5. METHODOLOGY This section describes and motivates the methods applied in this study. There are four parts in including, design of the study, techniques for data collection, hypothesis generation and interpretation and time framework.
Observations Interview
Figure 6.
The design of this project will carried out according to the following figure 6. 5.2. TECHNIQUES FOR DATA COLLECTION This project began with literature studying for searching general knowledge from books, academic papers and professional magazines. During the theory learning time it is also necessary to get familiar with the teams’ working process to identify the problems they have. Since the goal of the project is to get general framework for choosing adequate software development
H3: There is no general framework for choosing software development methodologies in large software projects. Ha3. There is general framework for choosing adequate software development methodologies in large software projects. H4 : There is no general framework for choosing adequate software development methodologies at all. Ha4. There is general framework for choosing adequate software development methodologies at all. To interpret and prove these claims will use Analysis of Variance (ANOVA). The data from three different teams: small software development team, medium software development team, and large software development team. Since the data from three different teams ANOVA is the suitable because it is based on analyzing data from different groups. 5.4. TIME FRAMEWORK JAN FEB MAR APR MAY JUN JULY AUG SEP OCT NOV DEC Proposal Setup Systematic Literature Review Case Study {Observations, Interview} Analyzing and Finding Thesis Write-up Submit Thesis Final Submission Table1: Duration of the thesis
After completion of this project I will expect to achieve or to overcome this outcome: getting general framework for managing development projects. This will help organizations and development teams to choose the suitable software development method in their projects. This framework will determine guidelines for organizing activities to decrease the risk of project.
7. CONCLUSION The emergence and growth of software applications increase the number of software development methodologies. Moreover, the varieties of software developments caused lack of general framework of choosing suitable approach in software development industry. So that Methodology is an important means of selecting the appropriate methodology in a software project. The main aim of this proposal is getting general framework for managing development projects and this framework not primarily addresses technical details of how software is developed but will determine guidelines for organizing activities used to decrease the risk of project. Furthermore in this proposal presented more information about the situations of software development in current stage. 8. REFERENCES [1] Vijayasarathy, L. R., & Butler, C. W. (2016). Choice of Software Development Methodologies: Do Organizational, Project, and Team Characteristics Matter?. IEEE Software, 33(5), 86-94. [2] Baharorn, F., Deraman, A., & Hamdan, A. R. (2016). A survey on the current practices of software development process in Malaysia. Journal ofICT, 4, 57-76. [3] Manawadu, C. D., Johar, M. G. M., & Perera, S. S. N. (2013). An Evaluation of Software Development Methodology Adoption by Software Developer in Sri Lanka. Editorial Committees, 84. [4] Boehm, B. W. (1988). A spiral model of software development and enhancement. Computer, 21(5), 61-72.
[13] C. Filß, R. H¨ohn, S. H¨oppner, M. Schumacher, and H. Wetzel, “Rahmen zur auswahl von vorgehensmodellen,” in Entscheidungsfall Vorgehensmodelle, R. Petrasch, R. H¨ohn, S. H¨oppner, H. Wetzei, and M. Wiemers, Eds. Aachen: Shaker, 2005, pp. 183–227. [14] C. Bunse and A. von Knethen, Vorgehensmodelle kompakt. Spektrum, 2008. [15] M. Heinemann and G. Engels, “Auswahl projektspezifischer vorgehensstrategien,” in 17. Workshop der Fachgruppe WIVM der GI, O. Linssen, T. Greb, M. Kuhrmann, D. Lange, and R. H¨ohn, Eds. Aachen: Shaker, 2010, pp. 132–142. [16] B. W. Boehm and F. Belz, “Experiences with the spiral model as a process model generator,” in Proc. 5th Int. ISPW on Exp. with Software Process Models. IEEE CS, 1990, pp. 43–45. [17] H. Wildemann, Prozessgestaltung in der Softwareentwicklung: Leitfaden und Tools zur effizienten Entwicklungsprozessgestaltung, 9th ed. M¨unchen, Germany: TCW, 2012.