Phase II: Project Design 1. Design 1.1 Use case diagram A use case diagram provided as follow. The actor for this system is developer who will initiate the events involved in each task. A developer calls the Jbuilder to make a new DB application . After the application created he can choose which bean he want to use(Connection Bean, DBTable Bean, DrawChart Bean and Copy File bean). For each particular bean, developer should set correct value for each properties. 1.2 Class diagram For the Database Connection Bean, we are going to develop a java bean component to connect to database, as shown below. The user enters or selects a JDBC driver, a database URL , a username, and a password, and clicks the Connect button to connect to the database. Once connected, an instance of the Connection interface can obtained from the getConnection Bean. In the database connection bean, after user input the JDBC driver, database URL, username and password , connectionPanel will pass all these information to the ConnectionClass which will verify the information and return a connection object back to connectionPanel. Then, connectionPanel will send the connection object to the bean upon user’s requirment. DatabaseTable bean is a useful utility that displays all the rows of a database table in a Jtable , allow user to navigate and modify it’s content. This bean consists two classes: CreateTable and NewRecordDialog. Once the database is connected, the table contents are displayed in an instance of CreatTable. The CreateTable class is a JavaBean component that can be used to browse a table and modify a table. An instance of NewRecordDialog is displayed to let user enter a new record when user click the Insert button in CreateTable. The DrawChart bean will provide a statistic view of data information currently in the databasetable. By using this bean, user can draw a pie chart, a bar chart, or both of them. DrawChart class is a JavaBean component with GUIs in it. Once received the connection object passed by connectionPanel class, it will select the useful information or data and pass them to PieChart class and BarChart class by using an instance of ChartModel. After get the data, PieChart and BarChart will automatically draw charts on the GUIs. For the copy bean, we can get data from a text file and copy the data to a table. Before add the data to database user can have a look at the content of the text file, then go ahead to save it to databse. The following is the class model for the whole DB JavaBean project, which almost includes all the major classes in the project. The diagram gives an overview of the whole system by showing its classes and the relationships among them. It models a developer develop a database project by using beans. The central class is Frame1, which likes a controller for the whole project. Associated with it are connection bean, database table bean, drawchart bean, and copyfile bean. The Frame1 will decide which bean will be used and by how. By using connectionPanel bean, user can set properties to each bean. 1.3 Sequence diagram Sequence diagram describes how different classes collaborate in the DB JavaBean project. It is an interaction diagram that details how operations are carried out -what messages are sent and when. As shown as follow, the whole diagram organized according to time. The time progresses as you go down the page. The objects involved in the operation are listed from left to right according to when they take part in the message sequence. 2. Formal specification and prototyping English version of pre and post condition. For the database connection bean: Operation1 :select JBDC driver and Database URL Pre: none JDBC driver and Database URL were selected Pos: User specify what kind of database he/she want to connect to and select driver and URL from the list of the combo box. Operation2: Give the correct Username and Password for database access Pre: None username and password were given at the beginning. Pos: User fill in his/her username and password, the system will verify the if the information is correct. If not, show the error message on status bar. Operation3: Use database table bean Pre: The connectToTable property of connectionPanel is set to false by default. Which means database bean will not be used. Pos: Set the connectToTable property value to be true. Operation4: Use drawChart bean Pre: The DrawChart property of connectionPanel is set to false by default. Which means drawChart bean will not be used. Pos: Set the DrawChart property value to be true. Operation5: Use copyFile bean Pre: The CopyFile property of connectionPanel is set to false by default. Which means CopyFile bean will not be used. Pos: Set the CopyFile property value to be true. Operation6: check if get the correct information from database. Pre: There will be nothing in the table at the beginning. Pos: After connected to the database, the records shown in the table should be exactly the same as what in the database. [ Operation7: insert a new record Pre: database don’t have that record. Pos: database have all the record including the one just added. Operation8: delete a new record Pre: the record we want to be deleted was already in the database Pos: this particular record is removed from database Operation9: update a record Pre: the record with the information user want to modify was in the database. Pos: the record with information modified by user is in the database. Operation10: use drawChart bean(nameToshow, a property value, let program know will column will be shown as names in charts) Pre: the nameToShow value of drawBean was 0 as default Pos: set a value to nameToShow. Operation11:use CopyFile bean Pre: there are no input file at the beginning. Pos: user specifies a file to be load. 3. Software quality assurance plan Software quality assurance plan Purpose The purpose of Software Quality Assurance (SQA) Plan is to serve as a guideline to [ ensure the quality of the project. It [ provides a way to manage software quality for "Data Base Java Beans Application" project. This plan will identify the SQA responsibilities of the project developer; define reviews and audits and how they will be conducted and list the activities, processes; and identify the SQA work products. References Software Management fifth edition Donald J.Reifer IEEE Standard for Software Test Documentation, IEEE Std 829-1983 IEEE Standard for Software Quality Assurance Plans, ANSI/IEEE Std 7301989 IEEE Guide for Software Quality Assurance Planning, DRAFT, P730.2/D4 Management Organization: Organization structure: Committee: Drs. Bill Hankley, Daniel Andresen and Mitchell Neilsen Major professor: Dr. Bill Hankley Developer: Feng Chen Responsibilities: The developer will be responsible for project specification, design and implementation under the supervision of the major professor and report to all the committee members in the form of three presentations with one at end of each phase. The major professor suggests the topic of the project and general requirements, supervises and audits the whole development process of the project. The committee will oversee and review the work performed by the developer, provide feedback and advice, and audit the whole developement process during the three presentations of the project. Tasks: In phase I, the developer must finish a) project overview b) cost estimate c) project plan. In Phase II, the developer must finish a) object model and sequence diagram b) SQA plan c) test plan d) formal technical review e) formal specification. In Phase III, the developer must finish a) source code b) testing c) evaluation d) references, user manual (including installation instructions and user manual) Documentations The following documents will be provided at the end of each phase: Phase 1: Software Requirement Project Overview Project plan Cost Analysis System Requirements Specification (SRS) Phase 2: Software Design Software Quality Assurance (SQA) Plan System diagrams: Use case model, Object Model, sequence diagram, database snowflake schemas Formal Specifications (in OCL) Test Plan Formal Technical Review (checklist) Phase 3: Software Implementation Source Code, testing code. Web tutorials (general concepts) and user manual . Installation guidance: Detailed installation instructions fro Jbuilder. Testing and Reliable Evaluation (including testing code) Project Evaluation Standard, Practices, Conventions, and Metrics Standards Document Standards – MSE portfolio Coding Standards - Java 1.3 or later Coding Documents - Java Documentation Test Standards - IEEE Standard for Software Test Documentation Metrics Line of code(LOC) is used to measure the size of the software Programmer-month is used as another measure of the software Review and Audits There will be three formal presentations prepared by the developer and evaluated by the committee at the end of each phase. Test, Tools, Techniques, and Methodologies Test: As per Test Plan Tools and techniques: Jbuilder: development IDE Together6.0 : UML model design Oracle : Database Server Problem Reporting and Corrective Action N/A Training N/A Risk Management N/A 4 Test plan Identifier "chen001-testplan-v001" Introduction This test plan will provide test cases for testing “The database java Beans Applications” project. The purpose of the plan is to ensure that proposed functionality of the project can be implemented properly as specification defined. Test Items Unit testing: test major functionalities of each bean Integration testing: test if each bean work well when put all of them together. Test cases DatabaseURL: Incorrect input: wrong database url selected—should not let user connect to database Correct input :select the correct url for database —should let user connect to database DatabaseDriver: Incorrect input: wrong database driver selected—should not let user connect to database Correct input :select the correct url for database —should let user connect to database Logon: Incorrect input: empty/wrong user name and/or empty/wrong password— should not let user logon Correct input: right user name and password—should let user logon Update the data information: Incorrect input: empty required field(s)—should not update or tell user to fill in the required field(s) Correct input: fill in all required field(s)—should update accordingly Delete unwanted product from table: Incorrect input: empty selection of item—should tell user to select certain item then press delete button Correct input: select item(s)—should delete selected item(s) from purchase line items Use database table bean: Incorrect input: do not set the connecttoTable property of ConnectionPanle on the Properties tab of the Inspector or do not add connectionpanel1.setTable(createTable1) to the controller class— database table bean should not work correctly. Correct input :set connecttoTable property to be true and add line “connectionpanel1.setTable(createTable1)” to the source—database table bean will work. Use draw chart bean: Incorrect input: do not set the drawChart property of ConnectionPanle on the Properties tab of the Inspector or do not add connectionpanel1.setChart(newChart1) to the controller class— draw chart bean should not work correctly. Correct input :set drawChart property to be true and add line “connectionpanel1.setChart(newChart1)” to the source—draw chart bean will work. Use Copy File bean: Incorrect input: do not set the copyFile property of ConnectionPanle on the Properties tab of the Inspector or do not add connectionpanel1.setCopy(newcopyfile1); to the controller class— copy file bean should not work correctly. Correct input :set copyFile property to be true and add line “connectionpanel1.setCopy(newcopyfile1);” to the source—Copy File bean will work. To use the Copy File bean: Incorrect input: wrong input file format—could not read the file correctly Correct input : change the format of input follow the instruction—could read information from file. To use the Draw Chart bean: Incorrect input: do not set nameTo and numbers property — charts will not show up Correct input: set the correct value to these two properties charts will show up Pass/fail criteria Testing is finished when all tests have been successfully completed. Suspension criteria If any defects are found during testing, the code shall be fixed, then testing will be resumed. The defects will be tested all over again. Deliverables Test plan Test cases Resolution of defects Test input and test output data Responsibilities The developer is responsible for all the testing activities to be carried out. Approvals Approved by Committee members. 5 Develop a formal checklist and a formal report 10.1 Introduction A formal technical inspection or formal technical review (FTR) is a quality assurance activity for software. It aims to find and eliminate software defects. Formal inspections may be applied to any product or partial product of the software development process, including requirements, design, and code. Formal inspections are embedded in the process of developing products and are done in the early stages of each product's development. 10.2 Software requirement specification (SRS) checklist[4] Completeness Does this project include all user requirements (as defined in the concept phase)? Is a user manual submitted at the end of this project? Does code match the design? Does the design reasonable? Consistency Is there any internal inconsistency between the software requirements? Does this application work on all version of Jbuilder? Is this project compatible with different hardware? Is the database application platform-independent? Correctness Is there justification for the design/implementation constraints? Feasibility Will the design(models), operation( coding), and maintenance(manuals) of software be feasible? Modifiability Are different components organized to allow for modifications? Is each unique bean easy to be reused? Traceability Does this database application completely cover the requirements defined by client? Understandability Is the language ambiguous? Is the user manual understandable? Maintainability Does the documentation follow MSE portfolio? Is the documentation clear and unambiguous? Verifiability/Testability Are the requirements verifiable (i.e., can the software package be checked to see whether requirements have been fulfilled)? Clarity Are names indicative of their meaning? Is each concept defined only once, with one clear meaning? Is each statement written as clearly as possible? Functionality Does the design implement the specifications and requirements? Reliability Are abnormal conditions considered? Are the defect conditions/codes/messages specified completely and meaningfully?
© Copyright 2026 Paperzz