Faits :
A.
A.a. B._ SA (maître de l'ouvrage), ayant son siège à X._ (VD), a pour but social notamment l'extraction, la préparation et la vente de tous agrégats pierreux.
Le 22 novembre 1994, cette société a commandé à A._ AG (l'entrepreneur), dont le siège est à Y._ (BL), le bateau "M._" pour le prix global de 3'301'500 fr., TVA comprise. Selon un descriptif du 22 septembre 1994, le bateau commandé était un chaland auto-chargeur de marque aaa, de type chaland à cales et à multimoteurs fixes et cabine, ayant les spécificités suivantes:
- longueur: 51,40 mètres (m),
- largeur: 8,75 m,
- charge utile: environ 550 tonnes (t).
Le 2 décembre 1994, l'entrepreneur a confirmé au maître de l'ouvrage les travaux de construction du bateau "M._" pour le prix de 3'301'500 fr., avec TVA.
Il a été convenu entre les parties que le "M._" serait semblable au chaland "N._ ", construit par l'entrepreneur en 1991 pour l'entreprise C._, laquelle est active, à l'instar du maître de l'ouvrage, dans le transport fluvial de sable et de gravier dragués sur le lac de ....
Livré à une date indéterminée dans les premiers mois de 1996, le "M._" a été mis en service le 24 avril 1996. Le chaland correspondait aux spécifications jointes à la commande, à l'exception de menues modifications auxquelles avait procédé l'entrepreneur durant la phase finale de construction. Le bateau comportait un tapis de déchargement dont le centre de rotation se situait à l'avant, côté bâbord. Comme cette installation, en position de repos, se trouvait sur le plat-bord bâbord, elle devait être pivotée pour le déchargement. A bâbord, elle pouvait être pivotée sur 180° (du plat-bord jusqu'à la proue) et, à partir de la proue, de 85° supplémentaires, pratiquement jusqu'au travers tribord (axe transversal du bateau).
L'entrepreneur a procédé à ses propres examens de stabilité et a notamment effectué une manoeuvre de déchargement sans que le bateau ne soit amarré au port. Le procès-verbal des examens de stabilité transversale a été communiqué aux autorités vaudoises compétentes.
Le Service de la navigation a inspecté le bateau le 3 septembre 1996. Un permis de navigation, indiquant une charge possible de 550 t, a été délivré par cette autorité au maître de l'ouvrage pour le "M._".
L'entrepreneur ignorait, lors de la conception et de la fabrication du chaland, le poids des installations et équipements (rails, grue) qui seraient ajoutés par le maître de l'ouvrage.
Il a été retenu que le système de déchargement (moteurs, réducteurs, etc.) a été sous-dimensionné par l'entrepreneur et qu'il a été réparé par celui-ci à la fin 1996 dans le cadre de travaux de garantie, à la suite de réclamations du maître de l'ouvrage.
A.b. Dès le départ, à vide mais aussi avec une charge réduite, le "M._" a présenté une assiette clairement inclinée vers l'arrière. Ce déséquilibre d'assiette rendait inutilisables les soutes arrière. Le maître de l'ouvrage connaissait ce défaut, qui a été consigné dans le procès-verbal des essais de stabilité. Il n'a pas envoyé à l'entrepreneur un avis formel concernant l'existence d'un défaut de stabilité du navire.
Ayant appris que l'entreprise C._ avait demandé à l'entrepreneur de rehausser de 500 millimètres (mm) les bords des cales notamment de son chaland "N._", le maître de l'ouvrage a demandé à l'entrepreneur en 1997 de remonter de la même hauteur les bords supérieurs (dennebords) des cales I et II du "M._" (cales avant). Lors des discussions concernant cette commande, l'assiette du chaland n'a pas été évoquée.
Le 17 novembre 1997, l'entrepreneur a confirmé au maître la commande de rehaussement des dennebords des soutes I et II, puis lui a livré le matériel pour procéder aux travaux. Le maître de l'ouvrage a renvoyé le monteur que l'entrepreneur lui avait adressé; il a procédé, par l'entremise de ses propres employés, aux travaux de rehaussement, sur la base de plans et du matériel (i. e. des tôles) fournis par l'entrepreneur. Le maître de l'ouvrage est toutefois allé au-delà de la proposition de transformation émanant de l'entrepreneur, car il a rehaussé les bords supérieurs de toutes les cales (de 500 mm pour les cales avant, de 200 mm pour les cales arrière III et IV), et non pas uniquement ceux des cales avant. Le maître a par ailleurs aménagé un couloir de circulation au-dessus de la cale tribord, fait installer une passerelle et modifié l'installation de déchargement. L'entrepreneur a facturé au maître les prestations du bureau technique, celles d'atelier, le matériel ainsi que les travaux de montage à X._.
Il a été retenu qu'en surélevant les dennebords de l'ensemble du navire, le maître de l'ouvrage a permis que la charge totale soit plus élevée par rapport à la configuration du chaland lors de sa livraison. Cette surélévation a toutefois déplacé le centre de gravité de la barge une fois chargée et diminué sa stabilité.
En juillet 1998, le maître a installé une grue avec rails sur le chaland, ce qui a également contribué à relever le centre de gravité du bateau vide.
Au printemps 1999, le maître a changé le système de tapis roulants du chaland, ce qui a repoussé le centre de gravité de cette installation vers bâbord; il en était résulté un effet positif quant à la stabilité du navire.
A.c. Le vendredi 16 juillet 1999, le "M._" a été chargé à ... (NE) de moraine (terre légèrement marneuse) sous la responsabilité du pilote. Selon le ticket de pesage délivré au pilote par un compteur, 615,6 t de cette terre auraient été chargées sur le bateau. La moraine a été acheminée dans les cales du bateau au moyen d'un tapis roulant. Cette opération terminée, le chaland a traversé le lac de ... et emprunté le canal de ... jusqu'à ... (NE), où il s'est amarré après avoir fait un demi-tour pour positionner sa proue en direction de l'ouest, en vue du déchargement qui devait être effectué le matin du 19 juillet 1999 sur la rive nord du canal de ...; la moraine était destinée au chantier de W._. Le site étant dépourvu de pieux d'amarrage, le bateau devait se mettre au milieu du canal, virer à tribord de 90° pour faire face à la rive et déployer simultanément le bras de déchargement (sur lequel tourne un tapis roulant) afin qu'il s'appuie sur la berge nord de ... en étant fixé à un arbre.
Aux alentours de 7h. 30, le lundi 19 juillet 1999, alors que le bateau était en travers du canal et que le bras de déchargement venait de passer la proue du bateau à tribord, celui-ci a commencé à gîter, à embarquer de l'eau sur le trottoir et s'est complètement retourné sans que l'équipage puisse intervenir. Si deux des trois membres de l'équipage, dont le pilote, ont pu être ramenés sains et saufs sur la rive, le troisième est décédé par noyade. Il a été retenu qu'avant ce jour, le conducteur du bateau n'avait jamais utilisé cette technique de déchargement.
Deux expertises privées se sont attachées à déterminer les circonstances de l'accident du 19 juillet 1999.
La première est celle du Bureau d'études D._, à ... (France), qui a rédigé un rapport le 12 octobre 1999 (modifié le 7 février 2000), dont il ressort qu'avec un chargement de 550 t, la stabilité de la barge était déjà mise en péril lors de certaines inclinaisons du tapis de déchargement.
La seconde est celle de l'ingénieur naval E._, rattaché à l'Office fédéral des transports, qui a déposé un rapport le 3 février 2000 et un complément le 19 septembre 2000. Il en résulte que chaque augmentation de la charge ou du poids propre du bateau et chaque augmentation de la position verticale du centre de gravité provoquent une diminution de la stabilité. Pour l'expert privé, le chavirement a été déclenché sans doute aucun par le "pivotement du tapis roulant pivotant".
Dans le cadre de l'enquête pénale diligentée contre le pilote du chaland, le juge d'instruction compétent a désigné l'expert F._, du Bureau d'expertises navales, pour décrire le déroulement de l'accident. L'expert F._ a déposé son rapport le 10 mars 2000 auquel il a intégré, pour en faire partie intégrante, le rapport de l'ingénieur E._; il a effectué des essais de stabilité sur le chaland en présence notamment de deux ingénieurs du Bureau d'études D._. En conclusion de son rapport, l'expert F._ a écrit ce qui suit: " L'accident survenu le 19 juillet 1999 (...) a été causé par l'important dépassement de la charge autorisée qui se trouvait à bord au moment du chavirage et a été déclenché par le mouvement de rotation du tapis de déchargement".
A.d. D'entente entre les parties, une expertise hors procès a été ordonnée. Dans ses constatations du 23 mars 2001, le Bureau G._, à ..., en confirmation des calculs opérés par le Bureau d'études D._, a affirmé qu'avec un chargement de 550 t, le bateau chavirait lorsque le tapis de déchargement se trouvait à 90° à tribord.
A.e. Par jugement du 28 mars 2002, le Tribunal de police du district de Neuchâtel a considéré que le chavirement du navire n'était pas imputable à une faute du pilote, de sorte que ce dernier devait purement et simplement être libéré de toute charge pénale. Dans les considérants de sa décision, cette autorité a retenu qu'il n'était pas certain que le chaland ait été chargé de 616 t de moraine le jour de l'accident et que le doute qui en résultait devait profiter à l'accusé.
A.f. Par courrier du 5 juillet 2000, le conseil du maître de l'ouvrage a prié le conseil de l'entrepreneur de lui confirmer que celui-ci acceptait de renoncer à la prescription jusqu'au 19 juillet 2001. Par courrier du 18 juillet 2000, l'entrepreneur a déclaré pour la première fois renoncer à se prévaloir de la prescription jusqu'au 19 juillet 2001, pour autant qu'elle ne fût pas déjà acquise. Cette renonciation à la prescription a été renouvelée par l'entrepreneur, avec la même réserve, les 11 juillet 2001, 15 juillet 2002, 18 juillet 2003, et 21 juin 2004.
B.
B.a. Par demande du 31 janvier 2005, B._ SA (demanderesse) a ouvert action contre A._ AG (défenderesse) devant la Cour civile du Tribunal cantonal vaudois, lui réclamant paiement de la somme de 2'228'365 fr.70 avec intérêts à 5% l'an dès le 19 juillet 1999. La demanderesse a allégué avoir supporté des frais de sauvetage et de renflouage du bateau, par 91'747 fr.10, des frais complémentaires de renflouage non couverts par son assurance casco, par 121'743 fr.75, des frais de réparation du bateau, par 1'225'032 fr.28, des frais de transformation, par 517'060 fr.30, des frais d'expertise et de mandataire, par 54'282 fr.35, une perte d'exploitation du 19 juillet 1999 au 1er mars 2002, par 418'500 fr., et une perte sur l'installation de chantier, par 100'000 fr. Du montant global du préjudice, fixé à 2'528'365 fr.70, la demanderesse déduit le montant de 300'000 fr. que lui a versé son assurance casco, d'où sa conclusion en paiement de 2'228'365 fr.70 en capital.
La défenderesse a conclu à sa libération, soulevant l'exception de prescription à l'encontre des prétentions de la demanderesse.
B.b. En cours d'instance, une expertise technique et une expertise financière ont été ordonnées.
Les experts techniques H._ et I._, ingénieurs diplômés, ont déposé un rapport le 17 janvier 2008 et un rapport complémentaire le 27 avril 2009. Pour ces experts, la charge effectivement présente à bord du chaland le jour de l'accident n'a pas pu être déterminée avec exactitude. Le fait que la stabilité du bateau n'a pas été contrôlée à sa livraison avec le tapis de déchargement déployé, et surtout après le rehaussement des dennebords et l'installation d'une grue avec ses rails, devait être considéré comme une lacune. Avec un chargement de 550 t, soit la charge maximale arrêtée par le Service de la navigation, et un tapis de déchargement pivoté, le bateau était assurément mis en danger s'il devait être déchargé sans être amarré à un quai, mais en eau libre; la stabilité était en revanche suffisante pour la situation "tapis de déchargement reposant sur bâbord (position de repos) ". Selon les experts, le bateau n'était pas conçu pour la manoeuvre de déchargement réalisée en eau libre le jour de l'accident.
Les experts financiers J._ et K._ ont confirmé l'exactitude des factures produites par la demanderesse pour établir son dommage. Ils ont estimé le dommage global de cette dernière à 2'037'635 fr.78, après déduction de la somme prise en charge par son assurance casco.
B.c. De nombreux témoins ont été entendus, en particulier sur le point de savoir si devait être qualifiée de classique pour le chaland "M._" la manoeuvre de déchargement exécutée le jour de l'accident, soit en eau libre avec le bras de déchargement à bâbord et/ou tribord.
B.d. Par jugement du 6 septembre 2013, la Cour civile du Tribunal cantonal a débouté la demanderesse de toutes ses conclusions. Elle a retenu que les prétentions de cette dernière, fondées sur la garantie des défauts de l'ouvrage livré, étaient prescrites au regard de l'art. 371 al. 1 aCO (dans sa teneur au 31 décembre 2012). L'action délictuelle (art. 41 CO) exercée par la demanderesse en concours avec l'action en garantie des défauts n'était pour sa part pas atteinte par la prescription. Elle devait néanmoins être rejetée, au motif que la capacité de procéder à un déploiement du bras de déchargement alors que le navire était en mouvement ne constituait pas une qualité à laquelle la demanderesse pouvait s'attendre de bonne foi. Le chaland n'était pas affecté d'un défaut de conception et la défenderesse n'a pas commis un acte illicite en livrant un chaland qui n'était pas susceptible d'effectuer ladite manoeuvre. Au surplus, la défenderesse ne pouvait pas prévoir les modifications apportées par la demanderesse sur le bateau, qui ont en particulier engendré un défaut de stabilité.
B.e. Statuant sur l'appel de la demanderesse, qui reprenait ses conclusions de première instance, la Cour d'appel civile du Tribunal cantonal vaudois, par arrêt du 22 janvier 2015, l'a presque entièrement admis. Réformant le jugement attaqué, la cour cantonale a condamné la défenderesse à payer à la demanderesse la somme de 2'037'635 fr.78 plus intérêts à 5% l'an dès le 19 juillet 1999. Sur les frais et dépens, elle a admis que la demanderesse a droit à de pleins dépens de première instance et que tous les frais judiciaires de deuxième instance doivent être mis à la charge de la défenderesse.
Les considérants de l'arrêt cantonal peuvent être résumés de la manière suivante.
La Cour d'appel a tout d'abord confirmé le raisonnement des premiers juges, selon lequel les prétentions contractuelles de la demanderesse basées sur les défauts de l'ouvrage livré étaient atteintes par la prescription en application de l'art. 371 al. 1 aCO. Même s'il fallait admettre l'application rétroactive du nouvel article 371 al. 1 CO au regard des art. 49 al. 2 et 2 Tit. Fin. CC - ce qui est exclu -, le délai biennal de prescription depuis la livraison de l'ouvrage en 1996 serait atteint, le rehaussement des dennebords ne constituant pas des travaux de garantie ayant interrompu le cours de la prescription. Quant à la jurisprudence de la Cour européenne des droits de l'homme (CourEDH) en rapport avec les victimes de l'amiante invoquée par la demanderesse, elle n'empêche pas l'application des délais de prescription prévus par le droit positif en matière de garantie des défauts de l'ouvrage.
Le sort du litige n'en est cependant pas scellé, dès lors que l'action de la demanderesse se fonde aussi sur l'art. 41 CO et que la prescription annuelle de l'art. 60 al. 1 CO a été valablement interrompue par la déclaration de renonciation émise le 18 juillet 2000 par la défenderesse.
Contrairement à l'opinion de la Cour civile, la cour cantonale a jugé que le déchargement en eau libre du chaland, avec tapis de déchargement en position diagonale, est une manoeuvre usuelle, que la possibilité de faire cette manoeuvre avec le chargement maximal de 550 t était une qualité attendue de l'ouvrage et que le bateau était ainsi dès le début affecté d'un défaut. L'illicéité de l'acte commis par la défenderesse découle du fait que son comportement a porté atteinte à la propriété de la demanderesse. En concevant le chaland de manière défectueuse, la défenderesse doit se voir opposer une faute. L'accident du 19 juillet 1999 étant dû à un défaut initial, le lien de causalité entre ledit défaut et le dommage subi par la demanderesse, lequel a été prouvé par l'expertise financière, est établi. La cour cantonale en a inféré que les conditions de la responsabilité aquilienne de la défenderesse sont réalisées.
C.
A._ AG exerce un recours en matière civile au Tribunal fédéral contre l'arrêt cantonal. Elle conclut principalement à la réforme de cet arrêt, en ce sens que les conclusions de la demande sont rejetées en totalité; subsidiairement, elle requiert l'annulation de cette décision, la cause étant retournée à l'autorité cantonale pour nouvelle décision dans le sens des considérants.
L'intimée propose le rejet du recours.
La recourante a répliqué et l'intimée a dupliqué.
Considérant en droit :
1.
1.1. Interjeté en temps utile (art. 100 al. 1 LTF) par la défenderesse, qui a très largement succombé dans ses conclusions libératoires (art. 76 LTF), contre une décision finale (art. 90 LTF) rendue en matière civile (art. 72 al. 1 LTF) par le tribunal supérieur du canton statuant sur recours (art. 75 LT) dans une affaire pécuniaire dont la valeur litigieuse dépasse le seuil de 30'000 fr. de l'art. 74 al. 1 let. b LTF, le recours en matière civile est recevable au regard de ces dispositions.
1.2. Le recours en matière civile peut être interjeté pour violation du droit fédéral (art. 95 let. a LTF), y compris le droit constitutionnel (ATF 136 I 241 consid. 2.1 p. 247; 136 II 304 consid. 2.4 p. 313). Le Tribunal fédéral applique le droit d'office (art. 106 al. 1 LTF). Il n'est pas limité par les arguments soulevés dans le recours, ni par la motivation retenue par l'autorité précédente; il peut donc admettre un recours pour d'autres motifs que ceux qui ont été articulés ou, à l'inverse, rejeter un recours en adoptant une argumentation différente de celle de l'autorité précédente (ATF 138 II 331 consid. 1.3 p. 336). La juridiction fédérale s'en tient cependant aux questions juridiques que la partie recourante soulève dans la motivation du recours et ne traite donc pas celles qui ne sont plus discutées par les parties (art. 42 al. 2 LTF; ATF 137 III 580 consid. 1.3 p. 584). Le Tribunal fédéral n'examine la violation d'un droit constitutionnel que si le grief a été invoqué et motivé de façon détaillée (art. 106 al. 2 LTF; ATF 135 III 397 consid. 1.4 in fine).
Le Tribunal fédéral doit conduire son raisonnement juridique sur la base des faits constatés dans la décision attaquée (art. 105 al. 1 LTF). La juridiction fédérale peut compléter ou rectifier même d'office les constatations de fait qui se révèlent manifestement inexactes, c'est-à-dire arbitraires au sens de l'art. 9 Cst. (ATF 137 I 58 consid. 4.1.2 p. 62), ou établies en violation du droit comme l'entend l'art. 95 LTF (art. 105 al. 2 LTF). La partie recourante n'est autorisée à attaquer des constatations de fait ainsi irrégulières que si la correction du vice est susceptible d'influer sur le sort de la cause (art. 97 al. 1 LTF). Il lui incombe alors d'indiquer de façon précise en quoi les constatations critiquées sont contraires au droit ou entachées d'une erreur indiscutable, à défaut de quoi le grief est irrecevable (ATF 137 I 58 ibidem).
2.
2.1. La recourante se plaint à trois égards d'un établissement manifestement inexact des faits (art. 97 al. 1 LTF) et d'une appréciation arbitraire des preuves (art. 9 Cst.).
Pour pouvoir examiner un grief de violation du droit matériel, il faut que l'état de fait ait été définitivement établi. Il sied ainsi d'examiner en premier lieu les griefs d'arbitraire dans l'établissement des faits invoqués par la demanderesse.
2.2. Selon la jurisprudence, une décision est arbitraire, au sens de l'art. 9 Cst., lorsqu'elle est manifestement insoutenable, méconnaît gravement une norme ou un principe juridique clair et reconnu, ou encore heurte de manière choquante le sentiment de la justice et de l'équité. Il ne suffit pas que sa motivation soit insoutenable; encore faut-il que la décision apparaisse arbitraire dans son résultat. A cet égard, le Tribunal fédéral ne s'écarte de la solution retenue que dans la mesure où celle-ci apparaît insoutenable, en contradiction manifeste avec la situation effective, adoptée sans motif objectif et en violation d'un droit certain. Il n'y a pas arbitraire du fait qu'une autre solution pourrait entrer en considération ou serait même préférable (ATF 140 III 16 consid.2.1 p. 18 s.; 138 III 378 consid. 6.1 p. 379 s.).
De jurisprudence constante, le Tribunal fédéral se montre réservé en matière de constatation des faits et d'appréciation des preuves, vu le large pouvoir qu'il reconnaît en la matière aux autorités cantonales (ATF 120 Ia 31 consid. 4b p. 40; 104 Ia 381 consid. 9 p. 399 et les arrêts cités). Dans ce domaine, l'autorité verse dans l'arbitraire lorsqu'elle ne prend pas en compte, sans raison sérieuse, un élément de preuve propre à modifier la décision, lorsqu'elle se trompe manifestement sur son sens et sa portée, ou encore lorsqu'elle tire des conclusions insoutenables à partir des éléments recueillis (ATF 140 III 264 consid. 2.3 p. 265; 137 III 226 consid. 4.2 p. 234).
Le recourant doit en particulier démontrer précisément, pour chaque constatation de fait incriminée, comment les preuves administrées auraient dû, à son sens, être correctement appréciées, et en quoi leur appréciation par l'autorité cantonale serait insoutenable (arrêts 4A_66/2015 du 22 septembre 2015 consid. 2.2.2; 5A_621/2013 du 20 novembre 2014 consid. 2.1). Le Tribunal fédéral n'entre pas en matière sur les critiques de nature appellatoire (ATF 130 I 258 consid. 1.3 p. 261/262).
2.3.
2.3.1. La recourante soutient que la cour cantonale a retenu arbitrairement que le déchargement en eau libre avec bras de déchargement en rotation constituait une manoeuvre usuelle pour le chaland "M._" avec ou sans accostage à un autre bateau, y compris quand le bateau est encore en mouvement. Elle se réfère à l'expertise judiciaire technique, où les experts ont qualifié de "particulièrement peu sûre " la technique de déchargement pratiquée le jour de l'accident, technique dont elle assure que le maître de l'ouvrage ne l'a pas informée qu'elle serait utilisée. Elle allègue qu'aucune pièce produite par la demanderesse ne démontrerait le caractère usuel de la manoeuvre. Discutant les dépositions mentionnées par la cour cantonale au considérant 14 let. a de son arrêt (p. 26/27), elle fait valoir que la manoeuvre de déchargement à laquelle font allusion certains témoins est différente de celle pratiquée le jour de l'accident, à savoir navire en mouvement, ancre non jetée et bras déployé sur tribord. La Cour d'appel aurait mélangé des témoignages contradictoires exposant des manoeuvres distinctes et aurait dû s'interroger sur les circonstances concrètes du jour de l'accident. A en croire la recourante, seule une expertise aurait été en mesure de résoudre la contradiction entre les témoignages et les constatations des experts.
2.3.2. En rapport aux allégués n°s 74, 76, 77 et 79, les experts H._ et I._, dans leur rapport du 17 janvier 2008, ont certes décrit comme "particulièrement peu sûre" la manoeuvre de déchargement effectuée le jour du sinistre. Mais, à la page 4 du même rapport, ils ont écrit que le "non-chavirage du bateau dépend de la position du centre de gravité du chargement et de celle du tapis de déchargement" et qu'il "existe donc de nombreuses combinaisons dans lesquelles le bateau ne chavire pas, mais tout autant de combinaisons dans lesquelles il chavire inévitablement". En d'autres termes, pour ces experts, aucune technique de déchargement n'était vraiment "sûre" s'agissant du "M._", qu'elle soit usuelle ou non. La recourante ne peut ainsi rien tirer des déclarations des experts pour établir l'arbitraire de l'allégation incriminée.
Le considérant 14 let. a de l'arrêt déféré a fait état des dépositions recueillies par le Juge instructeur de la Cour civile sur le type de manoeuvre de déchargement adopté le jour de l'accident. La recourante ne prétend pas que le résumé des déclarations des témoins aurait été retranscrit de manière insoutenable.
Il apparaît ainsi que cinq témoins (O._, P._, Q._, R._ et S._) ont confirmé que la technique de déchargement suivie le 19 juillet 1999 (en eau libre, sans amarrage et avec déploiement du bras de déchargement en position diagonale) était usuelle pour un chaland comme le "M._". Trois d'entre eux (P._, R._, S._) ont émis une réserve sur l'usage de ladite manoeuvre en fonction de l'état du lac (vagues, houle). In casu, il n'a pas été constaté qu'il y avait des vagues sur le canal de ... le jour en question, de sorte que les restrictions évoquées par les trois témoins n'ont aucune portée. Enfin deux autres témoins (T._, E._) ont affirmé que l'amarrage du chaland ne supprime pas le risque de chavirement lors du déchargement.
Sur la base de ces témoignages concordants, qui se rapportent bien à la technique de déchargement utilisée lors du sinistre, quoi qu'en dise la recourante, on cherche vainement où réside l'arbitraire invoqué par cette dernière.
Enfin, la recourante ne prétend pas qu'on lui a refusé une expertise au mépris de ses droits constitutionnels.
Le moyen, sous toutes ses facettes, est infondé.
2.4.
2.4.1. La recourante prétend que c'est arbitrairement que les magistrats vaudois ont retenu que la charge du chaland n'avait pas eu d'influence sur sa stabilité. Elle soutient qu'avec un chargement de 500 t, le navire, auquel l'intimée avait ajouté des installations supplémentaires après sa livraison, n'aurait pas chaviré. A l'en croire, à tout le moins un doute extrêmement important subsiste sur le déroulement des événements dans l'hypothèse où la charge utile du bateau aurait été ramenée à ce qu'elle aurait dû être (soit 530 t) compte tenu des transformations ultérieures apportées au chaland, dont le poids n'a pas été déterminé avec exactitude. Pour elle, le lien de causalité naturelle entre un éventuel défaut de stabilité initial du bateau et l'accident aurait été retenu de manière indéfendable. Enfin, la cour cantonale aurait dû s'écarter des conclusions des experts judiciaires pour privilégier celles de l'expert privé E._ et de l'expert F._ commis dans le procès pénal ouvert contre le pilote.
2.4.2. Il résulte de l'expertise judiciaire technique que le bateau livré en 1996 par la défenderesse à la demanderesse n'était pas conçu pour la manoeuvre de déchargement en eau libre avec un déploiement du bras de déchargement à tribord, technique employée le jour de l'accident, laquelle, ainsi qu'on l'a vu, a été qualifiée sans arbitraire d'usuelle pour ce type de chaland. Les experts techniques n'ont pas émis le moindre doute à ce sujet, comme en atteste la mise en évidence du paragraphe contenant cette appréciation, à la page 4 du rapport du 17 janvier 2008. Même la charge possible de 550 t indiquée sur le permis de navigation délivré par l'autorité administrative ne permettait pas, au dire des experts techniques, un déchargement du bateau en eau libre dans de bonnes conditions de sécurité.
A partir de là, il n'était pas arbitraire de retenir que la charge du chaland le 19 juillet 1999 (y compris avec les installations supplémentaires ajoutées par le maître de l'ouvrage après la livraison) n'a pas joué de rôle dans le chavirement, à l'inverse du défaut d'assiette initial du bateau et de la technique de déchargement choisie ledit jour, qui sont la cause naturelle du sinistre.
La recourante tente d'opposer les résultats de l'expertise technique aux conclusions des experts E._ et F._. En vain. L'expert E._ a affirmé sans ambages que le chavirement a été provoqué par le pivotement du bras de chargement. Quant à l'expert F._, il est vrai qu'il a imputé la cause du naufrage au dépassement de la charge autorisée - qu'il s'est du reste abstenu de chiffrer -, mais a déclaré, dans la même phrase, que le sinistre a été déclenché par le mouvement de rotation du tapis de déchargement. Loin de diverger, les avis exprimés par tous les experts, tant privés que judiciaires, convergent en réalité.
Le moyen n'a pas de consistance.
2.5.
2.5.1. La recourante prétend que l'autorité cantonale a versé dans l'arbitraire en arrêtant certains postes du dommage à partir des lots de factures n °s 16 et 17, produits par l'intimée et visés par les experts financiers. Elle se réfère singulièrement aux frais de réparation et aux frais de transformation du chaland, lesquels représentent, à eux seuls, les trois quarts du préjudice allégué. Rien n'établirait que les factures susmentionnées soient directement liées aux travaux de réparation et de transformation, et qu'elles ne concernent pas des travaux à plus-value. A propos de la perte d'exploitation réclamée entre l'accident et le 1er mars 2002, elle fait valoir que l'intimée n'a pas prouvé que le chaland aurait continué, en 2000, 2001 et 2002, ses activités lucratives de transports lacustres pour des tiers. Il serait incompréhensible que les juges cantonaux se soient contentés d'additionner lesdites factures pour fixer le dommage total, cela sans vérifier les travaux concrets auxquels elles se rapportaient. La cour cantonale aurait commis arbitraire en suivant une expertise financière non concluante.
2.5.2. La question de l'établissement du dommage souffre en l'état de rester indécise pour la raison suivante. En effet, à supposer que la défenderesse n'ait pas causé par son comportement un dommage à la demanderesse en violant un droit absolu de celle-ci ou en transgressant une norme de comportement destinée à protéger la lésée contre la survenance du dommage subi, aucun acte illicite (art. 41 al. 1 CO) ne pourrait lui être reproché. Une des conditions de la responsabilité délictuelle invoquée à son encontre ferait alors défaut, de sorte que les autres conditions de la responsabilité aquilienne (en particulier le dommage subi par le lésé) n'auraient pas à être examinées.
3.
Il n'est pas contesté, au vu des prestations convenues entre les parties selon la commande du 22 novembre 1994 et la confirmation du 2 décembre 1994, que ces dernières ont conclu un contrat d'entreprise (art. 363 CO) portant sur la construction du chaland "M._".
3.1. La Cour d'appel, suivant en cela l'opinion de la Cour civile, a jugé que l'action contractuelle de la demanderesse fondée sur la garantie des défauts de l'ouvrage livré (art. 368 ss CO) est prescrite, que ce soit en application de l'ancien art. 371 al. 1 aCO ou du nouvel article 371 al. 1 CO, et que la jurisprudence de la CourEDH dont s'est prévalue la demanderesse n'y change rien.
Comme elle l'avait soutenu en appel, la demanderesse, dans son mémoire de réponse au recours en matière civile, prétend à nouveau que la prescription de ladite action contractuelle n'est pas acquise au regard de l'arrêt de la CourEDH Moor contre Suisse du 11 mars 2014 (n °s 52067/10 et 41072/11), Plaidoyer 2014/2 p. 57; elle n'invoque plus toutefois de violation des art. 371 al. 1 aCO et 371 al. 1 CO.
Ayant obtenu l'octroi de plus de 91% de ses prétentions en appel, la demanderesse n'avait plus intérêt à recourir sur la question de la prescription.
Pour le cas où les motifs retenus par la Cour d'appel ne devraient pas être suivis par le Tribunal fédéral, la demanderesse est en droit de reprendre le pan du moyen fondé sur cette jurisprudence conventionnelle, étant précisé qu'elle a renoncé, dans sa réponse au recours en matière civile, à motiver le volet du grief pris d'une transgression des art. 371 al. 1 aCO et 371 al. 1 CO, ce qui dispense le Tribunal fédéral de l'examiner (cf. à ce propos: ATF 140 III 86 consid. 2; arrêt 4A_146/2015 du 19 août 2015 consid. 2).
3.2. La demanderesse est d'avis qu'admettre la prescription d'une action en responsabilité contractuelle ou délictuelle, au motif que le délai de prescription était déjà échu lorsque le dommage est survenu, constitue une entrave du droit à l'accès au juge, garanti par l'art. 6 par. 1 CEDH. Conformément à l'arrêt de la CourEDH Moor contre Suisse susmentionné, la prescription ne saurait être acquise lorsque le dommage n'apparaît qu'après l'échéance de celle-ci.
3.3. Il résulte de l'arrêt de la CourEDH Moor contre Suisse, ch. 70-80, que la période de latence des maladies liées à l'amiante peut s'étendre sur plusieurs décennies, de sorte que le délai absolu de prescription de dix ans de l'art. 127 CO, qui commence à courir à la date où les victimes ont été exposées à la poussière d'amiante (art. 130 al. 1 CO), sera toujours expiré. En d'autres termes, toute action en dommages-intérêts sera périmée ou prescrite avant même que les victimes aient pu avoir objectivement conscience de leurs droits. Au vu de ces circonstances exceptionnelles, l'application du délai décennal absolu de prescription a limité l'accès des requérants à un tribunal, à un point tel que le droit de ces derniers s'en est trouvé atteint dans sa substance et qu'elle a emporté violation de l'art. 6 par. 1 CEDH.
Pour la CourEDH, à supposer qu'il soit scientifiquement prouvé qu'une personne est dans l'impossibilité de savoir qu'elle souffre d'une certaine affection, à l'exemple des maladies liées à l'amiante, cette circonstance doit être prise en compte pour le calcul du délai de péremption ou de prescription (ch. 78).
3.4. La présente espèce ne saurait être comparée aux circonstances qui ont présidé à la reddition de l'arrêt de la CourEDH. Il n'y est en effet nullement question de prétentions en dommages-intérêts déduites par des personnes physiques (ou leurs ayants droit) ayant été exposées durant de nombreuses années à une substance pathogène, mais de prétentions d'une société anonyme active dans le transport de sable et gravier contre un entrepreneur qui a construit pour elle un chaland présentant un défaut d'assiette, lequel a chaviré à la suite d'une manoeuvre de déchargement. Les circonstances de fait à la base de ces deux décisions sont totalement étrangères l'une à l'autre.
De toute manière, contrairement à l'arrêt de la CourEDH, on ne se trouve nullement dans un cas où l'action en dommages-intérêts était vouée à l'échec, en raison de la prescription ou de la péremption survenue avant même que le lésé ait pu avoir objectivement connaissance de ses droits.
En effet, le défaut d'assiette est survenu à la livraison du bateau. Le maître connaissait ce défaut, car il avait été consigné dans le procès-verbal des essais de stabilité effectués à la réception de l'ouvrage. Il avait donc toute latitude pour actionner l'entrepreneur avant l'échéance du délai de prescription. Il ne doit s'en prendre qu'à lui-même s'il ne l'a pas fait.
Partant, c'est à bon droit que la cour cantonale a déclaré prescrite l'action contractuelle en garantie pour les défauts de l'ouvrage intentée par la demanderesse.
4.
La défenderesse et recourante prétend que les magistrats vaudois ont admis à tort qu'elle a engagé envers la demanderesse et intimée sa responsabilité aquilienne fondée sur l'art. 41 CO. Elle nie avoir commis un acte illicite, affirmant que l'intimée n'a pas subi une atteinte à un droit absolu et que celle-ci ne peut pas se prévaloir de la transgression d'une norme dont le but était de la protéger dans les droits atteints. A ses yeux, la défectuosité de l'ouvrage qu'elle a exécuté et livré à la demanderesse ne constitue pas en soi une violation du droit de propriété du maître susceptible de créer une prétention délictuelle en faveur de celui-ci. Il est erroné de considérer que le défaut et les conséquences matérielles du défaut sur l'ouvrage portent atteinte à la propriété du maître. Le prétendu défaut de stabilité du chaland ne peut pas être qualifié de dommage matériel portant atteinte à la propriété de l'intimée, à l'instar des dommages consécutifs au défaut subis par le même chaland à la suite de l'accident. Ce ne serait que dans la mesure où le bateau aurait causé un dommage à d'autres éléments de la propriété de l'intimée qu'une atteinte à un de ses droits absolus pourrait être envisagée, ce qui n'est pas le cas à considérer le dommage allégué par celle-ci. Alléguant que l'intimée a subi un préjudice purement patrimonial, la recourante prétend qu'elle n'a violé aucune norme protectrice, et singulièrement pas les art. 17, 20 et 21 de l'Ordonnance sur la construction et l'exploitation des bateaux et des installations des entreprises publiques de navigation du 14 mars 1994 (Ordonnance sur la construction des bateaux, OCB; RS 747.201.7), dispositions que l'intimée avait invoquées en appel.
4.1. Le maître de l'ouvrage, auquel l'entrepreneur a livré un ouvrage défectueux, peut exercer, en concours avec l'action contractuelle en garantie des défauts, l'action délictuelle de l'art. 41 CO pour autant évidemment que les conditions de cette action soient remplies; il faut en particulier que la création du défaut constitue simultanément un acte illicite (cf. ATF 117 II 259 consid. 3 p. 269 s.; GAUDENZ G. ZINDEL ET AL., in Basler Kommentar, Obligationenrecht, 6e éd. 2015, n° 81 ad art. 368 CO; FRANÇOIS CHAIX, in Commentaire romand, Code des obligations I, 2e éd. 2012, n° 68 ad art. 368 CO; PETER GAUCH, Der Werkvertrag, 5e éd. 2011, ch. 2342 p. 846; TERCIER/FAVRE, Les contrats spéciaux, 4e éd. 2009, ch. 4464 p. 673).
4.2. Concernant l'existence d'un acte illicite, la cour cantonale a retenu en deux lignes au considérant 5.5 de l'arrêt déféré, sans aucune référence jurisprudentielle ou doctrinale, que l'illicéité de l'acte commis par la défenderesse "découle du fait que son comportement a porté atteinte à la propriété de (la demanderesse) ".
Selon la théorie objective de l'illicéité suivie par la jurisprudence du Tribunal fédéral (ATF 133 III 323 consid. 5.1 p. 330; arrêt 4A_428/2014 du 12 janvier 2015 consid. 6.2, non publié in ATF 141 III 112), un comportement causant un préjudice est illicite s'il lèse un droit absolu du lésé (droit de la personnalité, droit réel, droit de la propriété intellectuelle); on parle alors d'illicéité de résultat. L'acte qui ne porte atteinte qu'à des droits purement économiques n'est illicite qu'à la condition qu'il viole une norme de comportement (Schutznorm) destinée à protéger le lésé dans les droits atteints par l'acte incriminé (illicéité de comportement); en pareil cas, la règle non écrite du risque créé (Gefahrensatz) ne peut pas suppléer l'exigence d'une norme protectrice (ATF 124 III 297 consid. 5b).
4.3. L'ouvrage livré est défectueux lorsqu'il diverge du contrat, ne possède pas les qualités promises ou les qualités auxquelles le maître pouvait s'attendre d'après les règles de la bonne foi (ATF 114 II 239 consid. 5a/aa p. 244; arrêt 4A_65/2012 du 21 mai 2012 consid. 12.3).
En l'occurrence, il a été retenu en fait (art. 105 al. 1 LTF) que le chaland construit par la défenderesse pour la demanderesse a présenté, dès sa livraison dans les premiers mois de 1996, un défaut d'assiette, qui rendait impossible l'opération de déchargement litigieuse (i.e. en eau libre avec déploiement du bras de déchargement à tribord), technique de déchargement - usuelle pour ce type de chaland - dont le maître pouvait escompter de bonne foi l'usage sans risque de chavirement. Lorsque le conducteur du bateau a effectué le 19 juillet 1999, pour la première fois, la manoeuvre de déchargement en question, le chaland s'est complètement retourné, sans que l'équipage ne puisse rien y faire.
En doctrine, il est soutenu que la défectuosité de l'ouvrage livré, compris comme le résultat concret du travail de l'entrepreneur, ne constitue pas une violation du droit de propriété du maître, susceptible de créer une prétention délictuelle en faveur de celui-ci ( GAUCH, op. cit., ch. 2345 p. 847 s.; HEINRICH HONSELL, Schweizerisches Obligationenrecht, Besonderer Teil, 9e éd. 2010, p. 301).
Cette opinion doit être suivie. Elle est de fait en harmonie avec la théorie objective de l'illicéité.
4.4. Ces considérations amènent le Tribunal fédéral à adopter la solution suivante.
La demanderesse disposait, pour le défaut initial d'assiette qui a affecté le chaland livré, des droits de garantie découlant de l'art. 368 CO, droits qu'elle n'a pas pu exercer en raison de la prescription survenue. En revanche, ce défaut, qui a entraîné le chavirement du navire lorsque la manoeuvre de déchargement en eau libre sus-décrite a été effectuée, ne constituait pas par lui-même une violation du droit de propriété de la demanderesse (illicéité de résultat), de nature à entraîner la responsabilité aquilienne de la défenderesse envers elle.
La demanderesse, dans sa réponse au recours en matière civile, cherche à se prévaloir de la transgression de normes protectrices fondant l'illicéité en cas de dommage purement patrimonial (illicéité de comportement), à savoir d'une violation des art. 17, 20 et 21 OCB. En pure perte.
D'après l'art. 1 al. 1 OCB, ladite ordonnance régit la construction et l'exploitation des bateaux et des installations des entreprises publiques de navigation, par quoi il faut entendre les entreprises de navigation au bénéfice d'une concession ou d'une autorisation fédérale (art. 2 al. 1 OCB, dans sa teneur en vigueur depuis le 1er janvier 1999). Or, il n'a pas été établi que la demanderesse ait été au bénéfice d'une concession ou d'une telle autorisation. L'art. 1 al. 2 OCB déclare certes singulièrement les art. 17 et 21 OCB applicables à la construction, l'équipement et l'exploitation des bateaux des entreprises de navigation qui ne sont pas au bénéfice d'une concession fédérale, mais pour autant qu'il s'agisse de bateaux à passagers. L'intimée, qui est active dans le transport de sable et de gravier, n'entre à l'évidence pas dans cette catégorie de transporteur.
La demanderesse ne peut donc pas se prévaloir d'une transgression de normes de l'OCB. Et on cherche vainement quelle autre norme de comportement, ayant pour but de protéger le patrimoine de la demanderesse, la défenderesse aurait enfreint.
Il s'ensuit que la commission d'un acte illicite ne peut pas être reprochée à la recourante dans le cas présent. Le moyen est fondé.
Ce résultat dispense le Tribunal fédéral de traiter les griefs de la recourante, qui ont trait aux autres conditions de la responsabilité délictuelle (causalité, dommage et faute) ainsi qu'à la violation de l'art. 8 CC et des art. 43 et 44 CO.
5.
En définitive, le recours doit être admis. L'arrêt attaqué est réformé, en ce sens qu'il est prononcé que les conclusions prises par la demanderesse contre la défenderesse selon demande du 31 janvier 2005 sont rejetées.
L'intimée, qui succombe, supportera les frais de justice et versera une indemnité de dépens à la recourante (art. 66 al. 1, 68 al. 1 et 2 LTF).
La cause sera renvoyée à la cour cantonale pour nouvelle décision sur les frais et dépens des procédures cantonales.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis et l'arrêt attaqué est réformé en ce sens que les conclusions prises par B._ SA contre A._ AG selon demande du 31 janvier 2005 sont rejetées.
2.
Les frais judiciaires, arrêtés à 15'000 fr., sont mis à la charge de l'intimée.
3.
L'intimée versera à la recourante une indemnité de 17'000 fr. à titre de dépens.
4.
La cause est renvoyée à la cour cantonale pour nouvelle décision sur les frais et dépens des instances cantonales.
5.
Le présent arrêt est communiqué aux parties et au Tribunal cantonal du canton de Vaud, Cour d'appel civile.
Lausanne, le 30 octobre 2015
Au nom de la Ire Cour de droit civil
du Tribunal fédéral suisse
La Présidente : Kiss
Le Greffier : Ramelet