This document contains a questionnaire for auditing a software development process. It includes questions about requirements management, project management, system design and construction, system validation and verification, and software configuration management. The document contains over 200 questions in these categories to evaluate practices, tools, and processes used in software development.
Unlocking the Future of AI Agents with Large Language Models
Software Development Process Audit Questionnaire
1. Software Development Process Audit
Questionnaire
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
1
2. Table of Contents
Requirements Management Process..........................................................................................................................................................................................3
Project Management Process......................................................................................................................................................................................................5
System Design and Construction Process..................................................................................................................................................................................7
System Validation and Verification Process.............................................................................................................................................................................12
Software Configuration Management Process.........................................................................................................................................................................15
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
2
3. Requirements Management Process
The purpose of the requirement management process is to
1. Understanding the customers’ requirements addressed by the product/project
2. Prioritization of the requirements
3. Understanding the feasibility of the requirements
4. Elaborating and Validating the requirements
5. Creating and Managing System Functional/Non-functional specification, which would be fed to Software Development.
# Question Answer Remarks
1.
Which of the following models are used in collecting and validating the
requirements?
a. Personal communication with customer
b. Phone
c. Chat
d. Mail
2.
After collecting the requirements in one of above models, Are requirements
collected and specified in formal document specification?
3. Are requirements collected from competitor products?
4.
Is there any feedback survey on the requirements collected with all the
existing/potential customers?
5. Who are the stakeholders involved while collecting the requirements?
6. Is feasibility study conducted on the requirements collected?
7. Who are the stakeholders involved in the feasibility study?
8. Are the collected requirements prioritized?
9. If yes to (8), what is the criteria of prioritization? Choose one of the below or
add:
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
3
4. a. Value to the product
b. Value to a customer
c. Engineering feasibility
d. Resource availability
e. Realization complexity
f. Realization duration
10. Are finalized requirements elaborated further into scenarios?
11.
What technique is used in elaborating them?
a. Use cases
b. Scenarios
c. User stories
12. Is Functional specification created based on the elaborated requirements?
13. Is Requirement trace-ability matrix maintained?
14.
Is there any tool being used in recording, managing and prioritizing the
requirements?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
4
5. Project Management Process
The purpose of the project management process is to
1. Create plans for performing the software engineering activities
2. Monitor and Control the project progress
3. Understand the risks and working on mitigating the same.
4. Understanding the cost involved in the creating the project/product
5. Understand the resource loading and to take corrective actions
# Question Answer Remarks
1.
What estimation model is being followed in understanding the effort
requirements?
2. Is Project Scope identified, maintained and controlled?
3. Is Project allocated with required staff with relevant experience?
4. Are risks identified in the early phases of the project?
5. Is Project time line requirements met on regular basis?
6.
Is status review meetings conducted in regular intervals? And Identify the
status, short falls, take corrective actions to make sure the project is being
delivered as per the schedule?
7.
Are roles and responsibilities of each stakeholder defined and
communicated well before the project initiation?
8. Are all the stake holders report the status of activities on regular basis?
9. Is Change management plan followed?
10. Is project current status compared with planned status?
11. Are corrective actions are taken when project time lines are not met?
12. Are inter-team dependencies identified and resolved?
13. Are resources work more than 8 hours day to meet the time lines and/or
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
5
6. quality?
14.
Are project details noted on regular basis and shared with respective
stakeholders?
a. Status
b. Delay
c. Risks
d. Quality Issues
e. Lessons
f. Cost
15. Is Critical Path model being followed in project execution?
16. Are inter-team dependencies identified and resolved?
17. Are few members of the team loaded more on the project?
18. Are resources provided with training to perform the tasks?
19. Is hierarchical team structure created for the project?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
6
7. System Design and Construction Process
The purpose of System Design Process is to understand
1. System Architecture with 4 logical views
a) Logical View
b) Development View
c) Process View
d) Deployment View
2. System dynamic behaviour (Scenarios)
3. System integration
4. System non-functional characteristics
a) Security
b) Performance
c) Scalability
d) Extensibility
e) Compliance
f) Maintainability
g) Usability
# Question Answer Remarks
1. Is the system manager assigned to the project?
2. Is the system manager allocated right amount resources and time?
3. Is the technology stack chosen based on resource expertise or suitability?
4.
Is the technological risk identified and mitigated early in architectural
phase?
5.
Is the system architecture, high level design and low level design
documented and are maintained in accordance with the change?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
7
8. 6. Are resources provided training on the required tech stack prior to the
construction phase?
7.
Is the database interface generic enough to work on widely used RDBMS
systems?
8. Is the database design done in consultation with architect?
9.
Is some parts of business logic implemented in database procedures like
triggers and stored procedures?
10. What is the portability of database triggers and stored procedures?
11. Is there any coding standard guidelines document in place?
12.
Has the coding been done in the perspectives of
a. Functionality Coverage
b. Code efficiency
c. Modularity and Reusability
d. Exception Handling
e. Resource management
f. Threading and synchronization
g. Logging
h. Security
i. Session Handling
j. Code maintainability
13.
What are the levels of code review process in place? One or more of the
following:
a. Peer
b. Senior
c. External
d. Cross Functional
14. Is there any Unit Testing framework in place?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
8
9. 15. Is the Unit Testing framework integrated with daily/weekly builds?
16. Is Agile Development process in place?
17. Are you using any pair programming practices?
18.
Are you pairing a validation engineer with development team on regular
basis?
19.
Is integration testing carried out on the merged code before committing the
changes to the repository?
20. Is database accessed using SQL queries or one of the popular frameworks?
21.
If database is accessed using frameworks, was there any bench mark tests
carried out to check acceptability of the data retrieval and store speeds?
22.
Does the code review process consider the following?
a. Functionality Coverage
b. Code efficiency
c. Modularity and Reusability
d. Exception Handling
e. Resource management
f. Threading and synchronization
g. Logging
h. Security
i. Session Handling
j. Code maintainability
23.
Does the code review process validates the code from licensing point of
view?
a. Open Source components
b. Code copied from Internet
c. Code copied from third party frameworks
d. Code copied from other company’ code base
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
9
10. 24. Is legal opinion sought while using open source components? With License
models
a. GPLv2
b. GPLv3
c. Apache
d. Boost
e. MIT
25.
Is there any mention of open source components/third party frameworks
along with released product?
(This is generally mentioned with in the document called “Thirdparty
Components)
26. Is Build Automation implemented in the organization?
27.
If Yes, Choose one or more of the following that are integrated with above:
a. Code Coverage Testing
b. Code static analysis
c. Unit Testing
d. QA Automation
28. Is CI - CD process implemented in the organization?
29. Are Development Testing bench is same production bench?
30. Is there any source code repository?
31. How is source code repository sanctity maintained?
32. Does each developer works on his/her code repository?
33. Is source code written properly documented?
34.
Does each source file carries the history of changes and the triggers for the
change?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
10
11. System Validation and Verification Process
The purpose of System Validation and Verification Process is to
1. Validate the system functionality against the requirements
2. Verifying the system existing functionality sanctity
3. Verifying the correctness of the system
4. Testing and defining system non - functional characteristics
5. Understanding the system limitations
6. Understanding the system operating parameters
7. System’s behaviour validation when integrated/interacted with other software systems
# Question Answer Remarks
1. Does the Testing team works independent of Development team?
2. When would the Testing team be involved in the project?
3. Who trains the Testing team about the requirements?
4.
What is the average amount of testing cycles allocated in the project
execution time?
5.
Does the Testing team prepared functional/non-functional test cases on
regular basis?
6. Who are the stakeholders participate in test case review?
7. Does the Testing team has final word if build can be released or not?
8. Who validates the bugs raised by Testing team?
9.
What are tool-set available for Testing team?
a. Bug tracking
b. Test case repository
c. Test case execution
d. Test case preparation
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
11
12. 10. Typical out of the following, which are covered on a release candidate?
a. Functional Testing
b. User Acceptance Testing
c. Regression Testing
d. Load Testing
e. Stress Testing
f. Boundary Testing
g. Integration Testing
h. Environment Testing
i. Database Testing
j. Security Testing
11.
What are the areas of automation that is implemented? Choose as
applicable
a. Sanity Testing
b. UI Testing
c. API Testing
d. Load Testing
e. Stress Testing
f. Platform Testing
g. Functionality Testing
h. Database Testing
12.
Does testing receive release candidates from isolated build environment
or a developer build machine?
13.
What is the frequency of build which is given to Testing team for quality
check?
14. What is the frequency of Sanity Tests run on the system?
15. Is Testing team paired with Development team?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
12
13. 16. Does Test Coverage Matrix shared with project owner on weekly basis?
17. How is it ensured all the bugs raised by Testing team fixed?
18.
How is it ensured that all the issues raised by Testing team is
reproducible?
19. How is it decided that if testing of release candidate enough?
20. Is data generation used in testing be same across multiple testing cycles?
21. Is there any automation tool used to generate testing data?
22. Is Testing team well informed about known issues?
23. What testing metrics are being used in finding out System’s effectiveness?
24.
Are testing environment and production environments same?
a. Hardware (Quantity and Quality)
a) Processor
b) RAM
c) IO sub-system
b. Software
a) Operating System
b) RDBMS
c) External Integrations
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
13
14. Software Configuration Management Process
The purpose of Software Configuration Management Process is to:
1. Make sure to have orderly implementation and release of new software and related documentation
2. Implement only approved changes
3. Make sure to be aware of the impact of the changes proposed before implemented
4. Managing the build process and tools used
5. Define and implement process chosen to be implemented in the organization
6. Maintain stable workspace and deployment technology/hardware stack
# Question Answer Remarks
1.
Does the code that is being written based on the documented system
requirements alone?
2.
Can each requirement implemented be traced to tests for clear
verification?
3. Is deliverable documentation in sync with the implemented system?
4.
Does the release of the software prepared from an isolated version control
and build system?
5. Is there any baseline process involved at the software release?
6.
Is the software deliverable released with appropriate documentation set?
a. Installation Manual
b. User Manual
c. Release Notes
d. Thirdparty Components
7. Is there any Change Management process setup in the organization?
8. Is there any Software development process defined? Please describe.
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
14
15. 9. Is there any communication process defined between multiple teams and
multiple divisions?
10. Is versioning of product releases defined?
11. Is Requirement Traceability Matrix document available?
12. Are Daily builds/weekly versioned?
13. Is there any build staging policy?
14.
Are builds, documentation, test cases, test plans and test results isolated
and stored in secure location?
15. Does testing team access to code repository, If yes, please describe
16. What is the bug tracking tool that is being used and what is the version?
17. What is source code repository tool used?
18.
What are the considerations by which the source code repository is
selected?
19. What is the project management tool?
20. What is the requirement management tool?
21. What is Test Case management tool used?
22. What is the build tool used?
23. What is the packaging tool used?
24. What are the IDEs used?
25.
What are the documentation tools used?
a. Technical Documentation
b. Product Documentation
c. Artifacts
26. What are the office communication tools used?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
15
16. 27. Is there document templates created for the following?
a. Minutes of Meeting
b. Code Review Process
c. Issue Creation
d. Test Case Review
e. Release Notes
f. DB Schema and ER diagrams
g. Design documents
h. System Requirement Specification
i. Functional Specification
28. What is the tool used for Project Management?
29. What is the tool used for Issue tracking?
#205,2nd
Floor, Niligiri Block, Aditya Enclave, Ameerpet, Hyderabad - 500016
Phone: +919848372020, +917032643557, email:contact@srithripurasoft.com
http://www.srithripurasoft.com
Sri Thripura Software Services
Architecture Consulting & Idea Acceleration
16