In some countries, such mishaps could lead to imprisonment for those who are accountable.Consider a system where human life is on the line, where a system failure could result in one or more deaths.However, there are some areas where Waterfall model was continued to be preferred. increase the risk of developing an application over several years. Even if the application was developed using a new technology, factors like more competitors entering the market, cheaper alternatives becoming available, better functionality using newer technologies, change in customers requirement etc.Net etc would replace them with web based functionality. By the time the applications were developed in C, C++ etc, new languages (relatively speaking) like Java.With the evolution of technology, there were cases where large scale enterprise systems were developed over a period of 2 to 3 years but were redundant by the time they were completed. In the olden days, applications developed in Waterfall Model like CRM Systems, Supply Chain Management Systems etc would usually take a year or longer to develop. These days most project follow Agile Methodology, some form of Iterative model or one of the other models depending on their project specific requirement. Even after the Agile manifesto was published in 2001, Waterfall model continued to be used by many organization till the last decade. Waterfall model was used significantly in the development of software till the year 2000. In the olden days, Waterfall model was used to develop enterprise applications like Customer Relationship Management (CRM) systems, Human Resource Management Systems (HRMS), Supply Chain Management Systems, Inventory Management Systems, Point of Sales (POS) systems for Retail chains etc. Issues that are reported after going live are fixed by the team and tested by the testing team. Maintenanceĭuring the maintenance phase, the team ensures that the application is running smoothly on the servers without any downtime. They also co-ordinate with network and IT administrative teams etc to finally get the application up and running on the production servers. Some of the high level activities include installing the OS on the servers, installing security patches, hardening the servers, installing web servers and application servers, installing the database etc. The team builds and installs the application on the servers which were procured for the banking application. Security testing teams were assigned to test the security of the banking application. Testers with banking domain knowledge were also hired for the project so that they could test the application based on the domain perspective. They also perform regression testing of the application to see if any new defects were introduced. These defects are fixed by the developers and the testing team tests the fixes to ensure that the defect is fixed. The testing team tests the complete application and identifies any defects in the application. Some developers perform static analysis of the code. They also perform several other activities like a senior developer reviewing the other developers code for any issues. Since the application is a banking application and security was a high priority in the application requirements, they implement several security checks, audit logging features in the application. They take the design documents / artifacts and ensure that their solution follows the design finalized by the architect. The development team works on coding the project. The architect creates the Architecture diagrams and high level / low level design documents. It is decided that the banking application needs to have redundant backup and failover capabilities such that system is accessible at all times. The architect and senior members of the team work on the software architecture, high level and low level design for the project. How many users are expected to use the application? etc.Do we have to support multiple languages?.Will the new banking application be used in more than one country?.Going through the requirements and analyzing them has revealed that the project team needs answers to the following questions which were not covered in the requirements document – The Business Analysts document the requirement based on their discussion with the customer. Requirements are documented during this phase and clarifications can be sought. In this phase the requirements are gathered by the business analyst and they are analyzed by the team. Let us assume that the Citibank is planning to have a new banking application developed and they have approached your organization in the 1990’s. Let us understand the concept of Waterfall model with example of a banking application for illustrating the topic. There are several phases in the waterfall model. Phases of Waterfall Model in Software Engineering
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |