The last of us and watch dogs already have fully established studios behind them that have already been making similar games, so the game isnt completly fresh so it can take less time to develop because thats the style of game they already make. Technology has improved in the past 10 years with things like direct x 12 in 2015 and as time has gone by more and more games are taken longer to develop than they did 10 years ago.
Star Citizen is completely new and everything needed to make it work has to be built from scratch, most other companies dont have to start from nothing so its obvious SC is going to need a longer development time.