Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

SAP Development Object Testing

The project title “SAP Development Object Testing” is a study of the software testing in the company. The project report is about software testing that is an important part of any system development process. In the initial chapter review we see that for proper functioning of the organization. It defines the organization structure of the company.

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

SAP Development Object Testing

  1. 1. A Project Report On SAP Development Object Testing Submitted to Sahibzada Ajit Singh Institute of Information Technology & Research Session 2009-11 On partial fulfillment of the requirement for the degree Master of Business Administration (MBA) in Information Technology Project Guide: Submitted By: Miss Gurjeet Kaur Shivani Thakur Internal Project Guide SASIIT&R, Mohali University Roll No.95142267376
  2. 2. Certificate 2
  3. 3. Acknowledgements I truly acknowledge the cooperation & help by Mr. Shailesh Maloo, Chief Operating Officer, Security Weaver. He has been a constant of guidance throughout the course of this project. I would also like to thank Mr.Kapish for her help & guidance in the project. Respected guide Miss Gurjeet Kaur, Lecturer, SAS Institute of Information & Technology for her undeterred guidance for the completion of the report. I am also thankful to my friends & families whose silent support led me to complete my project. Lastly, I’ll like to thank all the employs of Security Weaver, Technology Park, Chandigarh, whose cooperated with me to maximum extent & provide me the resource to complete this project. (Signed) Shivani Thakur MBA-IT SAS Institute of Information & Research Punjab Technology University, Jalandhar 3
  4. 4. PREFACE The project title “SAP Development Object Testing” is a study of the software testing in the company. The project was undertaken on partial fulfillment of the software testing for the degree Master of Business Administration (MBA) in Information Technology as per Punjab Technical University curriculum. The project report is about software testing that is an important part of any system development process. In the initial chapter review we see that for proper functioning of the organization. It defines the organization structure of the company. Finally, the conclusion to the report is given in 6. It was concluded that the software testing is good in every company or organization. 4
  5. 5. DECLARATION I hereby declare that the project titled “SAP Development Object Testing is an original piece of software testing work carried out by me under the guidance and supervision of Mr. Shailesh Maloo Chief Operating Officer. The information has been collected from genuine & authentic sources. The work has been submitted in partial fulfillment of MASTER IN BUSINESS ADMINISTRATION (MBA) of Punjab Technology University Jalandhar. _____________ (Shivani Thakur) 5
  6. 6. Table of Contents Contents Page no  Certificate…………………………………………………………… 2  Acknowledgment ………………………………………………….... 3  Preface …………………………………………………………….... 4  Declaration ………………………………………………………….. 5  Contents ……………………………………………………………... 6-7  Introduction………………………………………………………….. 8 1. Introduction of Project……………………………………… 9  Front End……………………………………………………………..10-11  Back End……………………………………………………………... 12-17 2. Introduction of Company......................................................... 18  Introduction About the Organization………………………………. 19  Company Products…………………………………………………... 19-25  Company Services…………………………………………………… 26-27  Boards of Directors of the Company………………………………... 27 6
  7. 7. 3. (SDLC) Approaches to Project.......................................... 28  System Analysis……………………………………………………. 29-30  Existing System…………………………………………………….. 30  Proposed System…………………………………………………… 31  Feasibility Study……………………………………………………. 31  Software Requirements Specification……………………………... 35-39  System Configuration……………………………………………… 40 • Hardware Requirements…………………………………………… 40 • Software Requirements……………………………………………. 40  System Design………………………………………………………. 41-48 • DFD…………………………………………………………………. 49-53 • Screen Short ……………………………………………………… 54-71  Coding………………………………………………………………. 72  Testing………………………………………………………………. 73-75  System Implementation…………………………………………….. 75-78 7
  8. 8.  System Maintenance……………………………………………….. 79-80 4. Conclusion....................................................................................... 81 5. Bibliography................................................................................... 82 8
  9. 9. 1.1 Introduction of Project Introduction to project SAP Development Object Testing Introduction:- In order to make it sure, that you provide your client a proper software solution, you go for TESTING. You check out if there is any problem, any error in the system, which can make software unusable by the client. You make software testers test the system and help in finding out the bugs in the system to fix them on time. You find out the problems and fix them and again try to find out all the potential problems. On the other hand, its a fact that, when one person starts checking something which is made by some other person, there are 99% chances that 9
  10. 10. checker/observer will find some problem with the system (even if the problem is with some spelling that by mistake has been written in wrong way.). Even though it’s wrong in terms of human behavior, this thing has been used for the benefit of software projects (or you may say, any type of project). When you develop something, you give it to get checked (TEST) and to find out any problem, which never aroused while development of the system. Because, after all, if you could minimize the problems with the system you developed, it’s beneficial for yourself. Your client will be happy if your system works without any problem and will generate more revenues for you. 1. Testing is a process of executing a program with the intent of finding an error. 2. A good test case is one that has a high probability of finding an as yet undiscovered error. 3. A successful test is one that uncovers an as yet undiscovered error. Testing should systematically uncover different classes of errors in a minimum amount of time and with a minimum amount of effort. A secondary benefit of testing is that it demonstrates that the software appears to be working as stated in the specifications. The data collected through testing can also provide an indication of the software's reliability and quality. But, testing cannot show the absence of defect -- it can only show that software defects are present. Front End:- What is front end? A front-end application is one that directly interacts with people or users. Marketing researchers often use a database as a front-end to a statistical analysis program. The researchers enter the results of market questionnaires or surveys into a database. The data is then transferred to a statistical analysis program to determine the potential for a new product or the effectiveness of an advertising campaign. Frontend is consists of following process:- 10
  11. 11. Coding/designing, verification JAVA (Front end) Java is a computer programming language. It enables programmers to write computer instructions using English based commands, instead of having to write in numeric codes. It’s known as a “high-level” language because it can be read and written easily by humans. Like English, Java has a set of rules that determine how the instructions are written. These rules are known as its “syntax”. Once a program has been written, the high-level instructions are translated into numeric codes that computers can understand and execute. Who Created Java? In the early nineties, Java was created by a team led by James Gosling for Sun Microsystems. It was originally designed for use on digital mobile devices, such as cell phones. However, when Java 1.0 was released to the public in 1996, its main focus had shifted to use on the Internet. It provided more interactivity with users by giving developers a way to produce animated 11
  12. 12. webpages .Over the years it has evolved as a successful language for use both on and off the Internet. A decade later, it’s still an extremely popular language with over 6.5million developers worldwide. Why Choose Java? Java was designed with a few key principles in mind: • Easy to Use: The fundamentals of Java came from a programming language called c++. Although a powerful language, it was felt to be too complex in its syntax, and inadequate for all of Java's requirements. Java built on, and improved the ideas of c++, to provide a programming language that was powerful and simple to use. • Reliability: Java needed to reduce the likelihood of fatal errors from programmer mistakes. With this in mind, object-oriented programming was introduced. Once data and its manipulation were packaged together in one place, it increased Java’s robustness. • Secure: As Java was originally targeting mobile devices that would be exchanging data over networks, it was built to include a high level of security. Java is probably the most secure programming language to date. • Platform Independent: Programs needed to work regardless of the machine they were being executed on. Java was written to be a portable language that doesn't care about the operating system or the hardware of the computer. Back End:- A back-end application interacts with other programs or applications; it only indirectly interacts with people or users. When people request information from a Web site on the Internet, the Web site can interact with a database (the back end) that supplies the desired information. SAP (Back end) Systems Applications and Products in Data Processing. A company that develops software which allows businesses to track customer and business interactions. SAP is well-known for its Enterprise Resource Management (ERM) and data management programs. As the world's leading provider of business software*, SAP delivers products and services that help accelerate 12
  13. 13. business innovation for our customers. We believe that doing so will unleash growth and create significant new value – for our customers, SAP, and ultimately, entire industries and the economy at large. Today, customers in more than 120 countries run SAP applications – from distinct solutions addressing the needs of small businesses and midsize companies to suite offerings for global organizations. Founded in 1972, SAP has a rich history of innovation and growth as a true industry leader. SAP currently has sales and development locations in more than 50 countries worldwide and is listed on several exchanges, including the Frankfurt Stock Exchange and NYSE under the symbol "SAP." In today's challenging business environment, best-run companies have clarity across all aspects of their business, which allows them to act quickly with increased insight, efficiency, and flexibility. By using SAP solutions, companies of all sizes – including small businesses and midsize companies – can reduce costs, optimize performance, and gain the insight and agility needed to close the gap between strategy and execution. To help our customers get the most out of their IT investments so that they can maximize their business performance, our professionals deliver the highest level of service and support. THE HISTORYOFSAP:- MORE THAN 37 YEARS IN E-BUSINESS SAP's story is one of a steady rise from a small, five-man operation headquartered in southwest Germany's Rhine-Neckar region to one of the world's largest independent software providers and an employer of more than 47,598 people in over 50 countries. Read about SAP's exciting evolution and key milestones: • 1972 – 1981: The First 10 Years – "The First 10 Years" chronicles the highlights of the company's beginnings and subsequent development – from SAP's foundation, its first software modules, and the SAP R/2 system to the company's first-year revenues, first customers outside of Germany, and first trade-show appearance. • 1982 – 1991: The SAP R/3 Era – Four servers with 64MB of memory. Employing 100 employees and signing its 1,000th customer. Reaching the DM100 million in revenues, and expanding abroad. The development of the SAP R/3 product generation. These and other landmark events are the subject of "The SAP R/3 Era." • 1992 – 2001: The Age of E-Business – Reaching €6 billion, and employing more than 24,000 employees. Trade shows and conferences. Going public, and developing new technologies and platforms. Learn more about SAP's meteoric rise in "The Age of E- Business." 13
  14. 14. • 2002 to Today: SAP Today – SAP's story continues with the SAP Net Weaver platform, whose technologies intertwine system landscapes and information flows, integrate companies and their employee teams, and establish connections among markets across virtually any perceived barrier. "SAP Today" describes the most recent technological and entrepreneurial milestones in SAP's continuing development. SAPSOLUTIONS: MAKINGYOUR BUSINESSABEST– RUN BUSINESS Designed for global operations and supported with globalization services, with a clear and fairlicensing model, SAP provides software solutions to optimize and innovate core businesses processes. World-class enterprise software, on-demand options, and preconfigured solutions designed for small businesses and midsize companies – along with new Innovations 2010 capabilities – deliver the business management software you need, as you need it, to address your business- building strategies. Enterprise Solution 14
  15. 15. • Business intelligence • Customer relationship management • Enterprise information management • Enterprise performance management • Enterprise resource planning • Governance, risk, and compliance • Human capital management • Manufacturing • Mobility • Product life-cycle management • Service and asset management • Supply chain management • Supplier relationship management • Sustainability SAP solutions for small businesses and midsize companies • SAP Business All-in-One • SAP Business By Design • SAP Business One • SAP Business Objects portfolio o SAP Business Objects Edge o Free trials • SAP Crystal solutions 15
  16. 16. On-demand solutions from SAP • SAP Business Objects BI On Demand • SAP Business By Design • SAP Carbon Impact • SAP CRM on-demand solution • SAP E-Sourcing on- demand solution • SAP Stream Work Rapid deployment solution • Rapid deployment of SAP Business Communications Management • Rapid deployment of SAP CRM • Rapid deployment of SAP IT Service Desk Operation SAPCRYSTALSOLUTIONS:- SIMPLE, AFFORDABLE, AND OPEN BI TOOLS FOR EVERYDAY USE SAP Crystal solutions – an integrated, affordable, intuitive family of offerings for reporting, dash boarding, presentation, and ad hoc analysis – can empower individuals in organizations of any size to discover and share insight for optimal decision making. With insight into every aspect of your business, you can monitor performance, identify opportunities for growth, and transform how you run your business. SAP Crystal solutions can help your business users, IT users, and developers do the following: • Turn data into actionable reports using SAP Crystal Reports software • Discover answers to business questions using SAP Crystal Interactive Analysis software 16
  17. 17. • Drive better decision making with interactive presentations using SAP Crystal Presentation Design software • Monitor business performance through real-time business dashboards using SAP Crystal Dashboard Design software • Rely on automatic delivery of personalized, secured dashboards and reports with SAP Crystal Reports Server software With SAP Crystal solutions, everyone in your organization can leverage a personalized view into trusted, timely, information. As a result, they can make fast, smart decisions – and you gain a competitive edge. SAPSERVICES:- Services by Business Concern • Custom solutions • Finance • Information technology • Operations • Predictive analytics • Risk management 17
  18. 18. • Sales and marketing • Testing 18
  19. 19. Introduction of Company Company Name:-Security Weaver The company Security Weaver established in 2004. Security Weaver, a leading provider of application controls management software for use with SAP and Oracle applications, is opened its office in Chandigarh, India. Housed in the Rajiv Gandhi Chandigarh Technology Park, the new Security Weaver technology center 19
  20. 20. provides additional software product development and support capabilities to respond to the high demand for the Company’s innovation SAP and Oracle applications software. Company has six security products, which provide security to an organization. Security Weaver also plans to add regional sales capabilities based in Chandigarh to service the growing demand for automated compliance solutions in India the Middle East and Asia Pacific. Company products:- 1. Separations enforce 2. Emergency repair 3. Secure provisioning 4. Process auditor 5. Secure enterprise 6. License management In today's regulatory environment there is a requirement to strictly manage the separation of duties in SAP. Companies which fail to monitor and control access to SAP transactions are exposed to significant risk of fraud and the potential for material misrepresentation of financial results. Security Weaver's Separations Enforcer focuses on employee roles, positions and transactions that are directly related to "function-based" potential SOD conflicts. The Security Weaver SOD compliance solution for SAP enterprise software produces an accurate analysis in a much shorter amount of time, and yields more accurate results than competing 20
  21. 21. first-generation solutions. The Security Weaver approach uses a highly detailed, multi-stage process that leverages remarkably accurate, prioritized SOD information tables that are developed using enterprise-specific financial knowledge to dissect each employee role at its most fundamental level. -Faster Compliance Verification -Security Weaver identifies potential functional conflicts faster, allowing enterprises to meet their compliance verification requirements quickly. -Lower Cost & Real-time Analysis and Reporting -Security Weaver's efficient "function- based" design reduces from days to seconds the time required for performing role analysis and reporting processes, thereby using fewer server resources and less manpower, and saving significant operating costs. -Simple and Powerful Design -Security Weaver is a comprehensive, efficient and sophisticated next generation solution that is easy to implement and maintain, enabling any member of an organization to use it without requiring expensive training, consulting, or additional support. -Integrated Approach -All essential components necessary for compliance are integrated into a single solution without the need to purchase additional, expensive add-ons. Providing emergency access to the SAP system is a necessity, especially when critical software modificationsnare needed after normal business hours. However, in gaining emergency access, temporarily authorized users may also have the opportunity to access and/or modify sensitive financial, personal or health-related information. Security Weaver's Emergency Repair (ER) solves these security issues by providing an automated and secure means of ensuring that emergency access to sensitive information can be fully controlled, documented, and audited. Security Weaver Emergency RepairTM (ER) is a security solution that enables emergency access to an SAP enterprise system in an automated and intuitive fashion with little human intervention. 21
  22. 22. Once access is granted, ER generates highly detailed records and documentation on all user activity, transactions, and accessed information. Security Weaver ER leverages existing SAP interface designs, application components, utilities, and tools to more effectively enable emergency access functionality. • Emergency access tied directly to individual's ID • All changes made with emergency access are tied with the user who has the access • Detailed field-level changes of changes (if table logging is active) • Email notifications during assignments of emergency access • Reduce Administrator time from mundane tasks To meet strict regulatory requirements, a laborious process of checks and balances must take place--with the bulk of the effort falling squarely on the shoulders of the IT group and business managers. Inefficient management of access control ultimately hinders employee productivity. The wait for approvals and verifying access rights often means users are unable to utilize critical systems for days. Worse, inappropriate user access goes unchecked, exposing the organization to greater risks of fraud. 22
  23. 23. To meet these challenges, many organizations are turning to automated user provisioning for SAP solutions. Secure Provisioning (SP) is the premier automated solution for user provisioning within SAP. It makes adding, modifying or deleting users smooth and efficient while ensuring that security and compliance rules are being adhered to. SP integrates tightly with the rest of our Security Weaver suite, allowing SOD's to be analyzed prior to submitting a request for approval. All parties who need to be involved, including end users needing access, multiple approvers, and auditors/security administrators (for mitigating controls) are notified and kept involved via email workflow. • Automate formerly manual user provisioning processes • Provide accountability and traceability of all provisioned users • Enable self-service functions, such as password changes and access requests • Speed the time it takes to grant users access Secure Enterprise extends the innovative design and unparalleled performance of Security Weaver's SOD conflict management module, Separations Enforcer, by providing an integration layer allowing organizations that run SAP to monitor SOD's across the enterprise. Secure Enterprise is delivered with a configurable, function based SOD Matrix that can be easily updated to provide a cross-platform SOD management framework for any system within your enterprise landscape including other ERPs, legacy applications and in-house or proprietary systems. 23
  24. 24. -Enterprise-wide SOD conflict management -Comprehensive assessment of segregation of duties conflicts in any application environment. -Faster Compliance Verification -Secure Enterprise identifies potential functional conflicts faster, thus closing the GAP on continuous compliance across the enterprise and limiting the time that your organization is exposed to compliance risk. -Lower Cost & Real-time Analysis and Reporting -Efficient "function-based" design reduces from days to seconds the time required for performing role analysis and reporting processes, thereby using fewer server resources and less manpower, and saving significant operating costs -Leverage Your Internal SAP Expertise -As with all Security Weaver products for SAP, Secure Enterprise is build using SAP technology and provides a low-cost approach to enterprise- wide application compliance automation. Security Weaver's new license management module (LM Module) is the only license management tool available which offers compliant license management automation integrated with automated user provisioning. Security Weaver's license management module delivers role-based license management tools that will allow your organization to optimize SAP and other complex licenses. With clear visibility into the cost of assigning specific roles, management will be able to make informed 24
  25. 25. cost decisions on the fly as user access is assigned using Security Weaver's Secure Provisioning (SP)TM application. Integration with Security Weaver's SOD tools Separations Enforcer (SE)TM and Secure Enterprise (EN)TM will ensure that roles are both cost-effective and compliant. Process Auditor provides organizations with an integrated approach to continuous compliance monitoring in SAP by delivering out-of-the-box functionality for monitoring end-user activity. The result, is a robust controls framework for your SAP environment that can help to identify fraud, misuse or errors in transactional processes. Process Auditor delivers a complete transactions control framework for Order to Cash (O2C), Purchase to Pay (P2P), Financial Controls (FIC) and SAP System Settings. Additionally, Process Auditor's Custom Controls 25
  26. 26. Workbench (CCW) provides your organization with the ability to build ad-hoc or proprietary controls for any SAP business process or custom transaction. -Automated Alerts and Case Assignment ensures that exceptions are routed properly for review by responsible parties. -Best Practices Process Controls includes out-of-the-box rule sets in an intuitive design that allows for immediate use. -Configurable Monitoring Capability allows running of specific controls in "true-real-time" or in batch. -Automated Reporting ranging from highly summarized to extremely detailed, and fully customizable Company tools provide true real time automation of SAP compliance tasks such as management of segregation of the duties (SOD) conflicts, full automation of the user provisioning process, control of emergency access, configurable process controls along with providing robust reporting and workflow capabilities. Our applications have been recognized as world-class in terms of performance, scalability, ease of installation and ease of use. Organizations throughout the world are using Security Weaver to provide a robust applications controls 26
  27. 27. framework in SAP while providing management, business, finance, IT and audit with the tools and visibility they need to reduce of fraud and ensure compliance. Company Services:- Overview of company services Security Weaver offers comprehensive consulting services to assist you with all of your SAP security support and development projects. Company staff of highly trained SAP security consulting has vast experience assisting companies like yours in resolving highly complex SAP security issues. Additionally, company offer risk assessments which provide you an overview of your current exposure. Security Weaver delivers real-time capabilities for managing SOD conflicts through the use of a predefined yet fully customizable SOD matrix. Security Weaver provides your enterprise with a combination of robust reporting and advanced monitoring of access to sensitive in SAP-A complete toolset. Company services:- • Risk evaluation • Security redesign • SOD analysis • SOX compliance • Traditional security 27
  28. 28. • Training Board of Directors of the Company:- Terry Hirsch (CEO) Sumit Sangha (Founder) Sandeep Gupta (Co-Founder) 28
  29. 29. Approach to Project SYSTEM ANALYSIS:- 29
  30. 30. System analysis is a process of gathering and interpreting facts, diagnosing problems and the information to recommend improvements on the system. It is a problem solving activity that requires intensive communication between the system users and system developers. System analysis or study is an important phase of any system development process. The system is studied to the minutest detail and analyzed. The system analyst plays the role of the interrogator and dwells deep into the working of the present system. The system is viewed as a whole and the input to the system are identified. The outputs from the organizations are traced to the various processes. System analysis is concerned with becoming aware of the problem, identifying the relevant and decisional variables, analyzing and synthesizing the various factors and determining an optimal or at least a satisfactory solution or program of action. A detailed study of the process must be made by various techniques like interviews, questionnaires etc. The data collected by these sources must be scrutinized to arrive to a conclusion. The conclusion is an understanding of how the system functions. This system is called the existing system. Now the existing system is subjected to close study and problem areas are identified. The designer now functions as a problem solver and tries to sort out the difficulties that the enterprise faces. The solutions are given as proposals. The proposal is then weighed with the existing system analytically and the best one is selected. The proposal is presented to the user for an endorsement by the user. The proposal is reviewed on user 30
  31. 31. request and suitable changes are made. This is loop that ends as soon as the user is satisfied with proposal. Preliminary study is the process of gathering and interpreting facts, using the information for further studies on the system. Preliminary study is problem solving activity that requires intensive communication between the system users and system developers. It does various feasibility studies. In these studies a rough figure of the system activities can be obtained, from which the decision about the strategies to be followed for effective system study and analysis can be taken. Existing system:- In the existing system the changes cannot be made due to its rigidness but in proposed system we can make changes by using this software. • Lack of finding conflicts • Don’t show any errors • More rigidity • Lack of security of data 31
  32. 32. Proposed system:- The aim of proposed system is to develop a system of improved facilities and find all conflicts. The proposed system can overcome all the limitations of the existing system. The system provides: • Proper find the conflicts • Show error to user • Ensure data accuracy • SAP ERP concept FEASIBILITY STUDY:- Feasibility study is made to see if the project on completion will serve the purpose of the organization for the amount of work, effort and the time that spend on it. Feasibility study lets the developer foresee the future of the project and the usefulness. A feasibility study of a system proposal is according to its workability, which is the impact on the organization, ability to meet their user needs and effective use of resources. Thus when a new application is proposed it normally goes through a feasibility study before it is approved for development. The document provide the feasibility of the project that is being designed and lists various areas that were considered very carefully during the feasibility study 32
  33. 33. of this project such as Technical, Economic and Operational feasibilities. The following are its features: 1. TECHNICAL FEASIBILITY The system must be evaluated from the technical point of view first. The assessment of this feasibility must be based on an outline design of the system requirement in the terms of input, output, programs and procedures. Having identified an outline system, the investigation must go on to suggest the type of equipment, required method developing the system, of running the system once it has been designed. Technical issues raised during the investigation are:  Does the existing technology sufficient for the suggested one?  Can the system expand if developed? The project should be developed such that the necessary functions and performance are achieved within the constraints. The project is developed within latest technology. Through the technology may become obsolete after some period of time, due to the fact that never version of same software supports older versions, the system may still be used. So there are minimal constraints involved with this project. The system has been developed using Java the project is technically feasible for development. 33
  34. 34. 2. ECONOMIC FEASIBILITY The developing system must be justified by cost and benefit. Criteria to ensure that effort is concentrated on project, which will give best, return at the earliest. One of the factors, which affect the development of a new system, is the cost it would require. The following are some of the important financial questions asked during preliminary investigation:  The costs conduct a full system investigation.  The cost of the hardware and software.  The benefits in the form of reduced costs or fewer costly errors. Since the system is developed as part of project work, there is no manual cost to spend for the proposed system. Also all the resources are already available, it give an indication of the system is economically possible for development. 34
  35. 35. 3. BEHAVIORAL FEASIBILITY This includes the following questions: • Is there sufficient support for the users? • Will the proposed system cause harm? The project would be beneficial because it satisfies the objectives when developed and installed. All behavioral aspects are considered carefully and conclude that the project is behaviorally feasible. 35
  36. 36. SYSTEM REQUIREMENT SPECIFICATIONS Need for SRS: Basic purpose of SRS is to bridge the common gap between the client and the developer. SRS is the medium through which the client and the user needs are specified. Indeed SRS forms the basis of the software development. Another important purpose of developing an SRS is helping the clients understand their own needs. In order to satisfy the clients which is the basic quality objective of software development, the client has to be made aware of various potentials and helps in visualizing and conceptualizing the needs and requirements of his organization. Software attributes • The application should be reliable. • Possible errors during data updating & deletion the system should be able to handle them either by maintaining its state or giving meaningful error messages. • Since the nature of the information is confidential , only authorized personnel should be able to get in to the application to update or make changes. • The application should be available to the user most of the time. • The application availability depends on the availability of the Oracle database. • The software should be easily maintainable. 36
  37. 37. Quality attributes • The generated problems should be solvable most of the time. The project should provide with enough data validation and error messages so that the user can be able to understand while using the project. Possible scenarios include user trying to insert incomplete system details without a system above it, incomplete updating, incorrect data in the fields etc. PERFORMANCE SPECIFICATIONS: Each and every software system has always some problem constraints with them. These constraints described have to be checked during the evaluation of the system. Mainly there are two types of performance specifications Static and dynamic Static performance specifications are those that do not impose any constraints on the execution characteristics of the system for example number of simultaneous users to be supported and the number of files and the size that the system has to process. Dynamic performance specifications put constraints on the execution behavior of the system. These constraints include the response time, throughput etc. 37
  38. 38. A few of the indispensable performance specifications are: Response time and processing time: Response time is the time from the submission of the request until the first response is produced. This measure called the response time, is the amount of time it takes start responding, but not the time that it takes to output that response. Through the use of careful programming, it is achieved that the system has a quick response time. Being a large database to handle the progress bar control is used to establish the quick response time. Optimal throughput: Throughput is the measure of work. It is the number of processes that are completed per unit time. For long processes this can be one process per hour and for short transactions throughput can be ten processes per record. Portability: The developed system should be a reliable tone. The results that it will give must conform to the standards set prior to the development of the application. Robustness: System should be developed in such a way that it will be able to cope with all sorts of problems like invalid inputs and should warn the user to take appropriate action. Flexibility: 38
  39. 39. With the passage of time need for modification of the existing system arises. So the system should be flexible enough having scope for desirable changes. User Friendly: Finally, the system is going to be in the hands of the users since it is developed for them, if it falls to satisfy them then its going to be worth nothing. Thus this point will always be verified when moving from one phase to the next one. Scalable: The application should be scalable to meet the increased size of database in future. Presently full information regarding several computers is available in Intranet Mailing System. Assuming the branches can increase in future, it can be safely assumed that the Databases are scalable to the requirements at least for the next 10 years. 39
  40. 40. ADVANTAGES OF SRS 1) An SRS establishes the basis for agreement between the client and the developer on what the software will do. Through SRS the client clearly describes what it expects from the developer and the developer clearly understands what capabilities to build in the software. 2) An SRS provides a reference for validation of the final product that is the SRS helps the client determine if the software meets the requirements. Without a proper SRS there is no way a client can determine if the software being delivered is what was ordered. 3) There can be many errors made during the requirements phase. An error in the SRS may result in an error in the final product. If we want a high quality final software that has few errors we must begin with quality SRS. So a high quality SRS is a prerequisite to a high quality software. 4) The quality of SRS has also an impact on cost and schedule of the project. The cost of fixing an error increases exponentially as time progresses i.e. a requirement error if detected and removed after the system being developed can cost upto 100 times more than removing it during requirement phase itself. So, clearly we can have a tremendous reduction in the project cost by reducing the errors in the SRS. 5) A high quality SRS reduces the development cost, so the quality of the SRS impacts customer and developer satisfaction, system validation, quality of the final software and the software development cost. 40
  41. 41. System Configuration:- HARDWARE REQUIREMENTS Processor : Intel(R) Pentium(R) Dual CPU E180@2.00GHz RAM : 256GB Hard disk : 16GB Monitor : 15’4” Keyboard : 104 Keys Mouse : 2 buttons/ 3 buttons SOFTWARE REQUIREMENTS Operating System : Windows 2000/XP Front end : JAVA Back end : SAP 41
  42. 42. SYSTEM DESIGN:- System Design is the process of developing specifications for a candidate system that meet the criteria established in the system analysis. The plan of the project provides a review of the different modules in which the project is divided. The modules are designed and tested individually and then merged together to form an integrated project. The main objective of the system design is to make the system user-friendly. System design involves the various stages:- 1. Data entry 2. Data correction 3. Data deletion 4. Processing 5. Sorting and indexing 6. Report generation System design is the creative act of invention, developing new inputs, a database, offline files, procedures and output for processing business to meet an organization objective. System design builds information gathered during the system analysis. Characteristics Of A Well Defined System:- In design, an efficient and effective system is of great importance to consider the human factor and equipment that these will require to use. System analyst must evaluate the capabilities and limitations of the personal and corresponding factors of the equipment itself. 42
  43. 43. The characteristics associated with the effective system operations:- 1. Accessibility 2. Decision Making Ability 3. Economy 4. Flexibility 5. Reliability 6. Simplicity Design Concepts Abstraction Abstraction means one to concentration on a problem at some level of generalization without regard to irrelevant low level details. Refinement Refinement means a process of elaboration. It causes to elaborate on the original statement, providing more and more detail as each successive refinement occurs. Comparison between Abstraction and Refinement Abstraction and refinement are complementary concepts. Abstraction enables a designer to specify procedure and data and yet suppress low-level details. Refinement helps the designer to reveal low-level details as design progresses. Both concepts aid the designer in creating a complete design model as the design progresses. 43
  44. 44. Modularity Modularity means dividing the software into separately named and addressable components, often called modules. The advantage of modularity is to integrate the modules to satisfy problem requirements. Procedure The Software Procedure focuses on the processing details of each module individually. Procedure provides a precise specification of processing, including sequence of events, exact decision points, repetitive operations, and even data organization and structure. Data Structure Data structure is a representation of the logical relationship among individual elements of data. Information hiding The design of modules enables the information (procedure and data) to be inaccessible to other modules. This helps in implementing information hiding. Coupling Coupling is a measure of interconnection among modules in a software structure. Coupling depends on the interface complexity between modules, the point at which entry or reference is made to a module, and the data pass across the interface. 44
  45. 45. The representative diagram for design model is as shown below Data Design The data design transforms the information domain model created during analysis into the data structures. The data objects and relationships defined in the object modeling (i.e. class diagram) and the detailed data depicted in the data dictionary provide the basis for the data design activity. From the information available in the data dictionary, the developer needs to normalize the real world data into consistent information. In order to convert into consistent information I applied the following database normalization principles. Functional Dependency I am considering the relation “Employee” in my project. Let X (i.e. Mechid) and Y (i.e. Name) are the two attributes of the relation “Employee”. Then “Employee” satisfies the functional dependency, X points to Y if a given set of values for each attribute in X uniquely determines each of the values of the attributes in Y. Then Y is said to be functionally dependent on X. 45 Data Design Architectural Design Interface Design Component Level Design
  46. 46. Architectural Design The architectural design defines the relationship between major structural elements of the software, the “design patterns” used to achieve the requirements that have been defined for the system, and the constraints that affect the way in which architectural design patterns are applied. The software architecture of a program or computing system is the structure or structures of the system, comprise software components, the externally visible properties of those components, and the relationship among them. There are various architectural styles exist and the same is indicated below Data – centered Architecture Data flow architecture Call and return architecture Object Oriented architecture Layered architecture Of the above architectural styles, Data-centered architecture is applicable to my project. In this style data store (i.e. database) at the center of this architecture and is accessed frequently by other components that update, add, delete, modify data within the store. Client software accesses a central repository. That is, the client software accesses the data independent of any changes to the data or the actions of other client software. The advantage of data-centered architecture is it promotes interoperability. Existing components can be changed and new client components easily added to the architecture. without concern about other clients. Client components independently execute processes. Interface Design 46
  47. 47. User interface design creates an effective communication medium between a human and a computer. I followed the following golden rules while designing user interface Place the user in control 1) Define interaction modes in a way that does not force a user into unnecessary or undesired actions. 2) Provide for flexible interaction. 3) Allow user interaction to be interruptible and undoable. 4) Hide technical internals from the user. 5) Design for direct interaction with objects that appear on the screen. Reduce the user’s memory load 1) Reduce demand on short-term memory. 2) Define shortcuts, which are intuitive. 3) The visual layout of the interface should be based on a real world metaphor. 4) Establish meaningful defaults. 5) Disclose information in a progressive fashion. Make the interface consistent 1) Allow the user to put the current task into a meaningful context. 2) Maintain consistency across a family of applications. 3) If past interactive models have created user expectations, do not make changes unless there is a compelling reason to do so. Component Level Design 47
  48. 48. Component level design (i.e. procedural design) occurs after data, architectural and interface design have been established. Component level design establishes the algorithmic detail required to manipulate data structures, effect communication between software components via interfaces, and implement the processing algorithms allocated to each component. Component level design depicts the software at a level of abstraction very close to code. In order to accomplish this, I use the following design notations to represent component level design in graphical and tabular formats. Example case studies are given below. Output Design The starting point of the design process is the proper knowledge of system requirements, which will normally be converted in terms of output. Output of the IMS is two types. Operating Output These outputs are mainly generated for various indications as to how the system operates. These types of outputs are not implemented in this project CODE EFFICIENCY When we produce large programs, it often happens that extra code is left in the project. This extra code can be unused subs and functions, old variables, unnecessary constants, even Types and Enums. Extra code takes up disk space, slows down the program and it also makes it harder to read. Since this code is not needed, it is also called dead code. The opposite of dead code is live code. You can trace the dead code and then remove. One needs to detect questionable programming practices and code. Problem categories: Problems fall into in to 4 categories: 48
  49. 49. Optimization. These problems adversely affect the speed and size of the resulting program. Style. These problems are related to the programming style. They don't necessarily lead to problems in the short run, but they often lead to confusion and further errors in the future. Metrics is a sub-category of Style. You can set target values for different metrics and monitor to find out if some part of your program exceeds the limits. Functionality. These problems affect the run-time functionality of the program. The reason is often that somebody forgot to do something! One can create quick check filters and strict filters for giving code a final polish. The filters are: Dead code Check deadness only Disable checking Disable all problem checking Functionality Report problems affecting functionality only Optimizations Report problems related to optimization only Strict Report all problems Style Report problems related to style issues only DATA FLOW DIAGRAM:- 49
  50. 50. A Data Flow Diagram (DFD) is a diagram that describes the flow of data and the processes that change or transform data throughout a system. It’s a structured analysis and design tool that can be used for flowcharting in place of, or in association with, information oriented and process oriented system flowcharts. When analysts prepare the Data Flow Diagram, they specify the user needs at a level of detail that virtually determines the information flow into and out of the system and the required data resources. This network is constructed by using a set of symbols that do not imply a physical implementation. The Data Flow Diagram reviews the current physical system, prepares input and output specification, specifies the implementation plan etc. Four basic symbols are used to construct data flow diagrams. They are symbols that represent data source, data flows, and data transformations and data storage. The points at which data are transformed are represented by enclosed figures, usually circles, which are called nodes. Data Flow Diagram Symbols:- _ Source or Destination of data 50
  51. 51. _ Data Flow _ Process _ Storage Level 1 Login Detail of Administrator 51
  52. 52. Login Details Level 2 New User Request 52 Administrator Login Software Testing Data New User
  53. 53. Level 3 Role AcceptReject 53 Login New User Login Software Testing Process Reason Reason Req. Last Name Req. First Name Req. Email Req. User Id Person No. Supervisor Last Name Supervisor First Name Email Roles
  54. 54. Screen Shorts:- 54 Login New user Login Approver Select Role View Accept / Reject
  55. 55. We have five security products, and we have to do unit testing of one security product (Secure Provisioning). We are doing testing for better output and fulfill customer requirements. If there should be any error so we can find it in testing. Firstly we choose the product and log in SAP logon. 55
  56. 56. Here, we have security product Secure Provisioning. There are some sub tabs in this product and we will do the unit testing. We take some sub tabs and test them. Firstly, we have a screen on desktop. We will log in SAP logon 710. 56
  57. 57. After log in on SAP logon 710, there will be SAP R/3 named screen come in the front of us. Here enter the user name and password then press enter. 57
  58. 58. Then SAP Easy Access named screen come in the front of us. There are a green color tick sign on the screen click on that and you will have a new screen on your desktop. 58
  59. 59. Here, you will have a Secure Provisioning screen come in front of you. Then fill particular code in the blank white box and press enter. 59
  60. 60. 60
  61. 61. Approver Tab(Request in detailed view) 61
  62. 62. 62
  63. 63. Back End: Assign Request Tab Sub tab Approver 63
  64. 64. Subtab Approver filled with data Test Sheet 64
  65. 65. 65
  66. 66. Coding:- 66
  67. 67. Modular and subsystem programming code will be accomplished during this stage. Unit testing and module testing are done in this stage by the developers. This stage is intermingled with the next in that individual modules will need testing before integration to the main project. Coding, in computer terms, is the process of writing, assembling, and compiling computer code. Code is simply the instructions for hardware and software. HTML is a kind of computer code or language that you can use to create your own web pages. Types of Coding:- Source coding  Code data to more efficiently represent the information.  Reduces “size” of data  Analog – encoding analog source data into a binary formal  Digital – reduce the “size” of digital source Channel coding  Code data for transmition over a noisy communication channel  Increases “size” of data  Digital – add redundancy to identify and correct errors  Analog – represent digital values by analog signal Complete  “Information Theory” was development by Claude Shannon Testing:- 67
  68. 68. It is the process used to help identify the correctness, completeness, security, and quality of developed computer software. Testing is a process of technical investigation, performed on behalf of stakeholders, that is intended to reveal quality-related information about the product with respect to the context in which it is intended to operate. This includes, but is not limited to, the process of executing a program or application with the intent of finding errors. Quality is not an absolute; it is value to some person. With that in mind, testing can never completely establish the correctness of arbitrary computer software; testing furnishes a criticism or comparison that compares the state and behaviour of the product against a specification. An important point is that software testing should be distinguished from the separate discipline of Software Quality Assurance (SQA), which encompasses all business process areas, not just testing. The development process involves various types of testing. Each test type addresses a specific testing requirement. The most common types of testing involved in the development process are: • Unit Test. • System Test • Integration Test • Functional Test • Performance Test • Beta Test • Acceptance Test Unit Test The first test in the development process is the unit test. The source code is normally divided into modules, which in turn are divided into smaller units called units. These units have specific behavior. The test done on these units of code is called unit test. Unit test depends upon the language on which the project is developed. Unit tests ensure that each unique path of the project performs accurately to the documented specifications and contains clearly defined inputs and expected results. 68
  69. 69. System Test Several modules constitute a project. If the project is long-term project, several developers write the modules. Once all the modules are integrated, several errors may arise. The testing done at this stage is called system test. System testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points. Testing a specific hardware/software installation. This is typically performed on a COTS (commercial off the shelf) system or any other system comprised of disparent parts where custom configurations and/or unique installations are the norm. Functional Test Functional test can be defined as testing two or more modules together with the intent of finding defects, demonstrating that defects are not present, verifying that the module performs its intended functions as stated in the specification and establishing confidence that a program does what it is supposed to do. Acceptance Testing Testing the system with the intent of confirming readiness of the product and customer acceptance. Ad Hoc Testing Testing without a formal test plan or outside of a test plan. With some projects this type of testing is carried out as an adjunct to formal testing. If carried out by a skilled tester, it can often find problems that are not caught in regular testing. Sometimes, if testing occurs very late in the development cycle, this will be the only kind of testing that can be performed. Sometimes ad hoc testing is referred to as exploratory testing. Alpha Testing Testing after code is mostly complete or contains most of the functionality and prior to users being involved. Sometimes a select group of users are involved. More often this testing will be performed in-house or by an outside testing firm in close cooperation with the software engineering department. 69
  70. 70. System Implementation A crucial phase in the system life cycle is the successful implementation of the new system designed. Implementation includes all those activities that take place to convert from the old system to the new one. The new system may be completely new, replacing an existing manual or automated system or it may be major modification to an existing system. In either case, proper implementation becomes necessary so that reliable system based on the requirements of the organization can be provided. It is the process of converting old computerized software with the newly developed software and making it operational without affecting functioning of the other software in the computer system. Types of Implementation: There are basically three types of implementation. Fresh implementation: - Implementation of a totally new computerized Software. Replacement implementation: - Implementation of new computerized software, By replacing the old computerized software. Modified implementation:- 70
  71. 71. Implementation of a modified computerized Software by replacing old computerized software. Implementation includes: • Training of personnel • Conversion procedures • Post-implementation review or evaluation Training of personnel: The high quality training is an essential step in systems implementation. Hence to provide the training to personnel they have been provided user manuals. They are asked to read it carefully and same thing try practically on computer. If they don’t understand any thing, can ask without any hesitation. They are asked to enter the data, which is more frequently entered, and print the reports are frequently printed. Users are told about those situations, which he must understand and he should able to handle it. Conversion method: The direct conversion method is applied. This method converts from old to the new system abruptly. The old system is used till a planned conversion day. The organization relies fully on the new system. Evaluation or post implantation review : After the system is implemented and conversion is complete, a review is conducted to determine whether system is meeting expectations and where improvements are needed. A post implementation review measures the systems performance against pre-determined requirements. It determines how well the system continues to meet performance specifications. It also provides information to determine 71
  72. 72. whether major re-design or modification is required. In evaluation system is checked against the pre-determined requirements. All the requirements have been fully attained. Where there was any mistake that had handled through system life cycle. Problem is solved and checked against the original facts. REVIEW PLAN: For review a team is planned. The Team shall prepare a formal plan around the objectives of the review. An overall plan covers the following areas: Administrator Plan: Review area objectives, operating costs, actual operating performance and benefits. Personnel Requirements Plan: Review performance objectives and training performance to data. Hardware Plan: Review performance specifications Documentation Review Plan: Review the system development efforts. i. Administrative Plan (a) User Objective: This is an extremely crucial area since it may be possible that over a period of time the system does not meet the initial objectives of the user or objectives get changed as a result of changes in the overall objectives of the organization. The results of the evaluation are documented for future reference. 72
  73. 73. (b) Operating costs and benefits: Under the administration plan, current budget designed manipulate costs and savings of the system will closely reviewed. ii. Personnel Requirement Plan (a) Personnel old performance objectives will be compared with current performance levels. (b) Training performance through testing, conducting interviews and other data gathering techniques. iii. Hardware Plan (a) The hardware of the new system will also review. But as we are using existing hardware which full fill the requirement of project. Hence the cost of hardware is not increased. iv. Documentation Review Plan: The reason for review plan is to evaluate the accuracy and completeness of the documentation compiled to date and to its conformity with documentation standards established earlier. System maintenance The last part of system development life cycle is system maintenance, which is actually the implementation of the post-implementation plan. Hence Programmers/ Analyst spends sufficient time for maintaining programs. Hence maintenance will cover a wide range of activities including correcting coding and design errors, updating documentation and test data and upgrading user support. Many 73
  74. 74. activities classified as maintenance actually fall under enhancements. Hence in maintenance of system enhancement also takes place. Therefore in maintenance addition, modification, re- developing of code will take place to support changes in specification. Maintenance is the enigma of system development. It holds the software industry captive, typing up programming resources. Analysts and programmers spend far more time maintaining programs than they do writing them. It basically includes the following activity: • Correcting design errors • Correcting coding errors • Updating, documentation and test data • Adding, modifying or redeveloping the code • Regular acceptance and validation testing Maintenance can be classified as corrective, adaptive, or perfective. Corrective maintenance means repairing processing or performance failures or making changes because of previously uncorrected problems or false assumptions. Adaptive maintenance means changing the program function. Perfective maintenance means enhancing the performance or modifying the programs to respond to the user’s additional or changing needs. Of these types, more time and money are spent on perfective than on 74
  75. 75. corrective and adaptive maintenance together Maintenance covers a wide range of activities, including correcting coding and design errors, updating documentation and test data, and upgrading user support. Many activities classified as maintenance are actually enhancements. Maintenance means restoring something to its original condition. Unlike hardware, however, software does not wear out; it is corrected. Conclusion The conclusion is drawn from the study of the company regarding the Software Testing carried out there. The Software Testing at Security Weaver designed to attract to their customers. Company provides to their customer’s security products for their organization security. Testing is not only used to locate defects and correct them. It is also used in validation, verification process, and reliability measurement. Complete testing is infeasible. Complexity is 75
  76. 76. the root of the problem. At some point, software testing has to be stopped and product has to be shipped. The stopping time can be decided by the trade-off of time and budget. Or if the reliability estimate of the software product meets requirement. To conclude, I, d like to compliment the team at Security Weaver for the wonderful job done by them & provide the right software to their customers. Bibliography Books:-  Software Engineering: A Practitioner’s Approach by Roger S.Pressman  Software Engineering by Pankaj Jalote  Software Testing Principles and Practice by Srinivsan Desikan, Gopalaswamy Ramesh 76
  77. 77. Sites:-  http://www.google.co.in/#hl=en&source=hp&q=google+sites&aq=0&aqi=g10&a ql=&oq=google+si&gs_rfai=&fp=1bdd5d5e97595c3d  http://www.securityweaver.com/default.asp  http://www.wikipedia.org/  http://www.sap.com/index.epx 77