Skip to content

Services

The Intelligent Software Engineering Lab offers a range of specialized services in the field of software engineering, including software testing and quality assurance, requirements engineering, software development and optimization, as well as technical consulting. The lab's services are categorized into different sections, and each service is assigned a unique code for ordering and tracking purposes.

Service Documentation Information

Intelligent Software Engineering Lab Services List – Amirkabir University of Technology (Tehran Polytechnic) Field: Educational and Consulting Engineering Services in the Field of Computer Engineering

Author: Morteza Zakeri

Revision 1.2

Software Product Testing and Quality Assurance Group

Order Code Group, Level, and Service Title
11 Basic Practical Training Courses (Level 1)
111 Software Functional Testing (test levels, test culture, tester roles, unit and integration testing, system testing)
112 Security Testing (failure testing, error injection, fuzz testing, penetration testing, penetration testing scenarios)
113 Performance Testing (basic tests, smoke, load, stress, capacity, ramp-up, stability, breaking point, rapid changes, performance evaluation metrics, performance testing scenarios)
12 Advanced Practical Training Courses (Level 2)
121 Advanced Software Testing (regression testing, return testing, model-based testing, model-driven testing, continuous testing, testing and evaluation of machine learning models (Software 2.0), strengthening and optimizing the test suite, super testing)
122 Automated Software Testing (automation of test data generation, injection and monitoring, random-adaptive testing, search-based testing, symbolic execution testing, concolic testing)
123 Software Debugging (dynamic analysis, spot analysis, fault localization, fault prediction, program repair)
124 Identification and Implementation of Testing Tools, Frameworks, Platforms, and Studios for Testing, Debugging, and Dynamic Software Analysis
13 Customized Training Course on Software Testing and Quality Assurance (select topics from above)
14 Engineering, Consulting, and Product Development Services
141 Creation and Execution of Functional Testing for legacy codebases (web applications, mobile applications, desktop applications)
142 Creation and Execution of Functional Testing for developing codebases (web applications, mobile applications, desktop applications)
143 Installation and Deployment of Automated Testing Tools, tailored to the product development stack (LLM-based and compiler-based tools)
144 Measuring the performance and effectiveness of testing (testability) of software projects and estimating test code technical debt (test debt)
145 Optimizing and strengthening the test suite of software projects and reducing test code technical debt, identifying and repairing vulnerabilities
146 Creation and execution of security testing (for web applications, mobile applications, desktop applications, firmware, Software 2.0)
147 Creation and execution of performance testing (for web applications, mobile applications, desktop applications, firmware, Software 2.0)
148 Consulting and guidance on the implementation of quality assurance and software testing standards
15 Issuing Quality Certification for Software Products (External Quality)
16 Customized engineering, consulting, and product development services in software testing and quality assurance (select topics from above)

Software Development Quality Assurance Group

Order Code Group, Level, and Service Title
21 Basic Practical Training Courses (Level 1)
211 Clean Code (naming conventions, SOLID, functions, classes, comments, code formatting)
212 Clean Architecture (architecture type, architectural style, architecture description, 4+1 view model, clean architecture principles, separation from the main sequence)
213 Clean Coder (the ability to say yes or no, teamwork, time management, estimation, stress management, version control for product code and testing)
214 Secure Coding (data validation, authentication and access control, encryption, session management, exception handling, security requirements, code obfuscation)
22 Advanced Practical Training Courses (Level 2)
221 Principles and Patterns in Software Engineering (SOLID, PHAME, analysis patterns, design patterns, architecture patterns, anti-patterns, refactoring patterns)
222 Techniques for program refactoring, restructuring, automated software refactoring, and automated measurement of software quality attributes
223 Techniques in re-engineering, software clustering, extraction and migration of software architecture, migration to System 2.0
224 Identification and implementation of tools, frameworks, platforms, and studios for static analysis, refactoring, and development quality assurance
23 Customized Training Course on Software Development Quality Assurance (select topics from above)
24 Engineering, Consulting, and Product Development Services
241 Measuring internal quality attributes—maintainability and evolvability of software (testability, comprehensibility, reusability, readability, modifiability, flexibility, consistency, analyzability)
242 Improving internal quality attributes—maintainability and evolvability of software (testability, comprehensibility, reusability, readability, modifiability, flexibility, consistency, analyzability)
243 Measuring external quality attributes—software dependability (reusability, performance and scalability, security, safety, reliability, accessibility)
244 Improving external quality attributes—software dependability (usability, performance and scalability, security, safety, reliability, accessibility)
245 Implementation of “Design by Contract” and cleanup of software source code in accordance with clean code principles while reducing technical debt in code
246 Refactoring software design and source code in accordance with clean architecture principles and reducing design technical debt
247 Re-engineering and refactoring programs, migrating software architecture to large-scale systems, and reducing architectural technical debt
248 Consulting and mentoring on the identification and implementation of software development quality standards (e.g., ISO/IEC 25010)
25 Issuing Quality Certification for Software Development (Internal Quality)
26 Customized engineering, consulting, and product development services in software development quality (select topics from above)

Requirements Engineering and Software Development Methodologies Group

Order Code Group, Level, and Service Title
31 Basic Practical Training Courses (Level 1)
311 Agile Requirements Engineering (extraction, analysis, and specification of requirements; requirements templates in agile software development; measurement and improvement of requirements quality)
312 Introduction to common approaches and cultures in agile software development (TDD, BDD, DevOps, MLOps, CI/CD)
313 Management of software and IT projects (size and cost estimation, project status assessment, types of technical debt and their management)
32 Advanced Practical Training Courses (Level 2)
321 Automated Requirements Engineering (detection and repair of requirements smells, generation of acceptance tests, creation of conceptual models from requirements, code generation from requirements, generation of documentation from code, repair of traceability links)
322 Systematic research and presentation techniques in software engineering (SMS, SLR, MVLR), computational thinking, and reverse computing
323 Compiler engineering, large language models, and the design and development of domain-specific languages (for querying, for directive engineering, for data description)
324 Identification and implementation of tools, frameworks, platforms, and studios for requirements engineering and project documentation
33 Customized Training Course (select topics from above)
34 Engineering, Consulting, and Product Development Services
341 Extraction of the software requirements document, analysis, and modeling of requirements for a new software system
342 Extraction of the organization's business process model (BPMN) and creation of services based on System 2.0 (large language models)
343 Designing checklists and generating acceptance tests for software validation (acceptance testing)
344 Creating conceptual models in UML from the software requirements document
345 Designing and normalizing software databases in accordance with the requirements document
346 Creation and deployment of domain-specific languages (for development, for directive engineering, for search and reporting)
347 Extraction and repair of the software requirements document and design and implementation documents for legacy codebases
348 Creation and repair of traceability links for legacy codebases
35 Issuing Quality Certification for Software Requirements and Documentation (Validation)
36 Customized engineering, consulting, and product development services in requirements engineering and software methodologies (select topics from above)

Order

🌱 The Intelligent Software Engineering Lab is ready to provide specialized services to enhance the quality, security, and performance of your software.
To order services, please contact the lab using the contact information below:

Order

How to Order Services

  1. Review the list of services and select your desired service
  2. Find the corresponding service code from the provided list
  3. Send your order request via email to zakeri@aut.ac.ir or by calling the lab at +98(21)64545108
  4. Have the lab team review the details and provide additional explanations
  5. Execute the order and receive related reports