Fiber reinforced composite materials have gained widespread acceptance for a multitude of applications in the aerospace, automotive, maritime and wind-energy industries. Automated fiber placement technologies have developed rapidly over the past two decades, driven primarily by a need to reduce manufacturing costs and improve product consistency and quality. The introduction of new technologies often stimulates novel means of exploiting them, such as using the built-in fiber steering capabilities to manufactured composite laminates with continuously varying fiber orientation angles, yielding a so called variable stiffness laminate. These laminates allow the full potential of composite materials to be harnessed by enlarging the design space to create substantially more efficient structural designs, which has been demonstrated both theoretically and experimentally in the recent past. Despite the apparent potential, the design tools currently available to engineers do not exploit the steering capabilities of automated fiber placement machines to obtain more efficient structural solutions. The design of composite structures is by no means a trivial task. Composite structures are inherently difficult to optimize due to a combination of discrete and continuous design variables as well as generally non-convex design problems with multiple solutions. Variable stiffness laminates are even more complex to design, as the optimization problem is no longer limited to a single or several laminate designs, but consists essentially of obtaining an optimal layup at every point in the structure. Ensuring fiber continuity and laminate manufacturability complicates the design problem even further. The large number of design variables and constraints associated with variable stiffness design problems make them unusually challenging problems to solve. The substantial increase in structural efficiency possible when using variable stiffness laminates and the lack of available design tools motivated the development of computationally tractable design optimization routine for variable stiffness composite structures. The complexity of the design problem necessitated the development of a multi-step approach. Separating structural performance related design drivers and manufacturing related design drivers allows the most suitable optimization algorithms to be used where necessary. In a first step, the optimal laminate stiffness distribution is obtained for the considered structural performance metric and constraints. Using lamination parameters to parameterize the structural stiffness allows the optimization problem to be solved efficiently, as will be discussed later. Design drivers such as maximum in-plane stiffness, strength, natural frequency and buckling can be included at this stage of the optimization. The obtained optimum solution provides the designer with a conceptual stiffness distribution best satisfying the desired structural performance requirements. In a second step, the fiber angle distribution, essentially representing point-wise laminate stacking sequence, required to match the obtained optimum stiffness distribution is determined. Manufacturing constraints, such as minimum curvature, thickness buildup, or permeability, can be incorporated at this stage. In a final step, the obtained fiber angle distributions are converted to continuous fiber paths for manufacturing. The responses of variable stiffness composite structures, required at the various steps of the design process, are typically evaluated using a finite element method by assigning different stiffness properties to each element in the model. In structural optimization, approximations of the structural response are often developed to minimize the number of computationally expensive finite element analyses needed during the design process. In order to develop a computationally tractable design framework it was essential to develop an effective approach to approximate the response of variable stiffness structures. The development of a generic conservative convex separable approximation specifically for composite structures and its implementation within a design framework using lamination parameters is presented in this thesis. The developed convex conservative separable approximation, following Svanberg (2002), has two parts, the first part is to ensure that the function value and the gradient of the approximation meet those of the original function, while the second term is used to control the overall approximation conservativeness and convexity by appropriately scaling this term after each successive design iteration. The approximation is expressed directly in terms of the laminate stiffness matrices, known from classical lamination theory, and is therefore independent of the chosen laminate parameterization scheme. A function approximation is generated by expanding the function linearly and/or reciprocally with respect to the laminate stiffness matrices, similar to the traditionally used conservative approximation. Instead of using derivative information to determine which terms are expanded linearly and which terms are expanded reciprocally, physical insight into the response being approximated is used to guarantee convexity by expanding the non-convex terms linearly. Using lamination parameters to parametrize the laminate stiffness matrices allows the convex nature of the approximation to be retained. Additionally, lamination parameters allow the laminate stiffness matrices to be expressed using a minimum number of continuous design variables, allowing efficient gradient based optimization algorithms to be used. An efficient design optimization framework, based on the aforementioned conservative convex separable approximations, is developed and enables the solution of variable stiffness design optimization problems with several thousand design variables. The optimizer consists of three loops, one, a convergence control loop, two, a global optimization loop, and three, a local optimization loop, where the latter two loops correspond to the optimization problems that result when using the dual method. The convergence control loop is used to dynamically control the degree of conservativeness of the considered approximations and to decide if the optimal solution of the approximate subproblem is accepted for the following iteration. The global optimization loop consists of solving for the Lagrange multipliers associated with the constraints. The local loop is used to solve the local separable approximations iteratively in terms of lamination parameters to obtain the optimum stiffness distribution. The separable nature of the response approximations allows the local optimization problems to be solved in parallel, further reducing computation time on multi-processor computer systems. Typically, less than thirty finite element analyses are required to converge to the optimal solution of a problem with several thousand design variables and several hundred constraints, while roughly 80-90% of the performance gains are typically achieved within the first 3-5 design iterations. One of the limitations, and perhaps objections to using lamination parameters for composite design, has been the difficulty of incorporating strength constraints into the optimization process. In order to facilitate the acceptance of the approach, a method of including the Tsai-Wu strength criteria in the most general setting is developed. Analytical expressions for conservative failure envelopes in terms of two strain invariants are derived that are no longer an explicit function of the laminate stacking sequence. The derived envelope is shown to accurately represent the factor of safety for practical laminates under in-plane loading, however, for bending dominated problems it may be too conservative. A failure index is subsequently defined and used to formulate an optimization problem to design laminates for maximum strength under combined axial and shear loads. The designs are subsequently compared to the equivalent maximum stiffness designs. Strength-optimal and stiffness-optimal designs for various materials and load conditions are obtained and are found to be similar for a large range of problems. However, differences were also found, particularly for compression-shear loaded panels. Laminate strength is found to be significantly more sensitive to the final laminate design than laminate stiffness, which implies that design for maximum strength will result in near-optimal laminate stiffness, however, the opposite is not necessarily true. Approximations for several specific design optimization problems related to buckling are developed. Initial work is focused on developing convex separable approximations of the buckling load of plates. It is shown, using the eigenvalue problem used to solve for linear buckling, that a homogenous convex approximation for the inverse buckling load factor is obtained when expanding the geometric stiffness matrix linearly in terms of the laminate in-plane stiffness while expanding the material stiffness matrix reciprocally in terms of laminate bending stiffness. A convex approximation to maximize laminate stiffness is also developed. A trade-off study between maximum laminate stiffness and maximum laminate buckling load of a plate under uniaxial compression is conducted. Numerical results demonstrate that significant improvements in structural performance are possible and that a variable stiffness laminate with overall stiffness equivalent to a quasi-isotropic laminate can be designed to have twice the buckling load. In-plane load redistribution is found to be the primary mechanism resulting in improved buckling load and post-buckling analysis demonstrated that variable stiffness laminate designs have similar or superior post-buckling stiffness when compared to the equivalent constant stiffness solutions. A simplified method of including thermals stresses during the buckling design optimization process is also developed, since the pre-buckling stress state significantly influences a panels buckling behavior. For the plate buckling problem under consideration, residual thermal stresses are shown to beneficially influence the compressive load carrying capacity of a plate if the temperature difference between curing temperature and operating temperature are not excessive. The range of operating temperatures over which a panel exhibits good buckling behavior increases significantly when including thermal effects in the design process. Later, the approximation of the inverse buckling load factor is extended to include laminate thickness as a design variable, which requires additional linearization of the terms linear in the laminate stiffness matrices. Compared to the optimal variable stiffness design with constant thickness further improvements in the buckling load, 30-100% depending on the minimum bound thickness, are obtained. When thickness variation is included in the variable stiffness design routine for maximum laminate buckling load, both load redistribution and increased laminate bending stiffness are found to play a role in the improved structural performance. Using the insight gained from studying variable stiffness plates, a convex approximation of the inverse buckling load for general structures is derived. Convexity of the approximation is guaranteed by expanding the terms associated with the geometric stiffness matrix linearly with respect to the laminate stiffness matrices and expanding the terms associated with the material stiffness matrix reciprocally. An example problem, a curved panel subject to a uniform pressure load, is presented to demonstrated the applicability of the derived approximation. Two practical design applications are studied with several industrial partners to demonstrate the effectiveness of the developed design approach. A first problem considers the design of a simplified window belt section for maximum tensile strength. Numerical results highlight that variable stiffness laminates, including manufacturing constraints, can be found that have a 50% higher failure load compared to the best constant stiffness design. A second design problem focuses on the design of an aircraft wing rib to meet a range of imposed design requirements with buckling as a primary design driver. Other than demonstrating the benefit of using stiffness variation for more practical structures, the analysis for this design problem is conducted entirely using an external commercial finite element solver. Also for this more practical design problem the optimizer was found to perform satisfactorily.