انت هنا الان : شبكة جامعة بابل > موقع الكلية > نظام التعليم الالكتروني > مشاهدة المحاضرة

rr

Share |
الكلية كلية العلوم للبنات     القسم قسم الحاسبات     المرحلة 3
أستاذ المادة فرح محمد حسن عبد الحسين الشريفي       25/03/2021 20:15:59
The ways of coping with change and changing system requirement are: Rapid software development
In safety-critical control systems, where a complete analysis of the system is essential; a plan-driven approach is the right one. However, for business systems, development processes that focus on rapid software development and delivery are essential.
Businesses now operate in a global, rapidly changing environment. They have to respond to new opportunities and markets, changing economic conditions, and the emergenceنشوء of competing products and services.
Rapid software development processes are designed to produce useful software quickly. The software is not developed as a single unit but as a series of increments, with each increment including new system functionality. Although there are many approaches to rapid software development, they share some fundamental characteristics:
1. The processes of specification, design, and implementation are interleaved.
2. The system is developed in a series of versions with stakeholders and customers involved in version evaluation.
3. User interfaces are often developed using an IDE (Interactive Development Environment) and graphical toolset.

Agile methods
In the 1980s and early 1990s, there was a widespread view that the best way to achieve better software was through careful project planning. This software was developed by large teams working for different companies and long periods of time. These plan driven approaches involve a significant cost in planning, designing, and documenting the system. When this plan-driven development approach is applied to small and medium-sized business systems, the cost involved is so large that it dominates the software development process. More time is spent on how the system should be developed. Dissatisfactionاستياء with these heavyweight approaches to software engineering led a number of software developers in the 1990s to propose ‘agile methods’.
Agile methods are incremental development methods in which the increments are small and new releases of the system are created and made available to customers every two or three weeks. They involve customers in the development process to get rapid feedback on changing requirements. The aim of agile methods is to reduce cost in the software process and to be able to respond quickly to changing requirements without excessive rework.
Example of agile methods are: Extreme Programming (Beck, 2000), Scrum (Cohn, 2009); Schwaber,( 2004); Schwaber and Beedle, 2001), Crystal (Cockburn, 2001; Cockburn, 2004), Adaptive Software Development (Highsmith, 2000), DSDM (Stapleton, 1997; Stapleton, 2003), and Feature Driven Development (Palmer and Felsing, 2002;Ambler and Jeffries(2002) and Rational Unified Process (Larman, 2002).

The principles of agile methods:
1. Customer involvement: Customers should be closely involved throughout the development process. Their role is provide and prioritize new system requirements and to evaluate the iterations of the system.
2. Incremental delivery: The software is developed in increments with the customer specifying the requirements to be included in each increment.
3. People not process: The skills of the development team should be recognized and used. Team members should be left to develop their own ways of working without prescriptive processes عمليات مفروضة.
4. Embrace change قبول التغيير: Expect the system requirements to change and so design the system to accommodate these changes.
5. Maintain simplicity الحفاظ على البساطة: Focus on simplicity in both the software being developed and in the development process. Wherever possible, actively work to eliminate complexity from the system.

Agile method applicable for:
1. Product development where a software company is developing a small or medium-sized product for sale.
2. Used for personal products.
The problems with agile methods are:
1. It can be difficult to keep the interest of customers who are involved in the process.
2. Team members may be unsuited to the intense involvement that characterizes agile methods.
3. Prioritizing changes can be difficult where there are multiple stakeholders.
4. Maintaining simplicity requires extra work.
5. Most organizations spend more on maintaining existing software than they do on new software development. So, if agile methods are to be successful, they have to support maintenance as well as original development.
The agile methods are not well suited to large-scale systems development with the development teams in different places and where there may be complex interactions with other hardware and software systems. Nor should agile methods be used for critical systems development where a detailed analysis of all of the system requirements is necessary to understand their safety or security implications.


المادة المعروضة اعلاه هي مدخل الى المحاضرة المرفوعة بواسطة استاذ(ة) المادة . وقد تبدو لك غير متكاملة . حيث يضع استاذ المادة في بعض الاحيان فقط الجزء الاول من المحاضرة من اجل الاطلاع على ما ستقوم بتحميله لاحقا . في نظام التعليم الالكتروني نوفر هذه الخدمة لكي نبقيك على اطلاع حول محتوى الملف الذي ستقوم بتحميله .
الرجوع الى لوحة التحكم