I agree with a previous poster that Twin Shadows isn't a good item on Janna (moreso because it's very situational) but I also disagree with their recommended build. With the influx of high CC comps Mercury Treads is the better boots (add to that a Captain enchant to capitalize on Janna's passive) for most supports.
You've gone the right way by maxing her E first but maxing Q second is better than W unless you really need the slow. But that can be alleviated with a Rylai's purchase (which is a much much better item than Twin Shadows as it adds a slow to her knock-up and survivalbility). Depending on the enemy team comp (mixed, all ad, mostly ap, cc, heal) its better to get Locket/Frozen Heart for the aura's they provide and Morello's (if your facing a heavy heal comp) then straight support items.
If they have a heavy CC comp Mikael's can help marginally but it'd require the carries to also get QSS/Cleanse as you can only do so much. Though Janna is very very good at resetting/disengaging a fight. Zeke's is best for ADC's that can maximize crit potential (Ashe, Vayne, Sivir, possibly Kalista/Lucian). Banner is really a late game item as it can help siege but shouldn't be bought if your behind, it's just a waste then.
Ardent maximizes shield use and ADC auto damage but doesn't help much with actual team fight peeling unless the ADC can help peel for themselves (or your Sona with AOE shields). For Janna Talisman is a must buy as it provides both disengage and engage (a la Sivir ult) an tends to be on a short cooldown with the right masteries. Sightstone is self-explanatory (you'll probably never upgrade it though >.<). Trinkets are based off user judgement really.
As for your runes; instead of AD marks, armor quints, and health seals, you'd be better off giving her some AP, movement speed, armor/magic resistances (in seals/glyphs), and cooldown boosts. Though these really depend on your play style as well (I'm a fairly aggressive support even as the most passive ones) so take it with a grain of salt. It might also be a good idea to take a gander at ProBuilds for the champions you play the most so you can get an idea of how other people play them, build them, and so on.
And I'm sorry I only really have advice for supports and Heimerdinger/Tristana is out of my depth. But one thing I do if I'm having trouble with AP mids I rush Abyssals and if it's AD mids I rush Zhonyas. Mitigating early damage can really help you out early in lane (it can mean the difference between dying to burst or barely surviving) and practicing dodging skill shots can help immensely.