Sie sind auf Seite 1von 16

Background and Project Specifications: Most of the Banks are using online Computer based System for their

operations. Assume that you are asked by a new Bank to design and implement a web-based system for basic banking operations like opening an account, withdrawal of money through cash or cheque only, deposition of money, money transfer from one account to another and calculation of account interests for two different kind of customers customers having savings account and customers having fixed deposit amount. An account should have a minimum balance and rate of interest. A person holding the savings account can only perform 50 transactions in a month. The bank also needs to implement the process of closure of an account. You may study such manual system at any Bank. Perform the following tasks for the Bank. Question 1: (10 Marks) Which Systems Development Life Cycle (SDLC) will you propose !for the specification given above? Justify you selection by evaluating!suitability of at least two SDLCs.! Solution: SOFTWARE DEVELOPMENT LIFECYCLE From the inception of a given idea for software system, until it is implemented and delivered to the customer and even after that the system undergoes the several changes. The software is said to have a lifecycle known as Software Lifecycle composed of several phases. Each of these phases results in the development of either a part of the system or something associated with the system, such as a test plan or user manual.!In the traditional and most common lifecycle model called WATERFALL MODEL, each phase has well defined starting and ending points with clearly identifiable inputs to the very next phase attached to it. It is actually the first engineering approach of software development.

Below Figure depicts the Water Fall Model.

The waterfall model provides a systematic and sequential approach to software development and is better than the build and fixes approach. But, in this model, complete requirements should be available at the time of commencement of the project, but in actual practice, the requirements keep on originating during different phases. The waterfall model can accommodate new requirements only in the maintenance phase. Moreover, it does not incorporate any kind of risk assessment. In the waterfall model, a working model of software is not available. Thus, there is no way of judging the problems of the software in- between different phases.!A slight modification of the waterfall model is a model with feedback. Once software is developed and is operational, then the feedback to various phases may be provided.

System Requirements and Analysis !Problem Definition:! The System Required to implement the A Synopsis is created by a student under the supervision of a Project Guide. A new Bank to design and implement a web-based system for basic banking operations like opening an account, withdrawal of money through cash or cheque only, deposition of money, money transfer from one account to another and calculation of account interests for two different kind of customers customers having savings account and customers having fixed deposit amount. An account should have a minimum balance and rate of interest. A person holding the savings account can only perform 50 transactions in a month. The bank also needs to implement the process of closure of an account. The synopsis submission requires a student to fill the relevant synopsis information and submit it. An incomplete synopsis or the synopsis submitted by ineligible students may be rejected. Once a synopsis is duly submitted, it is evaluated. An evaluator evaluates a number of synopses. Synopsis may be sent to them electronically and comments for improvement, status. Requirements Specification: Opening an account, withdrawal of money through cash or cheque only, deposition of money, money transfer from one account to another and calculation of account interests for two different kind of customers customers having savings account and customers having fixed deposit amount. Software and Hardware Requirements: ! Hardware Requirement: Processor: Intel Pentium 4 Memory: 2 GB RAM. Network Adaptor: Ethernet Adaptor Modem: 512 Kbps Voice, Fax & Data Secondary Storage: Seagate SATA Hard disk (250 GB)

Software Requirements: Platform: Windows The Operating System: Windows XP Professional sp2 Front-End Tool: Java Server Pages, JSF! Editing tool: Net Beans IDE 6.5.1! Browser: Internet Explorer, Mozilla etc. Database: My SQL Community Server Conceptual Models: We will implement the coding modules, which will consist of the following Menu. 1. 2. 3. 4. 5. 6. 7. 8. Synopsis Guide Eligible Guide !Opening an account, !Withdrawal of money through cash or cheque only, !Deposition of money,! Money transfer from one account to another! Calculation of account interests for two different kind of customers Accepted/Rejected Evaluator

Question 2: (10 Marks) What would be major costs of installing the system? What are going!to be the benefits in terms of finance? Perform a cost-benefit analysis for the proposed software. List the major tasks and milestones of the Project and make a project schedule. You schedule must include both GANTT and PERT charts. Explain the two charts drawn by you. Solution:! Technical Feasibility: !For the System, Required 3 Computer System with the Specification Which Provide in the Software and hardware Requirement Section.! There is no technical Expertise in the Firm. so, require the Minimum 2 Technical Expertise For the Manage of the System. Operational Feasibility: The System Required to implement the A Synopsis is created by a student under the!supervision of a Project Guide. a new Bank to design and implement a web-based system for basic banking operations like opening an account, withdrawal of money through cash or cheque only, deposition of money, money transfer from one account to another and calculation of account interests for two different kind of customers customers having savings account and customers having fixed deposit amount. An account should have a minimum balance and rate of interest. A person holding the savings account can only perform 50 transactions in a month. The bank also needs to implement the process of closure of an account. The synopsis submission requires a student to fill the relevant synopsis information and submit it. An!incomplete synopsis or the synopsis submitted by ineligible students may be rejected. Once! a synopsis is duly submitted, it is evaluated. A number of synopses are evaluated by an!evaluator. Synopsis may be sent to them electronically and comments for improvement,!status

Time Feasibility:! System Will Prepare in 6 Months &1 Month for the Training a Staff. Cost-Benefit Analysis:! Cost of Human Resources! System Analysts = 1 * 15000 =15000! Software Engineers = 2 *10000 = 20,000! Programmer = 2*10000 = 20,000! Cost of infrastructure! Total Computer System Required = 3 * 35 000 = 1,05,000 Cost of training Training Staff Member = 12 * 1000 =12,000 Project Scheduling GANTT Charts: A very elementary Gantt or Timeline chart is for the development plan is given below. The Plan explains the tasks versus the time they will take to complete.

Pert Charts:
!"#$% '*+,-.-,"/-01%2"3/% 4+#-51%4"/"6"#+% 2"3/% 4+#-51%789%2"3/% :0;+%4"/"6"#+%2"3/% :0;+%789%2"3/% 91/+53"/+%<%!+#/% =3-/+%8#+3%>"1?"@% &'% !" #$" #$" %!" &$" #%$" #$" &(% #$" %!" &$" #%$" '!" (*$" )$" )'% !" #$" '!" %!" #(!" #%$" (($" )(% #$" %!" #(!" #%$" #%$" (*$" (*$" '!% !" !" )$" !" )$" !" (#!"

Question 3: (10+15 Marks) Study the system and create a software requirement specification. You!must identify either the processes or objects while analyzing. During the!analysis give consideration to possible input and output of the processes. After identifying the requirements, create Analysis Models. You may either use!the classical approach and draw Entity relationship model and data flow!diagrams (DFDs) up to level 2-3; or you may take object oriented analysis!approach and create class diagram, use case diagram, use cases, etc. 0 Level DFD (Context Diagram)

2nd Level DFD

Question 4: (15+10 Marks)

Think of system architecture and then perform data design. You!must perform normalization on tables up to 3rd normal form. The table design must include Primary and Foreign keys and constrains. Create the systems flow chart or detailed process design and state transition diagrams. Also design the user input screens and output report formats

Question 5: (10 Marks) Design various unit techniques/strategies. !Solution:! The Goal of Testing !In different publications, the definition of testing varies according to the purpose, process, and level of testing described. Miller gives a good description of testing in: The general aim of testing is to affirm the quality of software systems by systematically exercising the software in carefully controlled circumstances.! Miller's description of testing views most software quality assurances activities as testing. He contends that testing should have the major intent of finding errors. A good test is one that has a high probability of finding an as yet undiscovered error, and a successful test is one that uncovers an as yet undiscovered error. This general category of software testing activities can be further divided. For purposes of this paper, testing is the dynamic analysis of a piece of software, requiring execution of the system to produce results, which are then compared to expected outputs.! test cases for different testing

The Testing Spectrum Testing is involved in every stage of software life cycle, but the testing done at each level of software development is different in nature and has different objectives. Unit Testing is done at the lowest level. It tests the basic unit of software, which is the smallest testable piece of software, and is often called "unit", "module", or "component" interchangeably. !Integration Testing is performed when two or more tested units are combined into a larger structure. The test is often done on both the interfaces between the components and the!larger structure being constructed, if its quality property cannot be assessed from its components.! System Testing tends to affirm the entire system. System test is functional/requirement specification functional!quality attributes, such as maintainability, are also checked. end-to-end quality of the often based on the of the system. Nonreliability, security, and

Acceptance Testing is done when the completed system is handed over from the developers to the customers or users. The purpose of acceptance testing is rather to give confidence that the system is working than to find errors. Static Analysis and Dynamic Analysis Based on whether the actual execution of software under evaluation is needed or not, there are two major categories of quality assurance activities:!Static Analysis focuses on the range of methods that are used to determine or estimate software quality without reference to actual executions. Techniques in this area include code inspection, program analysis, symbolic analysis, and model checking.

Dynamic Analysis deals with specific methods for ascertaining and/or approximating software quality through actual executions, i.e., with real data and under real circumstances. Techniques in this area include synthesis of inputs, the use of structurally dictated testing procedures, and the automation of testing environment generation. Generally the static and dynamic methods are sometimes inseparable, but can almost always discussed separately. In this paper, we mean dynamic analysis when we say testing, since most of the testing activities execution of the software. Functional Technique and Structural Technique The information flow of testing is shown in Figure 1. As we can see, testing involves the configuration of proper inputs, execution of the software over the input, and the analysis of the output. The "Software Configuration" includes requirements specification, design specification, source code, and so on. The "Test Configuration" includes test cases, test plan and procedures, and testing tools. Based on the testing information flow, a testing technique specifies the strategy used in testing to select input test cases and analyze test results. Different techniques reveal different quality aspects of a software system, and there are two major categories of testing techniques, functional and structural. Functional Testing: the software program or system under test is viewed as a "black box". The selection of test cases for functional testing is based on the requirement or design specification of the software entity under test. Examples of expected results, some times are called test oracles, include requirement/design specifications, hand calculated values, and simulated results. Functional testing emphasizes on the external behavior of the software entity.

Structural Testing: the software entity is viewed as a "white box". The selection of test cases is based on the implementation of the software entity. The goal of selecting such test cases is to cause the execution of specific spots in the software entity, such as specific statements, program branches or paths. The expected results are evaluated on a set of coverage criteria. Examples of coverage criteria include path coverage, branch coverage, and dataflow coverage. Structural testing emphasizes on the internal structure of the software entity.

Das könnte Ihnen auch gefallen