Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “vehicle trajectory”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 1,063 records · Page 59

Autonomous Eco-Driving with Traffic Light and Lead Vehicle Constraints: An Application of Best Constrained Interpolation

Eco-Driving is a critical technology for improving automotive transportation efficiency. It is achieved by modifying the driving trajectory over a particular route to minimize required propulsion energy. Eco-Driving can be approached as an optimal control problem subject to driving constraints such as traffic lights and positions of other vehicles. Best interpolation in a strip is a problem in approximation theory and optimal control. The solution to this problem is a cubic spline. In this research, we demonstrate the connection between Eco-Driving and best interpolation in the strip. By exploiting this connection, we are able to generate optimal Eco-Driving trajectories that could be driven with an autonomous system. Using the simulation tool FASTSim, we can evaluate the trajectories using conventional, hybrid electric, and fully electric vehicle models. Our results quantify the energy efficiency improvements that can be achieved with the proposed approach.

Mahmoud, Yara Hazem↗

Autonomous Eco-Driving with Traffic Light and Lead Vehicle Constraints: An Application of Best Constrained Interpolation

Eco-Driving is a critical technology for improving automotive transportation efficiency. It is achieved by modifying the driving trajectory over a particular route to minimize required propulsion energy. Eco-Driving can be approached as an optimal control problem subject to driving constraints such as traffic lights and positions of other vehicles. Best interpolation in a strip is a problem in approximation theory and optimal control. The solution to this problem is a cubic spline. In this research, we demonstrate the connection between Eco-Driving and best interpolation in the strip. By exploiting this connection, we are able to generate optimal Eco-Driving trajectories that could be driven with an autonomous system. Using the simulation tool FASTSim, we can evaluate the trajectories using conventional, hybrid electric, and fully electric vehicle models. Our results quantify the energy efficiency improvements that can be achieved with the proposed approach.

Mahmoud, Yara Hazem↗

Model Predictive Control-Based Trajectory Shaper for Safe and Efficient Adaptive Cruise Control

Recent studies show that commercially-available adaptive cruise control (ACC) systems are string-unstable, indicating that ACC-driven vehicles amplify speed fluctuations from downstream traffic and induce stop-and-go waves. Moreover, it is challenging to revise the original control algorithm of an ACC system to achieve string stability due to its internal complexity and powertrain uncertainties. To achieve desired control performance given a string-unstable ACC system and circumvent revising the original control algorithm, this study proposes a model predictive control-based trajectory shaper (MPC-TS), which only modifies the sensor-measured trajectory information (i.e., position and speed) of the preceding vehicle. The proposed MPC-TS leverages the input shaping technique to generate reference trajectory to improve string stability, while incorporating tracking errors and vehicle acceleration/deceleration magnitude in the MPC cost function and constraining fluctuations of vehicle speed and spacing to ensure desired car-following performance. Numerical experiments validate the control performance of ACC with the proposed MPC-TS in terms of string stability, safety, traffic efficiency, and comfort.

Zhou, Anye↗

Wind Tunnel and Hover Performance Test Results for Multicopter UAS Vehicles

There is currently a lack of published data for the performance of multicopter unmanned aircraft system (UAS) vehicles, such as quadcopters and octocopters, often referred to collectively as drones. With the rapidly increasing popularity of multicopter UAS, there is interest in better characterizing the performance of this type of aircraft. By studying the performance of currently available vehicles, it will be possible to develop models for vehicles at this scale that can accurately predict performance and model trajectories. This paper describes a wind tunnel test that was recently performed in the U.S. Army's 7- by 10-ft Wind Tunnel at NASA Ames Research Center. During this wind tunnel entry, five multicopter UAS vehicles were tested to determine forces and moments as well as electrical power as a function of wind speed, rotor speed, and vehicle attitude. The test is described here in detail, and a selection of the key results from the test is presented.

Multicopter UAS↗

Trajectory Analysis

The Systems Analysis Branch performs trajectory and systems analysis for next-generation launch vehicle and space transportation technologies. Currently the branch is supporting the Project Prometheus with analysis of nuclear electric and nuclear thermal propulsion missions to a variety of destinations. Within Project Prometheus a proposed mission to Jupiter and three of the planet sized icy moons that orbit it is developing. The Jupiter Icy Moons Orbiter (JIMO) as the project is being called will enable detailed scientific investigation of Jupiter's moons Callisto, Ganymede, and Europa. These moons were choose to orbit for intensive study in particular because they are each believed to have water, energy, and organic material. The JIMO mission will utilize nuclear fission power and electric propulsion in order to allow the spacecraft to orbit the moons at close range for long durations of time. My assignment this summer was to assist in developing a trajectory analysis for the spacecraft system the Jupiter Icy Moons Orbiter by rewriting an inefficient Excel file into a more efficient FORTRAN program. This program has been created for use planning the trajectory of the Jupiter Icy Moons Orbiter Mission. The program uses a database of thousands of data points representing flight time, burn time, thrust, mass of the propellant used, final mass of the spacecraft, ratio of finals mass to initial mass, and change in velocity that a spacecraft experiences during each phase in the Jupiter Icy Moons Orbiter Mission. The trajectory program is capable of taking a specific user entered specific impulse (isp), final mass fraction, and thrust (P(sub J)/m0) and through the use of cubic splines to fit specific data curves, the program can locate the exact flight time linked to the user specified values of specific impulse and final over initial mass fraction. Currently, the database used by the program to calculate flight times for a given thrust is only for isps in the range of 2000 to 9000 seconds. Although the program is specific to the Jupiter Icy Moons Orbiter mission, it can be easily modified to fit any mission with a propulsion system expected isp range between 2000 and 9000 seconds. This program performs the same tasks as the old Excel file but in a more timely fashion. Finally, this FORTRAN program will replace the Excel file as the tool used to calculate trajectory properties in missions and will provide valuable data to mission analysts for years to come.

Burke, Laura M.↗

A guidance-motivated sensitivity analysis of an aero-assisted boost vehicle

A simple model of an aero-assisted booster is used to examine the contributions of propulsion system type, aerodynamic lift and flight trajectory to the efficiency with which payloads can be placed into low earth orbit. The higher propulsive efficiency of ramjet and scramjet propulsion has the potential of increasing the payload mass ratio significantly. The contributions of turbojet propulsion and aerodynamic lift are less significant. The additional complexity involved in using aerodynamic propulsion and lift requires dealing with a more comprehensive set of design variables than for rocket boosters. The approach taken is to derive a set of sensitivity functions which relate booster performance to the design variables. The problems of optimum mixing of aerodynamic lift with thrust and determining the optimal boost trajectory is treated. The potential payload capacity of a horizontal take-off air-breathing boost vehicle is examined. The optimization problem which considers propulsive efficiency, aerodynamic configuration, and control and guidance issues is discussed.

Taylor, L. W.↗

SENS-5D trajectory and wind-sensitivity calculations for unguided rockets

A computational procedure is described which numerically integrates the equations of motion of an unguided rocket. Three translational and two angular (roll discarded) degrees of freedom are integrated through the final burnout; and then, through impact, only three translational motions are considered. Input to the routine is: initial time, altitude and velocity, vehicle characteristics, and other defined options. Input format has a wide range of flexibility for special calculations. Output is geared mainly to the wind-weighting procedure, and includes summary of trajectory at burnout, apogee and impact, summary of spent-stage trajectories, detailed position and vehicle data, unit-wind effects for head, tail and cross winds, coriolis deflections, range derivative, and the sensitivity curves (the so called F(Z) and DF(Z) curves). The numerical integration procedure is a fourth-order, modified Adams-Bashforth Predictor-Corrector method. This method is supplemented by a fourth-order Runge-Kutta method to start the integration at t=0 and whenever error criteria demand a change in step size.

Singh, R. P.↗

Probability of Obstacle Collision for UAVs in Presence of Wind

For incorporation of unmanned aerial vehicles into the National Airspace, ensuring safety of the airspace including the vehicles, people, and property on the ground is of utmost importance. One of the safety-critical factors for unmanned aviation flights is the risk of deviating from a planned trajectory resulting in a variety of hazards, including potential loss of separation between vehicle and obstacles or unexpected battery energy consumption. Off-nominal conditions introduced by component failures, degraded controllability and environmental disturbances such as wind gusts can lead to unacceptable unexpected deviations from the flight trajectory. It is essential to accurately model such effects on the flight trajectory while computing safety thresholds such as minimum separation from surrounding obstacles, available battery resource to complete the mission or determining delay in the expected time of arrival of flights. In this paper, a tool is presented based on Gaussian Process Regression for wind representation over a pre-defined trajectory for fast, yet approximated, in-time evaluation of possible trajectory deviations caused by wind gusts. The deviation in the planned trajectory caused by wind is further simulated utilizing a 6 degrees-of-freedom (DOF) UAV trajectory simulator comprising of a rotorcraft lumped-mass model with LQRI controller. Both steady-state wind and wind gust effects are investigated. The probability of collision with obstacle is computed and demonstrated on real flight data from experimental flights of an octocopter at NASA Langley Research Center in the presence of simulated obstacles and wind conditions. Effect of varying wind conditions and varying UAV airspeed is further demonstrated on experimental flights in the presence of wind measured by ground based weather service stations. The proposed approach would eventually benefit timely mitigation of current and future safety-critical events in autonomous systems by enabling risk-informed decision making.

Portia Banerjee↗

Magnetohydrodynamics (MHD) Aerocapture System for Enabling Faster-Larger Planetary Science & Human Exploration Missions

Since our completing the NIAC Phase I NIAC on this Advanced Aerocapture System, NASA Langley Research Center has funded or supported a number of studies and code enhancements through its Center Innovation Fund (CIF) and NASA’s NSTGRO and Internship Programs to mature the analysis capabilities and quantify the merits of the MHD Aerocapture System technology. These efforts have resulted in a plug and play analysis capability for assessing MHD aerocapture system performance for arrival at many planetary bodies of interest. Our efforts have especially focused on the potential mass savings for improving the capacity for science observations at Neptune and Triton. A re-cent Forbes article published “‘Orbital mechanics is probably going to decide for us whether we go to Uranus or Neptune because we need to flyby Jupiter,’ said Kunio Sayanagi at Hampton University, Virginia, who also worked on the Neptune Odyssey proposal…. Exactly when a mission can be sent to Uranus, or Neptune, depends on the relative position of Jupiter, which can help give a spacecraft a gravitational slingshot. That drastically shortens the cruise phase.” [1] Since shortening the cruise phase is important for these science missions, any mass savings enabled by the MHD Aerocapture System could be reallocated to increasing Thermal Protection System mass to allow faster arrival speeds and/or for onboarding additional payloads such as science instruments, batteries, or propellant for conducting more science for longer durations in the desired orbits. The analysis steps and codes for conducting trades and sizing vehicles for aerocapture are as follows: Step 1 is to conduct aeroheating analysis using LAURA of the selected entry vehicle shape to identify locations on the forebody where ionization and flow velocity are sufficient for producing Lo-rentz forces. LAURA is a multiblock structured grid finite-volume CFD solver developed at the NASA Langley Research Center. [2] LAURA has been used for aerothermal analysis support of the entry, de-scent and landing (EDL) phase of interplanetary missions over the last three decades [3-7]. Step 2 is to port the LAURA results into CFDWARP to calcu-late electrical and thermal conductivities of ionized flow for sizing MHD patch system and calculating Lorentz forces needed for controls analysis. CFDWARP is a CFD code that uses advanced nu-merical methods that enable the simulation of the full coupling between the aerodynamics, the magne-tohydrodynamics, and the non-neutral plasma sheaths. CFDWARP has the unique capability to simulate efficiently the non-neutral sheaths (near the electrodes) in coupled form with the quasi-neutral bulk MHD flow [8-11]. Step 3 is to link re-sults from LAURA and CFDWARP into POST2 for calculating entry trajectories and comparing MHD control results with other aerodynamic control strategies. The Program to Optimize Simulated Tra-jectories II (POST2) is a generalized point mass, discrete parameter targeting and optimization pro-gram. POST2 provides the capability to target and optimize point mass trajectories for multiple pow-ered or un-powered vehicles near an arbitrary rotat-ing, oblate planet [12]. Step 4: TPS sizing was per-formed using the Fully Implicit Ablation and Ther-mal-response code (FIAT) tool which computes the transient one-dimensional thermal response and surface thermochemistry of a multilayer stackup of thermal protection, bonding, and structural materi-als subject to aeroheating on one surface [13]. The sizing and margining methodology used was based on the approach documented by Mahzari and Milos [14] for the dual-layered heatshield for extreme entry environment technology (DL-HEEET) TPS concept. TPS analysis utilizes trajectory information from POST2. Using this step-wise plug and play MHD Aerocapture performance assessment process, our analysis targets a Neptune aerocapture trajectory that will place the spacecraft in an observation orbit for Triton. [15]. Magnetohydrodynamic (MHD) control of a 4.5-meter diameter MSL-style capsule resulted in TPS mass savings of nearly 2000 kg when using an MHD system mass of under 200 kg. The flight path for a vehicle using the MHD control strategy has a much lower heat rate and heat load compared to the conventional aerodynamic aerocapture strategies known as bank angle con-trolled (BAC) and direct force controlled (DFC). Both BAC and DFC have heat rates significantly greater than 1500 W/cm2 typically used as an upper limit for PICA. Thus, DL-HEEET TPS concept was required for the BAC and DFC control strategies. However, considering the more benign environ-ments for the MHD case, additional TPS concepts with improved mass efficiency were also assessed. PICA was considered for the MHD controlled strat-egy since the maximum heat rate was well within the limits (<1500 W/cm2) of PICA. TPS sizing re-sulted in a significant mass reduction. The PICA layer for this sizing case was about 7.8 cm. As a point of reference, the Mars 2020 mission, which used this same PICA concept, had a PICA thickness of 3.18 cm [16]. The trajectories used for the TPS sizing originat-ed from the POST2 simulations. The current, I, to an electromagnet configuration can be manipulated to allow for active control of the vehicle. Manipula-tion of the current, I, changes the magnetic field, B, which affects the Lorentz force and therefore the MHD drag force on the vehicle. Our analysis in-cluded both open-loop and close-loop control. Closed-loop control will enable improved overall performance when taking into account mission level uncertainties, such as interplanetary delivery errors and atmospheric modeling uncertainties. The open-loop and closed-loop MHD control cases do not dip as deep into the atmosphere as the aerodynamic cases. Three types of aerodynamic-only approach-es are investigated: bank angle modulation (BAM), director force control (DFC), and Drag Modulated. BAM and DFC make use of vehicle aerodynamic angles to steer the vehicle. Thus, changing the aer-odynamic forces acting on the vehicle for control, aerodynamic drag modulated case requires a vary-ing drag area to modulate the drag force. The MHD drag modulated case modulates MHD generated drag force that adds to the aerodynamic drag. This higher atmospheric activation of drag forces by the MHD patch results in significantly less heat flux on the vehicle. The MHD technology will enable shorter cruise times and deceleration of larger payloads for increasing the capacity for science at the Ice Giants or for returning astronauts to Earth from cislunar space or from Mars. The purpose of this presentation is to provide more details about this work and to highlight plans for further research and development including a flight demonstration.

R. W. Moses↗

Trajectory optimization and guidance law development for national aerospace plane applications

The problem of onboard trajectory optimization for an airbreathing, single-stage-to-orbit vehicle is examined. A simple model representative of the aerospace plane concept, including a dual-mode propulsion system composed of scramjet and rocket engines, is presented. Consideration is restricted to hypersonic flight within the atmosphere. An energy state approximation is used in a four-state model for flight of a point mass in a vertical plane. Trajectory constraints, including those of dynamic pressure and aerodynamic heating, are initially ignored. Singular perturbation methods are applied in solving the optimal control problem of minimum fuel climb. The resulting reduced solution for the energy state dynamics provides an optimal altitude profile dependent on energy level and control for rocket thrust. A boundary-layer analysis produces an approximate lift control solution in feedback form and accounts for altitude and flight path angle dynamics. The reduced solution optimal climb path is presented for the unconstrained case and the case for which a maximum dynamic pressure constraint is enforced.

Calise, A. J.↗

Hypersonic airbreathing vehicle conceptual design (focus on aero-space plane)

The airbreathing single stage to orbit (SSTO) vehicle design environment is variable-rich, intricately networked and sensitivity intensive. As such, it represents a tremondous technology challenge. Creating a viable design will require sophisticated configuration/synthesis and the synergistic integration of advanced technologies across the discipline spectrum. In design exercises, reductions in the fuel weight-fraction requirements projected for an orbital vehicle concept can result from improvements in aerodynamics/controls, propulsion efficiencies and trajectory optimization; also, gains in the fuel weight-fraction achievable for such a concept can result from improvements in structural design, heat management techniques, and material properties. As these technology advances take place, closure on a viable vehicle design will be realizable.

Hunt, James L.↗

Trajectory optimization for real-time guidance. I - Time-varying LQR on a parallel processor

A key algorithmic element of a real-time trajectory optimization hardware/software implementation, the quadratic program (QP) solver element, is presented. The purpose of the effort is to make nonlinear trajectory optimization fast enough to provide real-time commands during guidance of a vehicle such as an aeromaneuvering orbiter. Many methods of nonlinear programming require the solution of a QP at each iteration. In the trajectory optimization case the QP has a special dynamic programming structure, a LQR-like structure. QP algorithm speed is increased by taking advantage of this special structure and by parallel implementation.

Psiaki, Mark L.↗

Ares I-X Flight Test Vehicle Similitude to the Ares I Crew Launch Vehicle

The Ares I-X Flight Test Vehicle is the first in a series of flight test vehicles that will take the Ares I Crew Launch Vehicle design from development to operational capability. The test flight is scheduled for April 2009, relatively early in the Ares I design process so that data obtained from the flight can impact the design of Ares I before its Critical Design Review. Because of the short time frame (relative to new launch vehicle development) before the Ares I-X flight, decisions about the flight test vehicle design had to be made in order to complete analysis and testing in time to manufacture the Ares I-X vehicle hardware elements. This paper describes the similarities and differences between the Ares I-X Flight Test Vehicle and the Ares I Crew Launch Vehicle. Areas of comparison include the outer mold line geometry, aerosciences, trajectory, structural modes, flight control architecture, separation sequence, and relevant element differences. Most of the outer mold line differences present between Ares I and Ares I-X are minor and will not have a significant effect on overall vehicle performance. The most significant impacts are related to the geometric differences in Orion Crew Exploration Vehicle at the forward end of the stack. These physical differences will cause differences in the flow physics in these areas. Even with these differences, the Ares I-X flight test is poised to meet all five primary objectives and six secondary objectives. Knowledge of what the Ares I-X flight test will provide in similitude to Ares I as well as what the test will not provide is important in the continued execution of the Ares I-X mission leading to its flight and the continued design and development of Ares I.

Huebner, Lawrence D.↗

Ares I-X Flight Test Vehicle Similitude to the Ares I Crew Launch Vehicle

The Ares I-X Flight Test Vehicle is the first in a series of flight test vehicles that will take the Ares I Crew Launch Vehicle design from development to operational capability. Ares I-X is scheduled for a 2009 flight date, early enough in the Ares I design and development process so that data obtained from the flight can impact the design of Ares I before its Critical Design Review. Decisions on Ares I-X scope, flight test objectives, and FTV fidelity were made prior to the Ares I systems requirements being baselined. This was necessary in order to achieve a development flight test to impact the Ares I design. Differences between the Ares I-X and the Ares I configurations are artifacts of formulating this experimental project at an early stage and the natural maturation of the Ares I design process. This paper describes the similarities and differences between the Ares I-X Flight Test Vehicle and the Ares I Crew Launch Vehicle. Areas of comparison include the outer mold line geometry, aerosciences, trajectory, structural modes, flight control architecture, separation sequence, and relevant element differences. Most of the outer mold line differences present between Ares I and Ares I-X are minor and will not have a significant effect on overall vehicle performance. The most significant impacts are related to the geometric differences in Orion Crew Exploration Vehicle at the forward end of the stack. These physical differences will cause differences in the flow physics in these areas. Even with these differences, the Ares I-X flight test is poised to meet all five primary objectives and six secondary objectives. Knowledge of what the Ares I-X flight test will provide in similitude to Ares I - as well as what the test will not provide - is important in the continued execution of the Ares I-X mission leading to its flight and the continued design and development of Ares I.

Huebner, Lawrence D.↗

Achieving Resilient In-Flight Performance for Advanced Air Mobility through Simplified Vehicle Operations

A research and development (R&D) approach is proposed for developing and validating concepts and technologies to achieve vehicle autonomy goals of Advanced Air Mobility (AAM) through Simplified Vehicle Operations (SVO). The approach applies resilience-engineering and human-automation teaming (HAT) principles to a framework for defining vehicle-based functions for the management of missions and flight trajectories, focusing initially on the en route flight domain. To achieve the SVO goal of reducing pilot training requirements and thereby increasing the pilot pool for AAM, while at the same time promoting ever-safer operations, a framework for identifying essential functions is proposed. In this framework, functions are first categorized by high-level functional purpose (mission management, flightpath management, tactical operations, and vehicle control) and then subcategorized by attributes of resilient-performing systems (abilities to monitor, respond, learn, and anticipate). The categorization by functional purpose provides structure within which HAT designs can be holistically explored and total levels of human vs. automation responsibility can be varied. The subcategorization by resilient-system attributes provides a mechanism for capturing safety-critical functions that may not be codified in current operational procedures and training curricula, particularly those where humans proactively enhance safety in currently undocumented ways. An R&D approach consisting of seven strategies is proposed in which automation engineering and human-factors communities can collaborate in the research, development, and design of an SVO roadmap to enable the ambitious objectives of AAM.

AAM↗

Keplerian Analysis for Versatile Evaluation of Arbitrary Trajectories

Designing interplanetary missions is an iterative process, with a tight coupling between mission analysis and vehicle design. The ability to simultaneously process both analyses early on can provide significant benefits in both the concept formulation and in overall mission feasibility. To implement such a simultaneous analysis process, there is a need to model interplanetary trajectories rapidly while maintaining an acceptable level of fidelity. Many simple patched conics tools make too many assumptions to satisfactorily address all relevant constraints and objectives, while full-fidelity trajectory design tools often require more time and expertise than is available in early conceptual studies. Hence, some form of middle-ground modeling tool would provide value. This paper introduces the development of such a tool using Python. This tool, Keplerian Analysis for Versatile Evaluation of Arbitrary Trajectories (KAVEAT), implements a patched conics method that enforces continuity of state (time, mass, position, velocity) through all transitions between various spheres of influence on the trajectory. The trajectory is constructed in an object-oriented manner, dynamically assembling unique maneuvers such as departure burns, heliocentric transfers (ballistic or with electric propulsion), and planetary flybys (powered or unpowered). Each maneuver has its own specific set of basic inputs needed to define it. The tool then takes these defined maneuvers, strings them together creating all the interdependencies required, and solves for the ideal trajectory using a gradient-based optimizer.

Katherine T McBrayer↗

Trajectory Simulation Using Multi Model Monte Carlo with Python (MXMCPy)

EDL (Entry, Descent and Landing) is the process from a vehicle approaching a surface to landing on it, such as a Mars rover approaching the planet before landing. POST2 (Program to Optimize Simulated Trajectories 2) is Langley’s primary EDL simulation tool and is used NASA-wide for simulations. POST2 can generate highly accurate results by running a precise, but time consuming, Monte Carlo (MC) simulation hundreds or thousands of times. Though POST2 can produce highly accurate results, it can take unrealistic time spans to generate these results, which has created a need to speed up the simulations. The new NASA software MXMCPy offers various ways to speed up the simulations while getting just as precise results. Instead of running high-precision POST2 simulations many times for traditional MC, MXMCPy can run fewer high-precision POST2 simulations and many less precise POST2 simulations and merge the results. MXMCPy contains 30+ different methods which will each suggest different allocations between model precision levels, which result in results of varying precision based on the POST2 simulation. I created Python and Bash code to automate the 5 steps of MXMCPy’s application to POST2. I also tested the precision of traditional Monte Carlo simulations to MXMCPy aided simulations and found that MXMCPy can achieve substantially more precise solutions at the same computer runtime. I learned Test Driven Development (TDD), a software programming workflow which involves writing computer-automated tests before writing the code which is being tested. These tests are ran every time the code is changed and they can find glitches in the code much quicker than a human can. This programming workflow saved me a lot of time because the automated tests could tell me exactly where the code had stopped working. I plan on using this software development method for future academic and professional software projects. I have greatly enjoyed my work at NASA, so I have been applying to NASA internships and Pathways positions. In addition, I plan on applying what I have learned about Test Driven Development to my computer science courses next semester

James Warner↗