Explain Requirement process ( in SDLC) in detail. Why is this exercise important?
Requirements engineering is a fundamental activity in systems development and it is the process by which the requirements for software systems are identified, systematized and implemented and are followed through the complete lifecycle. Traditionally engineers focused on narrow functional requirements. Now it is being argued by Aurum and Wohlin (2005) that focusing only on the functional and non-functional aspects of the system is no more appropriate. The developers have to concentrate on the entire business system for which it provides solutions even though some of the aspects may be out of the system. Thus there are complexities that arise based on the requirements of the system and the clients for which detailed analysis is required firsthand.
Requirements dictate the system design. The requirement process has many intricate steps that make it whole. The foremost is project planning. This gives direction to the project and also limits costs and schedules are managed bettering planning the requirements will be the basis of the project planning process. Selection of the appropriate software development life cycle and development of resources are based on the resources required and the general requirements. (Wiegers, 2012)
The aim of the design today is to create flexible systems. The flexible system can be used in more than one ways and there is a high degree of interaction with different users, and the task performance is high with desirable system characteristics; and flexible programs will increase the efficiency of the system. There are adaptable and adaptive systems that fall into this category. In systems with complex functionality the developer is forced to see that some compromises occur so that the system can be flexible to all possible needs of all users. Thus if an adaptable system is created then the end-user is allowed to create choice and make changes in the system to suit the individual functions. (Oppermann, 1994)
Some activities follow the route map created by the requirement analysis and documentation. One is the development of the system, and allocation of resources and the other is tracking the progress. Thus project tracking is possible by the proper study of the requirement and this is the only way for verifying that the construction of the system is as intended. If the processing is not proper and the method of implementing of the requirements is not understood, then the requirements may have to be studied again and reallocation has to be done over the lower priority requirements. This also is important in the change control process where the importance of a proposed change can be understood. .Thus there must be a proper requirements documentation that is highly accurate. (Wiegers, 2012)
The requirements documentation is kept current and accurate. The next step, system testing also is based on the requirements processes with the user requirements and functional requirements used for system testing. Finally the development of the software again is based on the requirements and the software can only be tested using the requirements tracing. Lastly the most important part of the development of the system namely the documentation process, vital to maintenance can be created based on the user documentation process, and the requirements analysis. (Wiegers, 2012)
The general approach seems to be the method of braking the complex IT system into smaller segments or subsystems and thus many interdependent subsystems make up the governance system -- which itself thus is a mix of procedures, protocols, systems, and many types of data and human relational mechanisms. There are many conflicting external and internal factors in the system that has to be understood well not only by the designer but by the administration or the information officers. (Wolak, 2001)
One of the most important aspects of governance where IT has now played a role and is becoming crucial is in the field of accounting and financial operations. Organizations are judged by their financial performance and therefore the processing of information to leveraging its financial capital as well as its intellectual capital is the basis for the firm's survival. (Thierauf; Hoctor, 2003) Because of online financial activities many of these financials are linked directly or indirectly to the internet and the World Wide Web and thus many issues are involved in the formulation of finance based IT scenarios.
Question 2. Requirement Analysts (SDLC) need to have good people skills. Explain.
Software design is very complex. As a result of the complexity of systems the user must be the basis of development including proper support in understanding complexity of the application. This means that the designers must be able to analyze how the user would connect to the system and generally to each application, and for this purpose sometimes it becomes necessary to develop entirely new system and in some cases existing systems must be extended, to adapt to the user's needs. This fundamental principle forms the back bone of the system creation and maintenance. There are lots of human factors that the systems engineer and system developer must be aware of. Thus the developers of the system must have a thorough knowledge of the user behavior, needs and in what way the system must be designed to elicit adaptive system behavior from the user to make the system effective. (Oppermann, 1994)
While the system developer usually concentrates on turning out the best problem-solving system, some input must be generated that would also account for the human factors involved. Thus the study of human factors by specialized engineer would create the development of software and systems that are user friendly and can adapt to the customer. In other words, people skills result in highly efficient and adaptable systems for the client. Such endeavor will create adaptive systems. The modeling and the components are created using the interaction of the system designer with the users and complete components of the proposed system. (Oppermann, 1994)
Therefore the persons involved in the design need be highly people skilled and oriented. Adaptive lifecycles is based on the overall mission focused on the component and the way features are developed and this method therefore has a cycle that is based on the need to re-evaluate the project's mission, scope, schedule, resources, and defects. Other methods include the Agile Software Process -- ASP which is based on time schedule and is able to bring this about by creating a set of lightweight processes, that are iterative and is a time-based delivery. It has both the concurrent and asynchronous processes. It can be used in a large-scale software system creation and maintenance. (Wolak, 2001)
Another modern system design concept that is current is Crystal SDLC methodologies invented by Alistair Cockburn who argued that various project types require differing methodologies. Based on the personnel employed and the team and the amount of risk that is involved in capital terms determine the type of project which is color coded and the clear bands are the simple ones devoid of any risk violet is thus at the far end of the spectrum with large amount of personnel and also risk. For each of these sets the rules and methodologies are different. Thus larger methodology is used for bigger teams and denser methodologies for more critical projects are one set of rules. The software also undergoes a rigorous quality control check. The human error possibilities have also been incorporated into this system. (Wolak, 2001)
These systems are pertaining not only to the client side but also the developer side. There is a need to tailor the system to the side of the developer because one can observe a well established relationship between IT and organizational structure. The importance of IT is because it helps companies remain competitive and also they can have better processing ability of information. The most effective use of IT can then be achieved only by a strong organizational structure. The organizational structure can affect the effectiveness of the use of information technology. The structure of the organization also includes the routines and learning capabilities and adaptation to the changing roles in the work place and information processing. (Earl, 1988)
The major goal is to integrate information systems/information technology with the corporate strategy to use information for better governance and management. This has improved with the connectivity and networking and also the shrinking cost -- performance ratios in technology. IT governance thus is a result of the complete merger of computer and communications technologies, like data processing and high advancement in networks, and integrated systems. (Bloomfield; Coombs; Knights; Littler, 2000)
Thus the information officers are involved in the process of strategic information systems planning -- SISP which in turn could yield better business strategy or strategic options and the roles of the Information system is wide today. It is expected to play a key role in the management of resources; creating competitive advantage, furthering business goals; and making the organization very efficient and effective. (Earl, 1988)