Features of successful projects
•A good vision of how the project should look like
•Workflow planning (Agile Development)
•Tasks delegation, workload balancing between team members
•A good organized technical structure for fast and quality design and
•Resources (time, money, people)
• Plan the workshop (define, attendees, location, agenda).
• Provide exact questions to client. Keep the balance between asking
questions and exposing the proper thoughts upon smth, this will keep the
client active and not annoyed.
• Try to build overall sitemap and go through the each level of hierarchy –
establishing the relationships between functionalities.
• Provide exact technical implementations on the fly if possible, allowing
the client to choose between them.
• Try to identify the most complex sections and work on them before the
• Use existent portfolio to show the boarding of similar situations.
Design, Wireframing Phase
• Start build first sketches at workshops with client on paper when needed – to
represent the a specific functionality where appear questions. Might be applied
only for specific pages – and has to be done quickly, without transforming the
workshop into wireframing cycle
• Low fidelity / High fidelity Wireframes.
• Depending on budget you can cut Wireframing
and Prototypes process, having almost ideal vision about the project.
• Reuse graphical elements as much as possible to keep consistency and
make developers live easier
• Add the code/ custom modules you may
consider useful for future projects to
a global repository – in order
to re-use them and minimize dev time.
• Use Features, Make File, Drush, GIT
• Create mobile teams that work side by side
always discussing problems and solutions, located physically in the same place
• Try to see the functionality(functions) that maybe reused
in the same project (fields, content-types, views, panels etc). Will reduce time for
• Use Agile to Minimizes feature creep by developing in short intervals
resulting in miniature software projects and releasing the product in
Perfect Deployment never exists, but…
• Tell you family that you’ll have a hard working night letting them know to ping you from time
to time not to let you fall asleep. Big release deploy should happen in night.
• Plan the Deployment steps on paper, analyze the risks and possible solutions – share with
team and client when needed. Get approval.
• Make sure of all 3rd
parties solutions you’ve got and start granting access to the production
environment (Key’s, IP addresses, Firewals etc). In many cases devs forget to make that and it
leads to functionality crashes or deploy postpones.
• Dumps, dumps, dumps…. Make as much as possible on each step, at each deploy – check the
integrity of a dump each time (make double copies).
• Proceed with overall testing of key functionalities personally – do not believe
tester –even he says all is fine. There are some hidden functionalities that
needs dev testing (such as SMS gateways).
• Get ready for quick fixes next morning.
• Get common with objectives / prepare test cases. If objectives are not
clear ask developer to prepare a use case with expected results.
• Process and reporting – try to organize the way you report the issues, use
templates (Who?(Basic customer role) What? (Get’s an white screen)
Where? (http://…. , screenshot)).
• Track results – try to find dependencies or logic why it happens so for
better issue reporting.
• Proceed with Unit Testing for specific functionalities (ex. Social login).
• Load testing (perform load tests on staging environments that are out of
the same network).
• Security Testing (starting with specific zones access for
Client Case. 10 days – Go Live!
• 1 Workshop – goals definition, style guides. Sitemap
• Established concept and navigation structure for the team.
• Mockups phase only. 1 iteration.
• Establishment of key pages - design process 2 Days. Templates.
• Functionality reuse.
• General style re-use based on Design templates.
• Unit Testing process.
• Fast Deploy due to GIT/ Acquia.