-
Notifications
You must be signed in to change notification settings - Fork 0
Project Management Plan
The project aims to automate the testing process of a website's User Interface (UI) to ensure its quality before deployment on AWS. By collecting data from a CSV file and comparing it with the values displayed on the website, the project will test the UI. The project involves designing, implementing, and testing the code on the company's website, generating a report of passed and failed tests. The project will record and store the test results for future access. Risks include technical, schedule, resource, budget, external, communication, and data privacy & security. The project requires a Python Developer, access to the company's test website, and necessary development tools. Key stakeholders will receive regular updates through various communication channels. The Quality Management Plan prioritizes functionality and optimization of the code. The Change Management Plan outlines the process for identifying, evaluating, approving/rejecting, implementing, and monitoring changes. Upon project closure, deliverables include a functional testing system and documentation for usage.
The project aims to automate the process of testing the user interface of four web applications for the software company IEMS. We want ot ensure the quality of the build before deploying in on AWS for clients! The data that is shown on the UI will bo compared with the data sent by the json object from the backend. These values will be tested to make sure they are right. The project will involve designing, developing, and testing this new application for the company! Then a report will be generated from the results of the testing to help the developers fix the issues with each platform! Test results and issues will be recorded and saved on a cloud database for future access! This project will be coded in java using the selenium webdriver library!
Week One:
- Finish the Automation course (20 hours)
- Create a Data Flow Diagram for the App
- Design the UI of the app
- Created a sample project for selenium to understand what has to be done
Week Two:
- Create the basics of the UI
- Create a test NVM
- Present to team
Week Three:
- Complete the history object
- Complete the Issues object
- Make a list of features to add
- Create the gantt chart for the project
- Connect the application to a database cloud
- Create the local database
- Create the database sync module
- Add User authentication to the software
Week Four:
- Create the Test history panel
- Create the search feature for the history panel
- Create the sort feature for the history panel
- Create the Issues panel
- Create the search feature for the Issues panel
- Create the sort feature for the Issues panel
Week Five:
- Develop the test for DLC demo software
Week Six:
- Develop the Test for DERMS Software
Week Seven:
- Develop the Test for the PA SaaS Software
Week Eight:
- Develop the Test for the CALFUSE Software
The project budget is broken down as following:
- Equipment Cost: 0$
- All the equipment will be provided by the developer
- Labor Cost: $7600
- Python Developer Intern: 40 * 8 * $20 = $6400
- Bones (If project is complete, meets requirements and is usable): $1200
Total Cost: $7600
- Difficulty in designing the system and Data Flow Diagram
- Complexity in designing and implementing the Testing software
- Difficulty in communicating with the website through selenium
- Inability to optimize code for performance and scalability
- Delays in completing the course and design on the project
- Delays in designing and implementing the code
- Delays in connecting selenium to the website
- Delays in testing and debugging the code
- Unavailability of the skills required to complete the project
- Difficulty in communicating with team members to ask questions and get feedback on the project
- Not having enough time to complete the project
- Issues with resources and high CPU/Ram usage of the software
- Cost overruns due to unexpected expenses or changes in project scope
- Difficulty in securing funding for the project
- Inability to control project costs effectively
- Changes in government regulations or policies that affect the project
- Changes in market conditions or competition that affect the project
- Natural disasters or other unexpected events that affect the project
- Difficulty in communicating project progress and issues to Project Manager
- Lack of clear and consistent communication among team members
- Difficulty in obtaining buy-in and support from stakeholders and Project Manager
- Risk of data breaches or unauthorized access to the information
- Risk of data loss or corruption
- Risk of non-compliance with relevant data privacy and security regulations
- Java Developer with knowledge of HTML, CSS and JavaScript
- Test Website URL: The project will require a test version of the current software developed by the IEMS Solutions team
- Development tools: The project will require a range of development tools such as Integrated Development Environment (IDE) or text editor to write and test the code, version control software (e.g. Git) to manage the codebase and collaborate with the team, and debugging tools to identify and fix issues in the code.
- Hardware: The project will require a computer or server to host the software and storage devices to store the data.
- ChatGPT: ChatGPT can provide answers to technical questions and provide guidance on various aspects of the project, such as project management, design, and software development. It can assist in writing documentation, creating project schedule, and identifying risks.
- Technical forums and communities: There are various online forums and communities, such as Stack Overflow, that provide answers to technical questions and solutions to common problems related to programming, software development, and project management.
- Tutorials and documentation: There are many tutorials and documentation available online, such as the official documentation of Selenium, that can provide step-by-step instructions and best practices for various aspects of the project.
- Companies Chief Technology officer
- Companies Vice President
- End-users
- CTO and VP: The project sponsor will need regular updates on the project progress, issues, and risks to ensure the project aligns with the overall goals and objectives of the organization.
- End-users: The end-users will need to be informed about the project, its progress and its timeline, in order to have clear expectations about when the new testing software will be available for use.
- Project Management Plan: A PMP will be created at the beginning of the project to define the scope, objectives, and stakeholders of the project.
- Gantt Chart: A Gantt Chart will be created at the beginning of the project to define the timeline, and milestones of the project.
- Project status report emails: A project status report will be created and emailed at the end of each week to summarize the project progress, issues, and risks.
- Technical documentation: Technical documentation will be created and distributed at the end of the project to provide information on the design and implementation of the testing software.
When testing the software the functionality is key and is prioritized. After the functionality, the tester will focus on the optimization of the code. Furthermore, All codes must have proper documentation including comments, pseudocode and IPO charts.
- One person with knowledge of python, Html, Css and JS
- Access to a sample of the website developed by IEMS
- Design: This process involves taking tutorial courses, designing the structure of the code and the UI of the software!
- Programming: This section involves coding and developing the software using python adn selenium!
- Testing: This process involves using different functionalities of the app and debugging the code!
- Deploying: This section involves finishing the documentation and exporting the code to and .exe file so one can start using it!
As the Project is only 8 weeks long, management change is rare. However, the procedure is the as follows:
- Identify the change: The first step in the change request process is to identify the change that needs to be made. This can be done by reviewing project documentation, conducting project status meetings, or receiving input from stakeholders.
- Evaluate the change: Once the change has been identified, it will be evaluated to determine its impact on the project. This includes assessing the impact on the project schedule, budget, and resources, as well as the impact on project stakeholders.
- Approve or reject the change: Based on the evaluation, the change will be approved or rejected. If the change is approved, it will be implemented according to the change management plan. If the change is rejected, the reasons for the rejection will be communicated to the stakeholders.
- Implement the change: Once the change has been approved, it will be implemented according to the change management plan. This includes communicating the change to stakeholders, updating project documentation, and training project team members as necessary.
- Monitor and evaluate the change: After the change has been implemented, it will be monitored and evaluated to determine its impact on the project. Any issues or problems that arise as a result of the change will be addressed and resolved.
- Functional testing System: > - A fully functional code that can bve used to test values shown in the feeder network for each node in each scenario.
- The code should be optimized for performance and scalability, and should be able to handle the expected volume of data!
- The software should be able to do tests with, see the results and save them for future access! The results scan also be exported as a PDF or emailed to the programmer!
- Design and Implementation Documentation: > - Comments in the Code
- ProgramInfo file containing pseudocode and IPO
- Readme file that Explains how to use the software
- This project only covers the design, development and testing of the testing software. It does not include any changes or updates to the User Interface itself.
- The software will only be reporting the weather a test passed or failed and will not include an analysis feature to identify the issues with the website code.
- The project assumes that the current website code is stable
- The project is constrained by a budget of $7600 and a time frame of 8 week.
- The project scope has been reviewed and approved by Ali Rahbar, the Intern Software Developer.
- The project scope has been reviewed and approved by Ashkan R. Kian, the companies CTO.
- The project scope has been reviewed and approved by Masoud Bashari, the companies VP.